From b7aa1bc3953f4739c0120d911cda4beb9cbd6df3 Mon Sep 17 00:00:00 2001 From: giozaarour Date: Thu, 23 Feb 2023 14:11:37 -0800 Subject: [PATCH 1/3] start changes --- src/TaxToken.sol | 534 +++++++++++++++++++++++++++++++++++++++++++++ src/Treasury.sol | 237 ++++++++++++++++++++ test/Vesting.t.sol | 44 +++- 3 files changed, 804 insertions(+), 11 deletions(-) create mode 100644 src/TaxToken.sol create mode 100644 src/Treasury.sol diff --git a/src/TaxToken.sol b/src/TaxToken.sol new file mode 100644 index 0000000..9727f47 --- /dev/null +++ b/src/TaxToken.sol @@ -0,0 +1,534 @@ +//SPDX-License-Identifier: MIT +pragma solidity ^0.8.6; + +import { IERC20, ITreasury, IVesting, IUniswapV2Factory, IUniswapV2Router02 } from "./interfaces/InterfacesAggregated.sol"; +import { ERC20 } from "./interfaces/ERC20.sol"; +import "./extensions/Ownable.sol"; + +/// @dev The TaxToken is responsible for supporting generic ERC20 functionality including ERC20Pausable functionality. +/// The TaxToken will generate taxes on transfer() and transferFrom() calls for non-whitelisted addresses. +/// The Admin can specify the tax fee in basis points for buys, sells, and transfers. +/// The TaxToken will forward all taxes generated to a Treasury +contract TaxToken is ERC20, Ownable { + + // --------------- + // State Variables + // --------------- + + // ERC20 Basic + uint256 _totalSupply; + //uint8 private _decimals; + string private _name; + string private _symbol; + + // ERC20 Pausable state + bool private _paused; + + // Extras + address public treasury; + address public vesting; + address public depositor; + + address public constant UNIV2_ROUTER = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; + address public immutable UNISWAP_V2_PAIR; + + bool public taxesRemoved; /// @dev Once true, taxes are permanently set to 0 and CAN NOT be increased in the future. + + uint256 public maxWalletSize; + uint256 public maxTxAmount; + + uint256 public maxContractTokenBalance; + bool inSwap = false; + + // Extras Mappings + mapping(address => bool) public blacklist; /// @dev If an address is blacklisted, they cannot perform transfer() or transferFrom(). + mapping(address => bool) public whitelist; /// @dev Any transfer that involves a whitelisted address, will not incur a tax. + mapping(address => uint8) public senderTaxType; /// @dev Identifies tax type for msg.sender of transfer() call. + mapping(address => uint8) public receiverTaxType; /// @dev Identifies tax type for _to of transfer() call. + mapping(uint8 => uint) public basisPointsTax; /// @dev Mapping between taxType and basisPoints (taxed). + mapping(address => bool) public authorized; /// @dev Mapping of which wallets are authorized to call specific functions. + mapping(uint8 => uint256) public taxesAccrued; + + mapping(address => uint) public industryTokens; /// @dev Mapping of how many locked tokens exist in a wallet (In 18 decimal format). + mapping(address => uint) public lifetimeIndustryTokens; /// @dev Mapping of how many locked tokens have ever been minted (In 18 decimal format). + + // ----------- + // Constructor + // ----------- + + /// @notice Initializes the TaxToken. + /// @dev _paused - ERC20 Pausable global state variable, initial state is not paused ("unpaused"). + /// @dev The "owner" is the "admin" of this contract. + /// @dev Initial liquidity, allocated entirely to "owner". + /// @param totalSupplyInput The total supply of this token (this value is multipled by 10**decimals in constructor). + /// @param nameInput The name of this token. + /// @param symbolInput The symbol of this token. + /// @param decimalsInput The decimal precision of this token. + /// @param maxWalletSizeInput The maximum wallet size (this value is multipled by 10**decimals in constructor). + /// @param maxTxAmountInput The maximum tx size (this value is multipled by 10**decimals in constructor). + constructor( + uint totalSupplyInput, + string memory nameInput, + string memory symbolInput, + uint8 decimalsInput, + uint256 maxWalletSizeInput, + uint256 maxTxAmountInput + ) ERC20(nameInput, symbolInput) { + _paused = false; + _setupDecimals(decimalsInput); + _totalSupply = totalSupplyInput * (10 ** decimals()); + + // Create a uniswap pair for this new token. + UNISWAP_V2_PAIR = IUniswapV2Factory( + IUniswapV2Router02(UNIV2_ROUTER).factory() + ).createPair(address(this), IUniswapV2Router02(UNIV2_ROUTER).WETH()); + + senderTaxType[UNISWAP_V2_PAIR] = 1; + receiverTaxType[UNISWAP_V2_PAIR] = 2; + + maxWalletSize = maxWalletSizeInput * (10 ** decimals()); + maxTxAmount = maxTxAmountInput * (10 ** decimals()); + + maxContractTokenBalance = 1 * (10 ** decimals()); + + whitelist[address(this)] = true; + whitelist[address(0)] = true; + whitelist[owner()] = true; + + _mint(owner(), totalSupplyInput * (10 ** decimals())); + } + + + // --------- + // Modifiers + // --------- + + /// @dev whenNotPausedUni() is used if the contract MUST be paused ("paused"). + modifier whenNotPausedUni(address a) { + require(!paused() || whitelist[a], "TaxToken.sol::whenNotPausedUni(), Contract is currently paused."); + _; + } + + /// @dev whenNotPausedDual() is used if the contract MUST be paused ("paused"). + modifier whenNotPausedDual(address _from, address _to) { + require(!paused() || whitelist[_from] || whitelist[_to], "TaxToken.sol::whenNotPausedDual(), Contract is currently paused."); + _; + } + + /// @dev whenNotPausedTri() is used if the contract MUST be paused ("paused"). + modifier whenNotPausedTri(address _from, address _to, address _sender) { + require(!paused() || whitelist[_from] || whitelist[_to] || whitelist[_sender], "TaxToken.sol::whenNotPausedTri(), Contract is currently paused."); + _; + } + + /// @dev whenPaused() is used if the contract MUST NOT be paused ("unpaused"). + modifier whenPaused() { + require(paused(), "TaxToken.sol::whenPaused(), Contract is not currently paused."); + _; + } + + /// @dev isAuthorized() is used if msg.sender MUST be either the owner, or an authorized user/contract. + modifier onlyAuthorized { + require(msg.sender == owner() || authorized[msg.sender] == true, "TaxToken.sol::onlyAuthorized(), msg.sender is not authorized."); + _; + } + + modifier lockTheSwap { + inSwap = true; + _; + inSwap = false; + } + + + // ------ + // Events + // ------ + + /// @dev Emitted when the pause is triggered by `account`. + event Paused(address); + + /// @dev Emitted when the pause is lifted by `account`. + event Unpaused(address); + + /// @dev Emitted during transferFrom(). + event TransferTax(address indexed _treasury, uint256 _value); + + /// @dev Emitted when updating authorized addresses (users or contracts). + event UpdatedAuthorizedWallets(address indexed _account, bool _state); + + event TreasuryUpdated(address, address); + + event VestingUpdated(address, address); + + event DepositorUpdated(address, address); + + event TaxesPermanentlyRemoved(); + + event MaxTxUpdated(uint256); + + event MaxWalletUpdated(uint256); + + + // --------- + // Functions + // --------- + + // ~ ERC20 _transfer() ~ + + function _transfer(address _from, address _to, uint256 _amount) internal override { + + // taxType 0 => Xfer Tax + // taxType 1 => Buy Tax + // taxType 2 => Sell Tax + uint8 _taxType; + + require(!paused() || whitelist[_from] || whitelist[_to] || whitelist[msg.sender], "TaxToken.sol::_transfer() contract is currently paused."); + require(balanceOf(_from) >= _amount, "TaxToken::_transfer() insufficient balance"); + require(_amount > 0, "TaxToken::_transfer() amount must be greater than 0"); + + // Take a tax from them if neither party is whitelisted. + if (!whitelist[_to] && !whitelist[_from] && !whitelist[msg.sender] && _from != address(this)) { + + require (maxTxAmount >= _amount, "TaxToken::_transfer() amount exceeds maxTxAmount"); + require (!blacklist[_from], "TaxToken::_transfer() sender is blacklisted"); + require (!blacklist[_to], "TaxToken::_transfer() receiver is blacklisted"); + + // Determine, if not the default 0, tax type of transfer. + if (senderTaxType[_from] != 0) { + _taxType = senderTaxType[_from]; // buy -> 1 + } + + if (receiverTaxType[_to] != 0) { + _taxType = receiverTaxType[_to]; // sell -> 2 + } + + uint _taxAmt = _amount * basisPointsTax[_taxType] / 10000; + uint _sendAmt = _amount - _taxAmt; + + require(_taxAmt + _sendAmt == _amount, "TaxToken::_transfer() critical math error"); + + /// @dev if it's a sell (_taxType == 2), _to will be pair address thus we don't want to check for maxWalletSize. + if (_taxType != 2 && _to != depositor) { + require(balanceOf(_to) + _sendAmt <= maxWalletSize, "TaxToken::_transfer() amount exceeds maxWalletAmount"); + } + + if (_taxType == 2 && !inSwap) { + uint256 contractTokenBalance = getContractTokenBalance(); + + if(contractTokenBalance > maxTxAmount) { + contractTokenBalance = maxTxAmount; + } + + if (contractTokenBalance >= maxContractTokenBalance) { + handleRoyalties(contractTokenBalance); + } + } + + super._transfer(_from, _to, _sendAmt); + + //taxesAccrued[_taxType] += _taxAmt; + super._transfer(_from, address(this), _taxAmt); + } + // Skip taxation if either party is whitelisted (_from or _to). + else { + super._transfer(_from, _to, _amount); + } + } + + function handleRoyalties(uint256 _contractTokenBalance) internal lockTheSwap { + uint256 amountWeth = swapTokensForWeth(_contractTokenBalance); + + if (amountWeth > 0) { + // Update Treasury Accounting + ITreasury(treasury).updateTaxesAccrued(amountWeth); + emit TransferTax(treasury, amountWeth); + } + } + + function swapTokensForWeth(uint256 _amountTokensForSwap) internal returns (uint256){ + // generate the uniswap pair path of token -> weth + address[] memory path = new address[](2); + path[0] = address(this); + path[1] = IUniswapV2Router02(UNIV2_ROUTER).WETH(); + + _approve(address(this), address(UNIV2_ROUTER), _amountTokensForSwap); + + uint256[] memory amounts = IUniswapV2Router02(UNIV2_ROUTER).getAmountsOut( + _amountTokensForSwap, + path + ); + + // make the swap + IUniswapV2Router02(UNIV2_ROUTER).swapExactTokensForTokensSupportingFeeOnTransferTokens( + _amountTokensForSwap, + 0, + path, + address(treasury), + block.timestamp + 300 + ); + + return amounts[1]; + } + + + // ~ ERC20 Pausable ~ + + /// @notice Pause the contract, blocks transfer() and transferFrom(). + /// @dev Contract MUST NOT be paused to call this, caller must be "owner". + function pause() external onlyOwner whenNotPausedUni(msg.sender) { + _paused = true; + emit Paused(msg.sender); + } + + /// @notice Unpause the contract. + /// @dev Contract MUST be paused to call this, caller must be "owner". + function unpause() external onlyOwner whenPaused { + _paused = false; + emit Unpaused(msg.sender); + } + + /// @return _paused Indicates whether the contract is paused (true) or not paused (false). + function paused() public view virtual returns (bool) { + return _paused; + } + + + // ~ TaxType & Fee Management ~ + + /// @notice Used to store the LP Pair to differ type of transaction. Will be used to mark a BUY. + /// @dev _taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send. + /// @param _sender This value is the PAIR address. + /// @param _taxType This value must be be 0, 1, or 2. Best to correspond value with the BUY tax type. + function updateSenderTaxType(address _sender, uint8 _taxType) external onlyOwner { + require(_taxType < 3, "TaxToken::updateSenderTaxType(), _taxType must be less than 3."); + senderTaxType[_sender] = _taxType; + } + + /// @notice Used to store the LP Pair to differ type of transaction. Will be used to mark a SELL. + /// @dev _taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send. + /// @param _receiver This value is the PAIR address. + /// @param _taxType This value must be be 0, 1, or 2. Best to correspond value with the SELL tax type. + function updateReceiverTaxType(address _receiver, uint8 _taxType) external onlyOwner { + require(_taxType < 3, "TaxToken::updateReceiverTaxType(), _taxType must be less than 3."); + receiverTaxType[_receiver] = _taxType; + } + + /// @notice Used to map the tax type 0, 1 or 2 with it's corresponding tax percentage. + /// @dev Must be lower than 2000 which is equivalent to 20%. + /// @param _taxType This value is the tax type. Has to be 0, 1, or 2. + /// @param _bpt This is the corresponding percentage that is taken for royalties. 1200 = 12%. + function adjustBasisPointsTax(uint8 _taxType, uint _bpt) external onlyOwner { + require(_bpt <= 2000, "TaxToken.sol::adjustBasisPointsTax(), _bpt > 2000 (20%)."); + require(!taxesRemoved, "TaxToken.sol::adjustBasisPointsTax(), Taxation has been removed."); + basisPointsTax[_taxType] = _bpt; + } + + /// @notice Permanently remove taxes from this contract. + /// @dev An input is required here for sanity-check, given importance of this function call (and irreversible nature). + /// @param _key This value MUST equal 42 for function to execute. + function permanentlyRemoveTaxes(uint _key) external onlyOwner { + require(_key == 42, "TaxToken::permanentlyRemoveTaxes(), _key != 42."); + require(!taxesRemoved, "TaxToken.sol::adjustBasisPointsTax(), Taxation has already been removed."); + basisPointsTax[0] = 0; + basisPointsTax[1] = 0; + basisPointsTax[2] = 0; + taxesRemoved = true; + + emit TaxesPermanentlyRemoved(); + } + + + // ~ Admin ~ + + function transferOwnership(address newOwner) public override onlyOwner { + whitelist[newOwner] = true; + super.transferOwnership(newOwner); + } + + function distributeRoyaltiesToTreasury() external onlyOwner { + // TODO: Add require statement + if (!inSwap) { + handleRoyalties(getContractTokenBalance()); + } + // test contractTokenbalance being over max Tx amount + } + + /// @notice This is used to change the owner's wallet address. Used to give ownership to another wallet. + /// @param _account is the address that will change from authorized or not. + /// @param _state (True or False) If true, _account is authorized, if false, _account is not authorized. + function updateAuthorizedList(address _account, bool _state) external onlyOwner { + require(_account != address(0), "TaxToken.sol::updateAuthorizedList() _owner == 0"); + require(authorized[_account] == _state, "TaxToken.sol::updateAuthorizedList() _account is already set to _state"); + + authorized[_account] = _state; + + emit UpdatedAuthorizedWallets(_account, _state); + } + + /// @notice Set the treasury (contract) which receives taxes generated through transfer() and transferFrom(). + /// @param _treasury is the contract address of the treasury. + function setTreasury(address _treasury) external onlyOwner { + require(_treasury != treasury, "TaxToken.sol::setTreasury() already set to treasury address"); + require(_treasury != address(0), "TaxToken.sol::setTreasury() treasury cannot be address(0)"); + + treasury = _treasury; + modifyWhitelist(treasury, true); + + emit TreasuryUpdated(treasury, _treasury); + } + + /// @notice Set the vesting (contract) which is then whitelisted and minted the amount needed for vesting. + /// @param _vesting is the contract address of the vesting. + function setVesting(address _vesting) external onlyOwner { + require(_vesting != vesting, "TaxToken.sol::setVesting() already set to treasury address"); + require(_vesting != address(0), "TaxToken.sol::setVesting() treasury cannot be address(0)"); + + vesting = _vesting; + modifyWhitelist(vesting, true); + + uint256 amount = IVesting(vesting).getAllVestedTokens(); + _mint(vesting, amount); + + emit VestingUpdated(vesting, _vesting); + } + + /// @notice Set the depositor (contract) which is the backend contract for the dapp. + /// @param _depositor is the contract address of the depositor contract. + function setDepositor(address _depositor) external onlyOwner { + require(_depositor != depositor, "TaxToken.sol::setdepositor() already set to treasury address"); + require(_depositor != address(0), "TaxToken.sol::setdepositor() treasury cannot be address(0)"); + + depositor = _depositor; + modifyWhitelist(depositor, false); /// @dev Depositor should not be whitelisted. + + emit DepositorUpdated(depositor, _depositor); + } + + /// @notice Updates the maxContractTokebBalance var which is used to set the distribution threshhold of royalties to the Treasury. + /// @param _amount is the amount of tokens that need to be hit to distribute. + function updateMaxContractTokenBalance(uint256 _amount) external onlyOwner { + maxContractTokenBalance = (_amount * 10 ** decimals()); + } + + /// @notice Adjust maxTxAmount value (maximum amount transferrable in a single transaction). + /// @dev Does not affect whitelisted wallets. + /// @param _maxTxAmount is the max amount of tokens that can be transacted at one time for a non-whitelisted wallet. + function updateMaxTxAmount(uint256 _maxTxAmount) external onlyOwner { + require(_maxTxAmount > 0, "TaxToken.sol::updateMaxTxAmount() _maxTxAmount must be gt 0"); + + maxTxAmount = (_maxTxAmount * 10 ** decimals()); + + emit MaxTxUpdated(maxTxAmount); + } + + /// @notice This function is used to set the max amount of tokens a wallet can hold. + /// @dev Does not affect whitelisted wallets. + /// @param _maxWalletSize is the max amount of tokens that can be held on a non-whitelisted wallet. + function updateMaxWalletSize(uint256 _maxWalletSize) external onlyOwner { + require(_maxWalletSize > 0, "TaxToken.sol::updateMaxWalletSize() _maxWalletSize must be gt 0"); + + maxWalletSize = (_maxWalletSize * 10 ** decimals()); + + emit MaxWalletUpdated(maxWalletSize); + } + + /// @notice This function is used to add wallets to the whitelist mapping. + /// @dev Whitelisted wallets are not affected by maxWalletSize, maxTxAmount, or taxes. + /// @param _wallet is the wallet address that will have their whitelist status modified. + /// @param _whitelisted use True to whitelist a wallet, otherwise use False to remove wallet from whitelist. + function modifyWhitelist(address _wallet, bool _whitelisted) public onlyOwner { + whitelist[_wallet] = _whitelisted; + } + + /// @notice This function is used to add or remove wallets from the blacklist. + /// @dev Blacklisted wallets cannot perform transfer() or transferFrom(). + /// unless it's to or from a whitelisted wallet. + /// @param _wallet is the wallet address that will have their blacklist status modified. + /// @param _blacklist use True to blacklist a wallet, otherwise use False to remove wallet from blacklist. + function modifyBlacklist(address _wallet, bool _blacklist) external onlyOwner { + if (_blacklist) { + require(!whitelist[_wallet], "TaxToken.sol::modifyBlacklist(), cannot blacklist a whitelisted wallet"); + require(_wallet != treasury, "TaxToken.sol::modifyBlacklist(), cannot blacklist treasury"); + require(_wallet != depositor, "TaxToken.sol::modifyBlacklist(), cannot blacklist depositor"); + require(_wallet != vesting, "TaxToken.sol::modifyBlacklist(), cannot blacklist vesting"); + require(_wallet != UNIV2_ROUTER, "TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap ROUTER"); + require(_wallet != UNISWAP_V2_PAIR, "TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap PAIR"); + require(_wallet != address(this), "TaxToken.sol::modifyBlacklist(), cannot blacklist this contract"); + } + blacklist[_wallet] = _blacklist; + } + + /// @notice This function will create new tokens and adding them to total supply. + /// @dev Does not truncate so amount needs to include the 18 decimal points. + /// Needed too add new tokens to supply if we want to get listed on multiple exchanges. + /// @param _wallet the account we're minting tokens to. + /// @param _amount the amount of tokens we're minting. + function mint(address _wallet, uint256 _amount) public onlyAuthorized() { + _mint(_wallet, _amount); + } + + /// @notice This function will destroy existing tokens and deduct them from total supply. + /// @dev Does not truncate so amount needs to include the 18 decimal points. + /// @param _wallet the account we're burning tokens from. + /// @param _amount the amount of tokens we're burning. + function burn(address _wallet, uint256 _amount) public onlyAuthorized() { + _burn(_wallet, _amount); + } + + /// @notice This function is used to mint tokens and log their creation to the industry wallet mappings. + /// @dev Any tokens minted through this process can only be used inside of the NFT marketplace to mint new NFTS (can only be burned). + /// @dev Users may still buy and sell new or prior existing non-minted tokens but these will be soulbound. + /// @dev Does not truncate so amount needs to include the 18 decimal points. + /// @param _wallet is the wallet address that will recieve these minted tokens. + /// @param _amount is the amount of tokens to be minted into _wallet. + function industryMint(address _wallet, uint256 _amount) external onlyAuthorized { + _mint(_wallet, _amount); + + industryTokens[_wallet] += _amount; + lifetimeIndustryTokens[_wallet] += _amount; + } + + /// @notice This function will destroy existing tokens and deduct them from total supply. + /// @dev Does not truncate so amount needs to include the 18 decimal points. + /// @param _wallet the account we're burning tokens from. + /// @param _amount the amount of tokens we're burning. + function industryBurn(address _wallet, uint256 _amount) external onlyAuthorized { + require(_wallet != address(0), "TaxToken.sol::industryBurn(), Cannot burn to zero address."); + require(balanceOf(_wallet) >= _amount, "TaxToken.sol::industryBurn(), Insufficient balance of $PROVE to burn."); + + if (industryTokens[_wallet] >= _amount) { + _burn(_wallet, _amount); + industryTokens[_wallet] -= _amount; + } else { + _burn(_wallet, _amount); + industryTokens[_wallet] = 0; + } + } + + + // ~ Read ~ + + /// @notice This functions returns the number of taxToken are inside the contract. + /// NOTE: These tokens have most likely been accrued from taxes. + /// @return uint256 the num of tokens stored in this contract. + function getContractTokenBalance() view public returns (uint256) { + return balanceOf(address(this)); + } + + /// @notice This function is a VIEW function that returns the amount of industry tokens, + /// full balance, and normal tokens a wallet has. + /// @dev This function is for the front end to pull industry data for a specific wallet. + /// @return numTokens the amount of taxTokens the _wallet holds. + /// @return numIndustryTokens the amount of tokens they hold that is industry tokens. + /// @return numDifference the amount of tokens they have that are NOT industry tokens. + /// @return lifetime the amount of industry tokens that have been minted to _wallet in total. + function getIndustryTokens(address _wallet) external view returns (uint numTokens, uint numIndustryTokens, uint numDifference, uint lifetime) { + uint fullBalance = IERC20(address(this)).balanceOf(_wallet); + uint industryBalance = industryTokens[_wallet]; + uint difference = fullBalance - industryBalance; + + // TODO: Test logic here -> fullbalalance - industryBalance might cause negative number -> underflow + + return (fullBalance, industryBalance, difference, lifetimeIndustryTokens[_wallet]); + } +} \ No newline at end of file diff --git a/src/Treasury.sol b/src/Treasury.sol new file mode 100644 index 0000000..e4d8bad --- /dev/null +++ b/src/Treasury.sol @@ -0,0 +1,237 @@ +//SPDX-License-Identifier: MIT +pragma solidity ^0.8.6; + +import { IERC20, IUniswapV2Router02 } from "./interfaces/InterfacesAggregated.sol"; +import "./extensions/Ownable.sol"; + + +/// @notice The treasury is responsible for escrow of TaxToken fee's. +/// The treasury handles accounting, for what's owed to different groups. +/// The treasury handles distribution of TaxToken fees to different groups. +/// The admin can modify how TaxToken fees are distributed (the TaxDistribution struct). +contract Treasury is Ownable { + + // --------------- + // State Variables + // --------------- + + /// @dev The token that fees are taken from, and what is held in escrow here. + address public taxToken; + + /// @dev The stablecoin that is distributed via royalties. + address public stable; + + /// @dev The administrator of accounting and distribution settings. + address public admin; + + uint256 public amountRoyaltiesWeth; + + address public constant UNIV2_ROUTER = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; + + address public WETH; + + // Mappings + + /// @notice Handles the internal accounting for how much taxToken is owed to each taxType. + /// @dev e.g. 10,000 taxToken owed to taxType 0 => taxTokenAccruedForTaxType[0] = 10000 * 10**18. + /// taxType 0 => Xfer Tax + /// taxType 1 => Buy Tax + /// taxType 2 => Sell Tax + mapping(uint => uint) public taxTokenAccruedForTaxType; // + + mapping(uint => uint) public WethAccruedForTaxType; // + + /// @dev Tracks amount of stablecoin distributed to recipients. + mapping(address => uint256) public distributionsStable; + + /// @dev taxSettings. + TaxDistribution public taxSettings; + + // Structs + + /// @notice Manages how TaxToken is distributed for a given taxType. + /// Variables: + /// walletCount => The number of wallets to distribute fees to. + /// wallets => The addresses to distribute fees (maps with convertToAsset and percentDistribution). + /// convertToAsset => The asset to pre-convert taxToken to prior to distribution (if same as taxToken, no conversion executed). + /// percentDistribution => The percentage of taxToken accrued for taxType to distribute. + struct TaxDistribution { + uint walletCount; + address[] wallets; + uint[] percentDistribution; + } + + + // ----------- + // Constructor + // ----------- + + /// @notice Initializes the Treasury. + /// @param _admin The administrator of the contract. + /// @param _taxToken The taxToken (ERC-20 asset) which accumulates in this Treasury. + constructor(address _admin, address _taxToken, address _stable) { + taxToken = _taxToken; + stable = _stable; + + transferOwnership(_admin); + + WETH = IUniswapV2Router02(UNIV2_ROUTER).WETH(); + } + + + // --------- + // Modifiers + // --------- + + /// @dev Enforces msg.sender is taxToken. + modifier isTaxToken { + require(msg.sender == taxToken); + _; + } + + + // ------ + // Events + // ------ + + /// @dev Emitted when royalties are distributed via distributeTaxes() + event RoyaltiesDistributed(address indexed recipient, uint amount, address asset); + + /// @dev Emitted when the stable state variable is updated via updateStable() + event StableUpdated(address currentStable, address newStable); + + /// @dev Emitted when the treasury receives royalties + event RoyaltiesReceived(uint256 amountReceived, uint256 newTotal); + + + // --------- + // Functions + // --------- + + /// @notice Increases _amt of taxToken allocated to _taxType. + /// @dev Only callable by taxToken. + /// @param _amt The amount of taxToken going to taxType. + function updateTaxesAccrued(uint _amt) isTaxToken external { + amountRoyaltiesWeth += _amt; + emit RoyaltiesReceived(_amt, amountRoyaltiesWeth); + //taxTokenAccruedForTaxType[_taxType] += _amt; + } + + function viewTaxesAccrued() external view returns (uint _amountAccrued) { + return amountRoyaltiesWeth; + } + + /// @notice This function modifies the distribution settings for all taxes. + /// @dev Only callable by Admin. + /// @param _walletCount The number of wallets to distribute across. + /// @param _wallets The address of wallets to distribute fees across. + /// @param _percentDistribution The percentage (corresponding with wallets) to distribute taxes to of overall amount owed for taxType. + function setTaxDistribution(uint _walletCount, address[] calldata _wallets, uint[] calldata _percentDistribution) external onlyOwner { + + // Pre-check that supplied values have equal lengths. + require(_walletCount == _wallets.length, "Treasury.sol::setTaxDistribution(), walletCount length != wallets.length"); + require(_walletCount == _percentDistribution.length, "Treasury.sol::setTaxDistribution(), walletCount length != percentDistribution.length"); + + // Enforce sum(percentDistribution) = 100; + uint sumPercentDistribution; + for(uint i = 0; i < _walletCount; i++) { + sumPercentDistribution += _percentDistribution[i]; + } + require(sumPercentDistribution == 100, "Treasury.sol::setTaxDistribution(), sumPercentDistribution != 100"); + + // Update taxSettings for taxType. + taxSettings = TaxDistribution( + _walletCount, + _wallets, + _percentDistribution + ); + } + + /// @notice Distributes taxes for given taxType. + function distributeTaxes() external returns(uint256 _amountToDistribute) { + + _amountToDistribute = amountRoyaltiesWeth; + + if (_amountToDistribute > 0) { + + amountRoyaltiesWeth = 0; + + assert(IERC20(WETH).approve(address(UNIV2_ROUTER), _amountToDistribute)); + + address[] memory path_uni_v2 = new address[](2); + + path_uni_v2[0] = WETH; + path_uni_v2[1] = stable; + + IUniswapV2Router02(UNIV2_ROUTER).swapExactTokensForTokens( + _amountToDistribute, + 0, + path_uni_v2, + address(this), + block.timestamp + 30000 + ); + + uint balanceStable = IERC20(stable).balanceOf(address(this)); + + for (uint i = 0; i < taxSettings.wallets.length; i++) { + uint amt = balanceStable * taxSettings.percentDistribution[i] / 100; + + assert(IERC20(stable).transfer(taxSettings.wallets[i], amt)); + + distributionsStable[taxSettings.wallets[i]] += amt; + emit RoyaltiesDistributed(taxSettings.wallets[i], amt, stable); + } + } + + return _amountToDistribute; + } + + /// @notice Helper view function for taxSettings. + /// @return uint256 num of wallets in distribution. + /// @return address[] array of wallets in distribution. + /// @return uint[] array of distribution, all uints must add up to 100. + function viewTaxSettings() external view returns(uint256, address[] memory, uint[] memory) { + return ( + taxSettings.walletCount, + taxSettings.wallets, + taxSettings.percentDistribution + ); + } + + /// @notice Withdraw a non-taxToken from the treasury. + /// @dev Reverts if token == taxtoken. + /// @dev Only callable by Admin. + /// @param _token The token to withdraw from the treasury. + function safeWithdraw(address _token) external onlyOwner { + if (_token == WETH) { amountRoyaltiesWeth = 0; } + assert(IERC20(_token).transfer(msg.sender, IERC20(_token).balanceOf(address(this)))); + } + + /// @notice Change the stable value of the treasury distriubution. + /// @dev Only callable by Admin. + /// @param _stable New stablecoin address. + function updateStable(address _stable) external onlyOwner { + require(_stable != stable, "Treasury.sol::updateStable() value already set"); + emit StableUpdated(stable, _stable); + stable = _stable; + } + + /// @notice View function for exchanging fees collected for given taxType. + /// @param _path The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK). + /// @param _taxType The taxType to be exchanged. + function exchangeRateForTaxType(address[] memory _path, uint _taxType) external view returns(uint256) { + return IUniswapV2Router02(UNIV2_ROUTER).getAmountsOut( + taxTokenAccruedForTaxType[_taxType], + _path + )[_path.length - 1]; + } + + /// @notice View function for exchanging fees collected for given taxType. + /// @param _path The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK). + function exchangeRateForWethToStable(address[] memory _path) external view returns(uint256) { + return IUniswapV2Router02(UNIV2_ROUTER).getAmountsOut( + amountRoyaltiesWeth, + _path + )[_path.length - 1]; + } +} \ No newline at end of file diff --git a/test/Vesting.t.sol b/test/Vesting.t.sol index 750e239..c424ffd 100644 --- a/test/Vesting.t.sol +++ b/test/Vesting.t.sol @@ -3,7 +3,11 @@ pragma solidity ^0.8.13; import "../lib/forge-std/src/Test.sol"; import "./Utility.sol"; -import { Vesting } from "../src/Vesting.sol"; + +// Import sol files. +import { TaxToken } from "../src/TaxToken.sol"; +import { Treasury } from "../src/Treasury.sol"; +import { Vesting } from "../src/Vesting.sol"; contract VestingTest is Utility, Test { Vesting vesting; @@ -12,18 +16,36 @@ contract VestingTest is Utility, Test { createActors(); setUpTokens(); - // deploy Vesting contract + // (1) Deploy the TaxToken. + proveToken = new TaxToken( + 1_000_000_000, // Initial liquidity (220M) + 'Prove Zero', // Name of token + 'PROVE', // Symbol of token + 18, // Precision of decimals + 220_000_000, // Max wallet (220M) + 220_000_000 // Max transaction (220M) + ); + + // (2) Deploy the Treasury. + treasury = new Treasury( + address(this), + address(proveToken), + USDC + ); + + // (3) Update the TaxToken "treasury" state variable. + proveToken.setTreasury(address(treasury)); + + // Finally, deploy Vesting contract vesting = new Vesting( - //use compound for now just so we can actually deal the tokens out in test cases without having an EVM revert - //was "222" before - address(0xc00e94Cb662C3520282E6f5717214004A7f26888), + address(proveToken), address(dev) ); } // Initial State Test. function test_vesting_init_state() public { - assertEq(vesting.proveToken(), address(0xc00e94Cb662C3520282E6f5717214004A7f26888)); + assertEq(vesting.proveToken(), address(proveToken)); assertEq(vesting.vestingStartUnix(), 0); assertEq(vesting.vestingEnabled(), false); } @@ -298,7 +320,7 @@ contract VestingTest is Utility, Test { /// @dev Verifies claim() restrictions function test_vesting_claim_restrictions() public { // *First fill up the contract with PROVE tokens - deal(0xc00e94Cb662C3520282E6f5717214004A7f26888, address(vesting), 5_000_000 ether); + deal(proveToken, address(vesting), 5_000_000 ether); // Jon is trying to claim vm.startPrank(address(jon)); @@ -337,7 +359,7 @@ contract VestingTest is Utility, Test { uint _amount = 1_000_000 ether; // *First fill up the contract with PROVE tokens - deal(0xc00e94Cb662C3520282E6f5717214004A7f26888, address(vesting), _amount); + deal(vesting.proveToken, address(vesting), _amount); //Jon is trying to claim vm.startPrank(address(jon)); @@ -399,7 +421,7 @@ contract VestingTest is Utility, Test { /// @dev Verifies claim() edge cases function test_vesting_claim_edge_cases() public { // *First fill up the contract with PROVE tokens - deal(0xc00e94Cb662C3520282E6f5717214004A7f26888, address(vesting), 5_000_000 ether); + deal(vesting.proveToken, address(vesting), 5_000_000 ether); //Enable vesting assert(dev.try_enableVesting(address(vesting))); @@ -452,7 +474,7 @@ contract VestingTest is Utility, Test { _amount = bound(_amount, 100_000 ether, 100_000_000 ether); // *First fill up the contract with PROVE tokens - deal(0xc00e94Cb662C3520282E6f5717214004A7f26888, address(vesting), _amount); + deal(vesting.proveToken, address(vesting), _amount); //Jon is trying to claim vm.startPrank(address(jon)); @@ -516,7 +538,7 @@ contract VestingTest is Utility, Test { _amount = bound(_amount, 100_000 ether, 100_000_000 ether); // *First fill up the contract with PROVE tokens - deal(0xc00e94Cb662C3520282E6f5717214004A7f26888, address(vesting), _amount * 3); + deal(vesting.proveToken, address(vesting), _amount * 3); //Enable vesting assert(dev.try_enableVesting(address(vesting))); From 8891fa8247d6dfea0b723412ddacbac2af3a47f7 Mon Sep 17 00:00:00 2001 From: Chase Brown Date: Thu, 23 Feb 2023 16:11:36 -0700 Subject: [PATCH 2/3] New prove token x vesting test --- cache/solidity-files-cache.json | 682 +- out/Actor.sol/Actor.json | 1168 +- out/Base.sol/CommonBase.json | 102 - out/Base.sol/ScriptBase.json | 102 - out/Base.sol/TestBase.json | 102 - out/Context.sol/Context.json | 188 +- out/Contract.s.sol/ContractScript.json | 223 +- out/ERC20.sol/ERC20.json | 10381 ++++++++ out/ERC20.sol/SafeMath.json | 10082 ++++++++ out/IERC20.sol/IERC20.json | 1207 + out/IERC20.sol/IERC20Extended.json | 1221 + .../IUniswapV2Factory.json | 953 + out/IUniswapV2Pair.sol/IUniswapV2Pair.json | 3619 +++ .../IUniswapV2Router01.json | 5766 +++++ .../IUniswapV2Router02.json | 5973 +++++ out/InterfacesAggregated.sol/ITreasury.json | 345 + .../IUniswapV2Factory.json | 356 + out/InterfacesAggregated.sol/IVesting.json | 345 + .../MainDeploymentTest.json | 6869 ++++++ out/Ownable.sol/Ownable.json | 904 +- out/SafeMath.sol/SafeMath.json | 3768 +++ out/Script.sol/Script.json | 167 - out/StdAssertions.sol/StdAssertions.json | 632 - out/StdChains.sol/StdChains.json | 201 - out/StdCheats.sol/StdCheats.json | 635 - out/StdCheats.sol/StdCheatsSafe.json | 635 - out/StdError.sol/stdError.json | 200 +- out/StdJson.sol/stdJson.json | 224 +- out/StdMath.sol/stdMath.json | 73 +- out/StdStorage.sol/stdStorage.json | 500 +- out/StdStorage.sol/stdStorageSafe.json | 551 +- out/StdUtils.sol/StdUtils.json | 176 - out/TaxToken.sol/TaxToken.json | 19958 ++++++++++++++++ out/Treasury.sol/Treasury.json | 6625 +++++ out/Utility.sol/Hevm.json | 3377 ++- out/Utility.sol/User.json | 3360 ++- out/Utility.sol/Utility.json | 3971 ++- out/Vesting.sol/Vesting.json | 3864 ++- out/Vesting.t.sol/VestingTest.json | 13734 +++++------ out/Vm.sol/Vm.json | 3065 --- out/Vm.sol/VmSafe.json | 2273 -- out/console.sol/console.json | 1953 +- out/console2.sol/console2.json | 1963 +- out/test.sol/DSTest.json | 686 +- out/test.sol/Test.json | 576 - src/TaxToken.sol | 5 +- src/Treasury.sol | 3 +- src/Vesting.sol | 12 +- src/interfaces/ERC20.sol | 506 + src/interfaces/IERC20.sol | 77 + src/interfaces/IUniswapV2Factory.sol | 18 + src/interfaces/IUniswapV2Pair.sol | 53 + src/interfaces/IUniswapV2Router.sol | 137 + src/interfaces/Interfaces.sol | 368 - src/interfaces/InterfacesAggregated.sol | 14 + src/libraries/SafeMath.sol | 215 + src/users/Actor.sol | 2 +- test/MainDeployment.t.sol | 126 + test/Utility.sol | 1 + test/Vesting.t.sol | 41 +- 60 files changed, 92469 insertions(+), 32864 deletions(-) create mode 100644 out/ERC20.sol/ERC20.json create mode 100644 out/ERC20.sol/SafeMath.json create mode 100644 out/IERC20.sol/IERC20.json create mode 100644 out/IERC20.sol/IERC20Extended.json create mode 100644 out/IUniswapV2Factory.sol/IUniswapV2Factory.json create mode 100644 out/IUniswapV2Pair.sol/IUniswapV2Pair.json create mode 100644 out/IUniswapV2Router.sol/IUniswapV2Router01.json create mode 100644 out/IUniswapV2Router.sol/IUniswapV2Router02.json create mode 100644 out/InterfacesAggregated.sol/ITreasury.json create mode 100644 out/InterfacesAggregated.sol/IUniswapV2Factory.json create mode 100644 out/InterfacesAggregated.sol/IVesting.json create mode 100644 out/MainDeployment.t.sol/MainDeploymentTest.json create mode 100644 out/SafeMath.sol/SafeMath.json create mode 100644 out/TaxToken.sol/TaxToken.json create mode 100644 out/Treasury.sol/Treasury.json create mode 100644 src/interfaces/ERC20.sol create mode 100644 src/interfaces/IERC20.sol create mode 100644 src/interfaces/IUniswapV2Factory.sol create mode 100644 src/interfaces/IUniswapV2Pair.sol create mode 100644 src/interfaces/IUniswapV2Router.sol delete mode 100644 src/interfaces/Interfaces.sol create mode 100644 src/interfaces/InterfacesAggregated.sol create mode 100644 src/libraries/SafeMath.sol create mode 100644 test/MainDeployment.t.sol diff --git a/cache/solidity-files-cache.json b/cache/solidity-files-cache.json index 572f5e7..3c1ee05 100644 --- a/cache/solidity-files-cache.json +++ b/cache/solidity-files-cache.json @@ -12,7 +12,7 @@ }, "files": { "lib/forge-std/lib/ds-test/src/test.sol": { - "lastModificationDate": 1673910529029, + "lastModificationDate": 1672766956382, "contentHash": "962996f0e05d5218857a538a62d7c47e", "sourceName": "lib/forge-std/lib/ds-test/src/test.sol", "solcConfig": { @@ -22,8 +22,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -34,8 +33,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -47,12 +45,12 @@ "versionRequirement": ">=0.5.0", "artifacts": { "DSTest": { - "0.8.17+commit.8df45f5f.Linux.gcc": "test.sol/DSTest.json" + "0.8.15+commit.e14f2714.Linux.gcc": "test.sol/DSTest.json" } } }, "lib/forge-std/src/Base.sol": { - "lastModificationDate": 1673910519703, + "lastModificationDate": 1672766954867, "contentHash": "1870c8c1d5470db8c3e956c839db8364", "sourceName": "lib/forge-std/src/Base.sol", "solcConfig": { @@ -62,8 +60,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -74,8 +71,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -90,18 +86,18 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "CommonBase": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Base.sol/CommonBase.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Base.sol/CommonBase.json" }, "ScriptBase": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Base.sol/ScriptBase.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Base.sol/ScriptBase.json" }, "TestBase": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Base.sol/TestBase.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Base.sol/TestBase.json" } } }, "lib/forge-std/src/Script.sol": { - "lastModificationDate": 1673910519723, + "lastModificationDate": 1672766954877, "contentHash": "83c39354c1e43190bce4dc43860dc786", "sourceName": "lib/forge-std/src/Script.sol", "solcConfig": { @@ -111,8 +107,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -123,8 +118,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -147,12 +141,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "Script": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Script.sol/Script.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Script.sol/Script.json" } } }, "lib/forge-std/src/StdAssertions.sol": { - "lastModificationDate": 1673910519732, + "lastModificationDate": 1672766954881, "contentHash": "93fa608efd4df1e671b043437fddd457", "sourceName": "lib/forge-std/src/StdAssertions.sol", "solcConfig": { @@ -162,8 +156,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -174,8 +167,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -190,12 +182,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdAssertions": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdAssertions.sol/StdAssertions.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdAssertions.sol/StdAssertions.json" } } }, "lib/forge-std/src/StdChains.sol": { - "lastModificationDate": 1673910519743, + "lastModificationDate": 1672766954887, "contentHash": "80138bc1765b08a6db58237c26985fd9", "sourceName": "lib/forge-std/src/StdChains.sol", "solcConfig": { @@ -205,8 +197,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -217,8 +208,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -232,12 +222,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdChains": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdChains.sol/StdChains.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdChains.sol/StdChains.json" } } }, "lib/forge-std/src/StdCheats.sol": { - "lastModificationDate": 1673910519752, + "lastModificationDate": 1672766954893, "contentHash": "979104d2f33c34c269636f70cfc84a02", "sourceName": "lib/forge-std/src/StdCheats.sol", "solcConfig": { @@ -247,8 +237,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -259,8 +248,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -275,15 +263,15 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdCheats": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdCheats.sol/StdCheats.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdCheats.sol/StdCheats.json" }, "StdCheatsSafe": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdCheats.sol/StdCheatsSafe.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdCheats.sol/StdCheatsSafe.json" } } }, "lib/forge-std/src/StdError.sol": { - "lastModificationDate": 1673910519761, + "lastModificationDate": 1672766954899, "contentHash": "64c896e1276a291776e5ea5aecb3870a", "sourceName": "lib/forge-std/src/StdError.sol", "solcConfig": { @@ -293,8 +281,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -305,8 +292,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -318,12 +304,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "stdError": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdError.sol/stdError.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdError.sol/stdError.json" } } }, "lib/forge-std/src/StdJson.sol": { - "lastModificationDate": 1673910519770, + "lastModificationDate": 1672766954900, "contentHash": "016de2d7ee55960094cc97ec792025bb", "sourceName": "lib/forge-std/src/StdJson.sol", "solcConfig": { @@ -333,8 +319,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -345,8 +330,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -360,12 +344,12 @@ "versionRequirement": ">=0.6.0, <0.9.0", "artifacts": { "stdJson": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdJson.sol/stdJson.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdJson.sol/stdJson.json" } } }, "lib/forge-std/src/StdMath.sol": { - "lastModificationDate": 1673910519779, + "lastModificationDate": 1672766954907, "contentHash": "9da8f453eba6bb98f3d75bc6822bfb29", "sourceName": "lib/forge-std/src/StdMath.sol", "solcConfig": { @@ -375,8 +359,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -387,8 +370,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -400,12 +382,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "stdMath": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdMath.sol/stdMath.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdMath.sol/stdMath.json" } } }, "lib/forge-std/src/StdStorage.sol": { - "lastModificationDate": 1673910519788, + "lastModificationDate": 1672766954908, "contentHash": "1b6b8a6cbaaaf5a72860a56f0cde4e33", "sourceName": "lib/forge-std/src/StdStorage.sol", "solcConfig": { @@ -415,8 +397,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -427,8 +408,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -442,15 +422,15 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "stdStorage": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdStorage.sol/stdStorage.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdStorage.sol/stdStorage.json" }, "stdStorageSafe": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdStorage.sol/stdStorageSafe.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdStorage.sol/stdStorageSafe.json" } } }, "lib/forge-std/src/StdUtils.sol": { - "lastModificationDate": 1673910519798, + "lastModificationDate": 1672766954914, "contentHash": "ec75addbeee075c61fa5aff2faee0465", "sourceName": "lib/forge-std/src/StdUtils.sol", "solcConfig": { @@ -460,8 +440,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -472,8 +451,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -487,12 +465,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdUtils": { - "0.8.17+commit.8df45f5f.Linux.gcc": "StdUtils.sol/StdUtils.json" + "0.8.15+commit.e14f2714.Linux.gcc": "StdUtils.sol/StdUtils.json" } } }, "lib/forge-std/src/Test.sol": { - "lastModificationDate": 1673910519808, + "lastModificationDate": 1672766954920, "contentHash": "9ca73393dbc2f8cde2aa628f8d05c5d5", "sourceName": "lib/forge-std/src/Test.sol", "solcConfig": { @@ -502,8 +480,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -514,8 +491,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -541,12 +517,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "Test": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Test.sol/Test.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Test.sol/Test.json" } } }, "lib/forge-std/src/Vm.sol": { - "lastModificationDate": 1673910519817, + "lastModificationDate": 1672766954924, "contentHash": "9e6cb90f4c6f4f00605959af21cbc67b", "sourceName": "lib/forge-std/src/Vm.sol", "solcConfig": { @@ -556,8 +532,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -568,8 +543,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -581,15 +555,15 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "Vm": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Vm.sol/Vm.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Vm.sol/Vm.json" }, "VmSafe": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Vm.sol/VmSafe.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Vm.sol/VmSafe.json" } } }, "lib/forge-std/src/console.sol": { - "lastModificationDate": 1673910519826, + "lastModificationDate": 1672766954931, "contentHash": "100b8a33b917da1147740d7ab8b0ded3", "sourceName": "lib/forge-std/src/console.sol", "solcConfig": { @@ -599,8 +573,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -611,8 +584,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -624,12 +596,12 @@ "versionRequirement": ">=0.4.22, <0.9.0", "artifacts": { "console": { - "0.8.17+commit.8df45f5f.Linux.gcc": "console.sol/console.json" + "0.8.15+commit.e14f2714.Linux.gcc": "console.sol/console.json" } } }, "lib/forge-std/src/console2.sol": { - "lastModificationDate": 1673910519836, + "lastModificationDate": 1672766954940, "contentHash": "2096b4e5f252c5df9909cccbe3d2da2e", "sourceName": "lib/forge-std/src/console2.sol", "solcConfig": { @@ -639,8 +611,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -651,8 +622,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -664,13 +634,13 @@ "versionRequirement": ">=0.4.22, <0.9.0", "artifacts": { "console2": { - "0.8.17+commit.8df45f5f.Linux.gcc": "console2.sol/console2.json" + "0.8.15+commit.e14f2714.Linux.gcc": "console2.sol/console2.json" } } }, "script/Contract.s.sol": { - "lastModificationDate": 1673910167545, - "contentHash": "f4eb8c62468835e958df7ab2af105bb9", + "lastModificationDate": 1672766952697, + "contentHash": "3642d05d9c479368231825c40aaa276a", "sourceName": "script/Contract.s.sol", "solcConfig": { "settings": { @@ -679,8 +649,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -691,8 +660,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -716,13 +684,102 @@ "versionRequirement": "^0.8.13", "artifacts": { "ContractScript": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Contract.s.sol/ContractScript.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Contract.s.sol/ContractScript.json" + } + } + }, + "src/TaxToken.sol": { + "lastModificationDate": 1677191445474, + "contentHash": "d61a72f0a379ddf2bde556aab1faffef", + "sourceName": "src/TaxToken.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [ + "src/extensions/Context.sol", + "src/extensions/Ownable.sol", + "src/interfaces/ERC20.sol", + "src/interfaces/IERC20.sol", + "src/interfaces/IUniswapV2Factory.sol", + "src/interfaces/IUniswapV2Router.sol", + "src/interfaces/InterfacesAggregated.sol" + ], + "versionRequirement": "^0.8.6", + "artifacts": { + "TaxToken": { + "0.8.15+commit.e14f2714.Linux.gcc": "TaxToken.sol/TaxToken.json" + } + } + }, + "src/Treasury.sol": { + "lastModificationDate": 1677191472944, + "contentHash": "f32dfc694e686022fc67762d0176a6db", + "sourceName": "src/Treasury.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [ + "src/extensions/Context.sol", + "src/extensions/Ownable.sol", + "src/interfaces/IERC20.sol", + "src/interfaces/IUniswapV2Router.sol" + ], + "versionRequirement": "^0.8.6", + "artifacts": { + "Treasury": { + "0.8.15+commit.e14f2714.Linux.gcc": "Treasury.sol/Treasury.json" } } }, "src/Vesting.sol": { - "lastModificationDate": 1675983986777, - "contentHash": "d721f44d5890e1e004a04df7a2132f77", + "lastModificationDate": 1677192703826, + "contentHash": "be5a0dde7e87c1d413822ccf2ea857d1", "sourceName": "src/Vesting.sol", "solcConfig": { "settings": { @@ -731,8 +788,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -743,8 +799,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -755,17 +810,17 @@ "imports": [ "src/extensions/Context.sol", "src/extensions/Ownable.sol", - "src/interfaces/Interfaces.sol" + "src/interfaces/IERC20.sol" ], "versionRequirement": "^0.8.13", "artifacts": { "Vesting": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Vesting.sol/Vesting.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Vesting.sol/Vesting.json" } } }, "src/extensions/Context.sol": { - "lastModificationDate": 1673910167551, + "lastModificationDate": 1666048727268, "contentHash": "58ff29a788235f168f45e8f9cd54a0f3", "sourceName": "src/extensions/Context.sol", "solcConfig": { @@ -775,8 +830,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -787,8 +841,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -800,12 +853,12 @@ "versionRequirement": "^0.8.6", "artifacts": { "Context": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Context.sol/Context.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Context.sol/Context.json" } } }, "src/extensions/Ownable.sol": { - "lastModificationDate": 1673910167554, + "lastModificationDate": 1666048748879, "contentHash": "4dba375b7d8f9a298d15d22922b9cc85", "sourceName": "src/extensions/Ownable.sol", "solcConfig": { @@ -815,8 +868,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -827,8 +879,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -842,14 +893,14 @@ "versionRequirement": "^0.8.4", "artifacts": { "Ownable": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Ownable.sol/Ownable.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Ownable.sol/Ownable.json" } } }, - "src/interfaces/Interfaces.sol": { - "lastModificationDate": 1673910167557, - "contentHash": "41a7ba920bd7f684d7d78ca2f4a4478e", - "sourceName": "src/interfaces/Interfaces.sol", + "src/interfaces/ERC20.sol": { + "lastModificationDate": 1677191384008, + "contentHash": "93546a19bfd21d265d795fda9435974e", + "sourceName": "src/interfaces/ERC20.sol", "solcConfig": { "settings": { "optimizer": { @@ -857,8 +908,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -869,8 +919,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -878,47 +927,263 @@ "libraries": {} } }, - "imports": [], + "imports": [ + "src/extensions/Context.sol", + "src/interfaces/IERC20.sol" + ], "versionRequirement": "^0.8.6", "artifacts": { - "AggregatorInterface": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/AggregatorInterface.json" - }, - "IDAO": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IDAO.json" - }, - "IDividendPayingToken": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IDividendPayingToken.json" - }, - "IDividendPayingTokenOptional": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IDividendPayingTokenOptional.json" + "ERC20": { + "0.8.15+commit.e14f2714.Linux.gcc": "ERC20.sol/ERC20.json" }, + "SafeMath": { + "0.8.15+commit.e14f2714.Linux.gcc": "ERC20.sol/SafeMath.json" + } + } + }, + "src/interfaces/IERC20.sol": { + "lastModificationDate": 1677191294674, + "contentHash": "0d5f268625dfab773a031f4fae7f8752", + "sourceName": "src/interfaces/IERC20.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.6", + "artifacts": { "IERC20": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IERC20.json" + "0.8.15+commit.e14f2714.Linux.gcc": "IERC20.sol/IERC20.json" }, "IERC20Extended": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IERC20Extended.json" - }, + "0.8.15+commit.e14f2714.Linux.gcc": "IERC20.sol/IERC20Extended.json" + } + } + }, + "src/interfaces/IUniswapV2Factory.sol": { + "lastModificationDate": 1677191294675, + "contentHash": "3b94ae5d4a6707147a96923b345197d1", + "sourceName": "src/interfaces/IUniswapV2Factory.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.6", + "artifacts": { "IUniswapV2Factory": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IUniswapV2Factory.json" - }, + "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Factory.sol/IUniswapV2Factory.json" + } + } + }, + "src/interfaces/IUniswapV2Pair.sol": { + "lastModificationDate": 1677191294674, + "contentHash": "8631347a590a7b494a262fafd1276f8c", + "sourceName": "src/interfaces/IUniswapV2Pair.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.6", + "artifacts": { "IUniswapV2Pair": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IUniswapV2Pair.json" - }, + "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Pair.sol/IUniswapV2Pair.json" + } + } + }, + "src/interfaces/IUniswapV2Router.sol": { + "lastModificationDate": 1677191294674, + "contentHash": "e1176fa15ddf5d62d79d6cbf1025e7d1", + "sourceName": "src/interfaces/IUniswapV2Router.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.6", + "artifacts": { "IUniswapV2Router01": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IUniswapV2Router01.json" + "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Router.sol/IUniswapV2Router01.json" }, "IUniswapV2Router02": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IUniswapV2Router02.json" + "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Router.sol/IUniswapV2Router02.json" + } + } + }, + "src/interfaces/InterfacesAggregated.sol": { + "lastModificationDate": 1677191294672, + "contentHash": "61e39d3fe3f0e71682551f36c043c17d", + "sourceName": "src/interfaces/InterfacesAggregated.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.6", + "artifacts": { + "ITreasury": { + "0.8.15+commit.e14f2714.Linux.gcc": "InterfacesAggregated.sol/ITreasury.json" }, - "IWETH": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Interfaces.sol/IWETH.json" + "IUniswapV2Factory": { + "0.8.15+commit.e14f2714.Linux.gcc": "InterfacesAggregated.sol/IUniswapV2Factory.json" + }, + "IVesting": { + "0.8.15+commit.e14f2714.Linux.gcc": "InterfacesAggregated.sol/IVesting.json" + } + } + }, + "src/libraries/SafeMath.sol": { + "lastModificationDate": 1677191294677, + "contentHash": "e6a68bd2e7aefab1a422d6629913316b", + "sourceName": "src/libraries/SafeMath.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.0", + "artifacts": { + "SafeMath": { + "0.8.15+commit.e14f2714.Linux.gcc": "SafeMath.sol/SafeMath.json" } } }, "src/users/Actor.sol": { - "lastModificationDate": 1675357114771, - "contentHash": "8410b927a661b953ba526c946f32f543", + "lastModificationDate": 1677191338396, + "contentHash": "c65d3387dc77540b00756d51672cc313", "sourceName": "src/users/Actor.sol", "solcConfig": { "settings": { @@ -927,8 +1192,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -939,8 +1203,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -949,18 +1212,83 @@ } }, "imports": [ - "src/interfaces/Interfaces.sol" + "src/interfaces/IERC20.sol" ], "versionRequirement": "^0.8.6", "artifacts": { "Actor": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Actor.sol/Actor.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Actor.sol/Actor.json" + } + } + }, + "test/MainDeployment.t.sol": { + "lastModificationDate": 1677193158679, + "contentHash": "25357744f92dba89d8efd75ab0e379b9", + "sourceName": "test/MainDeployment.t.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers" + ] + } + }, + "evmVersion": "london", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/lib/ds-test/src/test.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/StdAssertions.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdError.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Test.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "src/TaxToken.sol", + "src/Treasury.sol", + "src/Vesting.sol", + "src/extensions/Context.sol", + "src/extensions/Ownable.sol", + "src/interfaces/ERC20.sol", + "src/interfaces/IERC20.sol", + "src/interfaces/IUniswapV2Factory.sol", + "src/interfaces/IUniswapV2Router.sol", + "src/interfaces/InterfacesAggregated.sol", + "src/users/Actor.sol", + "test/Utility.sol" + ], + "versionRequirement": "^0.8.13", + "artifacts": { + "MainDeploymentTest": { + "0.8.15+commit.e14f2714.Linux.gcc": "MainDeployment.t.sol/MainDeploymentTest.json" } } }, "test/Utility.sol": { - "lastModificationDate": 1673910167565, - "contentHash": "fda4e3be9af9e1364615c579212a238f", + "lastModificationDate": 1677191930205, + "contentHash": "76ab54711b0825e617d0ce7de5639cd8", "sourceName": "test/Utility.sol", "solcConfig": { "settings": { @@ -969,8 +1297,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -981,8 +1308,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -1005,25 +1331,25 @@ "lib/forge-std/src/Vm.sol", "lib/forge-std/src/console.sol", "lib/forge-std/src/console2.sol", - "src/interfaces/Interfaces.sol", + "src/interfaces/IERC20.sol", "src/users/Actor.sol" ], "versionRequirement": "^0.8.6", "artifacts": { "Hevm": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Utility.sol/Hevm.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Utility.sol/Hevm.json" }, "User": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Utility.sol/User.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Utility.sol/User.json" }, "Utility": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Utility.sol/Utility.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Utility.sol/Utility.json" } } }, "test/Vesting.t.sol": { - "lastModificationDate": 1676328845482, - "contentHash": "9a809d2575627c6315c59f1ede1939ba", + "lastModificationDate": 1677192779270, + "contentHash": "03b084edd55931c61794c7e5f2b31e8e", "sourceName": "test/Vesting.t.sol", "solcConfig": { "settings": { @@ -1032,8 +1358,7 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs", - "appendCBOR": true + "bytecodeHash": "ipfs" }, "outputSelection": { "*": { @@ -1044,8 +1369,7 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" + "evm.methodIdentifiers" ] } }, @@ -1071,14 +1395,14 @@ "src/Vesting.sol", "src/extensions/Context.sol", "src/extensions/Ownable.sol", - "src/interfaces/Interfaces.sol", + "src/interfaces/IERC20.sol", "src/users/Actor.sol", "test/Utility.sol" ], "versionRequirement": "^0.8.13", "artifacts": { "VestingTest": { - "0.8.17+commit.8df45f5f.Linux.gcc": "Vesting.t.sol/VestingTest.json" + "0.8.15+commit.e14f2714.Linux.gcc": "Vesting.t.sol/VestingTest.json" } } } diff --git a/out/Actor.sol/Actor.json b/out/Actor.sol/Actor.json index 1863552..0945b22 100644 --- a/out/Actor.sol/Actor.json +++ b/out/Actor.sol/Actor.json @@ -141,13 +141,13 @@ } ], "bytecode": { - "object": "0x608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea26469706673582212202284e67777fca07e29094068d3e700ce3ff463464acf1e2573fcb253960d116864736f6c63430008110033", - "sourceMap": "167:1862:20:-:0;;;;;;;;;;;;;;;;;;;", + "object": "0x608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033", + "sourceMap": "163:1862:28:-:0;;;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea26469706673582212202284e67777fca07e29094068d3e700ce3ff463464acf1e2573fcb253960d116864736f6c63430008110033", - "sourceMap": "167:1862:20:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;735:230;;;;;;:::i;:::-;;:::i;:::-;;;622:14:23;;615:22;597:41;;585:2;570:18;735:230:20;;;;;;;1065:274;;;;;;:::i;:::-;;:::i;1591:240::-;;;;;;:::i;:::-;;:::i;1839:185::-;;;;;;:::i;:::-;;:::i;1347:236::-;;;;;;:::i;:::-;;:::i;526:201::-;;;;;;:::i;:::-;;:::i;735:230::-;834:44;;;;;;;;;;;-1:-1:-1;;;834:44:20;;;;921:35;;-1:-1:-1;;;;;1337:32:23;;;921:35:20;;;1319:51:23;814:7:20;;834:44;897:23;;;;834:44;;1292:18:23;;921:35:20;;;;-1:-1:-1;;921:35:20;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;921:35:20;-1:-1:-1;;;;;;921:35:20;;;;;;;;;897:60;;;921:35;897:60;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;889:68:20;;735:230;-1:-1:-1;;;;;735:230:20:o;1065:274::-;1186:50;;;;;;;;;;;;;;;;1279:51;;-1:-1:-1;;;;;2414:32:23;;;1279:51:20;;;2396::23;2463:18;;;2456:34;;;1166:7:20;;1186:50;1255:23;;;;1186:50;;2369:18:23;;1279:51:20;;;-1:-1:-1;;1279:51:20;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1279:51:20;-1:-1:-1;;;;;;1279:51:20;;;;;;;;;1255:76;;;1279:51;1255:76;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1247:84:20;;1065:274;-1:-1:-1;;;;;;1065:274:20:o;1591:240::-;1695:47;;;;;;;;;;;;;;;;1785:37;;-1:-1:-1;;;;;1337:32:23;;;1785:37:20;;;1319:51:23;1675:7:20;;1695:47;1761:23;;;;1695:47;;1292:18:23;;1785:37:20;1173:203:23;1839:185:20;1915:29;;;;;;;;;;;-1:-1:-1;;;1915:29:20;;;;1987:28;;;;;;;;;;;;1895:7;;-1:-1:-1;;;;;1963:23:20;;;1987:28;;;1915:29;;1987:28;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1987:28:20;-1:-1:-1;;;;;;1987:28:20;;;;;;;;;1963:53;;;1987:28;1963:53;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1955:61:20;;1839:185;-1:-1:-1;;;;1839:185:20:o;1347:236::-;1449:45;;;;;;;;;;;;;;;;1537:37;;-1:-1:-1;;;;;1337:32:23;;;1537:37:20;;;1319:51:23;1429:7:20;;1449:45;1513:23;;;;1449:45;;1292:18:23;;1537:37:20;1173:203:23;526:201:20;610:37;;;;;;;;;;;-1:-1:-1;;;610:37:20;;;;690:28;;;;;;;;;;;;590:7;;-1:-1:-1;;;;;666:23:20;;;690:28;;;610:37;;690:28;:::i;14:173:23:-;82:20;;-1:-1:-1;;;;;131:31:23;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:260::-;260:6;268;321:2;309:9;300:7;296:23;292:32;289:52;;;337:1;334;327:12;289:52;360:29;379:9;360:29;:::i;:::-;350:39;;408:38;442:2;431:9;427:18;408:38;:::i;:::-;398:48;;192:260;;;;;:::o;649:328::-;726:6;734;742;795:2;783:9;774:7;770:23;766:32;763:52;;;811:1;808;801:12;763:52;834:29;853:9;834:29;:::i;:::-;824:39;;882:38;916:2;905:9;901:18;882:38;:::i;:::-;872:48;;967:2;956:9;952:18;939:32;929:42;;649:328;;;;;:::o;982:186::-;1041:6;1094:2;1082:9;1073:7;1069:23;1065:32;1062:52;;;1110:1;1107;1100:12;1062:52;1133:29;1152:9;1133:29;:::i;:::-;1123:39;982:186;-1:-1:-1;;;982:186:23:o;1381:250::-;1466:1;1476:113;1490:6;1487:1;1484:13;1476:113;;;1566:11;;;1560:18;1547:11;;;1540:39;1512:2;1505:10;1476:113;;;-1:-1:-1;;1623:1:23;1605:16;;1598:27;1381:250::o;1636:289::-;1767:3;1805:6;1799:13;1821:66;1880:6;1875:3;1868:4;1860:6;1856:17;1821:66;:::i;:::-;1903:16;;;;;1636:289;-1:-1:-1;;1636:289:23:o", + "object": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033", + "sourceMap": "163:1862:28:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;731:230;;;;;;:::i;:::-;;:::i;:::-;;;622:14:32;;615:22;597:41;;585:2;570:18;731:230:28;;;;;;;1061:274;;;;;;:::i;:::-;;:::i;1587:240::-;;;;;;:::i;:::-;;:::i;1835:185::-;;;;;;:::i;:::-;;:::i;1343:236::-;;;;;;:::i;:::-;;:::i;522:201::-;;;;;;:::i;:::-;;:::i;731:230::-;830:44;;;;;;;;;;;-1:-1:-1;;;830:44:28;;;;917:35;;-1:-1:-1;;;;;1337:32:32;;;917:35:28;;;1319:51:32;810:7:28;;830:44;893:23;;;;830:44;;1292:18:32;;917:35:28;;;;-1:-1:-1;;917:35:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;917:35:28;-1:-1:-1;;;;;;917:35:28;;;;;;;;;893:60;;;917:35;893:60;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;885:68:28;;731:230;-1:-1:-1;;;;;731:230:28:o;1061:274::-;1182:50;;;;;;;;;;;;;;;;1275:51;;-1:-1:-1;;;;;2396:32:32;;;1275:51:28;;;2378::32;2445:18;;;2438:34;;;1162:7:28;;1182:50;1251:23;;;;1182:50;;2351:18:32;;1275:51:28;;;-1:-1:-1;;1275:51:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1275:51:28;-1:-1:-1;;;;;;1275:51:28;;;;;;;;;1251:76;;;1275:51;1251:76;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1243:84:28;;1061:274;-1:-1:-1;;;;;;1061:274:28:o;1587:240::-;1691:47;;;;;;;;;;;;;;;;1781:37;;-1:-1:-1;;;;;1337:32:32;;;1781:37:28;;;1319:51:32;1671:7:28;;1691:47;1757:23;;;;1691:47;;1292:18:32;;1781:37:28;1173:203:32;1835:185:28;1911:29;;;;;;;;;;;-1:-1:-1;;;1911:29:28;;;;1983:28;;;;;;;;;;;;1891:7;;-1:-1:-1;;;;;1959:23:28;;;1983:28;;;1911:29;;1983:28;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1983:28:28;-1:-1:-1;;;;;;1983:28:28;;;;;;;;;1959:53;;;1983:28;1959:53;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1951:61:28;;1835:185;-1:-1:-1;;;;1835:185:28:o;1343:236::-;1445:45;;;;;;;;;;;;;;;;1533:37;;-1:-1:-1;;;;;1337:32:32;;;1533:37:28;;;1319:51:32;1425:7:28;;1445:45;1509:23;;;;1445:45;;1292:18:32;;1533:37:28;1173:203:32;522:201:28;606:37;;;;;;;;;;;-1:-1:-1;;;606:37:28;;;;686:28;;;;;;;;;;;;586:7;;-1:-1:-1;;;;;662:23:28;;;686:28;;;606:37;;686:28;:::i;14:173:32:-;82:20;;-1:-1:-1;;;;;131:31:32;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:260::-;260:6;268;321:2;309:9;300:7;296:23;292:32;289:52;;;337:1;334;327:12;289:52;360:29;379:9;360:29;:::i;:::-;350:39;;408:38;442:2;431:9;427:18;408:38;:::i;:::-;398:48;;192:260;;;;;:::o;649:328::-;726:6;734;742;795:2;783:9;774:7;770:23;766:32;763:52;;;811:1;808;801:12;763:52;834:29;853:9;834:29;:::i;:::-;824:39;;882:38;916:2;905:9;901:18;882:38;:::i;:::-;872:48;;967:2;956:9;952:18;939:32;929:42;;649:328;;;;;:::o;982:186::-;1041:6;1094:2;1082:9;1073:7;1069:23;1065:32;1062:52;;;1110:1;1107;1100:12;1062:52;1133:29;1152:9;1133:29;:::i;:::-;1123:39;982:186;-1:-1:-1;;;982:186:32:o;1381:258::-;1453:1;1463:113;1477:6;1474:1;1471:13;1463:113;;;1553:11;;;1547:18;1534:11;;;1527:39;1499:2;1492:10;1463:113;;;1594:6;1591:1;1588:13;1585:48;;;1629:1;1620:6;1615:3;1611:16;1604:27;1585:48;;1381:258;;;:::o;1644:276::-;1775:3;1813:6;1807:13;1829:53;1875:6;1870:3;1863:4;1855:6;1851:17;1829:53;:::i;:::-;1898:16;;;;;1644:276;-1:-1:-1;;1644:276:32:o", "linkReferences": {} }, "methodIdentifiers": { @@ -158,228 +158,24 @@ "try_removeInvestor(address,address)": "d0b940f4", "try_withdrawErc20(address,address)": "05e31e36" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokensToVest\",\"type\":\"uint256\"}],\"name\":\"try_addInvestor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"name\":\"try_claim\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"name\":\"try_enableVesting\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"try_getAmountToClaim\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"try_removeInvestor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"try_withdrawErc20\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"try_addInvestor(address,address,uint256)\":{\"notice\":\"Ensure, when creating the sig -> leave no spaces between param data types.\"},\"try_enableVesting(address)\":{\"notice\":\"PROVE VESTING ///\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/users/Actor.sol\":\"Actor\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/Interfaces.sol\":{\"keccak256\":\"0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7\",\"dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a\",\"dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - }, - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokensToVest", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "try_addInvestor", - "outputs": [ - { - "internalType": "bool", - "name": "ok", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "try_claim", - "outputs": [ - { - "internalType": "bool", - "name": "ok", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "try_enableVesting", - "outputs": [ - { - "internalType": "bool", - "name": "ok", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - }, - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "try_getAmountToClaim", - "outputs": [ - { - "internalType": "bool", - "name": "ok", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - }, - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "try_removeInvestor", - "outputs": [ - { - "internalType": "bool", - "name": "ok", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_contract", - "type": "address" - }, - { - "internalType": "address", - "name": "token", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "try_withdrawErc20", - "outputs": [ - { - "internalType": "bool", - "name": "ok", - "type": "bool" - } - ] - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": { - "try_addInvestor(address,address,uint256)": { - "notice": "Ensure, when creating the sig -> leave no spaces between param data types." - }, - "try_enableVesting(address)": { - "notice": "PROVE VESTING ///" - } - }, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "src/users/Actor.sol": "Actor" - }, - "libraries": {} - }, - "sources": { - "src/interfaces/Interfaces.sol": { - "keccak256": "0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04", - "urls": [ - "bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7", - "dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX" - ], - "license": "GPL-3.0-or-later" - }, - "src/users/Actor.sol": { - "keccak256": "0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e", - "urls": [ - "bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a", - "dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb" - ], - "license": "AGPL-3.0-or-later" - } - }, - "version": 1 - }, "ast": { "absolutePath": "src/users/Actor.sol", - "id": 27386, + "id": 30365, "exportedSymbols": { "Actor": [ - 27385 + 30364 ], "IERC20": [ - 26425 + 29143 ] }, "nodeType": "SourceUnit", - "src": "47:1982:20", + "src": "47:1978:28", "nodes": [ { - "id": 27208, + "id": 30187, "nodeType": "PragmaDirective", - "src": "47:23:20", - "nodes": [], + "src": "47:23:28", "literals": [ "solidity", "^", @@ -388,34 +184,32 @@ ] }, { - "id": 27209, + "id": 30188, "nodeType": "PragmaDirective", - "src": "72:33:20", - "nodes": [], + "src": "72:33:28", "literals": [ "experimental", "ABIEncoderV2" ] }, { - "id": 27211, + "id": 30190, "nodeType": "ImportDirective", - "src": "109:54:20", - "nodes": [], - "absolutePath": "src/interfaces/Interfaces.sol", - "file": "../interfaces/Interfaces.sol", + "src": "109:50:28", + "absolutePath": "src/interfaces/IERC20.sol", + "file": "../interfaces/IERC20.sol", "nameLocation": "-1:-1:-1", - "scope": 27386, - "sourceUnit": 27207, + "scope": 30365, + "sourceUnit": 29152, "symbolAliases": [ { "foreign": { - "id": 27210, + "id": 30189, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "118:6:20", + "referencedDeclaration": 29143, + "src": "118:6:28", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" @@ -424,35 +218,33 @@ "unitAlias": "" }, { - "id": 27385, + "id": 30364, "nodeType": "ContractDefinition", - "src": "167:1862:20", + "src": "163:1862:28", "nodes": [ { - "id": 27238, + "id": 30217, "nodeType": "FunctionDefinition", - "src": "526:201:20", - "nodes": [], + "src": "522:201:28", "body": { - "id": 27237, + "id": 30216, "nodeType": "Block", - "src": "599:128:20", - "nodes": [], + "src": "595:128:28", "statements": [ { "assignments": [ - 27220 + 30199 ], "declarations": [ { "constant": false, - "id": 27220, + "id": 30199, "mutability": "mutable", "name": "sig", - "nameLocation": "624:3:20", + "nameLocation": "620:3:28", "nodeType": "VariableDeclaration", - "scope": 27237, - "src": "610:17:20", + "scope": 30216, + "src": "606:17:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -460,10 +252,10 @@ "typeString": "string" }, "typeName": { - "id": 27219, + "id": 30198, "name": "string", "nodeType": "ElementaryTypeName", - "src": "610:6:20", + "src": "606:6:28", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -472,17 +264,17 @@ "visibility": "internal" } ], - "id": 27222, + "id": 30201, "initialValue": { "hexValue": "656e61626c6556657374696e672829", - "id": 27221, + "id": 30200, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "630:17:20", + "src": "626:17:28", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b904cb7e54f9eebff123533c7619ffeccd13e2189b4b54a78d9a17ede0e3f58", "typeString": "literal_string \"enableVesting()\"" @@ -490,11 +282,11 @@ "value": "enableVesting()" }, "nodeType": "VariableDeclarationStatement", - "src": "610:37:20" + "src": "606:37:28" }, { "expression": { - "id": 27235, + "id": 30214, "isConstant": false, "isLValue": false, "isPure": false, @@ -502,12 +294,12 @@ "leftHandSide": { "components": [ { - "id": 27223, + "id": 30202, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27217, - "src": "659:2:20", + "referencedDeclaration": 30196, + "src": "655:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -515,14 +307,14 @@ }, null ], - "id": 27224, + "id": 30203, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "658:5:20", + "src": "654:5:28", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$__$", "typeString": "tuple(bool,)" @@ -535,12 +327,12 @@ { "arguments": [ { - "id": 27232, + "id": 30211, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27220, - "src": "714:3:20", + "referencedDeclaration": 30199, + "src": "710:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -555,41 +347,39 @@ } ], "expression": { - "id": 27230, + "id": 30209, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "690:3:20", + "src": "686:3:28", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27231, + "id": 30210, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "694:19:20", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", - "src": "690:23:20", + "src": "686:23:28", "typeDescriptions": { "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 27233, + "id": 30212, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "690:28:20", + "src": "686:28:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -607,12 +397,12 @@ "expression": { "arguments": [ { - "id": 27227, + "id": 30206, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27214, - "src": "674:9:20", + "referencedDeclaration": 30193, + "src": "670:9:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -626,87 +416,84 @@ "typeString": "address" } ], - "id": 27226, + "id": 30205, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "666:7:20", + "src": "662:7:28", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27225, + "id": 30204, "name": "address", "nodeType": "ElementaryTypeName", - "src": "666:7:20", + "src": "662:7:28", "typeDescriptions": {} } }, - "id": 27228, + "id": 30207, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "666:18:20", + "src": "662:18:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27229, + "id": 30208, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "685:4:20", "memberName": "call", "nodeType": "MemberAccess", - "src": "666:23:20", + "src": "662:23:28", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 27234, + "id": 30213, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "666:53:20", + "src": "662:53:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, - "src": "658:61:20", + "src": "654:61:28", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27236, + "id": 30215, "nodeType": "ExpressionStatement", - "src": "658:61:20" + "src": "654:61:28" } ] }, "documentation": { - "id": 27212, + "id": 30191, "nodeType": "StructuredDocumentation", - "src": "362:74:20", + "src": "358:74:28", "text": "PROVE VESTING ///" }, "functionSelector": "dbc82daa", @@ -714,20 +501,20 @@ "kind": "function", "modifiers": [], "name": "try_enableVesting", - "nameLocation": "535:17:20", + "nameLocation": "531:17:28", "parameters": { - "id": 27215, + "id": 30194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27214, + "id": 30193, "mutability": "mutable", "name": "_contract", - "nameLocation": "561:9:20", + "nameLocation": "557:9:28", "nodeType": "VariableDeclaration", - "scope": 27238, - "src": "553:17:20", + "scope": 30217, + "src": "549:17:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -735,10 +522,10 @@ "typeString": "address" }, "typeName": { - "id": 27213, + "id": 30192, "name": "address", "nodeType": "ElementaryTypeName", - "src": "553:7:20", + "src": "549:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -748,21 +535,21 @@ "visibility": "internal" } ], - "src": "552:19:20" + "src": "548:19:28" }, "returnParameters": { - "id": 27218, + "id": 30197, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27217, + "id": 30196, "mutability": "mutable", "name": "ok", - "nameLocation": "595:2:20", + "nameLocation": "591:2:28", "nodeType": "VariableDeclaration", - "scope": 27238, - "src": "590:7:20", + "scope": 30217, + "src": "586:7:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -770,10 +557,10 @@ "typeString": "bool" }, "typeName": { - "id": 27216, + "id": 30195, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "590:4:20", + "src": "586:4:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -782,38 +569,36 @@ "visibility": "internal" } ], - "src": "589:9:20" + "src": "585:9:28" }, - "scope": 27385, + "scope": 30364, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27267, + "id": 30246, "nodeType": "FunctionDefinition", - "src": "735:230:20", - "nodes": [], + "src": "731:230:28", "body": { - "id": 27266, + "id": 30245, "nodeType": "Block", - "src": "823:142:20", - "nodes": [], + "src": "819:142:28", "statements": [ { "assignments": [ - 27248 + 30227 ], "declarations": [ { "constant": false, - "id": 27248, + "id": 30227, "mutability": "mutable", "name": "sig", - "nameLocation": "848:3:20", + "nameLocation": "844:3:28", "nodeType": "VariableDeclaration", - "scope": 27266, - "src": "834:17:20", + "scope": 30245, + "src": "830:17:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -821,10 +606,10 @@ "typeString": "string" }, "typeName": { - "id": 27247, + "id": 30226, "name": "string", "nodeType": "ElementaryTypeName", - "src": "834:6:20", + "src": "830:6:28", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -833,17 +618,17 @@ "visibility": "internal" } ], - "id": 27250, + "id": 30229, "initialValue": { "hexValue": "77697468647261774572633230286164647265737329", - "id": 27249, + "id": 30228, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "854:24:20", + "src": "850:24:28", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c7e42b1b926b05c49c77b1ca7a31f7dd18e743335e799f375119f138d2792186", "typeString": "literal_string \"withdrawErc20(address)\"" @@ -851,11 +636,11 @@ "value": "withdrawErc20(address)" }, "nodeType": "VariableDeclarationStatement", - "src": "834:44:20" + "src": "830:44:28" }, { "expression": { - "id": 27264, + "id": 30243, "isConstant": false, "isLValue": false, "isPure": false, @@ -863,12 +648,12 @@ "leftHandSide": { "components": [ { - "id": 27251, + "id": 30230, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27245, - "src": "890:2:20", + "referencedDeclaration": 30224, + "src": "886:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -876,14 +661,14 @@ }, null ], - "id": 27252, + "id": 30231, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "889:5:20", + "src": "885:5:28", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$__$", "typeString": "tuple(bool,)" @@ -896,24 +681,24 @@ { "arguments": [ { - "id": 27260, + "id": 30239, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27248, - "src": "945:3:20", + "referencedDeclaration": 30227, + "src": "941:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { - "id": 27261, + "id": 30240, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27242, - "src": "950:5:20", + "referencedDeclaration": 30221, + "src": "946:5:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -932,41 +717,39 @@ } ], "expression": { - "id": 27258, + "id": 30237, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "921:3:20", + "src": "917:3:28", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27259, + "id": 30238, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "925:19:20", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", - "src": "921:23:20", + "src": "917:23:28", "typeDescriptions": { "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 27262, + "id": 30241, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "921:35:20", + "src": "917:35:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -984,12 +767,12 @@ "expression": { "arguments": [ { - "id": 27255, + "id": 30234, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27240, - "src": "905:9:20", + "referencedDeclaration": 30219, + "src": "901:9:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1003,80 +786,77 @@ "typeString": "address" } ], - "id": 27254, + "id": 30233, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "897:7:20", + "src": "893:7:28", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27253, + "id": 30232, "name": "address", "nodeType": "ElementaryTypeName", - "src": "897:7:20", + "src": "893:7:28", "typeDescriptions": {} } }, - "id": 27256, + "id": 30235, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "897:18:20", + "src": "893:18:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27257, + "id": 30236, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "916:4:20", "memberName": "call", "nodeType": "MemberAccess", - "src": "897:23:20", + "src": "893:23:28", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 27263, + "id": 30242, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "897:60:20", + "src": "893:60:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, - "src": "889:68:20", + "src": "885:68:28", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27265, + "id": 30244, "nodeType": "ExpressionStatement", - "src": "889:68:20" + "src": "885:68:28" } ] }, @@ -1085,20 +865,20 @@ "kind": "function", "modifiers": [], "name": "try_withdrawErc20", - "nameLocation": "744:17:20", + "nameLocation": "740:17:28", "parameters": { - "id": 27243, + "id": 30222, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27240, + "id": 30219, "mutability": "mutable", "name": "_contract", - "nameLocation": "770:9:20", + "nameLocation": "766:9:28", "nodeType": "VariableDeclaration", - "scope": 27267, - "src": "762:17:20", + "scope": 30246, + "src": "758:17:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1106,10 +886,10 @@ "typeString": "address" }, "typeName": { - "id": 27239, + "id": 30218, "name": "address", "nodeType": "ElementaryTypeName", - "src": "762:7:20", + "src": "758:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1120,13 +900,13 @@ }, { "constant": false, - "id": 27242, + "id": 30221, "mutability": "mutable", "name": "token", - "nameLocation": "789:5:20", + "nameLocation": "785:5:28", "nodeType": "VariableDeclaration", - "scope": 27267, - "src": "781:13:20", + "scope": 30246, + "src": "777:13:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1134,10 +914,10 @@ "typeString": "address" }, "typeName": { - "id": 27241, + "id": 30220, "name": "address", "nodeType": "ElementaryTypeName", - "src": "781:7:20", + "src": "777:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1147,21 +927,21 @@ "visibility": "internal" } ], - "src": "761:34:20" + "src": "757:34:28" }, "returnParameters": { - "id": 27246, + "id": 30225, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27245, + "id": 30224, "mutability": "mutable", "name": "ok", - "nameLocation": "819:2:20", + "nameLocation": "815:2:28", "nodeType": "VariableDeclaration", - "scope": 27267, - "src": "814:7:20", + "scope": 30246, + "src": "810:7:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1169,10 +949,10 @@ "typeString": "bool" }, "typeName": { - "id": 27244, + "id": 30223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "814:4:20", + "src": "810:4:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1181,38 +961,36 @@ "visibility": "internal" } ], - "src": "813:9:20" + "src": "809:9:28" }, - "scope": 27385, + "scope": 30364, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27300, + "id": 30279, "nodeType": "FunctionDefinition", - "src": "1065:274:20", - "nodes": [], + "src": "1061:274:28", "body": { - "id": 27299, + "id": 30278, "nodeType": "Block", - "src": "1175:164:20", - "nodes": [], + "src": "1171:164:28", "statements": [ { "assignments": [ - 27280 + 30259 ], "declarations": [ { "constant": false, - "id": 27280, + "id": 30259, "mutability": "mutable", "name": "sig", - "nameLocation": "1200:3:20", + "nameLocation": "1196:3:28", "nodeType": "VariableDeclaration", - "scope": 27299, - "src": "1186:17:20", + "scope": 30278, + "src": "1182:17:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -1220,10 +998,10 @@ "typeString": "string" }, "typeName": { - "id": 27279, + "id": 30258, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1186:6:20", + "src": "1182:6:28", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1232,17 +1010,17 @@ "visibility": "internal" } ], - "id": 27282, + "id": 30261, "initialValue": { "hexValue": "616464496e766573746f7228616464726573732c75696e7432353629", - "id": 27281, + "id": 30260, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1206:30:20", + "src": "1202:30:28", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ec20b457b4d36c8323d61cf7279b5e11d170be5c3979a7ff2b1037d4e746e0b3", "typeString": "literal_string \"addInvestor(address,uint256)\"" @@ -1250,11 +1028,11 @@ "value": "addInvestor(address,uint256)" }, "nodeType": "VariableDeclarationStatement", - "src": "1186:50:20" + "src": "1182:50:28" }, { "expression": { - "id": 27297, + "id": 30276, "isConstant": false, "isLValue": false, "isPure": false, @@ -1262,12 +1040,12 @@ "leftHandSide": { "components": [ { - "id": 27283, + "id": 30262, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27277, - "src": "1248:2:20", + "referencedDeclaration": 30256, + "src": "1244:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1275,14 +1053,14 @@ }, null ], - "id": 27284, + "id": 30263, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "1247:5:20", + "src": "1243:5:28", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$__$", "typeString": "tuple(bool,)" @@ -1295,36 +1073,36 @@ { "arguments": [ { - "id": 27292, + "id": 30271, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27280, - "src": "1303:3:20", + "referencedDeclaration": 30259, + "src": "1299:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { - "id": 27293, + "id": 30272, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27272, - "src": "1308:7:20", + "referencedDeclaration": 30251, + "src": "1304:7:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27294, + "id": 30273, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27274, - "src": "1317:12:20", + "referencedDeclaration": 30253, + "src": "1313:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1347,41 +1125,39 @@ } ], "expression": { - "id": 27290, + "id": 30269, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "1279:3:20", + "src": "1275:3:28", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27291, + "id": 30270, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1283:19:20", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", - "src": "1279:23:20", + "src": "1275:23:28", "typeDescriptions": { "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 27295, + "id": 30274, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1279:51:20", + "src": "1275:51:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -1399,12 +1175,12 @@ "expression": { "arguments": [ { - "id": 27287, + "id": 30266, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27270, - "src": "1263:9:20", + "referencedDeclaration": 30249, + "src": "1259:9:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1418,87 +1194,84 @@ "typeString": "address" } ], - "id": 27286, + "id": 30265, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1255:7:20", + "src": "1251:7:28", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27285, + "id": 30264, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1255:7:20", + "src": "1251:7:28", "typeDescriptions": {} } }, - "id": 27288, + "id": 30267, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1255:18:20", + "src": "1251:18:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27289, + "id": 30268, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1274:4:20", "memberName": "call", "nodeType": "MemberAccess", - "src": "1255:23:20", + "src": "1251:23:28", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 27296, + "id": 30275, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1255:76:20", + "src": "1251:76:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, - "src": "1247:84:20", + "src": "1243:84:28", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27298, + "id": 30277, "nodeType": "ExpressionStatement", - "src": "1247:84:20" + "src": "1243:84:28" } ] }, "documentation": { - "id": 27268, + "id": 30247, "nodeType": "StructuredDocumentation", - "src": "973:86:20", + "src": "969:86:28", "text": "@notice Ensure, when creating the sig -> leave no spaces between param data types." }, "functionSelector": "6c4f94dc", @@ -1506,20 +1279,20 @@ "kind": "function", "modifiers": [], "name": "try_addInvestor", - "nameLocation": "1074:15:20", + "nameLocation": "1070:15:28", "parameters": { - "id": 27275, + "id": 30254, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27270, + "id": 30249, "mutability": "mutable", "name": "_contract", - "nameLocation": "1098:9:20", + "nameLocation": "1094:9:28", "nodeType": "VariableDeclaration", - "scope": 27300, - "src": "1090:17:20", + "scope": 30279, + "src": "1086:17:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1527,10 +1300,10 @@ "typeString": "address" }, "typeName": { - "id": 27269, + "id": 30248, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1090:7:20", + "src": "1086:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1541,13 +1314,13 @@ }, { "constant": false, - "id": 27272, + "id": 30251, "mutability": "mutable", "name": "account", - "nameLocation": "1117:7:20", + "nameLocation": "1113:7:28", "nodeType": "VariableDeclaration", - "scope": 27300, - "src": "1109:15:20", + "scope": 30279, + "src": "1105:15:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1555,10 +1328,10 @@ "typeString": "address" }, "typeName": { - "id": 27271, + "id": 30250, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1109:7:20", + "src": "1105:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1569,13 +1342,13 @@ }, { "constant": false, - "id": 27274, + "id": 30253, "mutability": "mutable", "name": "tokensToVest", - "nameLocation": "1134:12:20", + "nameLocation": "1130:12:28", "nodeType": "VariableDeclaration", - "scope": 27300, - "src": "1126:20:20", + "scope": 30279, + "src": "1122:20:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1583,10 +1356,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27273, + "id": 30252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1126:7:20", + "src": "1122:7:28", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1595,21 +1368,21 @@ "visibility": "internal" } ], - "src": "1089:58:20" + "src": "1085:58:28" }, "returnParameters": { - "id": 27278, + "id": 30257, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27277, + "id": 30256, "mutability": "mutable", "name": "ok", - "nameLocation": "1171:2:20", + "nameLocation": "1167:2:28", "nodeType": "VariableDeclaration", - "scope": 27300, - "src": "1166:7:20", + "scope": 30279, + "src": "1162:7:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1617,10 +1390,10 @@ "typeString": "bool" }, "typeName": { - "id": 27276, + "id": 30255, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1166:4:20", + "src": "1162:4:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1629,38 +1402,36 @@ "visibility": "internal" } ], - "src": "1165:9:20" + "src": "1161:9:28" }, - "scope": 27385, + "scope": 30364, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27329, + "id": 30308, "nodeType": "FunctionDefinition", - "src": "1347:236:20", - "nodes": [], + "src": "1343:236:28", "body": { - "id": 27328, + "id": 30307, "nodeType": "Block", - "src": "1438:145:20", - "nodes": [], + "src": "1434:145:28", "statements": [ { "assignments": [ - 27310 + 30289 ], "declarations": [ { "constant": false, - "id": 27310, + "id": 30289, "mutability": "mutable", "name": "sig", - "nameLocation": "1463:3:20", + "nameLocation": "1459:3:28", "nodeType": "VariableDeclaration", - "scope": 27328, - "src": "1449:17:20", + "scope": 30307, + "src": "1445:17:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -1668,10 +1439,10 @@ "typeString": "string" }, "typeName": { - "id": 27309, + "id": 30288, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1449:6:20", + "src": "1445:6:28", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1680,17 +1451,17 @@ "visibility": "internal" } ], - "id": 27312, + "id": 30291, "initialValue": { "hexValue": "72656d6f7665496e766573746f72286164647265737329", - "id": 27311, + "id": 30290, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1469:25:20", + "src": "1465:25:28", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42714978fc90da191cf3e750d971ea9ece3dcc115c3f414e3381727916678878", "typeString": "literal_string \"removeInvestor(address)\"" @@ -1698,11 +1469,11 @@ "value": "removeInvestor(address)" }, "nodeType": "VariableDeclarationStatement", - "src": "1449:45:20" + "src": "1445:45:28" }, { "expression": { - "id": 27326, + "id": 30305, "isConstant": false, "isLValue": false, "isPure": false, @@ -1710,12 +1481,12 @@ "leftHandSide": { "components": [ { - "id": 27313, + "id": 30292, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27307, - "src": "1506:2:20", + "referencedDeclaration": 30286, + "src": "1502:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1723,14 +1494,14 @@ }, null ], - "id": 27314, + "id": 30293, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "1505:5:20", + "src": "1501:5:28", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$__$", "typeString": "tuple(bool,)" @@ -1743,24 +1514,24 @@ { "arguments": [ { - "id": 27322, + "id": 30301, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27310, - "src": "1561:3:20", + "referencedDeclaration": 30289, + "src": "1557:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { - "id": 27323, + "id": 30302, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27304, - "src": "1566:7:20", + "referencedDeclaration": 30283, + "src": "1562:7:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1779,41 +1550,39 @@ } ], "expression": { - "id": 27320, + "id": 30299, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "1537:3:20", + "src": "1533:3:28", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27321, + "id": 30300, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1541:19:20", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", - "src": "1537:23:20", + "src": "1533:23:28", "typeDescriptions": { "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 27324, + "id": 30303, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1537:37:20", + "src": "1533:37:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -1831,12 +1600,12 @@ "expression": { "arguments": [ { - "id": 27317, + "id": 30296, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27302, - "src": "1521:9:20", + "referencedDeclaration": 30281, + "src": "1517:9:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1850,80 +1619,77 @@ "typeString": "address" } ], - "id": 27316, + "id": 30295, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1513:7:20", + "src": "1509:7:28", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27315, + "id": 30294, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1513:7:20", + "src": "1509:7:28", "typeDescriptions": {} } }, - "id": 27318, + "id": 30297, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1513:18:20", + "src": "1509:18:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27319, + "id": 30298, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1532:4:20", "memberName": "call", "nodeType": "MemberAccess", - "src": "1513:23:20", + "src": "1509:23:28", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 27325, + "id": 30304, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1513:62:20", + "src": "1509:62:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, - "src": "1505:70:20", + "src": "1501:70:28", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27327, + "id": 30306, "nodeType": "ExpressionStatement", - "src": "1505:70:20" + "src": "1501:70:28" } ] }, @@ -1932,20 +1698,20 @@ "kind": "function", "modifiers": [], "name": "try_removeInvestor", - "nameLocation": "1356:18:20", + "nameLocation": "1352:18:28", "parameters": { - "id": 27305, + "id": 30284, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27302, + "id": 30281, "mutability": "mutable", "name": "_contract", - "nameLocation": "1383:9:20", + "nameLocation": "1379:9:28", "nodeType": "VariableDeclaration", - "scope": 27329, - "src": "1375:17:20", + "scope": 30308, + "src": "1371:17:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1953,10 +1719,10 @@ "typeString": "address" }, "typeName": { - "id": 27301, + "id": 30280, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1375:7:20", + "src": "1371:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1967,13 +1733,13 @@ }, { "constant": false, - "id": 27304, + "id": 30283, "mutability": "mutable", "name": "account", - "nameLocation": "1402:7:20", + "nameLocation": "1398:7:28", "nodeType": "VariableDeclaration", - "scope": 27329, - "src": "1394:15:20", + "scope": 30308, + "src": "1390:15:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1981,10 +1747,10 @@ "typeString": "address" }, "typeName": { - "id": 27303, + "id": 30282, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1394:7:20", + "src": "1390:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1994,21 +1760,21 @@ "visibility": "internal" } ], - "src": "1374:36:20" + "src": "1370:36:28" }, "returnParameters": { - "id": 27308, + "id": 30287, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27307, + "id": 30286, "mutability": "mutable", "name": "ok", - "nameLocation": "1434:2:20", + "nameLocation": "1430:2:28", "nodeType": "VariableDeclaration", - "scope": 27329, - "src": "1429:7:20", + "scope": 30308, + "src": "1425:7:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2016,10 +1782,10 @@ "typeString": "bool" }, "typeName": { - "id": 27306, + "id": 30285, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1429:4:20", + "src": "1425:4:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2028,38 +1794,36 @@ "visibility": "internal" } ], - "src": "1428:9:20" + "src": "1424:9:28" }, - "scope": 27385, + "scope": 30364, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27358, + "id": 30337, "nodeType": "FunctionDefinition", - "src": "1591:240:20", - "nodes": [], + "src": "1587:240:28", "body": { - "id": 27357, + "id": 30336, "nodeType": "Block", - "src": "1684:147:20", - "nodes": [], + "src": "1680:147:28", "statements": [ { "assignments": [ - 27339 + 30318 ], "declarations": [ { "constant": false, - "id": 27339, + "id": 30318, "mutability": "mutable", "name": "sig", - "nameLocation": "1709:3:20", + "nameLocation": "1705:3:28", "nodeType": "VariableDeclaration", - "scope": 27357, - "src": "1695:17:20", + "scope": 30336, + "src": "1691:17:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2067,10 +1831,10 @@ "typeString": "string" }, "typeName": { - "id": 27338, + "id": 30317, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1695:6:20", + "src": "1691:6:28", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2079,17 +1843,17 @@ "visibility": "internal" } ], - "id": 27341, + "id": 30320, "initialValue": { "hexValue": "676574416d6f756e74546f436c61696d286164647265737329", - "id": 27340, + "id": 30319, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1715:27:20", + "src": "1711:27:28", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0bca8bcd3535886522318b1c78437c2aaa13a09b67e1c902cd4214f2d9b6ee3e", "typeString": "literal_string \"getAmountToClaim(address)\"" @@ -2097,11 +1861,11 @@ "value": "getAmountToClaim(address)" }, "nodeType": "VariableDeclarationStatement", - "src": "1695:47:20" + "src": "1691:47:28" }, { "expression": { - "id": 27355, + "id": 30334, "isConstant": false, "isLValue": false, "isPure": false, @@ -2109,12 +1873,12 @@ "leftHandSide": { "components": [ { - "id": 27342, + "id": 30321, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27336, - "src": "1754:2:20", + "referencedDeclaration": 30315, + "src": "1750:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2122,14 +1886,14 @@ }, null ], - "id": 27343, + "id": 30322, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "1753:5:20", + "src": "1749:5:28", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$__$", "typeString": "tuple(bool,)" @@ -2142,24 +1906,24 @@ { "arguments": [ { - "id": 27351, + "id": 30330, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27339, - "src": "1809:3:20", + "referencedDeclaration": 30318, + "src": "1805:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { - "id": 27352, + "id": 30331, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27333, - "src": "1814:7:20", + "referencedDeclaration": 30312, + "src": "1810:7:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2178,41 +1942,39 @@ } ], "expression": { - "id": 27349, + "id": 30328, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "1785:3:20", + "src": "1781:3:28", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27350, + "id": 30329, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1789:19:20", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", - "src": "1785:23:20", + "src": "1781:23:28", "typeDescriptions": { "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 27353, + "id": 30332, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1785:37:20", + "src": "1781:37:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2230,12 +1992,12 @@ "expression": { "arguments": [ { - "id": 27346, + "id": 30325, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27331, - "src": "1769:9:20", + "referencedDeclaration": 30310, + "src": "1765:9:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2249,80 +2011,77 @@ "typeString": "address" } ], - "id": 27345, + "id": 30324, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1761:7:20", + "src": "1757:7:28", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27344, + "id": 30323, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1761:7:20", + "src": "1757:7:28", "typeDescriptions": {} } }, - "id": 27347, + "id": 30326, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1761:18:20", + "src": "1757:18:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27348, + "id": 30327, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1780:4:20", "memberName": "call", "nodeType": "MemberAccess", - "src": "1761:23:20", + "src": "1757:23:28", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 27354, + "id": 30333, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1761:62:20", + "src": "1757:62:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, - "src": "1753:70:20", + "src": "1749:70:28", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27356, + "id": 30335, "nodeType": "ExpressionStatement", - "src": "1753:70:20" + "src": "1749:70:28" } ] }, @@ -2331,20 +2090,20 @@ "kind": "function", "modifiers": [], "name": "try_getAmountToClaim", - "nameLocation": "1600:20:20", + "nameLocation": "1596:20:28", "parameters": { - "id": 27334, + "id": 30313, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27331, + "id": 30310, "mutability": "mutable", "name": "_contract", - "nameLocation": "1629:9:20", + "nameLocation": "1625:9:28", "nodeType": "VariableDeclaration", - "scope": 27358, - "src": "1621:17:20", + "scope": 30337, + "src": "1617:17:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2352,10 +2111,10 @@ "typeString": "address" }, "typeName": { - "id": 27330, + "id": 30309, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1621:7:20", + "src": "1617:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2366,13 +2125,13 @@ }, { "constant": false, - "id": 27333, + "id": 30312, "mutability": "mutable", "name": "account", - "nameLocation": "1648:7:20", + "nameLocation": "1644:7:28", "nodeType": "VariableDeclaration", - "scope": 27358, - "src": "1640:15:20", + "scope": 30337, + "src": "1636:15:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2380,10 +2139,10 @@ "typeString": "address" }, "typeName": { - "id": 27332, + "id": 30311, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1640:7:20", + "src": "1636:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2393,21 +2152,21 @@ "visibility": "internal" } ], - "src": "1620:36:20" + "src": "1616:36:28" }, "returnParameters": { - "id": 27337, + "id": 30316, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27336, + "id": 30315, "mutability": "mutable", "name": "ok", - "nameLocation": "1680:2:20", + "nameLocation": "1676:2:28", "nodeType": "VariableDeclaration", - "scope": 27358, - "src": "1675:7:20", + "scope": 30337, + "src": "1671:7:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2415,10 +2174,10 @@ "typeString": "bool" }, "typeName": { - "id": 27335, + "id": 30314, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1675:4:20", + "src": "1671:4:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2427,38 +2186,36 @@ "visibility": "internal" } ], - "src": "1674:9:20" + "src": "1670:9:28" }, - "scope": 27385, + "scope": 30364, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27384, + "id": 30363, "nodeType": "FunctionDefinition", - "src": "1839:185:20", - "nodes": [], + "src": "1835:185:28", "body": { - "id": 27383, + "id": 30362, "nodeType": "Block", - "src": "1904:120:20", - "nodes": [], + "src": "1900:120:28", "statements": [ { "assignments": [ - 27366 + 30345 ], "declarations": [ { "constant": false, - "id": 27366, + "id": 30345, "mutability": "mutable", "name": "sig", - "nameLocation": "1929:3:20", + "nameLocation": "1925:3:28", "nodeType": "VariableDeclaration", - "scope": 27383, - "src": "1915:17:20", + "scope": 30362, + "src": "1911:17:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2466,10 +2223,10 @@ "typeString": "string" }, "typeName": { - "id": 27365, + "id": 30344, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1915:6:20", + "src": "1911:6:28", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2478,17 +2235,17 @@ "visibility": "internal" } ], - "id": 27368, + "id": 30347, "initialValue": { "hexValue": "636c61696d2829", - "id": 27367, + "id": 30346, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1935:9:20", + "src": "1931:9:28", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4e71d92d1cab44b435a6dcbe7dcfe75cf72953916cfa3842f5057ce194aa60e2", "typeString": "literal_string \"claim()\"" @@ -2496,11 +2253,11 @@ "value": "claim()" }, "nodeType": "VariableDeclarationStatement", - "src": "1915:29:20" + "src": "1911:29:28" }, { "expression": { - "id": 27381, + "id": 30360, "isConstant": false, "isLValue": false, "isPure": false, @@ -2508,12 +2265,12 @@ "leftHandSide": { "components": [ { - "id": 27369, + "id": 30348, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27363, - "src": "1956:2:20", + "referencedDeclaration": 30342, + "src": "1952:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2521,14 +2278,14 @@ }, null ], - "id": 27370, + "id": 30349, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "1955:5:20", + "src": "1951:5:28", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$__$", "typeString": "tuple(bool,)" @@ -2541,12 +2298,12 @@ { "arguments": [ { - "id": 27378, + "id": 30357, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27366, - "src": "2011:3:20", + "referencedDeclaration": 30345, + "src": "2007:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2561,41 +2318,39 @@ } ], "expression": { - "id": 27376, + "id": 30355, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "1987:3:20", + "src": "1983:3:28", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27377, + "id": 30356, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1991:19:20", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", - "src": "1987:23:20", + "src": "1983:23:28", "typeDescriptions": { "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 27379, + "id": 30358, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1987:28:20", + "src": "1983:28:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2613,12 +2368,12 @@ "expression": { "arguments": [ { - "id": 27373, + "id": 30352, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27360, - "src": "1971:9:20", + "referencedDeclaration": 30339, + "src": "1967:9:28", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2632,80 +2387,77 @@ "typeString": "address" } ], - "id": 27372, + "id": 30351, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1963:7:20", + "src": "1959:7:28", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27371, + "id": 30350, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1963:7:20", + "src": "1959:7:28", "typeDescriptions": {} } }, - "id": 27374, + "id": 30353, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1963:18:20", + "src": "1959:18:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27375, + "id": 30354, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1982:4:20", "memberName": "call", "nodeType": "MemberAccess", - "src": "1963:23:20", + "src": "1959:23:28", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 27380, + "id": 30359, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1963:53:20", + "src": "1959:53:28", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, - "src": "1955:61:20", + "src": "1951:61:28", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27382, + "id": 30361, "nodeType": "ExpressionStatement", - "src": "1955:61:20" + "src": "1951:61:28" } ] }, @@ -2714,20 +2466,20 @@ "kind": "function", "modifiers": [], "name": "try_claim", - "nameLocation": "1848:9:20", + "nameLocation": "1844:9:28", "parameters": { - "id": 27361, + "id": 30340, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27360, + "id": 30339, "mutability": "mutable", "name": "_contract", - "nameLocation": "1866:9:20", + "nameLocation": "1862:9:28", "nodeType": "VariableDeclaration", - "scope": 27384, - "src": "1858:17:20", + "scope": 30363, + "src": "1854:17:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2735,10 +2487,10 @@ "typeString": "address" }, "typeName": { - "id": 27359, + "id": 30338, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1858:7:20", + "src": "1854:7:28", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2748,21 +2500,21 @@ "visibility": "internal" } ], - "src": "1857:19:20" + "src": "1853:19:28" }, "returnParameters": { - "id": 27364, + "id": 30343, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27363, + "id": 30342, "mutability": "mutable", "name": "ok", - "nameLocation": "1900:2:20", + "nameLocation": "1896:2:28", "nodeType": "VariableDeclaration", - "scope": 27384, - "src": "1895:7:20", + "scope": 30363, + "src": "1891:7:28", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2770,10 +2522,10 @@ "typeString": "bool" }, "typeName": { - "id": 27362, + "id": 30341, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1895:4:20", + "src": "1891:4:28", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2782,9 +2534,9 @@ "visibility": "internal" } ], - "src": "1894:9:20" + "src": "1890:9:28" }, - "scope": 27385, + "scope": 30364, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -2797,15 +2549,15 @@ "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 27385 + 30364 ], "name": "Actor", - "nameLocation": "176:5:20", - "scope": 27386, + "nameLocation": "172:5:28", + "scope": 30365, "usedErrors": [] } ], "license": "AGPL-3.0-or-later" }, - "id": 20 + "id": 28 } \ No newline at end of file diff --git a/out/Base.sol/CommonBase.json b/out/Base.sol/CommonBase.json index d37e287..7b9b8f4 100644 --- a/out/Base.sol/CommonBase.json +++ b/out/Base.sol/CommonBase.json @@ -11,70 +11,6 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Base.sol\":\"CommonBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/Base.sol": "CommonBase" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/Base.sol", "id": 1856, @@ -105,7 +41,6 @@ "id": 1788, "nodeType": "PragmaDirective", "src": "32:31:1", - "nodes": [], "literals": [ "solidity", ">=", @@ -120,7 +55,6 @@ "id": 1790, "nodeType": "ImportDirective", "src": "65:44:1", - "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -146,7 +80,6 @@ "id": 1793, "nodeType": "ImportDirective", "src": "110:36:1", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -189,7 +122,6 @@ "id": 1807, "nodeType": "VariableDeclaration", "src": "254:94:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "VM_ADDRESS", @@ -261,7 +193,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:28:1", @@ -304,7 +235,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "309:37:1", @@ -347,7 +277,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "301:46:1", @@ -390,7 +319,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "293:55:1", @@ -406,7 +334,6 @@ "id": 1810, "nodeType": "VariableDeclaration", "src": "438:78:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE", @@ -451,7 +378,6 @@ "id": 1824, "nodeType": "VariableDeclaration", "src": "619:105:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_SENDER", @@ -523,7 +449,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "686:35:1", @@ -566,7 +491,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "678:44:1", @@ -609,7 +533,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "670:53:1", @@ -652,7 +575,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:62:1", @@ -668,7 +590,6 @@ "id": 1827, "nodeType": "VariableDeclaration", "src": "799:92:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_TEST_CONTRACT", @@ -713,7 +634,6 @@ "id": 1830, "nodeType": "VariableDeclaration", "src": "898:126:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -757,7 +677,6 @@ "id": 1836, "nodeType": "VariableDeclaration", "src": "1031:40:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -775,9 +694,6 @@ "pathNode": { "id": 1831, "name": "Vm", - "nameLocations": [ - "1031:2:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "1031:2:1" @@ -828,7 +744,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1057:14:1", @@ -844,7 +759,6 @@ "id": 1839, "nodeType": "VariableDeclaration", "src": "1077:28:1", - "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -862,9 +776,6 @@ "pathNode": { "id": 1837, "name": "StdStorage", - "nameLocations": [ - "1077:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1077:10:1" @@ -897,16 +808,12 @@ "id": 1843, "nodeType": "ContractDefinition", "src": "1110:43:1", - "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 1841, "name": "CommonBase", - "nameLocations": [ - "1140:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1140:10:1" @@ -938,7 +845,6 @@ "id": 1848, "nodeType": "VariableDeclaration", "src": "1305:86:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "CREATE2_FACTORY", @@ -983,7 +889,6 @@ "id": 1854, "nodeType": "VariableDeclaration", "src": "1398:52:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "vmSafe", @@ -1001,9 +906,6 @@ "pathNode": { "id": 1849, "name": "VmSafe", - "nameLocations": [ - "1398:6:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1398:6:1" @@ -1054,7 +956,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1432:18:1", @@ -1073,9 +974,6 @@ "baseName": { "id": 1844, "name": "CommonBase", - "nameLocations": [ - "1187:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1187:10:1" diff --git a/out/Base.sol/ScriptBase.json b/out/Base.sol/ScriptBase.json index c664280..7b9b8f4 100644 --- a/out/Base.sol/ScriptBase.json +++ b/out/Base.sol/ScriptBase.json @@ -11,70 +11,6 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Base.sol\":\"ScriptBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/Base.sol": "ScriptBase" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/Base.sol", "id": 1856, @@ -105,7 +41,6 @@ "id": 1788, "nodeType": "PragmaDirective", "src": "32:31:1", - "nodes": [], "literals": [ "solidity", ">=", @@ -120,7 +55,6 @@ "id": 1790, "nodeType": "ImportDirective", "src": "65:44:1", - "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -146,7 +80,6 @@ "id": 1793, "nodeType": "ImportDirective", "src": "110:36:1", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -189,7 +122,6 @@ "id": 1807, "nodeType": "VariableDeclaration", "src": "254:94:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "VM_ADDRESS", @@ -261,7 +193,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:28:1", @@ -304,7 +235,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "309:37:1", @@ -347,7 +277,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "301:46:1", @@ -390,7 +319,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "293:55:1", @@ -406,7 +334,6 @@ "id": 1810, "nodeType": "VariableDeclaration", "src": "438:78:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE", @@ -451,7 +378,6 @@ "id": 1824, "nodeType": "VariableDeclaration", "src": "619:105:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_SENDER", @@ -523,7 +449,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "686:35:1", @@ -566,7 +491,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "678:44:1", @@ -609,7 +533,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "670:53:1", @@ -652,7 +575,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:62:1", @@ -668,7 +590,6 @@ "id": 1827, "nodeType": "VariableDeclaration", "src": "799:92:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_TEST_CONTRACT", @@ -713,7 +634,6 @@ "id": 1830, "nodeType": "VariableDeclaration", "src": "898:126:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -757,7 +677,6 @@ "id": 1836, "nodeType": "VariableDeclaration", "src": "1031:40:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -775,9 +694,6 @@ "pathNode": { "id": 1831, "name": "Vm", - "nameLocations": [ - "1031:2:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "1031:2:1" @@ -828,7 +744,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1057:14:1", @@ -844,7 +759,6 @@ "id": 1839, "nodeType": "VariableDeclaration", "src": "1077:28:1", - "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -862,9 +776,6 @@ "pathNode": { "id": 1837, "name": "StdStorage", - "nameLocations": [ - "1077:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1077:10:1" @@ -897,16 +808,12 @@ "id": 1843, "nodeType": "ContractDefinition", "src": "1110:43:1", - "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 1841, "name": "CommonBase", - "nameLocations": [ - "1140:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1140:10:1" @@ -938,7 +845,6 @@ "id": 1848, "nodeType": "VariableDeclaration", "src": "1305:86:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "CREATE2_FACTORY", @@ -983,7 +889,6 @@ "id": 1854, "nodeType": "VariableDeclaration", "src": "1398:52:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "vmSafe", @@ -1001,9 +906,6 @@ "pathNode": { "id": 1849, "name": "VmSafe", - "nameLocations": [ - "1398:6:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1398:6:1" @@ -1054,7 +956,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1432:18:1", @@ -1073,9 +974,6 @@ "baseName": { "id": 1844, "name": "CommonBase", - "nameLocations": [ - "1187:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1187:10:1" diff --git a/out/Base.sol/TestBase.json b/out/Base.sol/TestBase.json index f01f730..7b9b8f4 100644 --- a/out/Base.sol/TestBase.json +++ b/out/Base.sol/TestBase.json @@ -11,70 +11,6 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Base.sol\":\"TestBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/Base.sol": "TestBase" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/Base.sol", "id": 1856, @@ -105,7 +41,6 @@ "id": 1788, "nodeType": "PragmaDirective", "src": "32:31:1", - "nodes": [], "literals": [ "solidity", ">=", @@ -120,7 +55,6 @@ "id": 1790, "nodeType": "ImportDirective", "src": "65:44:1", - "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -146,7 +80,6 @@ "id": 1793, "nodeType": "ImportDirective", "src": "110:36:1", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -189,7 +122,6 @@ "id": 1807, "nodeType": "VariableDeclaration", "src": "254:94:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "VM_ADDRESS", @@ -261,7 +193,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:28:1", @@ -304,7 +235,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "309:37:1", @@ -347,7 +277,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "301:46:1", @@ -390,7 +319,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "293:55:1", @@ -406,7 +334,6 @@ "id": 1810, "nodeType": "VariableDeclaration", "src": "438:78:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE", @@ -451,7 +378,6 @@ "id": 1824, "nodeType": "VariableDeclaration", "src": "619:105:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_SENDER", @@ -523,7 +449,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "686:35:1", @@ -566,7 +491,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "678:44:1", @@ -609,7 +533,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "670:53:1", @@ -652,7 +575,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:62:1", @@ -668,7 +590,6 @@ "id": 1827, "nodeType": "VariableDeclaration", "src": "799:92:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_TEST_CONTRACT", @@ -713,7 +634,6 @@ "id": 1830, "nodeType": "VariableDeclaration", "src": "898:126:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -757,7 +677,6 @@ "id": 1836, "nodeType": "VariableDeclaration", "src": "1031:40:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -775,9 +694,6 @@ "pathNode": { "id": 1831, "name": "Vm", - "nameLocations": [ - "1031:2:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "1031:2:1" @@ -828,7 +744,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1057:14:1", @@ -844,7 +759,6 @@ "id": 1839, "nodeType": "VariableDeclaration", "src": "1077:28:1", - "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -862,9 +776,6 @@ "pathNode": { "id": 1837, "name": "StdStorage", - "nameLocations": [ - "1077:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1077:10:1" @@ -897,16 +808,12 @@ "id": 1843, "nodeType": "ContractDefinition", "src": "1110:43:1", - "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 1841, "name": "CommonBase", - "nameLocations": [ - "1140:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1140:10:1" @@ -938,7 +845,6 @@ "id": 1848, "nodeType": "VariableDeclaration", "src": "1305:86:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "CREATE2_FACTORY", @@ -983,7 +889,6 @@ "id": 1854, "nodeType": "VariableDeclaration", "src": "1398:52:1", - "nodes": [], "constant": true, "mutability": "constant", "name": "vmSafe", @@ -1001,9 +906,6 @@ "pathNode": { "id": 1849, "name": "VmSafe", - "nameLocations": [ - "1398:6:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1398:6:1" @@ -1054,7 +956,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1432:18:1", @@ -1073,9 +974,6 @@ "baseName": { "id": 1844, "name": "CommonBase", - "nameLocations": [ - "1187:10:1" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1187:10:1" diff --git a/out/Context.sol/Context.json b/out/Context.sol/Context.json index b8d6b6f..e0a75dd 100644 --- a/out/Context.sol/Context.json +++ b/out/Context.sol/Context.json @@ -11,70 +11,21 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/extensions/Context.sol\":\"Context\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "src/extensions/Context.sol": "Context" - }, - "libraries": {} - }, - "sources": { - "src/extensions/Context.sol": { - "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", - "urls": [ - "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", - "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "src/extensions/Context.sol", - "id": 26144, + "id": 28108, "exportedSymbols": { "Context": [ - 26143 + 28107 ] }, "nodeType": "SourceUnit", - "src": "33:929:17", + "src": "33:929:19", "nodes": [ { - "id": 26119, + "id": 28083, "nodeType": "PragmaDirective", - "src": "33:23:17", - "nodes": [], + "src": "33:23:19", "literals": [ "solidity", "^", @@ -83,46 +34,43 @@ ] }, { - "id": 26143, + "id": 28107, "nodeType": "ContractDefinition", - "src": "570:392:17", + "src": "570:392:19", "nodes": [ { - "id": 26131, + "id": 28095, "nodeType": "FunctionDefinition", - "src": "603:115:17", - "nodes": [], + "src": "603:115:19", "body": { - "id": 26130, + "id": 28094, "nodeType": "Block", - "src": "673:45:17", - "nodes": [], + "src": "673:45:19", "statements": [ { "expression": { "arguments": [ { "expression": { - "id": 26126, + "id": 28090, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "699:3:17", + "src": "699:3:19", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 26127, + "id": 28091, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "703:6:17", "memberName": "sender", "nodeType": "MemberAccess", - "src": "699:10:17", + "src": "699:10:19", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -136,46 +84,45 @@ "typeString": "address" } ], - "id": 26125, + "id": 28089, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "691:8:17", + "src": "691:8:19", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_payable_$", "typeString": "type(address payable)" }, "typeName": { - "id": 26124, + "id": 28088, "name": "address", "nodeType": "ElementaryTypeName", - "src": "691:8:17", + "src": "691:8:19", "stateMutability": "payable", "typeDescriptions": {} } }, - "id": 26128, + "id": 28092, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "691:19:17", + "src": "691:19:19", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "functionReturnParameters": 26123, - "id": 26129, + "functionReturnParameters": 28087, + "id": 28093, "nodeType": "Return", - "src": "684:26:17" + "src": "684:26:19" } ] }, @@ -183,26 +130,26 @@ "kind": "function", "modifiers": [], "name": "_msgSender", - "nameLocation": "612:10:17", + "nameLocation": "612:10:19", "parameters": { - "id": 26120, + "id": 28084, "nodeType": "ParameterList", "parameters": [], - "src": "622:2:17" + "src": "622:2:19" }, "returnParameters": { - "id": 26123, + "id": 28087, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26122, + "id": 28086, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26131, - "src": "656:15:17", + "scope": 28095, + "src": "656:15:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -210,10 +157,10 @@ "typeString": "address payable" }, "typeName": { - "id": 26121, + "id": 28085, "name": "address", "nodeType": "ElementaryTypeName", - "src": "656:15:17", + "src": "656:15:19", "stateMutability": "payable", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -223,73 +170,70 @@ "visibility": "internal" } ], - "src": "655:17:17" + "src": "655:17:19" }, - "scope": 26143, + "scope": 28107, "stateMutability": "view", "virtual": true, "visibility": "internal" }, { - "id": 26142, + "id": 28106, "nodeType": "FunctionDefinition", - "src": "726:233:17", - "nodes": [], + "src": "726:233:19", "body": { - "id": 26141, + "id": 28105, "nodeType": "Block", - "src": "791:168:17", - "nodes": [], + "src": "791:168:19", "statements": [ { "expression": { - "id": 26136, + "id": 28100, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "802:4:17", + "src": "802:4:19", "typeDescriptions": { - "typeIdentifier": "t_contract$_Context_$26143", + "typeIdentifier": "t_contract$_Context_$28107", "typeString": "contract Context" } }, - "id": 26137, + "id": 28101, "nodeType": "ExpressionStatement", - "src": "802:4:17" + "src": "802:4:19" }, { "expression": { "expression": { - "id": 26138, + "id": 28102, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "943:3:17", + "src": "943:3:19", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 26139, + "id": 28103, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "947:4:17", "memberName": "data", "nodeType": "MemberAccess", - "src": "943:8:17", + "src": "943:8:19", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "functionReturnParameters": 26135, - "id": 26140, + "functionReturnParameters": 28099, + "id": 28104, "nodeType": "Return", - "src": "936:15:17" + "src": "936:15:19" } ] }, @@ -297,26 +241,26 @@ "kind": "function", "modifiers": [], "name": "_msgData", - "nameLocation": "735:8:17", + "nameLocation": "735:8:19", "parameters": { - "id": 26132, + "id": 28096, "nodeType": "ParameterList", "parameters": [], - "src": "743:2:17" + "src": "743:2:19" }, "returnParameters": { - "id": 26135, + "id": 28099, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26134, + "id": 28098, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26142, - "src": "777:12:17", + "scope": 28106, + "src": "777:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -324,10 +268,10 @@ "typeString": "bytes" }, "typeName": { - "id": 26133, + "id": 28097, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "777:5:17", + "src": "777:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -336,9 +280,9 @@ "visibility": "internal" } ], - "src": "776:14:17" + "src": "776:14:19" }, - "scope": 26143, + "scope": 28107, "stateMutability": "view", "virtual": true, "visibility": "internal" @@ -351,15 +295,15 @@ "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 26143 + 28107 ], "name": "Context", - "nameLocation": "588:7:17", - "scope": 26144, + "nameLocation": "588:7:19", + "scope": 28108, "usedErrors": [] } ], "license": "MIT" }, - "id": 17 + "id": 19 } \ No newline at end of file diff --git a/out/Contract.s.sol/ContractScript.json b/out/Contract.s.sol/ContractScript.json index 0a2c68e..cfe6488 100644 --- a/out/Contract.s.sol/ContractScript.json +++ b/out/Contract.s.sol/ContractScript.json @@ -29,13 +29,13 @@ } ], "bytecode": { - "object": "0x6080604052600c805460ff1916600117905534801561001d57600080fd5b506101158061002d6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea26469706673582212201269be7f9d04da86bbc6d612ed9f27b4b2501910ed9f0fe90ea0d27f762365bd64736f6c63430008110033", - "sourceMap": "102:133:15:-:0;;;758:28:2;;;-1:-1:-1;;758:28:2;782:4;758:28;;;102:133:15;;;;;;;;;;;;;;;;", + "object": "0x6080604052600c805460ff1916600117905534801561001d57600080fd5b506101158061002d6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea2646970667358221220510af7d0bee6b4c8863654c39d89a7edd1ba89984ad05bf85d5f83359302e57e64736f6c634300080f0033", + "sourceMap": "97:127:15:-:0;;;758:28:2;;;-1:-1:-1;;758:28:2;782:4;758:28;;;97:127:15;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea26469706673582212201269be7f9d04da86bbc6d612ed9f27b4b2501910ed9f0fe90ea0d27f762365bd64736f6c63430008110033", - "sourceMap": "102:133:15:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;143:26;;177:55;;;:::i;758:28:2:-;;;;;;;;;;;;179:14:23;;172:22;154:41;;142:2;127:18;758:28:2;;;;;;;177:55:15;317:28:1;309:37;;-1:-1:-1;;;;;210:12:15;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;177:55::o", + "object": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea2646970667358221220510af7d0bee6b4c8863654c39d89a7edd1ba89984ad05bf85d5f83359302e57e64736f6c634300080f0033", + "sourceMap": "97:127:15:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;137:26;;169:53;;;:::i;758:28:2:-;;;;;;;;;;;;179:14:32;;172:22;154:41;;142:2;127:18;758:28:2;;;;;;;169:53:15;317:28:1;309:37;;-1:-1:-1;;;;;201:12:15;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;169:53::o", "linkReferences": {} }, "methodIdentifiers": { @@ -43,168 +43,6 @@ "run()": "c0406226", "setUp()": "0a9254e4" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"IS_SCRIPT\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"script/Contract.s.sol\":\"ContractScript\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/Script.sol\":{\"keccak256\":\"0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693\",\"dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"script/Contract.s.sol\":{\"keccak256\":\"0xfa3842e8d400d240c8d9eb9cafa7320b271102306745e1f4f54f80e59ee6f160\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://fce9fc8948ce0746d69ec6a1cf4129b38f75b4a5a96fa07567c4708a60b1486f\",\"dweb:/ipfs/QmYejuTf87QwwaMKPvRbpf4XVp9T5CdLkGzkWtwMDBoyEX\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "IS_SCRIPT", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "run" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "setUp" - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "script/Contract.s.sol": "ContractScript" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/Script.sol": { - "keccak256": "0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433", - "urls": [ - "bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693", - "dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - }, - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - }, - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - }, - "script/Contract.s.sol": { - "keccak256": "0xfa3842e8d400d240c8d9eb9cafa7320b271102306745e1f4f54f80e59ee6f160", - "urls": [ - "bzz-raw://fce9fc8948ce0746d69ec6a1cf4129b38f75b4a5a96fa07567c4708a60b1486f", - "dweb:/ipfs/QmYejuTf87QwwaMKPvRbpf4XVp9T5CdLkGzkWtwMDBoyEX" - ], - "license": "UNLICENSED" - } - }, - "version": 1 - }, "ast": { "absolutePath": "script/Contract.s.sol", "id": 25532, @@ -250,13 +88,12 @@ ] }, "nodeType": "SourceUnit", - "src": "40:197:15", + "src": "39:186:15", "nodes": [ { "id": 25514, "nodeType": "PragmaDirective", - "src": "40:24:15", - "nodes": [], + "src": "39:24:15", "literals": [ "solidity", "^", @@ -267,8 +104,7 @@ { "id": 25515, "nodeType": "ImportDirective", - "src": "68:30:15", - "nodes": [], + "src": "65:30:15", "absolutePath": "lib/forge-std/src/Script.sol", "file": "forge-std/Script.sol", "nameLocation": "-1:-1:-1", @@ -280,18 +116,16 @@ { "id": 25531, "nodeType": "ContractDefinition", - "src": "102:133:15", + "src": "97:127:15", "nodes": [ { "id": 25521, "nodeType": "FunctionDefinition", - "src": "143:26:15", - "nodes": [], + "src": "137:26:15", "body": { "id": 25520, "nodeType": "Block", - "src": "167:2:15", - "nodes": [], + "src": "161:2:15", "statements": [] }, "functionSelector": "0a9254e4", @@ -299,18 +133,18 @@ "kind": "function", "modifiers": [], "name": "setUp", - "nameLocation": "152:5:15", + "nameLocation": "146:5:15", "parameters": { "id": 25518, "nodeType": "ParameterList", "parameters": [], - "src": "157:2:15" + "src": "151:2:15" }, "returnParameters": { "id": 25519, "nodeType": "ParameterList", "parameters": [], - "src": "167:0:15" + "src": "161:0:15" }, "scope": 25531, "stateMutability": "nonpayable", @@ -320,13 +154,11 @@ { "id": 25530, "nodeType": "FunctionDefinition", - "src": "177:55:15", - "nodes": [], + "src": "169:53:15", "body": { "id": 25529, "nodeType": "Block", - "src": "199:33:15", - "nodes": [], + "src": "191:31:15", "statements": [ { "expression": { @@ -339,7 +171,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "210:2:15", + "src": "201:2:15", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" @@ -350,11 +182,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "213:9:15", "memberName": "broadcast", "nodeType": "MemberAccess", "referencedDeclaration": 8588, - "src": "210:12:15", + "src": "201:12:15", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" @@ -366,10 +197,9 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "210:14:15", + "src": "201:14:15", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", @@ -378,7 +208,7 @@ }, "id": 25528, "nodeType": "ExpressionStatement", - "src": "210:14:15" + "src": "201:14:15" } ] }, @@ -387,18 +217,18 @@ "kind": "function", "modifiers": [], "name": "run", - "nameLocation": "186:3:15", + "nameLocation": "178:3:15", "parameters": { "id": 25522, "nodeType": "ParameterList", "parameters": [], - "src": "189:2:15" + "src": "181:2:15" }, "returnParameters": { "id": 25523, "nodeType": "ParameterList", "parameters": [], - "src": "199:0:15" + "src": "191:0:15" }, "scope": 25531, "stateMutability": "nonpayable", @@ -412,16 +242,13 @@ "baseName": { "id": 25516, "name": "Script", - "nameLocations": [ - "129:6:15" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1892, - "src": "129:6:15" + "src": "124:6:15" }, "id": 25517, "nodeType": "InheritanceSpecifier", - "src": "129:6:15" + "src": "124:6:15" } ], "canonicalName": "ContractScript", @@ -438,7 +265,7 @@ 3244 ], "name": "ContractScript", - "nameLocation": "111:14:15", + "nameLocation": "106:14:15", "scope": 25532, "usedErrors": [] } diff --git a/out/ERC20.sol/ERC20.json b/out/ERC20.sol/ERC20.json new file mode 100644 index 0000000..1db4e49 --- /dev/null +++ b/out/ERC20.sol/ERC20.json @@ -0,0 +1,10381 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "name_", + "type": "string" + }, + { + "internalType": "string", + "name": "symbol_", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x60806040523480156200001157600080fd5b5060405162000ba138038062000ba1833981016040819052620000349162000134565b60036200004283826200022d565b5060046200005182826200022d565b50506005805460ff1916601217905550620002f9565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008f57600080fd5b81516001600160401b0380821115620000ac57620000ac62000067565b604051601f8301601f19908116603f01168101908282118183101715620000d757620000d762000067565b81604052838152602092508683858801011115620000f457600080fd5b600091505b83821015620001185785820183015181830184015290820190620000f9565b838211156200012a5760008385830101525b9695505050505050565b600080604083850312156200014857600080fd5b82516001600160401b03808211156200016057600080fd5b6200016e868387016200007d565b935060208501519150808211156200018557600080fd5b5062000194858286016200007d565b9150509250929050565b600181811c90821680620001b357607f821691505b602082108103620001d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200022857600081815260208120601f850160051c81016020861015620002035750805b601f850160051c820191505b8181101562000224578281556001016200020f565b5050505b505050565b81516001600160401b0381111562000249576200024962000067565b62000261816200025a84546200019e565b84620001da565b602080601f831160018114620002995760008415620002805750858301515b600019600386901b1c1916600185901b17855562000224565b600085815260208120601f198616915b82811015620002ca57888601518255948401946001909101908401620002a9565b5085821015620002e95787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61089880620003096000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012957806370a082311461013c57806395d89b4114610165578063a457c2d71461016d578063a9059cbb14610180578063dd62ed3e1461019357600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101cc565b6040516100c3919061066a565b60405180910390f35b6100df6100da3660046106db565b61025e565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610705565b610274565b60055460405160ff90911681526020016100c3565b6100df6101373660046106db565b6102dd565b6100f361014a366004610741565b6001600160a01b031660009081526020819052604090205490565b6100b6610313565b6100df61017b3660046106db565b610322565b6100df61018e3660046106db565b610371565b6100f36101a136600461075c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6060600380546101db9061078f565b80601f01602080910402602001604051908101604052809291908181526020018280546102079061078f565b80156102545780601f1061022957610100808354040283529160200191610254565b820191906000526020600020905b81548152906001019060200180831161023757829003601f168201915b5050505050905090565b600061026b33848461037e565b50600192915050565b60006102818484846104a8565b6102d384336102ce85604051806060016040528060288152602001610816602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061062b565b61037e565b5060019392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161026b9185906102ce9086610657565b6060600480546101db9061078f565b600061026b33846102ce8560405180606001604052806025815260200161083e602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919061062b565b600061026b3384846104a8565b6001600160a01b0383166103e55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166104465760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831661050c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661056e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6105ab816040518060600160405280602681526020016107f0602691396001600160a01b038616600090815260208190526040902054919061062b565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105da9082610657565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161049b565b6000818484111561064f5760405162461bcd60e51b81526004016103dc919061066a565b505050900390565b600061066382846107c9565b9392505050565b600060208083528351808285015260005b818110156106975785810183015185820160400152820161067b565b818111156106a9576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106d657600080fd5b919050565b600080604083850312156106ee57600080fd5b6106f7836106bf565b946020939093013593505050565b60008060006060848603121561071a57600080fd5b610723846106bf565b9250610731602085016106bf565b9150604084013590509250925092565b60006020828403121561075357600080fd5b610663826106bf565b6000806040838503121561076f57600080fd5b610778836106bf565b9150610786602084016106bf565b90509250929050565b600181811c908216806107a357607f821691505b6020821081036107c357634e487b7160e01b600052602260045260246000fd5b50919050565b600082198211156107ea57634e487b7160e01b600052601160045260246000fd5b50019056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122082521e7438be2b5c4b4f0d0da6244de942a697b82cd1a1b19c67490c4a8735b564736f6c634300080f0033", + "sourceMap": "7736:9750:21:-:0;;;8395:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8463:5;:13;8471:5;8463;:13;:::i;:::-;-1:-1:-1;8487:7:21;:17;8497:7;8487;:17;:::i;:::-;-1:-1:-1;;8515:9:21;:14;;-1:-1:-1;;8515:14:21;8527:2;8515:14;;;-1:-1:-1;7736:9750:21;;14:127:32;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:885;200:5;253:3;246:4;238:6;234:17;230:27;220:55;;271:1;268;261:12;220:55;294:13;;-1:-1:-1;;;;;356:10:32;;;353:36;;;369:18;;:::i;:::-;444:2;438:9;412:2;498:13;;-1:-1:-1;;494:22:32;;;518:2;490:31;486:40;474:53;;;542:18;;;562:22;;;539:46;536:72;;;588:18;;:::i;:::-;628:10;624:2;617:22;663:2;655:6;648:18;685:4;675:14;;730:3;725:2;720;712:6;708:15;704:24;701:33;698:53;;;747:1;744;737:12;698:53;769:1;760:10;;779:133;793:2;790:1;787:9;779:133;;;881:14;;;877:23;;871:30;850:14;;;846:23;;839:63;804:10;;;;779:133;;;930:2;927:1;924:9;921:80;;;989:1;984:2;979;971:6;967:15;963:24;956:35;921:80;1019:6;146:885;-1:-1:-1;;;;;;146:885:32:o;1036:562::-;1135:6;1143;1196:2;1184:9;1175:7;1171:23;1167:32;1164:52;;;1212:1;1209;1202:12;1164:52;1239:16;;-1:-1:-1;;;;;1304:14:32;;;1301:34;;;1331:1;1328;1321:12;1301:34;1354:61;1407:7;1398:6;1387:9;1383:22;1354:61;:::i;:::-;1344:71;;1461:2;1450:9;1446:18;1440:25;1424:41;;1490:2;1480:8;1477:16;1474:36;;;1506:1;1503;1496:12;1474:36;;1529:63;1584:7;1573:8;1562:9;1558:24;1529:63;:::i;:::-;1519:73;;;1036:562;;;;;:::o;1603:380::-;1682:1;1678:12;;;;1725;;;1746:61;;1800:4;1792:6;1788:17;1778:27;;1746:61;1853:2;1845:6;1842:14;1822:18;1819:38;1816:161;;1899:10;1894:3;1890:20;1887:1;1880:31;1934:4;1931:1;1924:15;1962:4;1959:1;1952:15;1816:161;;1603:380;;;:::o;2114:545::-;2216:2;2211:3;2208:11;2205:448;;;2252:1;2277:5;2273:2;2266:17;2322:4;2318:2;2308:19;2392:2;2380:10;2376:19;2373:1;2369:27;2363:4;2359:38;2428:4;2416:10;2413:20;2410:47;;;-1:-1:-1;2451:4:32;2410:47;2506:2;2501:3;2497:12;2494:1;2490:20;2484:4;2480:31;2470:41;;2561:82;2579:2;2572:5;2569:13;2561:82;;;2624:17;;;2605:1;2594:13;2561:82;;;2565:3;;;2205:448;2114:545;;;:::o;2835:1352::-;2955:10;;-1:-1:-1;;;;;2977:30:32;;2974:56;;;3010:18;;:::i;:::-;3039:97;3129:6;3089:38;3121:4;3115:11;3089:38;:::i;:::-;3083:4;3039:97;:::i;:::-;3191:4;;3255:2;3244:14;;3272:1;3267:663;;;;3974:1;3991:6;3988:89;;;-1:-1:-1;4043:19:32;;;4037:26;3988:89;-1:-1:-1;;2792:1:32;2788:11;;;2784:24;2780:29;2770:40;2816:1;2812:11;;;2767:57;4090:81;;3237:944;;3267:663;2061:1;2054:14;;;2098:4;2085:18;;-1:-1:-1;;3303:20:32;;;3421:236;3435:7;3432:1;3429:14;3421:236;;;3524:19;;;3518:26;3503:42;;3616:27;;;;3584:1;3572:14;;;;3451:19;;3421:236;;;3425:3;3685:6;3676:7;3673:19;3670:201;;;3746:19;;;3740:26;-1:-1:-1;;3829:1:32;3825:14;;;3841:3;3821:24;3817:37;3813:42;3798:58;3783:74;;3670:201;-1:-1:-1;;;;;3917:1:32;3901:14;;;3897:22;3884:36;;-1:-1:-1;2835:1352:32:o;:::-;7736:9750:21;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012957806370a082311461013c57806395d89b4114610165578063a457c2d71461016d578063a9059cbb14610180578063dd62ed3e1461019357600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101cc565b6040516100c3919061066a565b60405180910390f35b6100df6100da3660046106db565b61025e565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610705565b610274565b60055460405160ff90911681526020016100c3565b6100df6101373660046106db565b6102dd565b6100f361014a366004610741565b6001600160a01b031660009081526020819052604090205490565b6100b6610313565b6100df61017b3660046106db565b610322565b6100df61018e3660046106db565b610371565b6100f36101a136600461075c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6060600380546101db9061078f565b80601f01602080910402602001604051908101604052809291908181526020018280546102079061078f565b80156102545780601f1061022957610100808354040283529160200191610254565b820191906000526020600020905b81548152906001019060200180831161023757829003601f168201915b5050505050905090565b600061026b33848461037e565b50600192915050565b60006102818484846104a8565b6102d384336102ce85604051806060016040528060288152602001610816602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061062b565b61037e565b5060019392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161026b9185906102ce9086610657565b6060600480546101db9061078f565b600061026b33846102ce8560405180606001604052806025815260200161083e602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919061062b565b600061026b3384846104a8565b6001600160a01b0383166103e55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166104465760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831661050c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661056e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6105ab816040518060600160405280602681526020016107f0602691396001600160a01b038616600090815260208190526040902054919061062b565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105da9082610657565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161049b565b6000818484111561064f5760405162461bcd60e51b81526004016103dc919061066a565b505050900390565b600061066382846107c9565b9392505050565b600060208083528351808285015260005b818110156106975785810183015185820160400152820161067b565b818111156106a9576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106d657600080fd5b919050565b600080604083850312156106ee57600080fd5b6106f7836106bf565b946020939093013593505050565b60008060006060848603121561071a57600080fd5b610723846106bf565b9250610731602085016106bf565b9150604084013590509250925092565b60006020828403121561075357600080fd5b610663826106bf565b6000806040838503121561076f57600080fd5b610778836106bf565b9150610786602084016106bf565b90509250929050565b600181811c908216806107a357607f821691505b6020821081036107c357634e487b7160e01b600052602260045260246000fd5b50919050565b600082198211156107ea57634e487b7160e01b600052601160045260246000fd5b50019056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122082521e7438be2b5c4b4f0d0da6244de942a697b82cd1a1b19c67490c4a8735b564736f6c634300080f0033", + "sourceMap": "7736:9750:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10753:169;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:32;;1211:22;1193:41;;1181:2;1166:18;10753:169:21;1053:187:32;9706:108:21;9794:12;;9706:108;;;1391:25:32;;;1379:2;1364:18;9706:108:21;1245:177:32;11404:321:21;;;;;;:::i;:::-;;:::i;9550:91::-;9624:9;;9550:91;;9624:9;;;;1902:36:32;;1890:2;1875:18;9550:91:21;1760:184:32;12134:218:21;;;;;;:::i;:::-;;:::i;9877:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;8817:95;;;:::i;12855:269::-;;;;;;:::i;:::-;;:::i;10217:175::-;;;;;;:::i;:::-;;:::i;10455:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;10571:18:21;;;10544:7;10571:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10455:151;8607:91;8652:13;8685:5;8678:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;:::o;10753:169::-;10836:4;10853:39;699:10:19;10876:7:21;10885:6;10853:8;:39::i;:::-;-1:-1:-1;10910:4:21;10753:169;;;;:::o;11404:321::-;11510:4;11527:36;11537:6;11545:9;11556:6;11527:9;:36::i;:::-;11574:121;11583:6;699:10:19;11605:89:21;11643:6;11605:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11605:19:21;;;;;;:11;:19;;;;;;;;699:10:19;11605:33:21;;;;;;;;;;:37;:89::i;:::-;11574:8;:121::i;:::-;-1:-1:-1;11713:4:21;11404:321;;;;;:::o;12134:218::-;699:10:19;12222:4:21;12271:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12271:34:21;;;;;;;;;;12222:4;;12239:83;;12262:7;;12271:50;;12310:10;12271:38;:50::i;8817:95::-;8864:13;8897:7;8890:14;;;;;:::i;12855:269::-;12948:4;12965:129;699:10:19;12988:7:21;12997:96;13036:15;12997:96;;;;;;;;;;;;;;;;;699:10:19;12997:25:21;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12997:34:21;;;;;;;;;;;;:38;:96::i;10217:175::-;10303:4;10320:42;699:10:19;10344:9:21;10355:6;10320:9;:42::i;16012:346::-;-1:-1:-1;;;;;16114:19:21;;16106:68;;;;-1:-1:-1;;;16106:68:21;;2992:2:32;16106:68:21;;;2974:21:32;3031:2;3011:18;;;3004:30;3070:34;3050:18;;;3043:62;-1:-1:-1;;;3121:18:32;;;3114:34;3165:19;;16106:68:21;;;;;;;;;-1:-1:-1;;;;;16193:21:21;;16185:68;;;;-1:-1:-1;;;16185:68:21;;3397:2:32;16185:68:21;;;3379:21:32;3436:2;3416:18;;;3409:30;3475:34;3455:18;;;3448:62;-1:-1:-1;;;3526:18:32;;;3519:32;3568:19;;16185:68:21;3195:398:32;16185:68:21;-1:-1:-1;;;;;16266:18:21;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16318:32;;1391:25:32;;;16318:32:21;;1364:18:32;16318:32:21;;;;;;;;16012:346;;;:::o;13614:549::-;-1:-1:-1;;;;;13720:20:21;;13712:70;;;;-1:-1:-1;;;13712:70:21;;3800:2:32;13712:70:21;;;3782:21:32;3839:2;3819:18;;;3812:30;3878:34;3858:18;;;3851:62;-1:-1:-1;;;3929:18:32;;;3922:35;3974:19;;13712:70:21;3598:401:32;13712:70:21;-1:-1:-1;;;;;13801:23:21;;13793:71;;;;-1:-1:-1;;;13793:71:21;;4206:2:32;13793:71:21;;;4188:21:32;4245:2;4225:18;;;4218:30;4284:34;4264:18;;;4257:62;-1:-1:-1;;;4335:18:32;;;4328:33;4378:19;;13793:71:21;4004:399:32;13793:71:21;13967;13989:6;13967:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13967:17:21;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;13947:17:21;;;:9;:17;;;;;;;;;;;:91;;;;14072:20;;;;;;;:32;;14097:6;14072:24;:32::i;:::-;-1:-1:-1;;;;;14049:20:21;;;:9;:20;;;;;;;;;;;;:55;;;;14120:35;1391:25:32;;;14049:20:21;;14120:35;;;;;;1364:18:32;14120:35:21;1245:177:32;4765:206:21;4851:7;4912:12;4904:6;;;;4896:29;;;;-1:-1:-1;;;4896:29:21;;;;;;;;:::i;:::-;-1:-1:-1;;;4947:5:21;;;4765:206::o;2486:98::-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;2486:98;-1:-1:-1;;;2486:98:21:o;14:597:32:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:32;574:15;-1:-1:-1;;570:29:32;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:32:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:32;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:32:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;1949:186::-;2008:6;2061:2;2049:9;2040:7;2036:23;2032:32;2029:52;;;2077:1;2074;2067:12;2029:52;2100:29;2119:9;2100:29;:::i;2140:260::-;2208:6;2216;2269:2;2257:9;2248:7;2244:23;2240:32;2237:52;;;2285:1;2282;2275:12;2237:52;2308:29;2327:9;2308:29;:::i;:::-;2298:39;;2356:38;2390:2;2379:9;2375:18;2356:38;:::i;:::-;2346:48;;2140:260;;;;;:::o;2405:380::-;2484:1;2480:12;;;;2527;;;2548:61;;2602:4;2594:6;2590:17;2580:27;;2548:61;2655:2;2647:6;2644:14;2624:18;2621:38;2618:161;;2701:10;2696:3;2692:20;2689:1;2682:31;2736:4;2733:1;2726:15;2764:4;2761:1;2754:15;2618:161;;2405:380;;;:::o;4408:225::-;4448:3;4479:1;4475:6;4472:1;4469:13;4466:136;;;4524:10;4519:3;4515:20;4512:1;4505:31;4559:4;4556:1;4549:15;4587:4;4584:1;4577:15;4466:136;-1:-1:-1;4618:9:32;;4408:225::o", + "linkReferences": {} + }, + "methodIdentifiers": { + "allowance(address,address)": "dd62ed3e", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "decimals()": "313ce567", + "decreaseAllowance(address,uint256)": "a457c2d7", + "increaseAllowance(address,uint256)": "39509351", + "name()": "06fdde03", + "symbol()": "95d89b41", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd" + }, + "ast": { + "absolutePath": "src/interfaces/ERC20.sol", + "id": 29067, + "exportedSymbols": { + "Context": [ + 28107 + ], + "ERC20": [ + 29066 + ], + "IERC20": [ + 29143 + ], + "IERC20Extended": [ + 29151 + ], + "SafeMath": [ + 28568 + ] + }, + "nodeType": "SourceUnit", + "src": "46:17440:21", + "nodes": [ + { + "id": 28257, + "nodeType": "PragmaDirective", + "src": "46:23:21", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 28258, + "nodeType": "ImportDirective", + "src": "73:35:21", + "absolutePath": "src/extensions/Context.sol", + "file": "../extensions/Context.sol", + "nameLocation": "-1:-1:-1", + "scope": 29067, + "sourceUnit": 28108, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 28259, + "nodeType": "ImportDirective", + "src": "110:22:21", + "absolutePath": "src/interfaces/IERC20.sol", + "file": "./IERC20.sol", + "nameLocation": "-1:-1:-1", + "scope": 29067, + "sourceUnit": 29152, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 28568, + "nodeType": "ContractDefinition", + "src": "136:6409:21", + "nodes": [ + { + "id": 28291, + "nodeType": "FunctionDefinition", + "src": "301:222:21", + "body": { + "id": 28290, + "nodeType": "Block", + "src": "377:146:21", + "statements": [ + { + "id": 28289, + "nodeType": "UncheckedBlock", + "src": "388:128:21", + "statements": [ + { + "assignments": [ + 28272 + ], + "declarations": [ + { + "constant": false, + "id": 28272, + "mutability": "mutable", + "name": "c", + "nameLocation": "421:1:21", + "nodeType": "VariableDeclaration", + "scope": 28289, + "src": "413:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28271, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "413:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 28276, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28273, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28262, + "src": "425:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 28274, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28264, + "src": "429:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "425:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "413:17:21" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28279, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28277, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28272, + "src": "449:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 28278, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28262, + "src": "453:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "449:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28284, + "nodeType": "IfStatement", + "src": "445:28:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "464:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "471:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28282, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "463:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28270, + "id": 28283, + "nodeType": "Return", + "src": "456:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "496:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 28286, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28272, + "src": "502:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28287, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "495:9:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28270, + "id": 28288, + "nodeType": "Return", + "src": "488:16:21" + } + ] + } + ] + }, + "documentation": { + "id": 28260, + "nodeType": "StructuredDocumentation", + "src": "160:135:21", + "text": " @dev Returns the addition of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryAdd", + "nameLocation": "310:6:21", + "parameters": { + "id": 28265, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28262, + "mutability": "mutable", + "name": "a", + "nameLocation": "325:1:21", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "317:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28261, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "317:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28264, + "mutability": "mutable", + "name": "b", + "nameLocation": "336:1:21", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "328:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28263, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "328:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "316:22:21" + }, + "returnParameters": { + "id": 28270, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28267, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "362:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28266, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "362:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28269, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "368:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28268, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "368:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "361:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28319, + "nodeType": "FunctionDefinition", + "src": "675:194:21", + "body": { + "id": 28318, + "nodeType": "Block", + "src": "751:118:21", + "statements": [ + { + "id": 28317, + "nodeType": "UncheckedBlock", + "src": "762:100:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28303, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28296, + "src": "791:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 28304, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28294, + "src": "795:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "791:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28310, + "nodeType": "IfStatement", + "src": "787:28:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "806:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28307, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "813:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28308, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "805:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28302, + "id": 28309, + "nodeType": "Return", + "src": "798:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "838:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28312, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28294, + "src": "844:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 28313, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28296, + "src": "848:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "844:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28315, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "837:13:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28302, + "id": 28316, + "nodeType": "Return", + "src": "830:20:21" + } + ] + } + ] + }, + "documentation": { + "id": 28292, + "nodeType": "StructuredDocumentation", + "src": "531:138:21", + "text": " @dev Returns the subtraction of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "trySub", + "nameLocation": "684:6:21", + "parameters": { + "id": 28297, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28294, + "mutability": "mutable", + "name": "a", + "nameLocation": "699:1:21", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "691:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28293, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "691:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28296, + "mutability": "mutable", + "name": "b", + "nameLocation": "710:1:21", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "702:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28295, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "702:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "690:22:21" + }, + "returnParameters": { + "id": 28302, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28299, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "736:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28298, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "736:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28301, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "742:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28300, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "742:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "735:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28361, + "nodeType": "FunctionDefinition", + "src": "1024:503:21", + "body": { + "id": 28360, + "nodeType": "Block", + "src": "1100:427:21", + "statements": [ + { + "id": 28359, + "nodeType": "UncheckedBlock", + "src": "1111:409:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28331, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28322, + "src": "1373:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 28332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1378:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1373:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28338, + "nodeType": "IfStatement", + "src": "1369:28:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1389:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "hexValue": "30", + "id": 28335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1395:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28336, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1388:9:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28330, + "id": 28337, + "nodeType": "Return", + "src": "1381:16:21" + } + }, + { + "assignments": [ + 28340 + ], + "declarations": [ + { + "constant": false, + "id": 28340, + "mutability": "mutable", + "name": "c", + "nameLocation": "1420:1:21", + "nodeType": "VariableDeclaration", + "scope": 28359, + "src": "1412:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28339, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1412:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 28344, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28341, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28322, + "src": "1424:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 28342, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28324, + "src": "1428:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1424:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1412:17:21" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28345, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28340, + "src": "1448:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28346, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28322, + "src": "1452:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1448:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 28348, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28324, + "src": "1457:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1448:10:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28354, + "nodeType": "IfStatement", + "src": "1444:33:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1468:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1475:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28352, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1467:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28330, + "id": 28353, + "nodeType": "Return", + "src": "1460:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1500:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 28356, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28340, + "src": "1506:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28357, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1499:9:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28330, + "id": 28358, + "nodeType": "Return", + "src": "1492:16:21" + } + ] + } + ] + }, + "documentation": { + "id": 28320, + "nodeType": "StructuredDocumentation", + "src": "877:141:21", + "text": " @dev Returns the multiplication of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryMul", + "nameLocation": "1033:6:21", + "parameters": { + "id": 28325, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28322, + "mutability": "mutable", + "name": "a", + "nameLocation": "1048:1:21", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1040:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28321, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1040:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28324, + "mutability": "mutable", + "name": "b", + "nameLocation": "1059:1:21", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1051:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28323, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1051:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1039:22:21" + }, + "returnParameters": { + "id": 28330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28327, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1085:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28326, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1085:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28329, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1091:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28328, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1091:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1084:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28389, + "nodeType": "FunctionDefinition", + "src": "1683:195:21", + "body": { + "id": 28388, + "nodeType": "Block", + "src": "1759:119:21", + "statements": [ + { + "id": 28387, + "nodeType": "UncheckedBlock", + "src": "1770:101:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28373, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28366, + "src": "1799:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 28374, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1804:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1799:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28380, + "nodeType": "IfStatement", + "src": "1795:29:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1815:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28377, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1822:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28378, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1814:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28372, + "id": 28379, + "nodeType": "Return", + "src": "1807:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28381, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1847:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28382, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28364, + "src": "1853:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28383, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28366, + "src": "1857:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1853:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28385, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1846:13:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28372, + "id": 28386, + "nodeType": "Return", + "src": "1839:20:21" + } + ] + } + ] + }, + "documentation": { + "id": 28362, + "nodeType": "StructuredDocumentation", + "src": "1535:142:21", + "text": " @dev Returns the division of two unsigned integers, with a division by zero flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryDiv", + "nameLocation": "1692:6:21", + "parameters": { + "id": 28367, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28364, + "mutability": "mutable", + "name": "a", + "nameLocation": "1707:1:21", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1699:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28363, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1699:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28366, + "mutability": "mutable", + "name": "b", + "nameLocation": "1718:1:21", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1710:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28365, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1710:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1698:22:21" + }, + "returnParameters": { + "id": 28372, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28369, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1744:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28368, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1744:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28371, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1750:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28370, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1750:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1743:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28417, + "nodeType": "FunctionDefinition", + "src": "2044:195:21", + "body": { + "id": 28416, + "nodeType": "Block", + "src": "2120:119:21", + "statements": [ + { + "id": 28415, + "nodeType": "UncheckedBlock", + "src": "2131:101:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28401, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28394, + "src": "2160:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 28402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2165:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2160:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28408, + "nodeType": "IfStatement", + "src": "2156:29:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2176:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2183:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28406, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2175:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28400, + "id": 28407, + "nodeType": "Return", + "src": "2168:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28409, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2208:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28410, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28392, + "src": "2214:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 28411, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28394, + "src": "2218:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2214:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28413, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2207:13:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28400, + "id": 28414, + "nodeType": "Return", + "src": "2200:20:21" + } + ] + } + ] + }, + "documentation": { + "id": 28390, + "nodeType": "StructuredDocumentation", + "src": "1886:152:21", + "text": " @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryMod", + "nameLocation": "2053:6:21", + "parameters": { + "id": 28395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28392, + "mutability": "mutable", + "name": "a", + "nameLocation": "2068:1:21", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2060:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28391, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2060:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28394, + "mutability": "mutable", + "name": "b", + "nameLocation": "2079:1:21", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2071:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2071:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2059:22:21" + }, + "returnParameters": { + "id": 28400, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28397, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2105:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28396, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2105:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28399, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2111:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28398, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2111:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2104:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28432, + "nodeType": "FunctionDefinition", + "src": "2486:98:21", + "body": { + "id": 28431, + "nodeType": "Block", + "src": "2553:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28427, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28420, + "src": "2571:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 28428, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28422, + "src": "2575:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2571:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28426, + "id": 28430, + "nodeType": "Return", + "src": "2564:12:21" + } + ] + }, + "documentation": { + "id": 28418, + "nodeType": "StructuredDocumentation", + "src": "2247:233:21", + "text": " @dev Returns the addition of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `+` operator.\n Requirements:\n - Addition cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "add", + "nameLocation": "2495:3:21", + "parameters": { + "id": 28423, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28420, + "mutability": "mutable", + "name": "a", + "nameLocation": "2507:1:21", + "nodeType": "VariableDeclaration", + "scope": 28432, + "src": "2499:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28419, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2499:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28422, + "mutability": "mutable", + "name": "b", + "nameLocation": "2518:1:21", + "nodeType": "VariableDeclaration", + "scope": 28432, + "src": "2510:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28421, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2510:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2498:22:21" + }, + "returnParameters": { + "id": 28426, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28425, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28432, + "src": "2544:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28424, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2544:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2543:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28447, + "nodeType": "FunctionDefinition", + "src": "2867:98:21", + "body": { + "id": 28446, + "nodeType": "Block", + "src": "2934:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28442, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28435, + "src": "2952:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 28443, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28437, + "src": "2956:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2952:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28441, + "id": 28445, + "nodeType": "Return", + "src": "2945:12:21" + } + ] + }, + "documentation": { + "id": 28433, + "nodeType": "StructuredDocumentation", + "src": "2592:269:21", + "text": " @dev Returns the subtraction of two unsigned integers, reverting on\n overflow (when the result is negative).\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sub", + "nameLocation": "2876:3:21", + "parameters": { + "id": 28438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28435, + "mutability": "mutable", + "name": "a", + "nameLocation": "2888:1:21", + "nodeType": "VariableDeclaration", + "scope": 28447, + "src": "2880:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28434, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2880:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28437, + "mutability": "mutable", + "name": "b", + "nameLocation": "2899:1:21", + "nodeType": "VariableDeclaration", + "scope": 28447, + "src": "2891:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28436, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2891:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2879:22:21" + }, + "returnParameters": { + "id": 28441, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28440, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28447, + "src": "2925:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28439, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2925:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2924:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28462, + "nodeType": "FunctionDefinition", + "src": "3224:98:21", + "body": { + "id": 28461, + "nodeType": "Block", + "src": "3291:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28457, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28450, + "src": "3309:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 28458, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28452, + "src": "3313:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3309:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28456, + "id": 28460, + "nodeType": "Return", + "src": "3302:12:21" + } + ] + }, + "documentation": { + "id": 28448, + "nodeType": "StructuredDocumentation", + "src": "2973:245:21", + "text": " @dev Returns the multiplication of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `*` operator.\n Requirements:\n - Multiplication cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mul", + "nameLocation": "3233:3:21", + "parameters": { + "id": 28453, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28450, + "mutability": "mutable", + "name": "a", + "nameLocation": "3245:1:21", + "nodeType": "VariableDeclaration", + "scope": 28462, + "src": "3237:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28449, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3237:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28452, + "mutability": "mutable", + "name": "b", + "nameLocation": "3256:1:21", + "nodeType": "VariableDeclaration", + "scope": 28462, + "src": "3248:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28451, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3248:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3236:22:21" + }, + "returnParameters": { + "id": 28456, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28455, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28462, + "src": "3282:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28454, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3282:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3281:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28477, + "nodeType": "FunctionDefinition", + "src": "3623:98:21", + "body": { + "id": 28476, + "nodeType": "Block", + "src": "3690:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28472, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28465, + "src": "3708:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28473, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28467, + "src": "3712:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3708:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28471, + "id": 28475, + "nodeType": "Return", + "src": "3701:12:21" + } + ] + }, + "documentation": { + "id": 28463, + "nodeType": "StructuredDocumentation", + "src": "3330:287:21", + "text": " @dev Returns the integer division of two unsigned integers, reverting on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator.\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "div", + "nameLocation": "3632:3:21", + "parameters": { + "id": 28468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28465, + "mutability": "mutable", + "name": "a", + "nameLocation": "3644:1:21", + "nodeType": "VariableDeclaration", + "scope": 28477, + "src": "3636:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28464, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3636:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28467, + "mutability": "mutable", + "name": "b", + "nameLocation": "3655:1:21", + "nodeType": "VariableDeclaration", + "scope": 28477, + "src": "3647:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28466, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3647:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3635:22:21" + }, + "returnParameters": { + "id": 28471, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28470, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28477, + "src": "3681:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28469, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3681:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3680:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28492, + "nodeType": "FunctionDefinition", + "src": "4188:98:21", + "body": { + "id": 28491, + "nodeType": "Block", + "src": "4255:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28487, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28480, + "src": "4273:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 28488, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28482, + "src": "4277:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4273:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28486, + "id": 28490, + "nodeType": "Return", + "src": "4266:12:21" + } + ] + }, + "documentation": { + "id": 28478, + "nodeType": "StructuredDocumentation", + "src": "3729:453:21", + "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting when dividing by zero.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mod", + "nameLocation": "4197:3:21", + "parameters": { + "id": 28483, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28480, + "mutability": "mutable", + "name": "a", + "nameLocation": "4209:1:21", + "nodeType": "VariableDeclaration", + "scope": 28492, + "src": "4201:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28479, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4201:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28482, + "mutability": "mutable", + "name": "b", + "nameLocation": "4220:1:21", + "nodeType": "VariableDeclaration", + "scope": 28492, + "src": "4212:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28481, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4212:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4200:22:21" + }, + "returnParameters": { + "id": 28486, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28485, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28492, + "src": "4246:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28484, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4246:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4245:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28517, + "nodeType": "FunctionDefinition", + "src": "4765:206:21", + "body": { + "id": 28516, + "nodeType": "Block", + "src": "4860:111:21", + "statements": [ + { + "id": 28515, + "nodeType": "UncheckedBlock", + "src": "4871:93:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28505, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28497, + "src": "4904:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 28506, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28495, + "src": "4909:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4904:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 28508, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28499, + "src": "4912:12:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 28504, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4896:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4896:29:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28510, + "nodeType": "ExpressionStatement", + "src": "4896:29:21" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28511, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28495, + "src": "4947:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 28512, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28497, + "src": "4951:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4947:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28503, + "id": 28514, + "nodeType": "Return", + "src": "4940:12:21" + } + ] + } + ] + }, + "documentation": { + "id": 28493, + "nodeType": "StructuredDocumentation", + "src": "4294:465:21", + "text": " @dev Returns the subtraction of two unsigned integers, reverting with custom message on\n overflow (when the result is negative).\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {trySub}.\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sub", + "nameLocation": "4774:3:21", + "parameters": { + "id": 28500, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28495, + "mutability": "mutable", + "name": "a", + "nameLocation": "4786:1:21", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4778:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28494, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4778:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28497, + "mutability": "mutable", + "name": "b", + "nameLocation": "4797:1:21", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4789:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28496, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4789:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28499, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "4814:12:21", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4800:26:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28498, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4800:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4777:50:21" + }, + "returnParameters": { + "id": 28503, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28502, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4851:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28501, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4851:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4850:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28542, + "nodeType": "FunctionDefinition", + "src": "5469:205:21", + "body": { + "id": 28541, + "nodeType": "Block", + "src": "5564:110:21", + "statements": [ + { + "id": 28540, + "nodeType": "UncheckedBlock", + "src": "5575:92:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28530, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28522, + "src": "5608:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 28531, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5612:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5608:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 28533, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28524, + "src": "5615:12:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 28529, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5600:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5600:28:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28535, + "nodeType": "ExpressionStatement", + "src": "5600:28:21" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28536, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28520, + "src": "5650:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28537, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28522, + "src": "5654:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5650:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28528, + "id": 28539, + "nodeType": "Return", + "src": "5643:12:21" + } + ] + } + ] + }, + "documentation": { + "id": 28518, + "nodeType": "StructuredDocumentation", + "src": "4979:484:21", + "text": " @dev Returns the integer division of two unsigned integers, reverting with custom message on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator. Note: this function uses a\n `revert` opcode (which leaves remaining gas untouched) while Solidity\n uses an invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "div", + "nameLocation": "5478:3:21", + "parameters": { + "id": 28525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28520, + "mutability": "mutable", + "name": "a", + "nameLocation": "5490:1:21", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5482:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28519, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5482:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28522, + "mutability": "mutable", + "name": "b", + "nameLocation": "5501:1:21", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5493:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28521, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5493:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28524, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "5518:12:21", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5504:26:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28523, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5504:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5481:50:21" + }, + "returnParameters": { + "id": 28528, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28527, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5555:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28526, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5555:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5554:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28567, + "nodeType": "FunctionDefinition", + "src": "6337:205:21", + "body": { + "id": 28566, + "nodeType": "Block", + "src": "6432:110:21", + "statements": [ + { + "id": 28565, + "nodeType": "UncheckedBlock", + "src": "6443:92:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28555, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28547, + "src": "6476:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 28556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6480:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6476:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 28558, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28549, + "src": "6483:12:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 28554, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6468:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6468:28:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28560, + "nodeType": "ExpressionStatement", + "src": "6468:28:21" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28561, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28545, + "src": "6518:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 28562, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28547, + "src": "6522:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6518:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28553, + "id": 28564, + "nodeType": "Return", + "src": "6511:12:21" + } + ] + } + ] + }, + "documentation": { + "id": 28543, + "nodeType": "StructuredDocumentation", + "src": "5682:649:21", + "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting with custom message when dividing by zero.\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {tryMod}.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mod", + "nameLocation": "6346:3:21", + "parameters": { + "id": 28550, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28545, + "mutability": "mutable", + "name": "a", + "nameLocation": "6358:1:21", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6350:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28544, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6350:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28547, + "mutability": "mutable", + "name": "b", + "nameLocation": "6369:1:21", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6361:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28546, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6361:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28549, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "6386:12:21", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6372:26:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28548, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6372:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6349:50:21" + }, + "returnParameters": { + "id": 28553, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28552, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6423:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28551, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6423:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6422:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "SafeMath", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 28568 + ], + "name": "SafeMath", + "nameLocation": "144:8:21", + "scope": 29067, + "usedErrors": [] + }, + { + "id": 29066, + "nodeType": "ContractDefinition", + "src": "7736:9750:21", + "nodes": [ + { + "id": 28576, + "nodeType": "UsingForDirective", + "src": "7777:27:21", + "global": false, + "libraryName": { + "id": 28574, + "name": "SafeMath", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28568, + "src": "7783:8:21" + }, + "typeName": { + "id": 28575, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7796:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "id": 28580, + "nodeType": "VariableDeclaration", + "src": "7812:46:21", + "constant": false, + "mutability": "mutable", + "name": "_balances", + "nameLocation": "7849:9:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 28579, + "keyType": { + "id": 28577, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7821:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "7812:28:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 28578, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7832:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "private" + }, + { + "id": 28586, + "nodeType": "VariableDeclaration", + "src": "7867:69:21", + "constant": false, + "mutability": "mutable", + "name": "_allowances", + "nameLocation": "7925:11:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "typeName": { + "id": 28585, + "keyType": { + "id": 28581, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7876:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "7867:49:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "valueType": { + "id": 28584, + "keyType": { + "id": 28582, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7896:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "7887:28:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 28583, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7907:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + }, + "visibility": "private" + }, + { + "id": 28588, + "nodeType": "VariableDeclaration", + "src": "7945:28:21", + "constant": false, + "mutability": "mutable", + "name": "_totalSupply", + "nameLocation": "7961:12:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28587, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7945:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "private" + }, + { + "id": 28590, + "nodeType": "VariableDeclaration", + "src": "7982:20:21", + "constant": false, + "mutability": "mutable", + "name": "_name", + "nameLocation": "7997:5:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 28589, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7982:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "id": 28592, + "nodeType": "VariableDeclaration", + "src": "8009:22:21", + "constant": false, + "mutability": "mutable", + "name": "_symbol", + "nameLocation": "8024:7:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 28591, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8009:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "id": 28594, + "nodeType": "VariableDeclaration", + "src": "8038:23:21", + "constant": false, + "mutability": "mutable", + "name": "_decimals", + "nameLocation": "8052:9:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 28593, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "8038:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "private" + }, + { + "id": 28615, + "nodeType": "FunctionDefinition", + "src": "8395:142:21", + "body": { + "id": 28614, + "nodeType": "Block", + "src": "8452:85:21", + "statements": [ + { + "expression": { + "id": 28604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28602, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28590, + "src": "8463:5:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 28603, + "name": "name_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28597, + "src": "8471:5:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "8463:13:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 28605, + "nodeType": "ExpressionStatement", + "src": "8463:13:21" + }, + { + "expression": { + "id": 28608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28606, + "name": "_symbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28592, + "src": "8487:7:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 28607, + "name": "symbol_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28599, + "src": "8497:7:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "8487:17:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 28609, + "nodeType": "ExpressionStatement", + "src": "8487:17:21" + }, + { + "expression": { + "id": 28612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28610, + "name": "_decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28594, + "src": "8515:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "3138", + "id": 28611, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8527:2:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "src": "8515:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 28613, + "nodeType": "ExpressionStatement", + "src": "8515:14:21" + } + ] + }, + "documentation": { + "id": 28595, + "nodeType": "StructuredDocumentation", + "src": "8070:319:21", + "text": " @dev Sets the values for {name} and {symbol}, initializes {decimals} with\n a default value of 18.\n To select a different value for {decimals}, use {_setupDecimals}.\n All three of these values are immutable: they can only be set once during\n construction." + }, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "parameters": { + "id": 28600, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28597, + "mutability": "mutable", + "name": "name_", + "nameLocation": "8422:5:21", + "nodeType": "VariableDeclaration", + "scope": 28615, + "src": "8408:19:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28596, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8408:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28599, + "mutability": "mutable", + "name": "symbol_", + "nameLocation": "8443:7:21", + "nodeType": "VariableDeclaration", + "scope": 28615, + "src": "8429:21:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28598, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8429:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8407:44:21" + }, + "returnParameters": { + "id": 28601, + "nodeType": "ParameterList", + "parameters": [], + "src": "8452:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 28624, + "nodeType": "FunctionDefinition", + "src": "8607:91:21", + "body": { + "id": 28623, + "nodeType": "Block", + "src": "8667:31:21", + "statements": [ + { + "expression": { + "id": 28621, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28590, + "src": "8685:5:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 28620, + "id": 28622, + "nodeType": "Return", + "src": "8678:12:21" + } + ] + }, + "documentation": { + "id": 28616, + "nodeType": "StructuredDocumentation", + "src": "8545:56:21", + "text": " @dev Returns the name of the token." + }, + "functionSelector": "06fdde03", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "8616:4:21", + "parameters": { + "id": 28617, + "nodeType": "ParameterList", + "parameters": [], + "src": "8620:2:21" + }, + "returnParameters": { + "id": 28620, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28619, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28624, + "src": "8652:13:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28618, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8652:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8651:15:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28633, + "nodeType": "FunctionDefinition", + "src": "8817:95:21", + "body": { + "id": 28632, + "nodeType": "Block", + "src": "8879:33:21", + "statements": [ + { + "expression": { + "id": 28630, + "name": "_symbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28592, + "src": "8897:7:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 28629, + "id": 28631, + "nodeType": "Return", + "src": "8890:14:21" + } + ] + }, + "documentation": { + "id": 28625, + "nodeType": "StructuredDocumentation", + "src": "8706:105:21", + "text": " @dev Returns the symbol of the token, usually a shorter version of the\n name." + }, + "functionSelector": "95d89b41", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "symbol", + "nameLocation": "8826:6:21", + "parameters": { + "id": 28626, + "nodeType": "ParameterList", + "parameters": [], + "src": "8832:2:21" + }, + "returnParameters": { + "id": 28629, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28628, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28633, + "src": "8864:13:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28627, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8864:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8863:15:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28642, + "nodeType": "FunctionDefinition", + "src": "9550:91:21", + "body": { + "id": 28641, + "nodeType": "Block", + "src": "9606:35:21", + "statements": [ + { + "expression": { + "id": 28639, + "name": "_decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28594, + "src": "9624:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "functionReturnParameters": 28638, + "id": 28640, + "nodeType": "Return", + "src": "9617:16:21" + } + ] + }, + "documentation": { + "id": 28634, + "nodeType": "StructuredDocumentation", + "src": "8920:624:21", + "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 value {ERC20} uses, unless {_setupDecimals} is\n called.\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", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "decimals", + "nameLocation": "9559:8:21", + "parameters": { + "id": 28635, + "nodeType": "ParameterList", + "parameters": [], + "src": "9567:2:21" + }, + "returnParameters": { + "id": 28638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28637, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28642, + "src": "9599:5:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 28636, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "9599:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "9598:7:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28652, + "nodeType": "FunctionDefinition", + "src": "9706:108:21", + "body": { + "id": 28651, + "nodeType": "Block", + "src": "9776:38:21", + "statements": [ + { + "expression": { + "id": 28649, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "9794:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28648, + "id": 28650, + "nodeType": "Return", + "src": "9787:19:21" + } + ] + }, + "baseFunctions": [ + 29074 + ], + "documentation": { + "id": 28643, + "nodeType": "StructuredDocumentation", + "src": "9649:51:21", + "text": " @dev See {IERC20-totalSupply}." + }, + "functionSelector": "18160ddd", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "9715:11:21", + "overrides": { + "id": 28645, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "9749:8:21" + }, + "parameters": { + "id": 28644, + "nodeType": "ParameterList", + "parameters": [], + "src": "9726:2:21" + }, + "returnParameters": { + "id": 28648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28647, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28652, + "src": "9767:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28646, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9767:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9766:9:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28666, + "nodeType": "FunctionDefinition", + "src": "9877:127:21", + "body": { + "id": 28665, + "nodeType": "Block", + "src": "9960:44:21", + "statements": [ + { + "expression": { + "baseExpression": { + "id": 28661, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "9978:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28663, + "indexExpression": { + "id": 28662, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28655, + "src": "9988:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9978:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28660, + "id": 28664, + "nodeType": "Return", + "src": "9971:25:21" + } + ] + }, + "baseFunctions": [ + 29082 + ], + "documentation": { + "id": 28653, + "nodeType": "StructuredDocumentation", + "src": "9822:49:21", + "text": " @dev See {IERC20-balanceOf}." + }, + "functionSelector": "70a08231", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "9886:9:21", + "overrides": { + "id": 28657, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "9933:8:21" + }, + "parameters": { + "id": 28656, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28655, + "mutability": "mutable", + "name": "account", + "nameLocation": "9904:7:21", + "nodeType": "VariableDeclaration", + "scope": 28666, + "src": "9896:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28654, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9896:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9895:17:21" + }, + "returnParameters": { + "id": 28660, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28659, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28666, + "src": "9951:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28658, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9951:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9950:9:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28687, + "nodeType": "FunctionDefinition", + "src": "10217:175:21", + "body": { + "id": 28686, + "nodeType": "Block", + "src": "10309:83:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28678, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "10330:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10330:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28680, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28669, + "src": "10344:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28681, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28671, + "src": "10355:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28677, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28887, + "src": "10320:9:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10320:42:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28683, + "nodeType": "ExpressionStatement", + "src": "10320:42:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28684, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10380:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28676, + "id": 28685, + "nodeType": "Return", + "src": "10373:11:21" + } + ] + }, + "baseFunctions": [ + 29092 + ], + "documentation": { + "id": 28667, + "nodeType": "StructuredDocumentation", + "src": "10012:199:21", + "text": " @dev See {IERC20-transfer}.\n Requirements:\n - `recipient` cannot be the zero address.\n - the caller must have a balance of at least `amount`." + }, + "functionSelector": "a9059cbb", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "10226:8:21", + "overrides": { + "id": 28673, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "10285:8:21" + }, + "parameters": { + "id": 28672, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28669, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "10243:9:21", + "nodeType": "VariableDeclaration", + "scope": 28687, + "src": "10235:17:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28668, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10235:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28671, + "mutability": "mutable", + "name": "amount", + "nameLocation": "10262:6:21", + "nodeType": "VariableDeclaration", + "scope": 28687, + "src": "10254:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28670, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10254:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10234:35:21" + }, + "returnParameters": { + "id": 28676, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28675, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28687, + "src": "10303:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28674, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10303:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "10302:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28705, + "nodeType": "FunctionDefinition", + "src": "10455:151:21", + "body": { + "id": 28704, + "nodeType": "Block", + "src": "10553:53:21", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28698, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "10571:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28700, + "indexExpression": { + "id": 28699, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28690, + "src": "10583:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10571:18:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28702, + "indexExpression": { + "id": 28701, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28692, + "src": "10590:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10571:27:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28697, + "id": 28703, + "nodeType": "Return", + "src": "10564:34:21" + } + ] + }, + "baseFunctions": [ + 29102 + ], + "documentation": { + "id": 28688, + "nodeType": "StructuredDocumentation", + "src": "10400:49:21", + "text": " @dev See {IERC20-allowance}." + }, + "functionSelector": "dd62ed3e", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "10464:9:21", + "overrides": { + "id": 28694, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "10526:8:21" + }, + "parameters": { + "id": 28693, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28690, + "mutability": "mutable", + "name": "owner", + "nameLocation": "10482:5:21", + "nodeType": "VariableDeclaration", + "scope": 28705, + "src": "10474:13:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28689, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10474:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28692, + "mutability": "mutable", + "name": "spender", + "nameLocation": "10497:7:21", + "nodeType": "VariableDeclaration", + "scope": 28705, + "src": "10489:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28691, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10489:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10473:32:21" + }, + "returnParameters": { + "id": 28697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28696, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28705, + "src": "10544:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28695, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10544:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10543:9:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28726, + "nodeType": "FunctionDefinition", + "src": "10753:169:21", + "body": { + "id": 28725, + "nodeType": "Block", + "src": "10842:80:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28717, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "10862:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10862:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28719, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28708, + "src": "10876:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28720, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28710, + "src": "10885:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28716, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "10853:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10853:39:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28722, + "nodeType": "ExpressionStatement", + "src": "10853:39:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10910:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28715, + "id": 28724, + "nodeType": "Return", + "src": "10903:11:21" + } + ] + }, + "baseFunctions": [ + 29112 + ], + "documentation": { + "id": 28706, + "nodeType": "StructuredDocumentation", + "src": "10614:133:21", + "text": " @dev See {IERC20-approve}.\n Requirements:\n - `spender` cannot be the zero address." + }, + "functionSelector": "095ea7b3", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "10762:7:21", + "overrides": { + "id": 28712, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "10818:8:21" + }, + "parameters": { + "id": 28711, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28708, + "mutability": "mutable", + "name": "spender", + "nameLocation": "10778:7:21", + "nodeType": "VariableDeclaration", + "scope": 28726, + "src": "10770:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28707, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10770:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28710, + "mutability": "mutable", + "name": "amount", + "nameLocation": "10795:6:21", + "nodeType": "VariableDeclaration", + "scope": 28726, + "src": "10787:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28709, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10787:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10769:33:21" + }, + "returnParameters": { + "id": 28715, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28714, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28726, + "src": "10836:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28713, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10836:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "10835:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28764, + "nodeType": "FunctionDefinition", + "src": "11404:321:21", + "body": { + "id": 28763, + "nodeType": "Block", + "src": "11516:209:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 28740, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28729, + "src": "11537:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28741, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28731, + "src": "11545:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28742, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28733, + "src": "11556:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28739, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28887, + "src": "11527:9:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11527:36:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28744, + "nodeType": "ExpressionStatement", + "src": "11527:36:21" + }, + { + "expression": { + "arguments": [ + { + "id": 28746, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28729, + "src": "11583:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28747, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "11591:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11591:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "arguments": [ + { + "id": 28756, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28733, + "src": "11643:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365", + "id": 28757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11651:42:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_974d1b4421da69cc60b481194f0dad36a5bb4e23da810da7a7fb30cdba178330", + "typeString": "literal_string \"ERC20: transfer amount exceeds allowance\"" + }, + "value": "ERC20: transfer amount exceeds allowance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_974d1b4421da69cc60b481194f0dad36a5bb4e23da810da7a7fb30cdba178330", + "typeString": "literal_string \"ERC20: transfer amount exceeds allowance\"" + } + ], + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28749, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "11605:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28751, + "indexExpression": { + "id": 28750, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28729, + "src": "11617:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11605:19:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28754, + "indexExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28752, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "11625:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11625:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11605:33:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "11605:37:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11605:89:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28745, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "11574:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11574:121:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28760, + "nodeType": "ExpressionStatement", + "src": "11574:121:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28761, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11713:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28738, + "id": 28762, + "nodeType": "Return", + "src": "11706:11:21" + } + ] + }, + "baseFunctions": [ + 29124 + ], + "documentation": { + "id": 28727, + "nodeType": "StructuredDocumentation", + "src": "10930:468:21", + "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 Requirements:\n - `sender` and `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`.\n - the caller must have allowance for ``sender``'s tokens of at least\n `amount`." + }, + "functionSelector": "23b872dd", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "11413:12:21", + "overrides": { + "id": 28735, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "11492:8:21" + }, + "parameters": { + "id": 28734, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28729, + "mutability": "mutable", + "name": "sender", + "nameLocation": "11434:6:21", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11426:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28728, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11426:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28731, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "11450:9:21", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11442:17:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28730, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11442:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28733, + "mutability": "mutable", + "name": "amount", + "nameLocation": "11469:6:21", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11461:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28732, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11461:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11425:51:21" + }, + "returnParameters": { + "id": 28738, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28737, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11510:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28736, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11510:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11509:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28792, + "nodeType": "FunctionDefinition", + "src": "12134:218:21", + "body": { + "id": 28791, + "nodeType": "Block", + "src": "12228:124:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28775, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "12248:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12248:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28777, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28767, + "src": "12262:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 28785, + "name": "addedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28769, + "src": "12310:10:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28778, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "12271:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28781, + "indexExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28779, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "12283:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12283:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12271:25:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28783, + "indexExpression": { + "id": 28782, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28767, + "src": "12297:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12271:34:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "12271:38:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12271:50:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28774, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "12239:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12239:83:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28788, + "nodeType": "ExpressionStatement", + "src": "12239:83:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28789, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12340:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28773, + "id": 28790, + "nodeType": "Return", + "src": "12333:11:21" + } + ] + }, + "documentation": { + "id": 28765, + "nodeType": "StructuredDocumentation", + "src": "11733:395:21", + "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", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "increaseAllowance", + "nameLocation": "12143:17:21", + "parameters": { + "id": 28770, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28767, + "mutability": "mutable", + "name": "spender", + "nameLocation": "12169:7:21", + "nodeType": "VariableDeclaration", + "scope": 28792, + "src": "12161:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28766, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12161:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28769, + "mutability": "mutable", + "name": "addedValue", + "nameLocation": "12186:10:21", + "nodeType": "VariableDeclaration", + "scope": 28792, + "src": "12178:18:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28768, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12178:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12160:37:21" + }, + "returnParameters": { + "id": 28773, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28772, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28792, + "src": "12222:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28771, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12222:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12221:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28821, + "nodeType": "FunctionDefinition", + "src": "12855:269:21", + "body": { + "id": 28820, + "nodeType": "Block", + "src": "12954:170:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28803, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "12974:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12974:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28805, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28795, + "src": "12988:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 28813, + "name": "subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28797, + "src": "13036:15:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f", + "id": 28814, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13053:39:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8", + "typeString": "literal_string \"ERC20: decreased allowance below zero\"" + }, + "value": "ERC20: decreased allowance below zero" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8", + "typeString": "literal_string \"ERC20: decreased allowance below zero\"" + } + ], + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28806, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "12997:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28809, + "indexExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28807, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "13009:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28808, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13009:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12997:25:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28811, + "indexExpression": { + "id": 28810, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28795, + "src": "13023:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12997:34:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "12997:38:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12997:96:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28802, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "12965:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12965:129:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28817, + "nodeType": "ExpressionStatement", + "src": "12965:129:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13112:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28801, + "id": 28819, + "nodeType": "Return", + "src": "13105:11:21" + } + ] + }, + "documentation": { + "id": 28793, + "nodeType": "StructuredDocumentation", + "src": "12360:489:21", + "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", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "decreaseAllowance", + "nameLocation": "12864:17:21", + "parameters": { + "id": 28798, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28795, + "mutability": "mutable", + "name": "spender", + "nameLocation": "12890:7:21", + "nodeType": "VariableDeclaration", + "scope": 28821, + "src": "12882:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28794, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12882:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28797, + "mutability": "mutable", + "name": "subtractedValue", + "nameLocation": "12907:15:21", + "nodeType": "VariableDeclaration", + "scope": 28821, + "src": "12899:23:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28796, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12899:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12881:42:21" + }, + "returnParameters": { + "id": 28801, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28800, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28821, + "src": "12948:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28799, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12948:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12947:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28887, + "nodeType": "FunctionDefinition", + "src": "13614:549:21", + "body": { + "id": 28886, + "nodeType": "Block", + "src": "13701:462:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28837, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28832, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13720:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28835, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13738:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28834, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "13730:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28833, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13730:7:21", + "typeDescriptions": {} + } + }, + "id": 28836, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13730:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "13720:20:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", + "id": 28838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13742:39:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", + "typeString": "literal_string \"ERC20: transfer from the zero address\"" + }, + "value": "ERC20: transfer from the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", + "typeString": "literal_string \"ERC20: transfer from the zero address\"" + } + ], + "id": 28831, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13712:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28839, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13712:70:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28840, + "nodeType": "ExpressionStatement", + "src": "13712:70:21" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28842, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "13801:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28845, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13822:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28844, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "13814:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13814:7:21", + "typeDescriptions": {} + } + }, + "id": 28846, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13814:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "13801:23:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", + "id": 28848, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13826:37:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", + "typeString": "literal_string \"ERC20: transfer to the zero address\"" + }, + "value": "ERC20: transfer to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", + "typeString": "literal_string \"ERC20: transfer to the zero address\"" + } + ], + "id": 28841, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13793:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13793:71:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28850, + "nodeType": "ExpressionStatement", + "src": "13793:71:21" + }, + { + "expression": { + "arguments": [ + { + "id": 28852, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13908:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28853, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "13916:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28854, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "13927:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28851, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29065, + "src": "13887:20:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13887:47:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28856, + "nodeType": "ExpressionStatement", + "src": "13887:47:21" + }, + { + "expression": { + "id": 28867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28857, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "13947:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28859, + "indexExpression": { + "id": 28858, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13957:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13947:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28864, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "13989:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365", + "id": 28865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13997:40:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6", + "typeString": "literal_string \"ERC20: transfer amount exceeds balance\"" + }, + "value": "ERC20: transfer amount exceeds balance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6", + "typeString": "literal_string \"ERC20: transfer amount exceeds balance\"" + } + ], + "expression": { + "baseExpression": { + "id": 28860, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "13967:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28862, + "indexExpression": { + "id": 28861, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13977:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13967:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "13967:21:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13967:71:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13947:91:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28868, + "nodeType": "ExpressionStatement", + "src": "13947:91:21" + }, + { + "expression": { + "id": 28878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28869, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14049:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28871, + "indexExpression": { + "id": 28870, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "14059:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14049:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28876, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "14097:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "baseExpression": { + "id": 28872, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14072:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28874, + "indexExpression": { + "id": 28873, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "14082:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14072:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "14072:24:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28877, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14072:32:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14049:55:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28879, + "nodeType": "ExpressionStatement", + "src": "14049:55:21" + }, + { + "eventCall": { + "arguments": [ + { + "id": 28881, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "14129:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28882, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "14137:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28883, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "14148:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28880, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29133, + "src": "14120:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14120:35:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28885, + "nodeType": "EmitStatement", + "src": "14115:40:21" + } + ] + }, + "documentation": { + "id": 28822, + "nodeType": "StructuredDocumentation", + "src": "13132:476:21", + "text": " @dev Moves tokens `amount` from `sender` to `recipient`.\n This is 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 - `sender` cannot be the zero address.\n - `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transfer", + "nameLocation": "13623:9:21", + "parameters": { + "id": 28829, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28824, + "mutability": "mutable", + "name": "sender", + "nameLocation": "13641:6:21", + "nodeType": "VariableDeclaration", + "scope": 28887, + "src": "13633:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28823, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13633:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28826, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "13657:9:21", + "nodeType": "VariableDeclaration", + "scope": 28887, + "src": "13649:17:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28825, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13649:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28828, + "mutability": "mutable", + "name": "amount", + "nameLocation": "13676:6:21", + "nodeType": "VariableDeclaration", + "scope": 28887, + "src": "13668:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28827, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13668:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13632:51:21" + }, + "returnParameters": { + "id": 28830, + "nodeType": "ParameterList", + "parameters": [], + "src": "13701:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 28942, + "nodeType": "FunctionDefinition", + "src": "14445:378:21", + "body": { + "id": 28941, + "nodeType": "Block", + "src": "14510:313:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28896, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14529:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14548:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14540:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28897, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14540:7:21", + "typeDescriptions": {} + } + }, + "id": 28900, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14540:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "14529:21:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", + "id": 28902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14552:33:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", + "typeString": "literal_string \"ERC20: mint to the zero address\"" + }, + "value": "ERC20: mint to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", + "typeString": "literal_string \"ERC20: mint to the zero address\"" + } + ], + "id": 28895, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "14521:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14521:65:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28904, + "nodeType": "ExpressionStatement", + "src": "14521:65:21" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 28908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14628:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28907, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14620:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28906, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14620:7:21", + "typeDescriptions": {} + } + }, + "id": 28909, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14620:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28910, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14632:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28911, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14641:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28905, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29065, + "src": "14599:20:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14599:49:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28913, + "nodeType": "ExpressionStatement", + "src": "14599:49:21" + }, + { + "expression": { + "id": 28919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28914, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "14661:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28917, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14693:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 28915, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "14676:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "14676:16:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14676:24:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14661:39:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28920, + "nodeType": "ExpressionStatement", + "src": "14661:39:21" + }, + { + "expression": { + "id": 28930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28921, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14711:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28923, + "indexExpression": { + "id": 28922, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14721:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14711:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28928, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14755:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "baseExpression": { + "id": 28924, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14732:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28926, + "indexExpression": { + "id": 28925, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14742:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14732:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "14732:22:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28929, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14732:30:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14711:51:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28931, + "nodeType": "ExpressionStatement", + "src": "14711:51:21" + }, + { + "eventCall": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 28935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14795:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14787:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28933, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14787:7:21", + "typeDescriptions": {} + } + }, + "id": 28936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14787:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28937, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14799:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28938, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14808:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28932, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29133, + "src": "14778:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14778:37:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28940, + "nodeType": "EmitStatement", + "src": "14773:42:21" + } + ] + }, + "documentation": { + "id": 28888, + "nodeType": "StructuredDocumentation", + "src": "14171:268:21", + "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 - `to` cannot be the zero address." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_mint", + "nameLocation": "14454:5:21", + "parameters": { + "id": 28893, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28890, + "mutability": "mutable", + "name": "account", + "nameLocation": "14468:7:21", + "nodeType": "VariableDeclaration", + "scope": 28942, + "src": "14460:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28889, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14460:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28892, + "mutability": "mutable", + "name": "amount", + "nameLocation": "14485:6:21", + "nodeType": "VariableDeclaration", + "scope": 28942, + "src": "14477:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28891, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14477:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14459:33:21" + }, + "returnParameters": { + "id": 28894, + "nodeType": "ParameterList", + "parameters": [], + "src": "14510:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 28998, + "nodeType": "FunctionDefinition", + "src": "15156:418:21", + "body": { + "id": 28997, + "nodeType": "Block", + "src": "15221:353:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28951, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15240:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15259:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15251:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28952, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15251:7:21", + "typeDescriptions": {} + } + }, + "id": 28955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15251:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "15240:21:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", + "id": 28957, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15263:35:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", + "typeString": "literal_string \"ERC20: burn from the zero address\"" + }, + "value": "ERC20: burn from the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", + "typeString": "literal_string \"ERC20: burn from the zero address\"" + } + ], + "id": 28950, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "15232:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15232:67:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28959, + "nodeType": "ExpressionStatement", + "src": "15232:67:21" + }, + { + "expression": { + "arguments": [ + { + "id": 28961, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15333:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 28964, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15350:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15342:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28962, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15342:7:21", + "typeDescriptions": {} + } + }, + "id": 28965, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15342:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28966, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15354:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28960, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29065, + "src": "15312:20:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15312:49:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28968, + "nodeType": "ExpressionStatement", + "src": "15312:49:21" + }, + { + "expression": { + "id": 28979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28969, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "15374:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28971, + "indexExpression": { + "id": 28970, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15384:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "15374:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28976, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15418:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365", + "id": 28977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15426:36:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd", + "typeString": "literal_string \"ERC20: burn amount exceeds balance\"" + }, + "value": "ERC20: burn amount exceeds balance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd", + "typeString": "literal_string \"ERC20: burn amount exceeds balance\"" + } + ], + "expression": { + "baseExpression": { + "id": 28972, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "15395:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28974, + "indexExpression": { + "id": 28973, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15405:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "15395:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "15395:22:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15395:68:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "15374:89:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28980, + "nodeType": "ExpressionStatement", + "src": "15374:89:21" + }, + { + "expression": { + "id": 28986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28981, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "15474:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28984, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15506:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 28982, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "15489:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28447, + "src": "15489:16:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15489:24:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "15474:39:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28987, + "nodeType": "ExpressionStatement", + "src": "15474:39:21" + }, + { + "eventCall": { + "arguments": [ + { + "id": 28989, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15538:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 28992, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15555:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15547:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28990, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15547:7:21", + "typeDescriptions": {} + } + }, + "id": 28993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15547:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28994, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15559:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28988, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29133, + "src": "15529:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15529:37:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28996, + "nodeType": "EmitStatement", + "src": "15524:42:21" + } + ] + }, + "documentation": { + "id": 28943, + "nodeType": "StructuredDocumentation", + "src": "14831:319:21", + "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." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_burn", + "nameLocation": "15165:5:21", + "parameters": { + "id": 28948, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28945, + "mutability": "mutable", + "name": "account", + "nameLocation": "15179:7:21", + "nodeType": "VariableDeclaration", + "scope": 28998, + "src": "15171:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28944, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15171:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28947, + "mutability": "mutable", + "name": "amount", + "nameLocation": "15196:6:21", + "nodeType": "VariableDeclaration", + "scope": 28998, + "src": "15188:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28946, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15188:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15170:33:21" + }, + "returnParameters": { + "id": 28949, + "nodeType": "ParameterList", + "parameters": [], + "src": "15221:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 29043, + "nodeType": "FunctionDefinition", + "src": "16012:346:21", + "body": { + "id": 29042, + "nodeType": "Block", + "src": "16095:263:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 29014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29009, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29001, + "src": "16114:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 29012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16131:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 29011, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16123:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29010, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16123:7:21", + "typeDescriptions": {} + } + }, + "id": 29013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16123:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16114:19:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", + "id": 29015, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16135:38:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", + "typeString": "literal_string \"ERC20: approve from the zero address\"" + }, + "value": "ERC20: approve from the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", + "typeString": "literal_string \"ERC20: approve from the zero address\"" + } + ], + "id": 29008, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16106:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 29016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16106:68:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29017, + "nodeType": "ExpressionStatement", + "src": "16106:68:21" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 29024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29019, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29003, + "src": "16193:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 29022, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16212:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 29021, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16204:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29020, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16204:7:21", + "typeDescriptions": {} + } + }, + "id": 29023, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16204:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16193:21:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", + "id": 29025, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16216:36:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", + "typeString": "literal_string \"ERC20: approve to the zero address\"" + }, + "value": "ERC20: approve to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", + "typeString": "literal_string \"ERC20: approve to the zero address\"" + } + ], + "id": 29018, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16185:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 29026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16185:68:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29027, + "nodeType": "ExpressionStatement", + "src": "16185:68:21" + }, + { + "expression": { + "id": 29034, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 29028, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "16266:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 29031, + "indexExpression": { + "id": 29029, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29001, + "src": "16278:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16266:18:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 29032, + "indexExpression": { + "id": 29030, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29003, + "src": "16285:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "16266:27:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 29033, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29005, + "src": "16296:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16266:36:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29035, + "nodeType": "ExpressionStatement", + "src": "16266:36:21" + }, + { + "eventCall": { + "arguments": [ + { + "id": 29037, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29001, + "src": "16327:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 29038, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29003, + "src": "16334:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 29039, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29005, + "src": "16343:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 29036, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29142, + "src": "16318:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 29040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16318:32:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29041, + "nodeType": "EmitStatement", + "src": "16313:37:21" + } + ] + }, + "documentation": { + "id": 28999, + "nodeType": "StructuredDocumentation", + "src": "15582:424:21", + "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." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_approve", + "nameLocation": "16021:8:21", + "parameters": { + "id": 29006, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29001, + "mutability": "mutable", + "name": "owner", + "nameLocation": "16038:5:21", + "nodeType": "VariableDeclaration", + "scope": 29043, + "src": "16030:13:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29000, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16030:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29003, + "mutability": "mutable", + "name": "spender", + "nameLocation": "16053:7:21", + "nodeType": "VariableDeclaration", + "scope": 29043, + "src": "16045:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29002, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16045:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29005, + "mutability": "mutable", + "name": "amount", + "nameLocation": "16070:6:21", + "nodeType": "VariableDeclaration", + "scope": 29043, + "src": "16062:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29004, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16062:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16029:48:21" + }, + "returnParameters": { + "id": 29007, + "nodeType": "ParameterList", + "parameters": [], + "src": "16095:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 29054, + "nodeType": "FunctionDefinition", + "src": "16690:98:21", + "body": { + "id": 29053, + "nodeType": "Block", + "src": "16748:40:21", + "statements": [ + { + "expression": { + "id": 29051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 29049, + "name": "_decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28594, + "src": "16759:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 29050, + "name": "decimals_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29046, + "src": "16771:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "16759:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 29052, + "nodeType": "ExpressionStatement", + "src": "16759:21:21" + } + ] + }, + "documentation": { + "id": 29044, + "nodeType": "StructuredDocumentation", + "src": "16366:318:21", + "text": " @dev Sets {decimals} to a value other than the default one of 18.\n WARNING: This function should only be called from the constructor. Most\n applications that interact with token contracts will not expect\n {decimals} to ever change, and may work incorrectly if it does." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setupDecimals", + "nameLocation": "16699:14:21", + "parameters": { + "id": 29047, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29046, + "mutability": "mutable", + "name": "decimals_", + "nameLocation": "16720:9:21", + "nodeType": "VariableDeclaration", + "scope": 29054, + "src": "16714:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29045, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "16714:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "16713:17:21" + }, + "returnParameters": { + "id": 29048, + "nodeType": "ParameterList", + "parameters": [], + "src": "16748:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 29065, + "nodeType": "FunctionDefinition", + "src": "17391:92:21", + "body": { + "id": 29064, + "nodeType": "Block", + "src": "17480:3:21", + "statements": [] + }, + "documentation": { + "id": 29055, + "nodeType": "StructuredDocumentation", + "src": "16796:589:21", + "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 to 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]." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_beforeTokenTransfer", + "nameLocation": "17400:20:21", + "parameters": { + "id": 29062, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29057, + "mutability": "mutable", + "name": "from", + "nameLocation": "17429:4:21", + "nodeType": "VariableDeclaration", + "scope": 29065, + "src": "17421:12:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29056, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17421:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29059, + "mutability": "mutable", + "name": "to", + "nameLocation": "17443:2:21", + "nodeType": "VariableDeclaration", + "scope": 29065, + "src": "17435:10:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29058, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17435:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29061, + "mutability": "mutable", + "name": "amount", + "nameLocation": "17455:6:21", + "nodeType": "VariableDeclaration", + "scope": 29065, + "src": "17447:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29060, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17447:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "17420:42:21" + }, + "returnParameters": { + "id": 29063, + "nodeType": "ParameterList", + "parameters": [], + "src": "17480:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 28570, + "name": "Context", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28107, + "src": "7754:7:21" + }, + "id": 28571, + "nodeType": "InheritanceSpecifier", + "src": "7754:7:21" + }, + { + "baseName": { + "id": 28572, + "name": "IERC20", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29143, + "src": "7763:6:21" + }, + "id": 28573, + "nodeType": "InheritanceSpecifier", + "src": "7763:6:21" + } + ], + "canonicalName": "ERC20", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 28569, + "nodeType": "StructuredDocumentation", + "src": "6549:1185:21", + "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.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n We have followed general OpenZeppelin guidelines: functions revert instead\n of returning `false` on failure. This behavior is nonetheless conventional\n and does not conflict with the expectations of ERC20 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, + "linearizedBaseContracts": [ + 29066, + 29143, + 28107 + ], + "name": "ERC20", + "nameLocation": "7745:5:21", + "scope": 29067, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 21 +} \ No newline at end of file diff --git a/out/ERC20.sol/SafeMath.json b/out/ERC20.sol/SafeMath.json new file mode 100644 index 0000000..9b7ea40 --- /dev/null +++ b/out/ERC20.sol/SafeMath.json @@ -0,0 +1,10082 @@ +{ + "abi": [], + "bytecode": { + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220455312f75e7d9ca214ee6955c5232c60588eb959044ede805915450800261a0f64736f6c634300080f0033", + "sourceMap": "136:6409:21:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;136:6409:21;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220455312f75e7d9ca214ee6955c5232c60588eb959044ede805915450800261a0f64736f6c634300080f0033", + "sourceMap": "136:6409:21:-:0;;;;;;;;", + "linkReferences": {} + }, + "methodIdentifiers": {}, + "ast": { + "absolutePath": "src/interfaces/ERC20.sol", + "id": 29067, + "exportedSymbols": { + "Context": [ + 28107 + ], + "ERC20": [ + 29066 + ], + "IERC20": [ + 29143 + ], + "IERC20Extended": [ + 29151 + ], + "SafeMath": [ + 28568 + ] + }, + "nodeType": "SourceUnit", + "src": "46:17440:21", + "nodes": [ + { + "id": 28257, + "nodeType": "PragmaDirective", + "src": "46:23:21", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 28258, + "nodeType": "ImportDirective", + "src": "73:35:21", + "absolutePath": "src/extensions/Context.sol", + "file": "../extensions/Context.sol", + "nameLocation": "-1:-1:-1", + "scope": 29067, + "sourceUnit": 28108, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 28259, + "nodeType": "ImportDirective", + "src": "110:22:21", + "absolutePath": "src/interfaces/IERC20.sol", + "file": "./IERC20.sol", + "nameLocation": "-1:-1:-1", + "scope": 29067, + "sourceUnit": 29152, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 28568, + "nodeType": "ContractDefinition", + "src": "136:6409:21", + "nodes": [ + { + "id": 28291, + "nodeType": "FunctionDefinition", + "src": "301:222:21", + "body": { + "id": 28290, + "nodeType": "Block", + "src": "377:146:21", + "statements": [ + { + "id": 28289, + "nodeType": "UncheckedBlock", + "src": "388:128:21", + "statements": [ + { + "assignments": [ + 28272 + ], + "declarations": [ + { + "constant": false, + "id": 28272, + "mutability": "mutable", + "name": "c", + "nameLocation": "421:1:21", + "nodeType": "VariableDeclaration", + "scope": 28289, + "src": "413:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28271, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "413:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 28276, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28273, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28262, + "src": "425:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 28274, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28264, + "src": "429:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "425:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "413:17:21" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28279, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28277, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28272, + "src": "449:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 28278, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28262, + "src": "453:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "449:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28284, + "nodeType": "IfStatement", + "src": "445:28:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "464:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "471:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28282, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "463:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28270, + "id": 28283, + "nodeType": "Return", + "src": "456:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "496:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 28286, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28272, + "src": "502:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28287, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "495:9:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28270, + "id": 28288, + "nodeType": "Return", + "src": "488:16:21" + } + ] + } + ] + }, + "documentation": { + "id": 28260, + "nodeType": "StructuredDocumentation", + "src": "160:135:21", + "text": " @dev Returns the addition of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryAdd", + "nameLocation": "310:6:21", + "parameters": { + "id": 28265, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28262, + "mutability": "mutable", + "name": "a", + "nameLocation": "325:1:21", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "317:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28261, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "317:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28264, + "mutability": "mutable", + "name": "b", + "nameLocation": "336:1:21", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "328:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28263, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "328:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "316:22:21" + }, + "returnParameters": { + "id": 28270, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28267, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "362:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28266, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "362:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28269, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28291, + "src": "368:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28268, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "368:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "361:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28319, + "nodeType": "FunctionDefinition", + "src": "675:194:21", + "body": { + "id": 28318, + "nodeType": "Block", + "src": "751:118:21", + "statements": [ + { + "id": 28317, + "nodeType": "UncheckedBlock", + "src": "762:100:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28303, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28296, + "src": "791:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 28304, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28294, + "src": "795:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "791:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28310, + "nodeType": "IfStatement", + "src": "787:28:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "806:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28307, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "813:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28308, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "805:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28302, + "id": 28309, + "nodeType": "Return", + "src": "798:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "838:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28312, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28294, + "src": "844:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 28313, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28296, + "src": "848:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "844:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28315, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "837:13:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28302, + "id": 28316, + "nodeType": "Return", + "src": "830:20:21" + } + ] + } + ] + }, + "documentation": { + "id": 28292, + "nodeType": "StructuredDocumentation", + "src": "531:138:21", + "text": " @dev Returns the subtraction of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "trySub", + "nameLocation": "684:6:21", + "parameters": { + "id": 28297, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28294, + "mutability": "mutable", + "name": "a", + "nameLocation": "699:1:21", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "691:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28293, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "691:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28296, + "mutability": "mutable", + "name": "b", + "nameLocation": "710:1:21", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "702:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28295, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "702:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "690:22:21" + }, + "returnParameters": { + "id": 28302, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28299, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "736:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28298, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "736:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28301, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28319, + "src": "742:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28300, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "742:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "735:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28361, + "nodeType": "FunctionDefinition", + "src": "1024:503:21", + "body": { + "id": 28360, + "nodeType": "Block", + "src": "1100:427:21", + "statements": [ + { + "id": 28359, + "nodeType": "UncheckedBlock", + "src": "1111:409:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28331, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28322, + "src": "1373:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 28332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1378:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1373:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28338, + "nodeType": "IfStatement", + "src": "1369:28:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1389:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "hexValue": "30", + "id": 28335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1395:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28336, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1388:9:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28330, + "id": 28337, + "nodeType": "Return", + "src": "1381:16:21" + } + }, + { + "assignments": [ + 28340 + ], + "declarations": [ + { + "constant": false, + "id": 28340, + "mutability": "mutable", + "name": "c", + "nameLocation": "1420:1:21", + "nodeType": "VariableDeclaration", + "scope": 28359, + "src": "1412:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28339, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1412:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 28344, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28341, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28322, + "src": "1424:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 28342, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28324, + "src": "1428:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1424:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1412:17:21" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28345, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28340, + "src": "1448:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28346, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28322, + "src": "1452:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1448:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 28348, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28324, + "src": "1457:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1448:10:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28354, + "nodeType": "IfStatement", + "src": "1444:33:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1468:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1475:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28352, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1467:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28330, + "id": 28353, + "nodeType": "Return", + "src": "1460:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1500:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 28356, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28340, + "src": "1506:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28357, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1499:9:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28330, + "id": 28358, + "nodeType": "Return", + "src": "1492:16:21" + } + ] + } + ] + }, + "documentation": { + "id": 28320, + "nodeType": "StructuredDocumentation", + "src": "877:141:21", + "text": " @dev Returns the multiplication of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryMul", + "nameLocation": "1033:6:21", + "parameters": { + "id": 28325, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28322, + "mutability": "mutable", + "name": "a", + "nameLocation": "1048:1:21", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1040:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28321, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1040:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28324, + "mutability": "mutable", + "name": "b", + "nameLocation": "1059:1:21", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1051:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28323, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1051:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1039:22:21" + }, + "returnParameters": { + "id": 28330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28327, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1085:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28326, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1085:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28329, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28361, + "src": "1091:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28328, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1091:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1084:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28389, + "nodeType": "FunctionDefinition", + "src": "1683:195:21", + "body": { + "id": 28388, + "nodeType": "Block", + "src": "1759:119:21", + "statements": [ + { + "id": 28387, + "nodeType": "UncheckedBlock", + "src": "1770:101:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28373, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28366, + "src": "1799:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 28374, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1804:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1799:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28380, + "nodeType": "IfStatement", + "src": "1795:29:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1815:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28377, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1822:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28378, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1814:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28372, + "id": 28379, + "nodeType": "Return", + "src": "1807:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28381, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1847:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28382, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28364, + "src": "1853:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28383, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28366, + "src": "1857:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1853:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28385, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1846:13:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28372, + "id": 28386, + "nodeType": "Return", + "src": "1839:20:21" + } + ] + } + ] + }, + "documentation": { + "id": 28362, + "nodeType": "StructuredDocumentation", + "src": "1535:142:21", + "text": " @dev Returns the division of two unsigned integers, with a division by zero flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryDiv", + "nameLocation": "1692:6:21", + "parameters": { + "id": 28367, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28364, + "mutability": "mutable", + "name": "a", + "nameLocation": "1707:1:21", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1699:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28363, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1699:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28366, + "mutability": "mutable", + "name": "b", + "nameLocation": "1718:1:21", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1710:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28365, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1710:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1698:22:21" + }, + "returnParameters": { + "id": 28372, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28369, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1744:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28368, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1744:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28371, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28389, + "src": "1750:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28370, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1750:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1743:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28417, + "nodeType": "FunctionDefinition", + "src": "2044:195:21", + "body": { + "id": 28416, + "nodeType": "Block", + "src": "2120:119:21", + "statements": [ + { + "id": 28415, + "nodeType": "UncheckedBlock", + "src": "2131:101:21", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28401, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28394, + "src": "2160:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 28402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2165:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2160:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 28408, + "nodeType": "IfStatement", + "src": "2156:29:21", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 28404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2176:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 28405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2183:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 28406, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2175:10:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 28400, + "id": 28407, + "nodeType": "Return", + "src": "2168:17:21" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 28409, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2208:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28410, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28392, + "src": "2214:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 28411, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28394, + "src": "2218:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2214:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 28413, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2207:13:21", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 28400, + "id": 28414, + "nodeType": "Return", + "src": "2200:20:21" + } + ] + } + ] + }, + "documentation": { + "id": 28390, + "nodeType": "StructuredDocumentation", + "src": "1886:152:21", + "text": " @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryMod", + "nameLocation": "2053:6:21", + "parameters": { + "id": 28395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28392, + "mutability": "mutable", + "name": "a", + "nameLocation": "2068:1:21", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2060:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28391, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2060:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28394, + "mutability": "mutable", + "name": "b", + "nameLocation": "2079:1:21", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2071:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2071:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2059:22:21" + }, + "returnParameters": { + "id": 28400, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28397, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2105:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28396, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2105:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28399, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28417, + "src": "2111:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28398, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2111:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2104:15:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28432, + "nodeType": "FunctionDefinition", + "src": "2486:98:21", + "body": { + "id": 28431, + "nodeType": "Block", + "src": "2553:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28427, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28420, + "src": "2571:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 28428, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28422, + "src": "2575:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2571:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28426, + "id": 28430, + "nodeType": "Return", + "src": "2564:12:21" + } + ] + }, + "documentation": { + "id": 28418, + "nodeType": "StructuredDocumentation", + "src": "2247:233:21", + "text": " @dev Returns the addition of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `+` operator.\n Requirements:\n - Addition cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "add", + "nameLocation": "2495:3:21", + "parameters": { + "id": 28423, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28420, + "mutability": "mutable", + "name": "a", + "nameLocation": "2507:1:21", + "nodeType": "VariableDeclaration", + "scope": 28432, + "src": "2499:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28419, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2499:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28422, + "mutability": "mutable", + "name": "b", + "nameLocation": "2518:1:21", + "nodeType": "VariableDeclaration", + "scope": 28432, + "src": "2510:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28421, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2510:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2498:22:21" + }, + "returnParameters": { + "id": 28426, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28425, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28432, + "src": "2544:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28424, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2544:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2543:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28447, + "nodeType": "FunctionDefinition", + "src": "2867:98:21", + "body": { + "id": 28446, + "nodeType": "Block", + "src": "2934:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28442, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28435, + "src": "2952:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 28443, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28437, + "src": "2956:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2952:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28441, + "id": 28445, + "nodeType": "Return", + "src": "2945:12:21" + } + ] + }, + "documentation": { + "id": 28433, + "nodeType": "StructuredDocumentation", + "src": "2592:269:21", + "text": " @dev Returns the subtraction of two unsigned integers, reverting on\n overflow (when the result is negative).\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sub", + "nameLocation": "2876:3:21", + "parameters": { + "id": 28438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28435, + "mutability": "mutable", + "name": "a", + "nameLocation": "2888:1:21", + "nodeType": "VariableDeclaration", + "scope": 28447, + "src": "2880:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28434, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2880:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28437, + "mutability": "mutable", + "name": "b", + "nameLocation": "2899:1:21", + "nodeType": "VariableDeclaration", + "scope": 28447, + "src": "2891:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28436, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2891:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2879:22:21" + }, + "returnParameters": { + "id": 28441, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28440, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28447, + "src": "2925:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28439, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2925:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2924:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28462, + "nodeType": "FunctionDefinition", + "src": "3224:98:21", + "body": { + "id": 28461, + "nodeType": "Block", + "src": "3291:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28457, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28450, + "src": "3309:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 28458, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28452, + "src": "3313:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3309:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28456, + "id": 28460, + "nodeType": "Return", + "src": "3302:12:21" + } + ] + }, + "documentation": { + "id": 28448, + "nodeType": "StructuredDocumentation", + "src": "2973:245:21", + "text": " @dev Returns the multiplication of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `*` operator.\n Requirements:\n - Multiplication cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mul", + "nameLocation": "3233:3:21", + "parameters": { + "id": 28453, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28450, + "mutability": "mutable", + "name": "a", + "nameLocation": "3245:1:21", + "nodeType": "VariableDeclaration", + "scope": 28462, + "src": "3237:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28449, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3237:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28452, + "mutability": "mutable", + "name": "b", + "nameLocation": "3256:1:21", + "nodeType": "VariableDeclaration", + "scope": 28462, + "src": "3248:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28451, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3248:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3236:22:21" + }, + "returnParameters": { + "id": 28456, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28455, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28462, + "src": "3282:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28454, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3282:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3281:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28477, + "nodeType": "FunctionDefinition", + "src": "3623:98:21", + "body": { + "id": 28476, + "nodeType": "Block", + "src": "3690:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28472, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28465, + "src": "3708:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28473, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28467, + "src": "3712:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3708:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28471, + "id": 28475, + "nodeType": "Return", + "src": "3701:12:21" + } + ] + }, + "documentation": { + "id": 28463, + "nodeType": "StructuredDocumentation", + "src": "3330:287:21", + "text": " @dev Returns the integer division of two unsigned integers, reverting on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator.\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "div", + "nameLocation": "3632:3:21", + "parameters": { + "id": 28468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28465, + "mutability": "mutable", + "name": "a", + "nameLocation": "3644:1:21", + "nodeType": "VariableDeclaration", + "scope": 28477, + "src": "3636:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28464, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3636:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28467, + "mutability": "mutable", + "name": "b", + "nameLocation": "3655:1:21", + "nodeType": "VariableDeclaration", + "scope": 28477, + "src": "3647:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28466, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3647:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3635:22:21" + }, + "returnParameters": { + "id": 28471, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28470, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28477, + "src": "3681:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28469, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3681:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3680:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28492, + "nodeType": "FunctionDefinition", + "src": "4188:98:21", + "body": { + "id": 28491, + "nodeType": "Block", + "src": "4255:31:21", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28487, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28480, + "src": "4273:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 28488, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28482, + "src": "4277:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4273:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28486, + "id": 28490, + "nodeType": "Return", + "src": "4266:12:21" + } + ] + }, + "documentation": { + "id": 28478, + "nodeType": "StructuredDocumentation", + "src": "3729:453:21", + "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting when dividing by zero.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mod", + "nameLocation": "4197:3:21", + "parameters": { + "id": 28483, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28480, + "mutability": "mutable", + "name": "a", + "nameLocation": "4209:1:21", + "nodeType": "VariableDeclaration", + "scope": 28492, + "src": "4201:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28479, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4201:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28482, + "mutability": "mutable", + "name": "b", + "nameLocation": "4220:1:21", + "nodeType": "VariableDeclaration", + "scope": 28492, + "src": "4212:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28481, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4212:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4200:22:21" + }, + "returnParameters": { + "id": 28486, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28485, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28492, + "src": "4246:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28484, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4246:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4245:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28517, + "nodeType": "FunctionDefinition", + "src": "4765:206:21", + "body": { + "id": 28516, + "nodeType": "Block", + "src": "4860:111:21", + "statements": [ + { + "id": 28515, + "nodeType": "UncheckedBlock", + "src": "4871:93:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28505, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28497, + "src": "4904:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 28506, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28495, + "src": "4909:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4904:6:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 28508, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28499, + "src": "4912:12:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 28504, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4896:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4896:29:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28510, + "nodeType": "ExpressionStatement", + "src": "4896:29:21" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28511, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28495, + "src": "4947:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 28512, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28497, + "src": "4951:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4947:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28503, + "id": 28514, + "nodeType": "Return", + "src": "4940:12:21" + } + ] + } + ] + }, + "documentation": { + "id": 28493, + "nodeType": "StructuredDocumentation", + "src": "4294:465:21", + "text": " @dev Returns the subtraction of two unsigned integers, reverting with custom message on\n overflow (when the result is negative).\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {trySub}.\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sub", + "nameLocation": "4774:3:21", + "parameters": { + "id": 28500, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28495, + "mutability": "mutable", + "name": "a", + "nameLocation": "4786:1:21", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4778:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28494, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4778:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28497, + "mutability": "mutable", + "name": "b", + "nameLocation": "4797:1:21", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4789:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28496, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4789:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28499, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "4814:12:21", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4800:26:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28498, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4800:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4777:50:21" + }, + "returnParameters": { + "id": 28503, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28502, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28517, + "src": "4851:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28501, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4851:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4850:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28542, + "nodeType": "FunctionDefinition", + "src": "5469:205:21", + "body": { + "id": 28541, + "nodeType": "Block", + "src": "5564:110:21", + "statements": [ + { + "id": 28540, + "nodeType": "UncheckedBlock", + "src": "5575:92:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28530, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28522, + "src": "5608:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 28531, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5612:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5608:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 28533, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28524, + "src": "5615:12:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 28529, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5600:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5600:28:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28535, + "nodeType": "ExpressionStatement", + "src": "5600:28:21" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28536, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28520, + "src": "5650:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 28537, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28522, + "src": "5654:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5650:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28528, + "id": 28539, + "nodeType": "Return", + "src": "5643:12:21" + } + ] + } + ] + }, + "documentation": { + "id": 28518, + "nodeType": "StructuredDocumentation", + "src": "4979:484:21", + "text": " @dev Returns the integer division of two unsigned integers, reverting with custom message on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator. Note: this function uses a\n `revert` opcode (which leaves remaining gas untouched) while Solidity\n uses an invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "div", + "nameLocation": "5478:3:21", + "parameters": { + "id": 28525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28520, + "mutability": "mutable", + "name": "a", + "nameLocation": "5490:1:21", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5482:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28519, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5482:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28522, + "mutability": "mutable", + "name": "b", + "nameLocation": "5501:1:21", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5493:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28521, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5493:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28524, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "5518:12:21", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5504:26:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28523, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5504:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5481:50:21" + }, + "returnParameters": { + "id": 28528, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28527, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28542, + "src": "5555:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28526, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5555:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5554:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 28567, + "nodeType": "FunctionDefinition", + "src": "6337:205:21", + "body": { + "id": 28566, + "nodeType": "Block", + "src": "6432:110:21", + "statements": [ + { + "id": 28565, + "nodeType": "UncheckedBlock", + "src": "6443:92:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28555, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28547, + "src": "6476:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 28556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6480:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6476:5:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 28558, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28549, + "src": "6483:12:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 28554, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6468:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6468:28:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28560, + "nodeType": "ExpressionStatement", + "src": "6468:28:21" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 28563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28561, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28545, + "src": "6518:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 28562, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28547, + "src": "6522:1:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6518:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28553, + "id": 28564, + "nodeType": "Return", + "src": "6511:12:21" + } + ] + } + ] + }, + "documentation": { + "id": 28543, + "nodeType": "StructuredDocumentation", + "src": "5682:649:21", + "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting with custom message when dividing by zero.\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {tryMod}.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mod", + "nameLocation": "6346:3:21", + "parameters": { + "id": 28550, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28545, + "mutability": "mutable", + "name": "a", + "nameLocation": "6358:1:21", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6350:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28544, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6350:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28547, + "mutability": "mutable", + "name": "b", + "nameLocation": "6369:1:21", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6361:9:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28546, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6361:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28549, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "6386:12:21", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6372:26:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28548, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6372:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6349:50:21" + }, + "returnParameters": { + "id": 28553, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28552, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28567, + "src": "6423:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28551, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6423:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6422:9:21" + }, + "scope": 28568, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "SafeMath", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 28568 + ], + "name": "SafeMath", + "nameLocation": "144:8:21", + "scope": 29067, + "usedErrors": [] + }, + { + "id": 29066, + "nodeType": "ContractDefinition", + "src": "7736:9750:21", + "nodes": [ + { + "id": 28576, + "nodeType": "UsingForDirective", + "src": "7777:27:21", + "global": false, + "libraryName": { + "id": 28574, + "name": "SafeMath", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28568, + "src": "7783:8:21" + }, + "typeName": { + "id": 28575, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7796:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "id": 28580, + "nodeType": "VariableDeclaration", + "src": "7812:46:21", + "constant": false, + "mutability": "mutable", + "name": "_balances", + "nameLocation": "7849:9:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 28579, + "keyType": { + "id": 28577, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7821:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "7812:28:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 28578, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7832:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "private" + }, + { + "id": 28586, + "nodeType": "VariableDeclaration", + "src": "7867:69:21", + "constant": false, + "mutability": "mutable", + "name": "_allowances", + "nameLocation": "7925:11:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "typeName": { + "id": 28585, + "keyType": { + "id": 28581, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7876:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "7867:49:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "valueType": { + "id": 28584, + "keyType": { + "id": 28582, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7896:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "7887:28:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 28583, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7907:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + }, + "visibility": "private" + }, + { + "id": 28588, + "nodeType": "VariableDeclaration", + "src": "7945:28:21", + "constant": false, + "mutability": "mutable", + "name": "_totalSupply", + "nameLocation": "7961:12:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28587, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7945:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "private" + }, + { + "id": 28590, + "nodeType": "VariableDeclaration", + "src": "7982:20:21", + "constant": false, + "mutability": "mutable", + "name": "_name", + "nameLocation": "7997:5:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 28589, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7982:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "id": 28592, + "nodeType": "VariableDeclaration", + "src": "8009:22:21", + "constant": false, + "mutability": "mutable", + "name": "_symbol", + "nameLocation": "8024:7:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 28591, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8009:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "id": 28594, + "nodeType": "VariableDeclaration", + "src": "8038:23:21", + "constant": false, + "mutability": "mutable", + "name": "_decimals", + "nameLocation": "8052:9:21", + "scope": 29066, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 28593, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "8038:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "private" + }, + { + "id": 28615, + "nodeType": "FunctionDefinition", + "src": "8395:142:21", + "body": { + "id": 28614, + "nodeType": "Block", + "src": "8452:85:21", + "statements": [ + { + "expression": { + "id": 28604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28602, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28590, + "src": "8463:5:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 28603, + "name": "name_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28597, + "src": "8471:5:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "8463:13:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 28605, + "nodeType": "ExpressionStatement", + "src": "8463:13:21" + }, + { + "expression": { + "id": 28608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28606, + "name": "_symbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28592, + "src": "8487:7:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 28607, + "name": "symbol_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28599, + "src": "8497:7:21", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "8487:17:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 28609, + "nodeType": "ExpressionStatement", + "src": "8487:17:21" + }, + { + "expression": { + "id": 28612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28610, + "name": "_decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28594, + "src": "8515:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "3138", + "id": 28611, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8527:2:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "src": "8515:14:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 28613, + "nodeType": "ExpressionStatement", + "src": "8515:14:21" + } + ] + }, + "documentation": { + "id": 28595, + "nodeType": "StructuredDocumentation", + "src": "8070:319:21", + "text": " @dev Sets the values for {name} and {symbol}, initializes {decimals} with\n a default value of 18.\n To select a different value for {decimals}, use {_setupDecimals}.\n All three of these values are immutable: they can only be set once during\n construction." + }, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "parameters": { + "id": 28600, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28597, + "mutability": "mutable", + "name": "name_", + "nameLocation": "8422:5:21", + "nodeType": "VariableDeclaration", + "scope": 28615, + "src": "8408:19:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28596, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8408:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28599, + "mutability": "mutable", + "name": "symbol_", + "nameLocation": "8443:7:21", + "nodeType": "VariableDeclaration", + "scope": 28615, + "src": "8429:21:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28598, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8429:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8407:44:21" + }, + "returnParameters": { + "id": 28601, + "nodeType": "ParameterList", + "parameters": [], + "src": "8452:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 28624, + "nodeType": "FunctionDefinition", + "src": "8607:91:21", + "body": { + "id": 28623, + "nodeType": "Block", + "src": "8667:31:21", + "statements": [ + { + "expression": { + "id": 28621, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28590, + "src": "8685:5:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 28620, + "id": 28622, + "nodeType": "Return", + "src": "8678:12:21" + } + ] + }, + "documentation": { + "id": 28616, + "nodeType": "StructuredDocumentation", + "src": "8545:56:21", + "text": " @dev Returns the name of the token." + }, + "functionSelector": "06fdde03", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "8616:4:21", + "parameters": { + "id": 28617, + "nodeType": "ParameterList", + "parameters": [], + "src": "8620:2:21" + }, + "returnParameters": { + "id": 28620, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28619, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28624, + "src": "8652:13:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28618, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8652:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8651:15:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28633, + "nodeType": "FunctionDefinition", + "src": "8817:95:21", + "body": { + "id": 28632, + "nodeType": "Block", + "src": "8879:33:21", + "statements": [ + { + "expression": { + "id": 28630, + "name": "_symbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28592, + "src": "8897:7:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 28629, + "id": 28631, + "nodeType": "Return", + "src": "8890:14:21" + } + ] + }, + "documentation": { + "id": 28625, + "nodeType": "StructuredDocumentation", + "src": "8706:105:21", + "text": " @dev Returns the symbol of the token, usually a shorter version of the\n name." + }, + "functionSelector": "95d89b41", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "symbol", + "nameLocation": "8826:6:21", + "parameters": { + "id": 28626, + "nodeType": "ParameterList", + "parameters": [], + "src": "8832:2:21" + }, + "returnParameters": { + "id": 28629, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28628, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28633, + "src": "8864:13:21", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28627, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8864:6:21", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8863:15:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28642, + "nodeType": "FunctionDefinition", + "src": "9550:91:21", + "body": { + "id": 28641, + "nodeType": "Block", + "src": "9606:35:21", + "statements": [ + { + "expression": { + "id": 28639, + "name": "_decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28594, + "src": "9624:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "functionReturnParameters": 28638, + "id": 28640, + "nodeType": "Return", + "src": "9617:16:21" + } + ] + }, + "documentation": { + "id": 28634, + "nodeType": "StructuredDocumentation", + "src": "8920:624:21", + "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 value {ERC20} uses, unless {_setupDecimals} is\n called.\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", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "decimals", + "nameLocation": "9559:8:21", + "parameters": { + "id": 28635, + "nodeType": "ParameterList", + "parameters": [], + "src": "9567:2:21" + }, + "returnParameters": { + "id": 28638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28637, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28642, + "src": "9599:5:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 28636, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "9599:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "9598:7:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28652, + "nodeType": "FunctionDefinition", + "src": "9706:108:21", + "body": { + "id": 28651, + "nodeType": "Block", + "src": "9776:38:21", + "statements": [ + { + "expression": { + "id": 28649, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "9794:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28648, + "id": 28650, + "nodeType": "Return", + "src": "9787:19:21" + } + ] + }, + "baseFunctions": [ + 29074 + ], + "documentation": { + "id": 28643, + "nodeType": "StructuredDocumentation", + "src": "9649:51:21", + "text": " @dev See {IERC20-totalSupply}." + }, + "functionSelector": "18160ddd", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "9715:11:21", + "overrides": { + "id": 28645, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "9749:8:21" + }, + "parameters": { + "id": 28644, + "nodeType": "ParameterList", + "parameters": [], + "src": "9726:2:21" + }, + "returnParameters": { + "id": 28648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28647, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28652, + "src": "9767:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28646, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9767:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9766:9:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28666, + "nodeType": "FunctionDefinition", + "src": "9877:127:21", + "body": { + "id": 28665, + "nodeType": "Block", + "src": "9960:44:21", + "statements": [ + { + "expression": { + "baseExpression": { + "id": 28661, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "9978:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28663, + "indexExpression": { + "id": 28662, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28655, + "src": "9988:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9978:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28660, + "id": 28664, + "nodeType": "Return", + "src": "9971:25:21" + } + ] + }, + "baseFunctions": [ + 29082 + ], + "documentation": { + "id": 28653, + "nodeType": "StructuredDocumentation", + "src": "9822:49:21", + "text": " @dev See {IERC20-balanceOf}." + }, + "functionSelector": "70a08231", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "9886:9:21", + "overrides": { + "id": 28657, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "9933:8:21" + }, + "parameters": { + "id": 28656, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28655, + "mutability": "mutable", + "name": "account", + "nameLocation": "9904:7:21", + "nodeType": "VariableDeclaration", + "scope": 28666, + "src": "9896:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28654, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9896:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9895:17:21" + }, + "returnParameters": { + "id": 28660, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28659, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28666, + "src": "9951:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28658, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9951:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9950:9:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28687, + "nodeType": "FunctionDefinition", + "src": "10217:175:21", + "body": { + "id": 28686, + "nodeType": "Block", + "src": "10309:83:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28678, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "10330:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10330:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28680, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28669, + "src": "10344:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28681, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28671, + "src": "10355:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28677, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28887, + "src": "10320:9:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10320:42:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28683, + "nodeType": "ExpressionStatement", + "src": "10320:42:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28684, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10380:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28676, + "id": 28685, + "nodeType": "Return", + "src": "10373:11:21" + } + ] + }, + "baseFunctions": [ + 29092 + ], + "documentation": { + "id": 28667, + "nodeType": "StructuredDocumentation", + "src": "10012:199:21", + "text": " @dev See {IERC20-transfer}.\n Requirements:\n - `recipient` cannot be the zero address.\n - the caller must have a balance of at least `amount`." + }, + "functionSelector": "a9059cbb", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "10226:8:21", + "overrides": { + "id": 28673, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "10285:8:21" + }, + "parameters": { + "id": 28672, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28669, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "10243:9:21", + "nodeType": "VariableDeclaration", + "scope": 28687, + "src": "10235:17:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28668, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10235:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28671, + "mutability": "mutable", + "name": "amount", + "nameLocation": "10262:6:21", + "nodeType": "VariableDeclaration", + "scope": 28687, + "src": "10254:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28670, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10254:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10234:35:21" + }, + "returnParameters": { + "id": 28676, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28675, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28687, + "src": "10303:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28674, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10303:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "10302:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28705, + "nodeType": "FunctionDefinition", + "src": "10455:151:21", + "body": { + "id": 28704, + "nodeType": "Block", + "src": "10553:53:21", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28698, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "10571:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28700, + "indexExpression": { + "id": 28699, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28690, + "src": "10583:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10571:18:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28702, + "indexExpression": { + "id": 28701, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28692, + "src": "10590:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10571:27:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 28697, + "id": 28703, + "nodeType": "Return", + "src": "10564:34:21" + } + ] + }, + "baseFunctions": [ + 29102 + ], + "documentation": { + "id": 28688, + "nodeType": "StructuredDocumentation", + "src": "10400:49:21", + "text": " @dev See {IERC20-allowance}." + }, + "functionSelector": "dd62ed3e", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "10464:9:21", + "overrides": { + "id": 28694, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "10526:8:21" + }, + "parameters": { + "id": 28693, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28690, + "mutability": "mutable", + "name": "owner", + "nameLocation": "10482:5:21", + "nodeType": "VariableDeclaration", + "scope": 28705, + "src": "10474:13:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28689, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10474:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28692, + "mutability": "mutable", + "name": "spender", + "nameLocation": "10497:7:21", + "nodeType": "VariableDeclaration", + "scope": 28705, + "src": "10489:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28691, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10489:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10473:32:21" + }, + "returnParameters": { + "id": 28697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28696, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28705, + "src": "10544:7:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28695, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10544:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10543:9:21" + }, + "scope": 29066, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 28726, + "nodeType": "FunctionDefinition", + "src": "10753:169:21", + "body": { + "id": 28725, + "nodeType": "Block", + "src": "10842:80:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28717, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "10862:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10862:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28719, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28708, + "src": "10876:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28720, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28710, + "src": "10885:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28716, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "10853:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10853:39:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28722, + "nodeType": "ExpressionStatement", + "src": "10853:39:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10910:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28715, + "id": 28724, + "nodeType": "Return", + "src": "10903:11:21" + } + ] + }, + "baseFunctions": [ + 29112 + ], + "documentation": { + "id": 28706, + "nodeType": "StructuredDocumentation", + "src": "10614:133:21", + "text": " @dev See {IERC20-approve}.\n Requirements:\n - `spender` cannot be the zero address." + }, + "functionSelector": "095ea7b3", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "10762:7:21", + "overrides": { + "id": 28712, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "10818:8:21" + }, + "parameters": { + "id": 28711, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28708, + "mutability": "mutable", + "name": "spender", + "nameLocation": "10778:7:21", + "nodeType": "VariableDeclaration", + "scope": 28726, + "src": "10770:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28707, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10770:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28710, + "mutability": "mutable", + "name": "amount", + "nameLocation": "10795:6:21", + "nodeType": "VariableDeclaration", + "scope": 28726, + "src": "10787:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28709, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10787:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10769:33:21" + }, + "returnParameters": { + "id": 28715, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28714, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28726, + "src": "10836:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28713, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10836:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "10835:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28764, + "nodeType": "FunctionDefinition", + "src": "11404:321:21", + "body": { + "id": 28763, + "nodeType": "Block", + "src": "11516:209:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 28740, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28729, + "src": "11537:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28741, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28731, + "src": "11545:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28742, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28733, + "src": "11556:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28739, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28887, + "src": "11527:9:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11527:36:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28744, + "nodeType": "ExpressionStatement", + "src": "11527:36:21" + }, + { + "expression": { + "arguments": [ + { + "id": 28746, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28729, + "src": "11583:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28747, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "11591:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11591:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "arguments": [ + { + "id": 28756, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28733, + "src": "11643:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365", + "id": 28757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11651:42:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_974d1b4421da69cc60b481194f0dad36a5bb4e23da810da7a7fb30cdba178330", + "typeString": "literal_string \"ERC20: transfer amount exceeds allowance\"" + }, + "value": "ERC20: transfer amount exceeds allowance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_974d1b4421da69cc60b481194f0dad36a5bb4e23da810da7a7fb30cdba178330", + "typeString": "literal_string \"ERC20: transfer amount exceeds allowance\"" + } + ], + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28749, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "11605:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28751, + "indexExpression": { + "id": 28750, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28729, + "src": "11617:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11605:19:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28754, + "indexExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28752, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "11625:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11625:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11605:33:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "11605:37:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11605:89:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28745, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "11574:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11574:121:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28760, + "nodeType": "ExpressionStatement", + "src": "11574:121:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28761, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11713:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28738, + "id": 28762, + "nodeType": "Return", + "src": "11706:11:21" + } + ] + }, + "baseFunctions": [ + 29124 + ], + "documentation": { + "id": 28727, + "nodeType": "StructuredDocumentation", + "src": "10930:468:21", + "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 Requirements:\n - `sender` and `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`.\n - the caller must have allowance for ``sender``'s tokens of at least\n `amount`." + }, + "functionSelector": "23b872dd", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "11413:12:21", + "overrides": { + "id": 28735, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "11492:8:21" + }, + "parameters": { + "id": 28734, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28729, + "mutability": "mutable", + "name": "sender", + "nameLocation": "11434:6:21", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11426:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28728, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11426:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28731, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "11450:9:21", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11442:17:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28730, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11442:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28733, + "mutability": "mutable", + "name": "amount", + "nameLocation": "11469:6:21", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11461:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28732, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11461:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11425:51:21" + }, + "returnParameters": { + "id": 28738, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28737, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28764, + "src": "11510:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28736, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11510:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11509:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28792, + "nodeType": "FunctionDefinition", + "src": "12134:218:21", + "body": { + "id": 28791, + "nodeType": "Block", + "src": "12228:124:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28775, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "12248:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12248:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28777, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28767, + "src": "12262:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 28785, + "name": "addedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28769, + "src": "12310:10:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28778, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "12271:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28781, + "indexExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28779, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "12283:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12283:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12271:25:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28783, + "indexExpression": { + "id": 28782, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28767, + "src": "12297:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12271:34:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "12271:38:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12271:50:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28774, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "12239:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12239:83:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28788, + "nodeType": "ExpressionStatement", + "src": "12239:83:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28789, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12340:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28773, + "id": 28790, + "nodeType": "Return", + "src": "12333:11:21" + } + ] + }, + "documentation": { + "id": 28765, + "nodeType": "StructuredDocumentation", + "src": "11733:395:21", + "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", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "increaseAllowance", + "nameLocation": "12143:17:21", + "parameters": { + "id": 28770, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28767, + "mutability": "mutable", + "name": "spender", + "nameLocation": "12169:7:21", + "nodeType": "VariableDeclaration", + "scope": 28792, + "src": "12161:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28766, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12161:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28769, + "mutability": "mutable", + "name": "addedValue", + "nameLocation": "12186:10:21", + "nodeType": "VariableDeclaration", + "scope": 28792, + "src": "12178:18:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28768, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12178:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12160:37:21" + }, + "returnParameters": { + "id": 28773, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28772, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28792, + "src": "12222:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28771, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12222:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12221:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28821, + "nodeType": "FunctionDefinition", + "src": "12855:269:21", + "body": { + "id": 28820, + "nodeType": "Block", + "src": "12954:170:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28803, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "12974:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12974:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 28805, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28795, + "src": "12988:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 28813, + "name": "subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28797, + "src": "13036:15:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f", + "id": 28814, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13053:39:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8", + "typeString": "literal_string \"ERC20: decreased allowance below zero\"" + }, + "value": "ERC20: decreased allowance below zero" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8", + "typeString": "literal_string \"ERC20: decreased allowance below zero\"" + } + ], + "expression": { + "baseExpression": { + "baseExpression": { + "id": 28806, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "12997:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 28809, + "indexExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 28807, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28095, + "src": "13009:10:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", + "typeString": "function () view returns (address payable)" + } + }, + "id": 28808, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13009:12:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12997:25:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28811, + "indexExpression": { + "id": 28810, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28795, + "src": "13023:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12997:34:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "12997:38:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12997:96:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28802, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "12965:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12965:129:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28817, + "nodeType": "ExpressionStatement", + "src": "12965:129:21" + }, + { + "expression": { + "hexValue": "74727565", + "id": 28818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13112:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 28801, + "id": 28819, + "nodeType": "Return", + "src": "13105:11:21" + } + ] + }, + "documentation": { + "id": 28793, + "nodeType": "StructuredDocumentation", + "src": "12360:489:21", + "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", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "decreaseAllowance", + "nameLocation": "12864:17:21", + "parameters": { + "id": 28798, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28795, + "mutability": "mutable", + "name": "spender", + "nameLocation": "12890:7:21", + "nodeType": "VariableDeclaration", + "scope": 28821, + "src": "12882:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28794, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12882:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28797, + "mutability": "mutable", + "name": "subtractedValue", + "nameLocation": "12907:15:21", + "nodeType": "VariableDeclaration", + "scope": 28821, + "src": "12899:23:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28796, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12899:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12881:42:21" + }, + "returnParameters": { + "id": 28801, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28800, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 28821, + "src": "12948:4:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 28799, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12948:4:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12947:6:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "id": 28887, + "nodeType": "FunctionDefinition", + "src": "13614:549:21", + "body": { + "id": 28886, + "nodeType": "Block", + "src": "13701:462:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28837, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28832, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13720:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28835, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13738:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28834, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "13730:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28833, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13730:7:21", + "typeDescriptions": {} + } + }, + "id": 28836, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13730:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "13720:20:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", + "id": 28838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13742:39:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", + "typeString": "literal_string \"ERC20: transfer from the zero address\"" + }, + "value": "ERC20: transfer from the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea", + "typeString": "literal_string \"ERC20: transfer from the zero address\"" + } + ], + "id": 28831, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13712:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28839, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13712:70:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28840, + "nodeType": "ExpressionStatement", + "src": "13712:70:21" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28842, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "13801:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28845, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13822:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28844, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "13814:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13814:7:21", + "typeDescriptions": {} + } + }, + "id": 28846, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13814:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "13801:23:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", + "id": 28848, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13826:37:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", + "typeString": "literal_string \"ERC20: transfer to the zero address\"" + }, + "value": "ERC20: transfer to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f", + "typeString": "literal_string \"ERC20: transfer to the zero address\"" + } + ], + "id": 28841, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13793:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13793:71:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28850, + "nodeType": "ExpressionStatement", + "src": "13793:71:21" + }, + { + "expression": { + "arguments": [ + { + "id": 28852, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13908:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28853, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "13916:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28854, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "13927:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28851, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29065, + "src": "13887:20:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13887:47:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28856, + "nodeType": "ExpressionStatement", + "src": "13887:47:21" + }, + { + "expression": { + "id": 28867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28857, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "13947:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28859, + "indexExpression": { + "id": 28858, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13957:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13947:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28864, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "13989:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365", + "id": 28865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13997:40:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6", + "typeString": "literal_string \"ERC20: transfer amount exceeds balance\"" + }, + "value": "ERC20: transfer amount exceeds balance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6", + "typeString": "literal_string \"ERC20: transfer amount exceeds balance\"" + } + ], + "expression": { + "baseExpression": { + "id": 28860, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "13967:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28862, + "indexExpression": { + "id": 28861, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "13977:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13967:17:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "13967:21:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13967:71:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13947:91:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28868, + "nodeType": "ExpressionStatement", + "src": "13947:91:21" + }, + { + "expression": { + "id": 28878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28869, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14049:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28871, + "indexExpression": { + "id": 28870, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "14059:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14049:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28876, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "14097:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "baseExpression": { + "id": 28872, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14072:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28874, + "indexExpression": { + "id": 28873, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "14082:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14072:20:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "14072:24:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28877, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14072:32:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14049:55:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28879, + "nodeType": "ExpressionStatement", + "src": "14049:55:21" + }, + { + "eventCall": { + "arguments": [ + { + "id": 28881, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28824, + "src": "14129:6:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28882, + "name": "recipient", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28826, + "src": "14137:9:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28883, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28828, + "src": "14148:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28880, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29133, + "src": "14120:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14120:35:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28885, + "nodeType": "EmitStatement", + "src": "14115:40:21" + } + ] + }, + "documentation": { + "id": 28822, + "nodeType": "StructuredDocumentation", + "src": "13132:476:21", + "text": " @dev Moves tokens `amount` from `sender` to `recipient`.\n This is 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 - `sender` cannot be the zero address.\n - `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transfer", + "nameLocation": "13623:9:21", + "parameters": { + "id": 28829, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28824, + "mutability": "mutable", + "name": "sender", + "nameLocation": "13641:6:21", + "nodeType": "VariableDeclaration", + "scope": 28887, + "src": "13633:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28823, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13633:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28826, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "13657:9:21", + "nodeType": "VariableDeclaration", + "scope": 28887, + "src": "13649:17:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28825, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13649:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28828, + "mutability": "mutable", + "name": "amount", + "nameLocation": "13676:6:21", + "nodeType": "VariableDeclaration", + "scope": 28887, + "src": "13668:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28827, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13668:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13632:51:21" + }, + "returnParameters": { + "id": 28830, + "nodeType": "ParameterList", + "parameters": [], + "src": "13701:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 28942, + "nodeType": "FunctionDefinition", + "src": "14445:378:21", + "body": { + "id": 28941, + "nodeType": "Block", + "src": "14510:313:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28896, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14529:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14548:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14540:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28897, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14540:7:21", + "typeDescriptions": {} + } + }, + "id": 28900, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14540:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "14529:21:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", + "id": 28902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14552:33:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", + "typeString": "literal_string \"ERC20: mint to the zero address\"" + }, + "value": "ERC20: mint to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e", + "typeString": "literal_string \"ERC20: mint to the zero address\"" + } + ], + "id": 28895, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "14521:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14521:65:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28904, + "nodeType": "ExpressionStatement", + "src": "14521:65:21" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 28908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14628:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28907, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14620:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28906, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14620:7:21", + "typeDescriptions": {} + } + }, + "id": 28909, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14620:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28910, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14632:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28911, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14641:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28905, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29065, + "src": "14599:20:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14599:49:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28913, + "nodeType": "ExpressionStatement", + "src": "14599:49:21" + }, + { + "expression": { + "id": 28919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28914, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "14661:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28917, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14693:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 28915, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "14676:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "14676:16:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14676:24:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14661:39:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28920, + "nodeType": "ExpressionStatement", + "src": "14661:39:21" + }, + { + "expression": { + "id": 28930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28921, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14711:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28923, + "indexExpression": { + "id": 28922, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14721:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14711:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28928, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14755:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "baseExpression": { + "id": 28924, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "14732:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28926, + "indexExpression": { + "id": 28925, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14742:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14732:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 28432, + "src": "14732:22:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28929, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14732:30:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14711:51:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28931, + "nodeType": "ExpressionStatement", + "src": "14711:51:21" + }, + { + "eventCall": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 28935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14795:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14787:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28933, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14787:7:21", + "typeDescriptions": {} + } + }, + "id": 28936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14787:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28937, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28890, + "src": "14799:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28938, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28892, + "src": "14808:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28932, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29133, + "src": "14778:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14778:37:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28940, + "nodeType": "EmitStatement", + "src": "14773:42:21" + } + ] + }, + "documentation": { + "id": 28888, + "nodeType": "StructuredDocumentation", + "src": "14171:268:21", + "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 - `to` cannot be the zero address." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_mint", + "nameLocation": "14454:5:21", + "parameters": { + "id": 28893, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28890, + "mutability": "mutable", + "name": "account", + "nameLocation": "14468:7:21", + "nodeType": "VariableDeclaration", + "scope": 28942, + "src": "14460:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28889, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14460:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28892, + "mutability": "mutable", + "name": "amount", + "nameLocation": "14485:6:21", + "nodeType": "VariableDeclaration", + "scope": 28942, + "src": "14477:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28891, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14477:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14459:33:21" + }, + "returnParameters": { + "id": 28894, + "nodeType": "ParameterList", + "parameters": [], + "src": "14510:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 28998, + "nodeType": "FunctionDefinition", + "src": "15156:418:21", + "body": { + "id": 28997, + "nodeType": "Block", + "src": "15221:353:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 28956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 28951, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15240:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 28954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15259:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15251:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28952, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15251:7:21", + "typeDescriptions": {} + } + }, + "id": 28955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15251:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "15240:21:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", + "id": 28957, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15263:35:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", + "typeString": "literal_string \"ERC20: burn from the zero address\"" + }, + "value": "ERC20: burn from the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f", + "typeString": "literal_string \"ERC20: burn from the zero address\"" + } + ], + "id": 28950, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "15232:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 28958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15232:67:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28959, + "nodeType": "ExpressionStatement", + "src": "15232:67:21" + }, + { + "expression": { + "arguments": [ + { + "id": 28961, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15333:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 28964, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15350:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15342:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28962, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15342:7:21", + "typeDescriptions": {} + } + }, + "id": 28965, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15342:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28966, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15354:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28960, + "name": "_beforeTokenTransfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29065, + "src": "15312:20:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15312:49:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28968, + "nodeType": "ExpressionStatement", + "src": "15312:49:21" + }, + { + "expression": { + "id": 28979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 28969, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "15374:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28971, + "indexExpression": { + "id": 28970, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15384:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "15374:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28976, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15418:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365", + "id": 28977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15426:36:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd", + "typeString": "literal_string \"ERC20: burn amount exceeds balance\"" + }, + "value": "ERC20: burn amount exceeds balance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd", + "typeString": "literal_string \"ERC20: burn amount exceeds balance\"" + } + ], + "expression": { + "baseExpression": { + "id": 28972, + "name": "_balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28580, + "src": "15395:9:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 28974, + "indexExpression": { + "id": 28973, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15405:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "15395:18:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28517, + "src": "15395:22:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" + } + }, + "id": 28978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15395:68:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "15374:89:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28980, + "nodeType": "ExpressionStatement", + "src": "15374:89:21" + }, + { + "expression": { + "id": 28986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 28981, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "15474:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 28984, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15506:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 28982, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28588, + "src": "15489:12:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 28447, + "src": "15489:16:21", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 28985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15489:24:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "15474:39:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 28987, + "nodeType": "ExpressionStatement", + "src": "15474:39:21" + }, + { + "eventCall": { + "arguments": [ + { + "id": 28989, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28945, + "src": "15538:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 28992, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15555:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 28991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15547:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 28990, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15547:7:21", + "typeDescriptions": {} + } + }, + "id": 28993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15547:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 28994, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28947, + "src": "15559:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 28988, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29133, + "src": "15529:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 28995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15529:37:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 28996, + "nodeType": "EmitStatement", + "src": "15524:42:21" + } + ] + }, + "documentation": { + "id": 28943, + "nodeType": "StructuredDocumentation", + "src": "14831:319:21", + "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." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_burn", + "nameLocation": "15165:5:21", + "parameters": { + "id": 28948, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 28945, + "mutability": "mutable", + "name": "account", + "nameLocation": "15179:7:21", + "nodeType": "VariableDeclaration", + "scope": 28998, + "src": "15171:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 28944, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15171:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 28947, + "mutability": "mutable", + "name": "amount", + "nameLocation": "15196:6:21", + "nodeType": "VariableDeclaration", + "scope": 28998, + "src": "15188:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 28946, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15188:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15170:33:21" + }, + "returnParameters": { + "id": 28949, + "nodeType": "ParameterList", + "parameters": [], + "src": "15221:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 29043, + "nodeType": "FunctionDefinition", + "src": "16012:346:21", + "body": { + "id": 29042, + "nodeType": "Block", + "src": "16095:263:21", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 29014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29009, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29001, + "src": "16114:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 29012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16131:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 29011, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16123:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29010, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16123:7:21", + "typeDescriptions": {} + } + }, + "id": 29013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16123:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16114:19:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", + "id": 29015, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16135:38:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", + "typeString": "literal_string \"ERC20: approve from the zero address\"" + }, + "value": "ERC20: approve from the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208", + "typeString": "literal_string \"ERC20: approve from the zero address\"" + } + ], + "id": 29008, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16106:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 29016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16106:68:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29017, + "nodeType": "ExpressionStatement", + "src": "16106:68:21" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 29024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29019, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29003, + "src": "16193:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 29022, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16212:1:21", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 29021, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16204:7:21", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29020, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16204:7:21", + "typeDescriptions": {} + } + }, + "id": 29023, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16204:10:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16193:21:21", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", + "id": 29025, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16216:36:21", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", + "typeString": "literal_string \"ERC20: approve to the zero address\"" + }, + "value": "ERC20: approve to the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029", + "typeString": "literal_string \"ERC20: approve to the zero address\"" + } + ], + "id": 29018, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16185:7:21", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 29026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16185:68:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29027, + "nodeType": "ExpressionStatement", + "src": "16185:68:21" + }, + { + "expression": { + "id": 29034, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 29028, + "name": "_allowances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28586, + "src": "16266:11:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 29031, + "indexExpression": { + "id": 29029, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29001, + "src": "16278:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16266:18:21", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 29032, + "indexExpression": { + "id": 29030, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29003, + "src": "16285:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "16266:27:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 29033, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29005, + "src": "16296:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16266:36:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29035, + "nodeType": "ExpressionStatement", + "src": "16266:36:21" + }, + { + "eventCall": { + "arguments": [ + { + "id": 29037, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29001, + "src": "16327:5:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 29038, + "name": "spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29003, + "src": "16334:7:21", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 29039, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29005, + "src": "16343:6:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 29036, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29142, + "src": "16318:8:21", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 29040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16318:32:21", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29041, + "nodeType": "EmitStatement", + "src": "16313:37:21" + } + ] + }, + "documentation": { + "id": 28999, + "nodeType": "StructuredDocumentation", + "src": "15582:424:21", + "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." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_approve", + "nameLocation": "16021:8:21", + "parameters": { + "id": 29006, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29001, + "mutability": "mutable", + "name": "owner", + "nameLocation": "16038:5:21", + "nodeType": "VariableDeclaration", + "scope": 29043, + "src": "16030:13:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29000, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16030:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29003, + "mutability": "mutable", + "name": "spender", + "nameLocation": "16053:7:21", + "nodeType": "VariableDeclaration", + "scope": 29043, + "src": "16045:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29002, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16045:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29005, + "mutability": "mutable", + "name": "amount", + "nameLocation": "16070:6:21", + "nodeType": "VariableDeclaration", + "scope": 29043, + "src": "16062:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29004, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16062:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16029:48:21" + }, + "returnParameters": { + "id": 29007, + "nodeType": "ParameterList", + "parameters": [], + "src": "16095:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 29054, + "nodeType": "FunctionDefinition", + "src": "16690:98:21", + "body": { + "id": 29053, + "nodeType": "Block", + "src": "16748:40:21", + "statements": [ + { + "expression": { + "id": 29051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 29049, + "name": "_decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28594, + "src": "16759:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 29050, + "name": "decimals_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29046, + "src": "16771:9:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "16759:21:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 29052, + "nodeType": "ExpressionStatement", + "src": "16759:21:21" + } + ] + }, + "documentation": { + "id": 29044, + "nodeType": "StructuredDocumentation", + "src": "16366:318:21", + "text": " @dev Sets {decimals} to a value other than the default one of 18.\n WARNING: This function should only be called from the constructor. Most\n applications that interact with token contracts will not expect\n {decimals} to ever change, and may work incorrectly if it does." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_setupDecimals", + "nameLocation": "16699:14:21", + "parameters": { + "id": 29047, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29046, + "mutability": "mutable", + "name": "decimals_", + "nameLocation": "16720:9:21", + "nodeType": "VariableDeclaration", + "scope": 29054, + "src": "16714:15:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29045, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "16714:5:21", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "16713:17:21" + }, + "returnParameters": { + "id": 29048, + "nodeType": "ParameterList", + "parameters": [], + "src": "16748:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 29065, + "nodeType": "FunctionDefinition", + "src": "17391:92:21", + "body": { + "id": 29064, + "nodeType": "Block", + "src": "17480:3:21", + "statements": [] + }, + "documentation": { + "id": 29055, + "nodeType": "StructuredDocumentation", + "src": "16796:589:21", + "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 to 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]." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_beforeTokenTransfer", + "nameLocation": "17400:20:21", + "parameters": { + "id": 29062, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29057, + "mutability": "mutable", + "name": "from", + "nameLocation": "17429:4:21", + "nodeType": "VariableDeclaration", + "scope": 29065, + "src": "17421:12:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29056, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17421:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29059, + "mutability": "mutable", + "name": "to", + "nameLocation": "17443:2:21", + "nodeType": "VariableDeclaration", + "scope": 29065, + "src": "17435:10:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29058, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17435:7:21", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29061, + "mutability": "mutable", + "name": "amount", + "nameLocation": "17455:6:21", + "nodeType": "VariableDeclaration", + "scope": 29065, + "src": "17447:14:21", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29060, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17447:7:21", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "17420:42:21" + }, + "returnParameters": { + "id": 29063, + "nodeType": "ParameterList", + "parameters": [], + "src": "17480:0:21" + }, + "scope": 29066, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 28570, + "name": "Context", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28107, + "src": "7754:7:21" + }, + "id": 28571, + "nodeType": "InheritanceSpecifier", + "src": "7754:7:21" + }, + { + "baseName": { + "id": 28572, + "name": "IERC20", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29143, + "src": "7763:6:21" + }, + "id": 28573, + "nodeType": "InheritanceSpecifier", + "src": "7763:6:21" + } + ], + "canonicalName": "ERC20", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 28569, + "nodeType": "StructuredDocumentation", + "src": "6549:1185:21", + "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.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n We have followed general OpenZeppelin guidelines: functions revert instead\n of returning `false` on failure. This behavior is nonetheless conventional\n and does not conflict with the expectations of ERC20 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, + "linearizedBaseContracts": [ + 29066, + 29143, + 28107 + ], + "name": "ERC20", + "nameLocation": "7745:5:21", + "scope": 29067, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 21 +} \ No newline at end of file diff --git a/out/IERC20.sol/IERC20.json b/out/IERC20.sol/IERC20.json new file mode 100644 index 0000000..0b914b3 --- /dev/null +++ b/out/IERC20.sol/IERC20.json @@ -0,0 +1,1207 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "allowance(address,address)": "dd62ed3e", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd" + }, + "ast": { + "absolutePath": "src/interfaces/IERC20.sol", + "id": 29152, + "exportedSymbols": { + "IERC20": [ + 29143 + ], + "IERC20Extended": [ + 29151 + ] + }, + "nodeType": "SourceUnit", + "src": "46:2777:22", + "nodes": [ + { + "id": 29068, + "nodeType": "PragmaDirective", + "src": "46:23:22", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29143, + "nodeType": "ContractDefinition", + "src": "73:2635:22", + "nodes": [ + { + "id": 29074, + "nodeType": "FunctionDefinition", + "src": "171:55:22", + "documentation": { + "id": 29069, + "nodeType": "StructuredDocumentation", + "src": "97:68:22", + "text": " @dev Returns the amount of tokens in existence." + }, + "functionSelector": "18160ddd", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "180:11:22", + "parameters": { + "id": 29070, + "nodeType": "ParameterList", + "parameters": [], + "src": "191:2:22" + }, + "returnParameters": { + "id": 29073, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29072, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29074, + "src": "217:7:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29071, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "217:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "216:9:22" + }, + "scope": 29143, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29082, + "nodeType": "FunctionDefinition", + "src": "314:68:22", + "documentation": { + "id": 29075, + "nodeType": "StructuredDocumentation", + "src": "234:74:22", + "text": " @dev Returns the amount of tokens owned by `account`." + }, + "functionSelector": "70a08231", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "323:9:22", + "parameters": { + "id": 29078, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29077, + "mutability": "mutable", + "name": "account", + "nameLocation": "341:7:22", + "nodeType": "VariableDeclaration", + "scope": 29082, + "src": "333:15:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29076, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "333:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "332:17:22" + }, + "returnParameters": { + "id": 29081, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29080, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29082, + "src": "373:7:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29079, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "373:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "372:9:22" + }, + "scope": 29143, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29092, + "nodeType": "FunctionDefinition", + "src": "611:77:22", + "documentation": { + "id": 29083, + "nodeType": "StructuredDocumentation", + "src": "390:215:22", + "text": " @dev Moves `amount` tokens from the caller's account to `recipient`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "a9059cbb", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "620:8:22", + "parameters": { + "id": 29088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29085, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "637:9:22", + "nodeType": "VariableDeclaration", + "scope": 29092, + "src": "629:17:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "629:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29087, + "mutability": "mutable", + "name": "amount", + "nameLocation": "656:6:22", + "nodeType": "VariableDeclaration", + "scope": 29092, + "src": "648:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29086, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "648:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "628:35:22" + }, + "returnParameters": { + "id": 29091, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29090, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29092, + "src": "682:4:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29089, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "682:4:22", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "681:6:22" + }, + "scope": 29143, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29102, + "nodeType": "FunctionDefinition", + "src": "972:83:22", + "documentation": { + "id": 29093, + "nodeType": "StructuredDocumentation", + "src": "696:270:22", + "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", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "981:9:22", + "parameters": { + "id": 29098, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29095, + "mutability": "mutable", + "name": "owner", + "nameLocation": "999:5:22", + "nodeType": "VariableDeclaration", + "scope": 29102, + "src": "991:13:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29094, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "991:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29097, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1014:7:22", + "nodeType": "VariableDeclaration", + "scope": 29102, + "src": "1006:15:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29096, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1006:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "990:32:22" + }, + "returnParameters": { + "id": 29101, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29100, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29102, + "src": "1046:7:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29099, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1046:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1045:9:22" + }, + "scope": 29143, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29112, + "nodeType": "FunctionDefinition", + "src": "1724:74:22", + "documentation": { + "id": 29103, + "nodeType": "StructuredDocumentation", + "src": "1063:655:22", + "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", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "1733:7:22", + "parameters": { + "id": 29108, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29105, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1749:7:22", + "nodeType": "VariableDeclaration", + "scope": 29112, + "src": "1741:15:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29104, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1741:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29107, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1766:6:22", + "nodeType": "VariableDeclaration", + "scope": 29112, + "src": "1758:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29106, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1758:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1740:33:22" + }, + "returnParameters": { + "id": 29111, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29110, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29112, + "src": "1792:4:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29109, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1792:4:22", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1791:6:22" + }, + "scope": 29143, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29124, + "nodeType": "FunctionDefinition", + "src": "2116:97:22", + "documentation": { + "id": 29113, + "nodeType": "StructuredDocumentation", + "src": "1806:304:22", + "text": " @dev Moves `amount` tokens from `sender` to `recipient` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "23b872dd", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "2125:12:22", + "parameters": { + "id": 29120, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29115, + "mutability": "mutable", + "name": "sender", + "nameLocation": "2146:6:22", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2138:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29114, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2138:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29117, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "2162:9:22", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2154:17:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29116, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2154:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29119, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2181:6:22", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2173:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29118, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2173:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2137:51:22" + }, + "returnParameters": { + "id": 29123, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29122, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2207:4:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29121, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2207:4:22", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2206:6:22" + }, + "scope": 29143, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29133, + "nodeType": "EventDefinition", + "src": "2390:72:22", + "anonymous": false, + "documentation": { + "id": 29125, + "nodeType": "StructuredDocumentation", + "src": "2221:163:22", + "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", + "name": "Transfer", + "nameLocation": "2396:8:22", + "parameters": { + "id": 29132, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29127, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "2421:4:22", + "nodeType": "VariableDeclaration", + "scope": 29133, + "src": "2405:20:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2405:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29129, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "2443:2:22", + "nodeType": "VariableDeclaration", + "scope": 29133, + "src": "2427:18:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29128, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2427:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29131, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "2455:5:22", + "nodeType": "VariableDeclaration", + "scope": 29133, + "src": "2447:13:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2447:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2404:57:22" + } + }, + { + "id": 29142, + "nodeType": "EventDefinition", + "src": "2627:78:22", + "anonymous": false, + "documentation": { + "id": 29134, + "nodeType": "StructuredDocumentation", + "src": "2470:151:22", + "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", + "name": "Approval", + "nameLocation": "2633:8:22", + "parameters": { + "id": 29141, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29136, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2658:5:22", + "nodeType": "VariableDeclaration", + "scope": 29142, + "src": "2642:21:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29135, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2642:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29138, + "indexed": true, + "mutability": "mutable", + "name": "spender", + "nameLocation": "2681:7:22", + "nodeType": "VariableDeclaration", + "scope": 29142, + "src": "2665:23:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29137, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2665:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29140, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "2698:5:22", + "nodeType": "VariableDeclaration", + "scope": 29142, + "src": "2690:13:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29139, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2690:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2641:63:22" + } + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IERC20", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29143 + ], + "name": "IERC20", + "nameLocation": "83:6:22", + "scope": 29152, + "usedErrors": [] + }, + { + "id": 29151, + "nodeType": "ContractDefinition", + "src": "2712:111:22", + "nodes": [ + { + "id": 29150, + "nodeType": "FunctionDefinition", + "src": "2762:58:22", + "functionSelector": "313ce567", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "decimals", + "nameLocation": "2771:8:22", + "parameters": { + "id": 29146, + "nodeType": "ParameterList", + "parameters": [], + "src": "2779:2:22" + }, + "returnParameters": { + "id": 29149, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29148, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29150, + "src": "2813:5:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29147, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "2813:5:22", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "2812:7:22" + }, + "scope": 29151, + "stateMutability": "view", + "virtual": true, + "visibility": "external" + } + ], + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 29144, + "name": "IERC20", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29143, + "src": "2748:6:22" + }, + "id": 29145, + "nodeType": "InheritanceSpecifier", + "src": "2748:6:22" + } + ], + "canonicalName": "IERC20Extended", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29151, + 29143 + ], + "name": "IERC20Extended", + "nameLocation": "2730:14:22", + "scope": 29152, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 22 +} \ No newline at end of file diff --git a/out/IERC20.sol/IERC20Extended.json b/out/IERC20.sol/IERC20Extended.json new file mode 100644 index 0000000..32c7381 --- /dev/null +++ b/out/IERC20.sol/IERC20Extended.json @@ -0,0 +1,1221 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "allowance(address,address)": "dd62ed3e", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "decimals()": "313ce567", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd" + }, + "ast": { + "absolutePath": "src/interfaces/IERC20.sol", + "id": 29152, + "exportedSymbols": { + "IERC20": [ + 29143 + ], + "IERC20Extended": [ + 29151 + ] + }, + "nodeType": "SourceUnit", + "src": "46:2777:22", + "nodes": [ + { + "id": 29068, + "nodeType": "PragmaDirective", + "src": "46:23:22", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29143, + "nodeType": "ContractDefinition", + "src": "73:2635:22", + "nodes": [ + { + "id": 29074, + "nodeType": "FunctionDefinition", + "src": "171:55:22", + "documentation": { + "id": 29069, + "nodeType": "StructuredDocumentation", + "src": "97:68:22", + "text": " @dev Returns the amount of tokens in existence." + }, + "functionSelector": "18160ddd", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "180:11:22", + "parameters": { + "id": 29070, + "nodeType": "ParameterList", + "parameters": [], + "src": "191:2:22" + }, + "returnParameters": { + "id": 29073, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29072, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29074, + "src": "217:7:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29071, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "217:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "216:9:22" + }, + "scope": 29143, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29082, + "nodeType": "FunctionDefinition", + "src": "314:68:22", + "documentation": { + "id": 29075, + "nodeType": "StructuredDocumentation", + "src": "234:74:22", + "text": " @dev Returns the amount of tokens owned by `account`." + }, + "functionSelector": "70a08231", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "323:9:22", + "parameters": { + "id": 29078, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29077, + "mutability": "mutable", + "name": "account", + "nameLocation": "341:7:22", + "nodeType": "VariableDeclaration", + "scope": 29082, + "src": "333:15:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29076, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "333:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "332:17:22" + }, + "returnParameters": { + "id": 29081, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29080, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29082, + "src": "373:7:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29079, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "373:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "372:9:22" + }, + "scope": 29143, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29092, + "nodeType": "FunctionDefinition", + "src": "611:77:22", + "documentation": { + "id": 29083, + "nodeType": "StructuredDocumentation", + "src": "390:215:22", + "text": " @dev Moves `amount` tokens from the caller's account to `recipient`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "a9059cbb", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "620:8:22", + "parameters": { + "id": 29088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29085, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "637:9:22", + "nodeType": "VariableDeclaration", + "scope": 29092, + "src": "629:17:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "629:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29087, + "mutability": "mutable", + "name": "amount", + "nameLocation": "656:6:22", + "nodeType": "VariableDeclaration", + "scope": 29092, + "src": "648:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29086, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "648:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "628:35:22" + }, + "returnParameters": { + "id": 29091, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29090, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29092, + "src": "682:4:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29089, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "682:4:22", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "681:6:22" + }, + "scope": 29143, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29102, + "nodeType": "FunctionDefinition", + "src": "972:83:22", + "documentation": { + "id": 29093, + "nodeType": "StructuredDocumentation", + "src": "696:270:22", + "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", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "981:9:22", + "parameters": { + "id": 29098, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29095, + "mutability": "mutable", + "name": "owner", + "nameLocation": "999:5:22", + "nodeType": "VariableDeclaration", + "scope": 29102, + "src": "991:13:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29094, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "991:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29097, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1014:7:22", + "nodeType": "VariableDeclaration", + "scope": 29102, + "src": "1006:15:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29096, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1006:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "990:32:22" + }, + "returnParameters": { + "id": 29101, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29100, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29102, + "src": "1046:7:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29099, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1046:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1045:9:22" + }, + "scope": 29143, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29112, + "nodeType": "FunctionDefinition", + "src": "1724:74:22", + "documentation": { + "id": 29103, + "nodeType": "StructuredDocumentation", + "src": "1063:655:22", + "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", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "1733:7:22", + "parameters": { + "id": 29108, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29105, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1749:7:22", + "nodeType": "VariableDeclaration", + "scope": 29112, + "src": "1741:15:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29104, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1741:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29107, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1766:6:22", + "nodeType": "VariableDeclaration", + "scope": 29112, + "src": "1758:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29106, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1758:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1740:33:22" + }, + "returnParameters": { + "id": 29111, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29110, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29112, + "src": "1792:4:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29109, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1792:4:22", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1791:6:22" + }, + "scope": 29143, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29124, + "nodeType": "FunctionDefinition", + "src": "2116:97:22", + "documentation": { + "id": 29113, + "nodeType": "StructuredDocumentation", + "src": "1806:304:22", + "text": " @dev Moves `amount` tokens from `sender` to `recipient` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "23b872dd", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "2125:12:22", + "parameters": { + "id": 29120, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29115, + "mutability": "mutable", + "name": "sender", + "nameLocation": "2146:6:22", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2138:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29114, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2138:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29117, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "2162:9:22", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2154:17:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29116, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2154:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29119, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2181:6:22", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2173:14:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29118, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2173:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2137:51:22" + }, + "returnParameters": { + "id": 29123, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29122, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29124, + "src": "2207:4:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29121, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2207:4:22", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2206:6:22" + }, + "scope": 29143, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29133, + "nodeType": "EventDefinition", + "src": "2390:72:22", + "anonymous": false, + "documentation": { + "id": 29125, + "nodeType": "StructuredDocumentation", + "src": "2221:163:22", + "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", + "name": "Transfer", + "nameLocation": "2396:8:22", + "parameters": { + "id": 29132, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29127, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "2421:4:22", + "nodeType": "VariableDeclaration", + "scope": 29133, + "src": "2405:20:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2405:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29129, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "2443:2:22", + "nodeType": "VariableDeclaration", + "scope": 29133, + "src": "2427:18:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29128, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2427:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29131, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "2455:5:22", + "nodeType": "VariableDeclaration", + "scope": 29133, + "src": "2447:13:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2447:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2404:57:22" + } + }, + { + "id": 29142, + "nodeType": "EventDefinition", + "src": "2627:78:22", + "anonymous": false, + "documentation": { + "id": 29134, + "nodeType": "StructuredDocumentation", + "src": "2470:151:22", + "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", + "name": "Approval", + "nameLocation": "2633:8:22", + "parameters": { + "id": 29141, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29136, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2658:5:22", + "nodeType": "VariableDeclaration", + "scope": 29142, + "src": "2642:21:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29135, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2642:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29138, + "indexed": true, + "mutability": "mutable", + "name": "spender", + "nameLocation": "2681:7:22", + "nodeType": "VariableDeclaration", + "scope": 29142, + "src": "2665:23:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29137, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2665:7:22", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29140, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "2698:5:22", + "nodeType": "VariableDeclaration", + "scope": 29142, + "src": "2690:13:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29139, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2690:7:22", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2641:63:22" + } + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IERC20", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29143 + ], + "name": "IERC20", + "nameLocation": "83:6:22", + "scope": 29152, + "usedErrors": [] + }, + { + "id": 29151, + "nodeType": "ContractDefinition", + "src": "2712:111:22", + "nodes": [ + { + "id": 29150, + "nodeType": "FunctionDefinition", + "src": "2762:58:22", + "functionSelector": "313ce567", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "decimals", + "nameLocation": "2771:8:22", + "parameters": { + "id": 29146, + "nodeType": "ParameterList", + "parameters": [], + "src": "2779:2:22" + }, + "returnParameters": { + "id": 29149, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29148, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29150, + "src": "2813:5:22", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29147, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "2813:5:22", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "2812:7:22" + }, + "scope": 29151, + "stateMutability": "view", + "virtual": true, + "visibility": "external" + } + ], + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 29144, + "name": "IERC20", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29143, + "src": "2748:6:22" + }, + "id": 29145, + "nodeType": "InheritanceSpecifier", + "src": "2748:6:22" + } + ], + "canonicalName": "IERC20Extended", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29151, + 29143 + ], + "name": "IERC20Extended", + "nameLocation": "2730:14:22", + "scope": 29152, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 22 +} \ No newline at end of file diff --git a/out/IUniswapV2Factory.sol/IUniswapV2Factory.json b/out/IUniswapV2Factory.sol/IUniswapV2Factory.json new file mode 100644 index 0000000..0b2f4ab --- /dev/null +++ b/out/IUniswapV2Factory.sol/IUniswapV2Factory.json @@ -0,0 +1,953 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "token0", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "token1", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "pair", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "PairCreated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "allPairs", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "allPairsLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + } + ], + "name": "createPair", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "feeTo", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "feeToSetter", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + } + ], + "name": "getPair", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "setFeeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "setFeeToSetter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "allPairs(uint256)": "1e3dd18b", + "allPairsLength()": "574f2ba3", + "createPair(address,address)": "c9c65396", + "feeTo()": "017e7e58", + "feeToSetter()": "094b7415", + "getPair(address,address)": "e6a43905", + "setFeeTo(address)": "f46901ed", + "setFeeToSetter(address)": "a2e74af6" + }, + "ast": { + "absolutePath": "src/interfaces/IUniswapV2Factory.sol", + "id": 29215, + "exportedSymbols": { + "IUniswapV2Factory": [ + 29214 + ] + }, + "nodeType": "SourceUnit", + "src": "46:675:23", + "nodes": [ + { + "id": 29153, + "nodeType": "PragmaDirective", + "src": "46:23:23", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29214, + "nodeType": "ContractDefinition", + "src": "73:648:23", + "nodes": [ + { + "id": 29163, + "nodeType": "EventDefinition", + "src": "108:86:23", + "anonymous": false, + "eventSelector": "0d3648bd0f6ba80134a33ba9275ac585d9d315f0ad8355cddefde31afa28d0e9", + "name": "PairCreated", + "nameLocation": "114:11:23", + "parameters": { + "id": 29162, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29155, + "indexed": true, + "mutability": "mutable", + "name": "token0", + "nameLocation": "142:6:23", + "nodeType": "VariableDeclaration", + "scope": 29163, + "src": "126:22:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29154, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "126:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29157, + "indexed": true, + "mutability": "mutable", + "name": "token1", + "nameLocation": "166:6:23", + "nodeType": "VariableDeclaration", + "scope": 29163, + "src": "150:22:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29156, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "150:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29159, + "indexed": false, + "mutability": "mutable", + "name": "pair", + "nameLocation": "182:4:23", + "nodeType": "VariableDeclaration", + "scope": 29163, + "src": "174:12:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29158, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "174:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29161, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29163, + "src": "188:4:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29160, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "188:4:23", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "125:68:23" + } + }, + { + "id": 29168, + "nodeType": "FunctionDefinition", + "src": "202:49:23", + "functionSelector": "017e7e58", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "feeTo", + "nameLocation": "211:5:23", + "parameters": { + "id": 29164, + "nodeType": "ParameterList", + "parameters": [], + "src": "216:2:23" + }, + "returnParameters": { + "id": 29167, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29166, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29168, + "src": "242:7:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29165, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "242:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "241:9:23" + }, + "scope": 29214, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29173, + "nodeType": "FunctionDefinition", + "src": "257:55:23", + "functionSelector": "094b7415", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "feeToSetter", + "nameLocation": "266:11:23", + "parameters": { + "id": 29169, + "nodeType": "ParameterList", + "parameters": [], + "src": "277:2:23" + }, + "returnParameters": { + "id": 29172, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29171, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29173, + "src": "303:7:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29170, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "303:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "302:9:23" + }, + "scope": 29214, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29182, + "nodeType": "FunctionDefinition", + "src": "320:86:23", + "functionSelector": "e6a43905", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getPair", + "nameLocation": "329:7:23", + "parameters": { + "id": 29178, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29175, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "345:6:23", + "nodeType": "VariableDeclaration", + "scope": 29182, + "src": "337:14:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29174, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "337:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29177, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "361:6:23", + "nodeType": "VariableDeclaration", + "scope": 29182, + "src": "353:14:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29176, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "353:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "336:32:23" + }, + "returnParameters": { + "id": 29181, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29180, + "mutability": "mutable", + "name": "pair", + "nameLocation": "400:4:23", + "nodeType": "VariableDeclaration", + "scope": 29182, + "src": "392:12:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "392:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "391:14:23" + }, + "scope": 29214, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29189, + "nodeType": "FunctionDefinition", + "src": "412:61:23", + "functionSelector": "1e3dd18b", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allPairs", + "nameLocation": "421:8:23", + "parameters": { + "id": 29185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29184, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29189, + "src": "430:4:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29183, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "430:4:23", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "429:6:23" + }, + "returnParameters": { + "id": 29188, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29187, + "mutability": "mutable", + "name": "pair", + "nameLocation": "467:4:23", + "nodeType": "VariableDeclaration", + "scope": 29189, + "src": "459:12:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29186, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "459:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "458:14:23" + }, + "scope": 29214, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29194, + "nodeType": "FunctionDefinition", + "src": "479:55:23", + "functionSelector": "574f2ba3", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allPairsLength", + "nameLocation": "488:14:23", + "parameters": { + "id": 29190, + "nodeType": "ParameterList", + "parameters": [], + "src": "502:2:23" + }, + "returnParameters": { + "id": 29193, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29192, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29194, + "src": "528:4:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29191, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "528:4:23", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "527:6:23" + }, + "scope": 29214, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29203, + "nodeType": "FunctionDefinition", + "src": "542:84:23", + "functionSelector": "c9c65396", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "createPair", + "nameLocation": "551:10:23", + "parameters": { + "id": 29199, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29196, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "570:6:23", + "nodeType": "VariableDeclaration", + "scope": 29203, + "src": "562:14:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "562:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29198, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "586:6:23", + "nodeType": "VariableDeclaration", + "scope": 29203, + "src": "578:14:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29197, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "578:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "561:32:23" + }, + "returnParameters": { + "id": 29202, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29201, + "mutability": "mutable", + "name": "pair", + "nameLocation": "620:4:23", + "nodeType": "VariableDeclaration", + "scope": 29203, + "src": "612:12:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29200, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "612:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "611:14:23" + }, + "scope": 29214, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29208, + "nodeType": "FunctionDefinition", + "src": "634:36:23", + "functionSelector": "f46901ed", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setFeeTo", + "nameLocation": "643:8:23", + "parameters": { + "id": 29206, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29205, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29208, + "src": "652:7:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29204, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "652:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "651:9:23" + }, + "returnParameters": { + "id": 29207, + "nodeType": "ParameterList", + "parameters": [], + "src": "669:0:23" + }, + "scope": 29214, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29213, + "nodeType": "FunctionDefinition", + "src": "676:42:23", + "functionSelector": "a2e74af6", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setFeeToSetter", + "nameLocation": "685:14:23", + "parameters": { + "id": 29211, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29210, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29213, + "src": "700:7:23", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29209, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "700:7:23", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "699:9:23" + }, + "returnParameters": { + "id": 29212, + "nodeType": "ParameterList", + "parameters": [], + "src": "717:0:23" + }, + "scope": 29214, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IUniswapV2Factory", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29214 + ], + "name": "IUniswapV2Factory", + "nameLocation": "83:17:23", + "scope": 29215, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 23 +} \ No newline at end of file diff --git a/out/IUniswapV2Pair.sol/IUniswapV2Pair.json b/out/IUniswapV2Pair.sol/IUniswapV2Pair.json new file mode 100644 index 0000000..866a49a --- /dev/null +++ b/out/IUniswapV2Pair.sol/IUniswapV2Pair.json @@ -0,0 +1,3619 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount0", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount1", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "Burn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount0", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount1", + "type": "uint256" + } + ], + "name": "Mint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount0In", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount1In", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount0Out", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount1Out", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "Swap", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint112", + "name": "reserve0", + "type": "uint112" + }, + { + "indexed": false, + "internalType": "uint112", + "name": "reserve1", + "type": "uint112" + } + ], + "name": "Sync", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "DOMAIN_SEPARATOR", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MINIMUM_LIQUIDITY", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "PERMIT_TYPEHASH", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "burn", + "outputs": [ + { + "internalType": "uint256", + "name": "amount0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount1", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "factory", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getReserves", + "outputs": [ + { + "internalType": "uint112", + "name": "reserve0", + "type": "uint112" + }, + { + "internalType": "uint112", + "name": "reserve1", + "type": "uint112" + }, + { + "internalType": "uint32", + "name": "blockTimestampLast", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "kLast", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "price0CumulativeLast", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "price1CumulativeLast", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "skim", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount0Out", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount1Out", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "swap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "sync", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "token0", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "token1", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "DOMAIN_SEPARATOR()": "3644e515", + "MINIMUM_LIQUIDITY()": "ba9a7a56", + "PERMIT_TYPEHASH()": "30adf81f", + "allowance(address,address)": "dd62ed3e", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "burn(address)": "89afcb44", + "decimals()": "313ce567", + "factory()": "c45a0155", + "getReserves()": "0902f1ac", + "initialize(address,address)": "485cc955", + "kLast()": "7464fc3d", + "mint(address)": "6a627842", + "name()": "06fdde03", + "nonces(address)": "7ecebe00", + "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)": "d505accf", + "price0CumulativeLast()": "5909c0d5", + "price1CumulativeLast()": "5a3d5493", + "skim(address)": "bc25cf77", + "swap(uint256,uint256,address,bytes)": "022c0d9f", + "symbol()": "95d89b41", + "sync()": "fff6cae9", + "token0()": "0dfe1681", + "token1()": "d21220a7", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd" + }, + "ast": { + "absolutePath": "src/interfaces/IUniswapV2Pair.sol", + "id": 29457, + "exportedSymbols": { + "IUniswapV2Pair": [ + 29456 + ] + }, + "nodeType": "SourceUnit", + "src": "46:2473:24", + "nodes": [ + { + "id": 29216, + "nodeType": "PragmaDirective", + "src": "46:23:24", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29456, + "nodeType": "ContractDefinition", + "src": "73:2446:24", + "nodes": [ + { + "id": 29224, + "nodeType": "EventDefinition", + "src": "105:75:24", + "anonymous": false, + "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "name": "Approval", + "nameLocation": "111:8:24", + "parameters": { + "id": 29223, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29218, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "136:5:24", + "nodeType": "VariableDeclaration", + "scope": 29224, + "src": "120:21:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29217, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "120:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29220, + "indexed": true, + "mutability": "mutable", + "name": "spender", + "nameLocation": "159:7:24", + "nodeType": "VariableDeclaration", + "scope": 29224, + "src": "143:23:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29219, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "143:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29222, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "173:5:24", + "nodeType": "VariableDeclaration", + "scope": 29224, + "src": "168:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29221, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "168:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "119:60:24" + } + }, + { + "id": 29232, + "nodeType": "EventDefinition", + "src": "186:69:24", + "anonymous": false, + "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", + "name": "Transfer", + "nameLocation": "192:8:24", + "parameters": { + "id": 29231, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29226, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "217:4:24", + "nodeType": "VariableDeclaration", + "scope": 29232, + "src": "201:20:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29225, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "201:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29228, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "239:2:24", + "nodeType": "VariableDeclaration", + "scope": 29232, + "src": "223:18:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "223:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29230, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "248:5:24", + "nodeType": "VariableDeclaration", + "scope": 29232, + "src": "243:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29229, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "243:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "200:54:24" + } + }, + { + "id": 29237, + "nodeType": "FunctionDefinition", + "src": "263:54:24", + "functionSelector": "06fdde03", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "name", + "nameLocation": "272:4:24", + "parameters": { + "id": 29233, + "nodeType": "ParameterList", + "parameters": [], + "src": "276:2:24" + }, + "returnParameters": { + "id": 29236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29235, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29237, + "src": "302:13:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 29234, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "302:6:24", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "301:15:24" + }, + "scope": 29456, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29242, + "nodeType": "FunctionDefinition", + "src": "323:56:24", + "functionSelector": "95d89b41", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "symbol", + "nameLocation": "332:6:24", + "parameters": { + "id": 29238, + "nodeType": "ParameterList", + "parameters": [], + "src": "338:2:24" + }, + "returnParameters": { + "id": 29241, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29240, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29242, + "src": "364:13:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 29239, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "364:6:24", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "363:15:24" + }, + "scope": 29456, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29247, + "nodeType": "FunctionDefinition", + "src": "385:50:24", + "functionSelector": "313ce567", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "decimals", + "nameLocation": "394:8:24", + "parameters": { + "id": 29243, + "nodeType": "ParameterList", + "parameters": [], + "src": "402:2:24" + }, + "returnParameters": { + "id": 29246, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29245, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29247, + "src": "428:5:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29244, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "428:5:24", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "427:7:24" + }, + "scope": 29456, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29252, + "nodeType": "FunctionDefinition", + "src": "441:52:24", + "functionSelector": "18160ddd", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "450:11:24", + "parameters": { + "id": 29248, + "nodeType": "ParameterList", + "parameters": [], + "src": "461:2:24" + }, + "returnParameters": { + "id": 29251, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29250, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29252, + "src": "487:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29249, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "487:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "486:6:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29259, + "nodeType": "FunctionDefinition", + "src": "499:63:24", + "functionSelector": "70a08231", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "508:9:24", + "parameters": { + "id": 29255, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29254, + "mutability": "mutable", + "name": "owner", + "nameLocation": "526:5:24", + "nodeType": "VariableDeclaration", + "scope": 29259, + "src": "518:13:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29253, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "518:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "517:15:24" + }, + "returnParameters": { + "id": 29258, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29257, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29259, + "src": "556:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29256, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "556:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "555:6:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29268, + "nodeType": "FunctionDefinition", + "src": "568:80:24", + "functionSelector": "dd62ed3e", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "577:9:24", + "parameters": { + "id": 29264, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29261, + "mutability": "mutable", + "name": "owner", + "nameLocation": "595:5:24", + "nodeType": "VariableDeclaration", + "scope": 29268, + "src": "587:13:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29260, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "587:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29263, + "mutability": "mutable", + "name": "spender", + "nameLocation": "610:7:24", + "nodeType": "VariableDeclaration", + "scope": 29268, + "src": "602:15:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29262, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "602:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "586:32:24" + }, + "returnParameters": { + "id": 29267, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29266, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29268, + "src": "642:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29265, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "642:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "641:6:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29277, + "nodeType": "FunctionDefinition", + "src": "656:70:24", + "functionSelector": "095ea7b3", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "665:7:24", + "parameters": { + "id": 29273, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29270, + "mutability": "mutable", + "name": "spender", + "nameLocation": "681:7:24", + "nodeType": "VariableDeclaration", + "scope": 29277, + "src": "673:15:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "673:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29272, + "mutability": "mutable", + "name": "value", + "nameLocation": "695:5:24", + "nodeType": "VariableDeclaration", + "scope": 29277, + "src": "690:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29271, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "690:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "672:29:24" + }, + "returnParameters": { + "id": 29276, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29275, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29277, + "src": "720:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29274, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "720:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "719:6:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29286, + "nodeType": "FunctionDefinition", + "src": "732:66:24", + "functionSelector": "a9059cbb", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "741:8:24", + "parameters": { + "id": 29282, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29279, + "mutability": "mutable", + "name": "to", + "nameLocation": "758:2:24", + "nodeType": "VariableDeclaration", + "scope": 29286, + "src": "750:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29278, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "750:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29281, + "mutability": "mutable", + "name": "value", + "nameLocation": "767:5:24", + "nodeType": "VariableDeclaration", + "scope": 29286, + "src": "762:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29280, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "762:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "749:24:24" + }, + "returnParameters": { + "id": 29285, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29284, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29286, + "src": "792:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29283, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "792:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "791:6:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29297, + "nodeType": "FunctionDefinition", + "src": "804:84:24", + "functionSelector": "23b872dd", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "813:12:24", + "parameters": { + "id": 29293, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29288, + "mutability": "mutable", + "name": "from", + "nameLocation": "834:4:24", + "nodeType": "VariableDeclaration", + "scope": 29297, + "src": "826:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29287, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "826:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29290, + "mutability": "mutable", + "name": "to", + "nameLocation": "848:2:24", + "nodeType": "VariableDeclaration", + "scope": 29297, + "src": "840:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29289, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "840:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29292, + "mutability": "mutable", + "name": "value", + "nameLocation": "857:5:24", + "nodeType": "VariableDeclaration", + "scope": 29297, + "src": "852:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29291, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "852:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "825:38:24" + }, + "returnParameters": { + "id": 29296, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29295, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29297, + "src": "882:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29294, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "882:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "881:6:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29302, + "nodeType": "FunctionDefinition", + "src": "896:60:24", + "functionSelector": "3644e515", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "DOMAIN_SEPARATOR", + "nameLocation": "905:16:24", + "parameters": { + "id": 29298, + "nodeType": "ParameterList", + "parameters": [], + "src": "921:2:24" + }, + "returnParameters": { + "id": 29301, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29300, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29302, + "src": "947:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29299, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "947:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "946:9:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29307, + "nodeType": "FunctionDefinition", + "src": "962:59:24", + "functionSelector": "30adf81f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "PERMIT_TYPEHASH", + "nameLocation": "971:15:24", + "parameters": { + "id": 29303, + "nodeType": "ParameterList", + "parameters": [], + "src": "986:2:24" + }, + "returnParameters": { + "id": 29306, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29305, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29307, + "src": "1012:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29304, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1012:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1011:9:24" + }, + "scope": 29456, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29314, + "nodeType": "FunctionDefinition", + "src": "1027:60:24", + "functionSelector": "7ecebe00", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "nonces", + "nameLocation": "1036:6:24", + "parameters": { + "id": 29310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29309, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1051:5:24", + "nodeType": "VariableDeclaration", + "scope": 29314, + "src": "1043:13:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29308, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1043:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1042:15:24" + }, + "returnParameters": { + "id": 29313, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29312, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29314, + "src": "1081:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29311, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1081:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1080:6:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29331, + "nodeType": "FunctionDefinition", + "src": "1095:115:24", + "functionSelector": "d505accf", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "permit", + "nameLocation": "1104:6:24", + "parameters": { + "id": 29329, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29316, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1119:5:24", + "nodeType": "VariableDeclaration", + "scope": 29331, + "src": "1111:13:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29315, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1111:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29318, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1134:7:24", + "nodeType": "VariableDeclaration", + "scope": 29331, + "src": "1126:15:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29317, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1126:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29320, + "mutability": "mutable", + "name": "value", + "nameLocation": "1148:5:24", + "nodeType": "VariableDeclaration", + "scope": 29331, + "src": "1143:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29319, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1143:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29322, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "1160:8:24", + "nodeType": "VariableDeclaration", + "scope": 29331, + "src": "1155:13:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29321, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1155:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29324, + "mutability": "mutable", + "name": "v", + "nameLocation": "1176:1:24", + "nodeType": "VariableDeclaration", + "scope": 29331, + "src": "1170:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29323, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1170:5:24", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29326, + "mutability": "mutable", + "name": "r", + "nameLocation": "1187:1:24", + "nodeType": "VariableDeclaration", + "scope": 29331, + "src": "1179:9:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29325, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1179:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29328, + "mutability": "mutable", + "name": "s", + "nameLocation": "1198:1:24", + "nodeType": "VariableDeclaration", + "scope": 29331, + "src": "1190:9:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29327, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1190:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1110:90:24" + }, + "returnParameters": { + "id": 29330, + "nodeType": "ParameterList", + "parameters": [], + "src": "1209:0:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29339, + "nodeType": "EventDefinition", + "src": "1218:63:24", + "anonymous": false, + "eventSelector": "4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f", + "name": "Mint", + "nameLocation": "1224:4:24", + "parameters": { + "id": 29338, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29333, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "1245:6:24", + "nodeType": "VariableDeclaration", + "scope": 29339, + "src": "1229:22:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29332, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1229:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29335, + "indexed": false, + "mutability": "mutable", + "name": "amount0", + "nameLocation": "1258:7:24", + "nodeType": "VariableDeclaration", + "scope": 29339, + "src": "1253:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29334, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1253:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29337, + "indexed": false, + "mutability": "mutable", + "name": "amount1", + "nameLocation": "1272:7:24", + "nodeType": "VariableDeclaration", + "scope": 29339, + "src": "1267:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29336, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1267:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1228:52:24" + } + }, + { + "id": 29349, + "nodeType": "EventDefinition", + "src": "1287:83:24", + "anonymous": false, + "eventSelector": "dccd412f0b1252819cb1fd330b93224ca42612892bb3f4f789976e6d81936496", + "name": "Burn", + "nameLocation": "1293:4:24", + "parameters": { + "id": 29348, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29341, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "1314:6:24", + "nodeType": "VariableDeclaration", + "scope": 29349, + "src": "1298:22:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29340, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1298:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29343, + "indexed": false, + "mutability": "mutable", + "name": "amount0", + "nameLocation": "1327:7:24", + "nodeType": "VariableDeclaration", + "scope": 29349, + "src": "1322:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29342, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1322:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29345, + "indexed": false, + "mutability": "mutable", + "name": "amount1", + "nameLocation": "1341:7:24", + "nodeType": "VariableDeclaration", + "scope": 29349, + "src": "1336:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29344, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1336:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29347, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "1366:2:24", + "nodeType": "VariableDeclaration", + "scope": 29349, + "src": "1350:18:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29346, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1350:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1297:72:24" + } + }, + { + "id": 29363, + "nodeType": "EventDefinition", + "src": "1376:182:24", + "anonymous": false, + "eventSelector": "d78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d822", + "name": "Swap", + "nameLocation": "1382:4:24", + "parameters": { + "id": 29362, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29351, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "1413:6:24", + "nodeType": "VariableDeclaration", + "scope": 29363, + "src": "1397:22:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29350, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1397:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29353, + "indexed": false, + "mutability": "mutable", + "name": "amount0In", + "nameLocation": "1435:9:24", + "nodeType": "VariableDeclaration", + "scope": 29363, + "src": "1430:14:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29352, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1430:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29355, + "indexed": false, + "mutability": "mutable", + "name": "amount1In", + "nameLocation": "1460:9:24", + "nodeType": "VariableDeclaration", + "scope": 29363, + "src": "1455:14:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29354, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1455:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29357, + "indexed": false, + "mutability": "mutable", + "name": "amount0Out", + "nameLocation": "1485:10:24", + "nodeType": "VariableDeclaration", + "scope": 29363, + "src": "1480:15:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29356, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1480:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29359, + "indexed": false, + "mutability": "mutable", + "name": "amount1Out", + "nameLocation": "1511:10:24", + "nodeType": "VariableDeclaration", + "scope": 29363, + "src": "1506:15:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29358, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1506:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29361, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "1548:2:24", + "nodeType": "VariableDeclaration", + "scope": 29363, + "src": "1532:18:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29360, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1532:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1386:171:24" + } + }, + { + "id": 29369, + "nodeType": "EventDefinition", + "src": "1564:47:24", + "anonymous": false, + "eventSelector": "1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1", + "name": "Sync", + "nameLocation": "1570:4:24", + "parameters": { + "id": 29368, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29365, + "indexed": false, + "mutability": "mutable", + "name": "reserve0", + "nameLocation": "1583:8:24", + "nodeType": "VariableDeclaration", + "scope": 29369, + "src": "1575:16:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + }, + "typeName": { + "id": 29364, + "name": "uint112", + "nodeType": "ElementaryTypeName", + "src": "1575:7:24", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29367, + "indexed": false, + "mutability": "mutable", + "name": "reserve1", + "nameLocation": "1601:8:24", + "nodeType": "VariableDeclaration", + "scope": 29369, + "src": "1593:16:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + }, + "typeName": { + "id": 29366, + "name": "uint112", + "nodeType": "ElementaryTypeName", + "src": "1593:7:24", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + } + }, + "visibility": "internal" + } + ], + "src": "1574:36:24" + } + }, + { + "id": 29374, + "nodeType": "FunctionDefinition", + "src": "1619:58:24", + "functionSelector": "ba9a7a56", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "MINIMUM_LIQUIDITY", + "nameLocation": "1628:17:24", + "parameters": { + "id": 29370, + "nodeType": "ParameterList", + "parameters": [], + "src": "1645:2:24" + }, + "returnParameters": { + "id": 29373, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29372, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29374, + "src": "1671:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29371, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1671:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1670:6:24" + }, + "scope": 29456, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29379, + "nodeType": "FunctionDefinition", + "src": "1683:51:24", + "functionSelector": "c45a0155", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "factory", + "nameLocation": "1692:7:24", + "parameters": { + "id": 29375, + "nodeType": "ParameterList", + "parameters": [], + "src": "1699:2:24" + }, + "returnParameters": { + "id": 29378, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29377, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29379, + "src": "1725:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29376, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1725:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1724:9:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29384, + "nodeType": "FunctionDefinition", + "src": "1740:50:24", + "functionSelector": "0dfe1681", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "token0", + "nameLocation": "1749:6:24", + "parameters": { + "id": 29380, + "nodeType": "ParameterList", + "parameters": [], + "src": "1755:2:24" + }, + "returnParameters": { + "id": 29383, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29382, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29384, + "src": "1781:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29381, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1781:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1780:9:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29389, + "nodeType": "FunctionDefinition", + "src": "1796:50:24", + "functionSelector": "d21220a7", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "token1", + "nameLocation": "1805:6:24", + "parameters": { + "id": 29385, + "nodeType": "ParameterList", + "parameters": [], + "src": "1811:2:24" + }, + "returnParameters": { + "id": 29388, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29387, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29389, + "src": "1837:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29386, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1837:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1836:9:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29398, + "nodeType": "FunctionDefinition", + "src": "1852:109:24", + "functionSelector": "0902f1ac", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getReserves", + "nameLocation": "1861:11:24", + "parameters": { + "id": 29390, + "nodeType": "ParameterList", + "parameters": [], + "src": "1872:2:24" + }, + "returnParameters": { + "id": 29397, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29392, + "mutability": "mutable", + "name": "reserve0", + "nameLocation": "1906:8:24", + "nodeType": "VariableDeclaration", + "scope": 29398, + "src": "1898:16:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + }, + "typeName": { + "id": 29391, + "name": "uint112", + "nodeType": "ElementaryTypeName", + "src": "1898:7:24", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29394, + "mutability": "mutable", + "name": "reserve1", + "nameLocation": "1924:8:24", + "nodeType": "VariableDeclaration", + "scope": 29398, + "src": "1916:16:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + }, + "typeName": { + "id": 29393, + "name": "uint112", + "nodeType": "ElementaryTypeName", + "src": "1916:7:24", + "typeDescriptions": { + "typeIdentifier": "t_uint112", + "typeString": "uint112" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29396, + "mutability": "mutable", + "name": "blockTimestampLast", + "nameLocation": "1941:18:24", + "nodeType": "VariableDeclaration", + "scope": 29398, + "src": "1934:25:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 29395, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "1934:6:24", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "1897:63:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29403, + "nodeType": "FunctionDefinition", + "src": "1967:61:24", + "functionSelector": "5909c0d5", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "price0CumulativeLast", + "nameLocation": "1976:20:24", + "parameters": { + "id": 29399, + "nodeType": "ParameterList", + "parameters": [], + "src": "1996:2:24" + }, + "returnParameters": { + "id": 29402, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29401, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29403, + "src": "2022:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29400, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2022:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2021:6:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29408, + "nodeType": "FunctionDefinition", + "src": "2034:61:24", + "functionSelector": "5a3d5493", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "price1CumulativeLast", + "nameLocation": "2043:20:24", + "parameters": { + "id": 29404, + "nodeType": "ParameterList", + "parameters": [], + "src": "2063:2:24" + }, + "returnParameters": { + "id": 29407, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29406, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29408, + "src": "2089:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29405, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2089:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2088:6:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29413, + "nodeType": "FunctionDefinition", + "src": "2101:46:24", + "functionSelector": "7464fc3d", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "kLast", + "nameLocation": "2110:5:24", + "parameters": { + "id": 29409, + "nodeType": "ParameterList", + "parameters": [], + "src": "2115:2:24" + }, + "returnParameters": { + "id": 29412, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29411, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29413, + "src": "2141:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29410, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2141:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2140:6:24" + }, + "scope": 29456, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29420, + "nodeType": "FunctionDefinition", + "src": "2155:60:24", + "functionSelector": "6a627842", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "mint", + "nameLocation": "2164:4:24", + "parameters": { + "id": 29416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29415, + "mutability": "mutable", + "name": "to", + "nameLocation": "2177:2:24", + "nodeType": "VariableDeclaration", + "scope": 29420, + "src": "2169:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29414, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2169:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2168:12:24" + }, + "returnParameters": { + "id": 29419, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29418, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "2204:9:24", + "nodeType": "VariableDeclaration", + "scope": 29420, + "src": "2199:14:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29417, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2199:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2198:16:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29429, + "nodeType": "FunctionDefinition", + "src": "2221:72:24", + "functionSelector": "89afcb44", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "burn", + "nameLocation": "2230:4:24", + "parameters": { + "id": 29423, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29422, + "mutability": "mutable", + "name": "to", + "nameLocation": "2243:2:24", + "nodeType": "VariableDeclaration", + "scope": 29429, + "src": "2235:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29421, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2235:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2234:12:24" + }, + "returnParameters": { + "id": 29428, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29425, + "mutability": "mutable", + "name": "amount0", + "nameLocation": "2270:7:24", + "nodeType": "VariableDeclaration", + "scope": 29429, + "src": "2265:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29424, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2265:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29427, + "mutability": "mutable", + "name": "amount1", + "nameLocation": "2284:7:24", + "nodeType": "VariableDeclaration", + "scope": 29429, + "src": "2279:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29426, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2279:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2264:28:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29440, + "nodeType": "FunctionDefinition", + "src": "2299:90:24", + "functionSelector": "022c0d9f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swap", + "nameLocation": "2308:4:24", + "parameters": { + "id": 29438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29431, + "mutability": "mutable", + "name": "amount0Out", + "nameLocation": "2318:10:24", + "nodeType": "VariableDeclaration", + "scope": 29440, + "src": "2313:15:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29430, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2313:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29433, + "mutability": "mutable", + "name": "amount1Out", + "nameLocation": "2335:10:24", + "nodeType": "VariableDeclaration", + "scope": 29440, + "src": "2330:15:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29432, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2330:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29435, + "mutability": "mutable", + "name": "to", + "nameLocation": "2355:2:24", + "nodeType": "VariableDeclaration", + "scope": 29440, + "src": "2347:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29434, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2347:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29437, + "mutability": "mutable", + "name": "data", + "nameLocation": "2374:4:24", + "nodeType": "VariableDeclaration", + "scope": 29440, + "src": "2359:19:24", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 29436, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2359:5:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2312:67:24" + }, + "returnParameters": { + "id": 29439, + "nodeType": "ParameterList", + "parameters": [], + "src": "2388:0:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29445, + "nodeType": "FunctionDefinition", + "src": "2395:35:24", + "functionSelector": "bc25cf77", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "skim", + "nameLocation": "2404:4:24", + "parameters": { + "id": 29443, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29442, + "mutability": "mutable", + "name": "to", + "nameLocation": "2417:2:24", + "nodeType": "VariableDeclaration", + "scope": 29445, + "src": "2409:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29441, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2409:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2408:12:24" + }, + "returnParameters": { + "id": 29444, + "nodeType": "ParameterList", + "parameters": [], + "src": "2429:0:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29448, + "nodeType": "FunctionDefinition", + "src": "2436:25:24", + "functionSelector": "fff6cae9", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "sync", + "nameLocation": "2445:4:24", + "parameters": { + "id": 29446, + "nodeType": "ParameterList", + "parameters": [], + "src": "2449:2:24" + }, + "returnParameters": { + "id": 29447, + "nodeType": "ParameterList", + "parameters": [], + "src": "2460:0:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29455, + "nodeType": "FunctionDefinition", + "src": "2469:47:24", + "functionSelector": "485cc955", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "initialize", + "nameLocation": "2478:10:24", + "parameters": { + "id": 29453, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29450, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29455, + "src": "2489:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29449, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2489:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29452, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29455, + "src": "2498:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29451, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2498:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2488:18:24" + }, + "returnParameters": { + "id": 29454, + "nodeType": "ParameterList", + "parameters": [], + "src": "2515:0:24" + }, + "scope": 29456, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IUniswapV2Pair", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29456 + ], + "name": "IUniswapV2Pair", + "nameLocation": "83:14:24", + "scope": 29457, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 24 +} \ No newline at end of file diff --git a/out/IUniswapV2Router.sol/IUniswapV2Router01.json b/out/IUniswapV2Router.sol/IUniswapV2Router01.json new file mode 100644 index 0000000..6d93c0e --- /dev/null +++ b/out/IUniswapV2Router.sol/IUniswapV2Router01.json @@ -0,0 +1,5766 @@ +{ + "abi": [ + { + "inputs": [], + "name": "WETH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountADesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "addLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountTokenDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "addLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "factory", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "name": "getAmountIn", + "outputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "name": "getAmountOut", + "outputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "name": "getAmountsIn", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "name": "getAmountsOut", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveB", + "type": "uint256" + } + ], + "name": "quote", + "outputs": [ + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "removeLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "removeLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "removeLiquidityETHWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "removeLiquidityWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapETHForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactETHForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactTokensForETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactTokensForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapTokensForExactETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapTokensForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "WETH()": "ad5c4648", + "addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256)": "e8e33700", + "addLiquidityETH(address,uint256,uint256,uint256,address,uint256)": "f305d719", + "factory()": "c45a0155", + "getAmountIn(uint256,uint256,uint256)": "85f8c259", + "getAmountOut(uint256,uint256,uint256)": "054d50d4", + "getAmountsIn(uint256,address[])": "1f00ca74", + "getAmountsOut(uint256,address[])": "d06ca61f", + "quote(uint256,uint256,uint256)": "ad615dec", + "removeLiquidity(address,address,uint256,uint256,uint256,address,uint256)": "baa2abde", + "removeLiquidityETH(address,uint256,uint256,uint256,address,uint256)": "02751cec", + "removeLiquidityETHWithPermit(address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)": "ded9382a", + "removeLiquidityWithPermit(address,address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)": "2195995c", + "swapETHForExactTokens(uint256,address[],address,uint256)": "fb3bdb41", + "swapExactETHForTokens(uint256,address[],address,uint256)": "7ff36ab5", + "swapExactTokensForETH(uint256,uint256,address[],address,uint256)": "18cbafe5", + "swapExactTokensForTokens(uint256,uint256,address[],address,uint256)": "38ed1739", + "swapTokensForExactETH(uint256,uint256,address[],address,uint256)": "4a25d94a", + "swapTokensForExactTokens(uint256,uint256,address[],address,uint256)": "8803dbee" + }, + "ast": { + "absolutePath": "src/interfaces/IUniswapV2Router.sol", + "id": 29850, + "exportedSymbols": { + "IUniswapV2Router01": [ + 29764 + ], + "IUniswapV2Router02": [ + 29849 + ] + }, + "nodeType": "SourceUnit", + "src": "46:4884:25", + "nodes": [ + { + "id": 29458, + "nodeType": "PragmaDirective", + "src": "46:23:25", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29764, + "nodeType": "ContractDefinition", + "src": "73:3591:25", + "nodes": [ + { + "id": 29463, + "nodeType": "FunctionDefinition", + "src": "109:51:25", + "functionSelector": "c45a0155", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "factory", + "nameLocation": "118:7:25", + "parameters": { + "id": 29459, + "nodeType": "ParameterList", + "parameters": [], + "src": "125:2:25" + }, + "returnParameters": { + "id": 29462, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29461, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29463, + "src": "151:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29460, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "151:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "150:9:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29468, + "nodeType": "FunctionDefinition", + "src": "166:48:25", + "functionSelector": "ad5c4648", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "WETH", + "nameLocation": "175:4:25", + "parameters": { + "id": 29464, + "nodeType": "ParameterList", + "parameters": [], + "src": "179:2:25" + }, + "returnParameters": { + "id": 29467, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29466, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29468, + "src": "205:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29465, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "205:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "204:9:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29493, + "nodeType": "FunctionDefinition", + "src": "222:298:25", + "functionSelector": "e8e33700", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addLiquidity", + "nameLocation": "231:12:25", + "parameters": { + "id": 29485, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29470, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "262:6:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "254:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29469, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "254:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29472, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "287:6:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "279:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29471, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "279:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29474, + "mutability": "mutable", + "name": "amountADesired", + "nameLocation": "309:14:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "304:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29473, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "304:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29476, + "mutability": "mutable", + "name": "amountBDesired", + "nameLocation": "339:14:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "334:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29475, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "334:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29478, + "mutability": "mutable", + "name": "amountAMin", + "nameLocation": "369:10:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "364:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29477, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "364:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29480, + "mutability": "mutable", + "name": "amountBMin", + "nameLocation": "395:10:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "390:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29479, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "390:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29482, + "mutability": "mutable", + "name": "to", + "nameLocation": "424:2:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "416:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29481, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "416:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29484, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "442:8:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "437:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29483, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "437:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "243:214:25" + }, + "returnParameters": { + "id": 29492, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29487, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "481:7:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "476:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29486, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "476:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29489, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "495:7:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "490:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29488, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "490:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29491, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "509:9:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "504:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29490, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "504:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "475:44:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29514, + "nodeType": "FunctionDefinition", + "src": "526:269:25", + "functionSelector": "f305d719", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addLiquidityETH", + "nameLocation": "535:15:25", + "parameters": { + "id": 29506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29495, + "mutability": "mutable", + "name": "token", + "nameLocation": "569:5:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "561:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "561:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29497, + "mutability": "mutable", + "name": "amountTokenDesired", + "nameLocation": "590:18:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "585:23:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29496, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "585:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29499, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "624:14:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "619:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29498, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "619:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29501, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "654:12:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "649:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29500, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "649:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29503, + "mutability": "mutable", + "name": "to", + "nameLocation": "685:2:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "677:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29502, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "677:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29505, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "703:8:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "698:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29504, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "698:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "550:168:25" + }, + "returnParameters": { + "id": 29513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29508, + "mutability": "mutable", + "name": "amountToken", + "nameLocation": "750:11:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "745:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29507, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "745:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29510, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "768:9:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "763:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29509, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "763:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29512, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "784:9:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "779:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29511, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "779:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "744:50:25" + }, + "scope": 29764, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29535, + "nodeType": "FunctionDefinition", + "src": "801:250:25", + "functionSelector": "baa2abde", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidity", + "nameLocation": "810:15:25", + "parameters": { + "id": 29529, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29516, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "844:6:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "836:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29515, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "836:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29518, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "869:6:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "861:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29517, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "861:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29520, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "891:9:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "886:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29519, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "886:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29522, + "mutability": "mutable", + "name": "amountAMin", + "nameLocation": "916:10:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "911:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29521, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "911:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29524, + "mutability": "mutable", + "name": "amountBMin", + "nameLocation": "942:10:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "937:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29523, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "937:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29526, + "mutability": "mutable", + "name": "to", + "nameLocation": "971:2:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "963:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29525, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "963:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29528, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "989:8:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "984:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29527, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "984:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "825:179:25" + }, + "returnParameters": { + "id": 29534, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29531, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "1028:7:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "1023:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29530, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1023:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29533, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "1042:7:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "1037:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29532, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1037:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1022:28:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29554, + "nodeType": "FunctionDefinition", + "src": "1057:239:25", + "functionSelector": "02751cec", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETH", + "nameLocation": "1066:18:25", + "parameters": { + "id": 29548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29537, + "mutability": "mutable", + "name": "token", + "nameLocation": "1103:5:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1095:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29536, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1095:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29539, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "1124:9:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1119:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29538, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1119:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29541, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "1149:14:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1144:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29540, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1144:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29543, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "1179:12:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1174:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29542, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1174:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29545, + "mutability": "mutable", + "name": "to", + "nameLocation": "1210:2:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1202:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29544, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1202:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29547, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "1228:8:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1223:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29546, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1223:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1084:159:25" + }, + "returnParameters": { + "id": 29553, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29550, + "mutability": "mutable", + "name": "amountToken", + "nameLocation": "1267:11:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1262:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29549, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1262:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29552, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "1285:9:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1280:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29551, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1280:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1261:34:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29583, + "nodeType": "FunctionDefinition", + "src": "1302:317:25", + "functionSelector": "2195995c", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityWithPermit", + "nameLocation": "1311:25:25", + "parameters": { + "id": 29577, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29556, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "1355:6:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1347:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29555, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1347:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29558, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "1380:6:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1372:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29557, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1372:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29560, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "1402:9:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1397:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29559, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1397:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29562, + "mutability": "mutable", + "name": "amountAMin", + "nameLocation": "1427:10:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1422:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29561, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1422:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29564, + "mutability": "mutable", + "name": "amountBMin", + "nameLocation": "1453:10:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1448:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29563, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1448:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29566, + "mutability": "mutable", + "name": "to", + "nameLocation": "1482:2:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1474:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29565, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1474:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29568, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "1500:8:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1495:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29567, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1495:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29570, + "mutability": "mutable", + "name": "approveMax", + "nameLocation": "1524:10:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1519:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29569, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1519:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29572, + "mutability": "mutable", + "name": "v", + "nameLocation": "1542:1:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1536:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29571, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1536:5:25", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29574, + "mutability": "mutable", + "name": "r", + "nameLocation": "1553:1:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1545:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29573, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1545:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29576, + "mutability": "mutable", + "name": "s", + "nameLocation": "1564:1:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1556:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29575, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1556:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1336:236:25" + }, + "returnParameters": { + "id": 29582, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29579, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "1596:7:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1591:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29578, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1591:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29581, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "1610:7:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1605:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29580, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1605:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1590:28:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29610, + "nodeType": "FunctionDefinition", + "src": "1625:306:25", + "functionSelector": "ded9382a", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETHWithPermit", + "nameLocation": "1634:28:25", + "parameters": { + "id": 29604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29585, + "mutability": "mutable", + "name": "token", + "nameLocation": "1681:5:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1673:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29584, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1673:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29587, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "1702:9:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1697:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29586, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1697:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29589, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "1727:14:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1722:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29588, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1722:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29591, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "1757:12:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1752:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29590, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1752:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29593, + "mutability": "mutable", + "name": "to", + "nameLocation": "1788:2:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1780:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29592, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1780:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29595, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "1806:8:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1801:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29594, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1801:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29597, + "mutability": "mutable", + "name": "approveMax", + "nameLocation": "1830:10:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1825:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29596, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1825:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29599, + "mutability": "mutable", + "name": "v", + "nameLocation": "1848:1:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1842:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29598, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1842:5:25", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29601, + "mutability": "mutable", + "name": "r", + "nameLocation": "1859:1:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1851:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29600, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1851:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29603, + "mutability": "mutable", + "name": "s", + "nameLocation": "1870:1:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1862:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29602, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1862:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1662:216:25" + }, + "returnParameters": { + "id": 29609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29606, + "mutability": "mutable", + "name": "amountToken", + "nameLocation": "1902:11:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1897:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29605, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1897:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29608, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "1920:9:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1915:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29607, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1915:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1896:34:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29627, + "nodeType": "FunctionDefinition", + "src": "1937:213:25", + "functionSelector": "38ed1739", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForTokens", + "nameLocation": "1946:24:25", + "parameters": { + "id": 29622, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29612, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "1986:8:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "1981:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29611, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1981:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29614, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "2010:12:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2005:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29613, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2005:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29617, + "mutability": "mutable", + "name": "path", + "nameLocation": "2052:4:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2033:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29615, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2033:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29616, + "nodeType": "ArrayTypeName", + "src": "2033:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29619, + "mutability": "mutable", + "name": "to", + "nameLocation": "2075:2:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2067:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2067:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29621, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2093:8:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2088:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29620, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2088:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1970:138:25" + }, + "returnParameters": { + "id": 29626, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29625, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2141:7:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2127:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29623, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2127:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29624, + "nodeType": "ArrayTypeName", + "src": "2127:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2126:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29644, + "nodeType": "FunctionDefinition", + "src": "2156:213:25", + "functionSelector": "8803dbee", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapTokensForExactTokens", + "nameLocation": "2165:24:25", + "parameters": { + "id": 29639, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29629, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "2205:9:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2200:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29628, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2200:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29631, + "mutability": "mutable", + "name": "amountInMax", + "nameLocation": "2230:11:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2225:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29630, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2225:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29634, + "mutability": "mutable", + "name": "path", + "nameLocation": "2271:4:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2252:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29632, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2252:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29633, + "nodeType": "ArrayTypeName", + "src": "2252:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29636, + "mutability": "mutable", + "name": "to", + "nameLocation": "2294:2:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2286:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29635, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2286:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29638, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2312:8:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2307:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29637, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2307:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2189:138:25" + }, + "returnParameters": { + "id": 29643, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29642, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2360:7:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2346:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29640, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2346:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29641, + "nodeType": "ArrayTypeName", + "src": "2346:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2345:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29659, + "nodeType": "FunctionDefinition", + "src": "2375:178:25", + "functionSelector": "7ff36ab5", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactETHForTokens", + "nameLocation": "2384:21:25", + "parameters": { + "id": 29654, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29646, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "2411:12:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2406:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29645, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2406:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29649, + "mutability": "mutable", + "name": "path", + "nameLocation": "2444:4:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2425:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29647, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2425:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29648, + "nodeType": "ArrayTypeName", + "src": "2425:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29651, + "mutability": "mutable", + "name": "to", + "nameLocation": "2458:2:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2450:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29650, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2450:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29653, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2467:8:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2462:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29652, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2462:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2405:71:25" + }, + "returnParameters": { + "id": 29658, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29657, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2544:7:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2530:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29655, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2530:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29656, + "nodeType": "ArrayTypeName", + "src": "2530:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2529:23:25" + }, + "scope": 29764, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29676, + "nodeType": "FunctionDefinition", + "src": "2559:176:25", + "functionSelector": "4a25d94a", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapTokensForExactETH", + "nameLocation": "2568:21:25", + "parameters": { + "id": 29671, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29661, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "2595:9:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2590:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29660, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2590:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29663, + "mutability": "mutable", + "name": "amountInMax", + "nameLocation": "2611:11:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2606:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29662, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2606:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29666, + "mutability": "mutable", + "name": "path", + "nameLocation": "2643:4:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2624:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29664, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2624:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29665, + "nodeType": "ArrayTypeName", + "src": "2624:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29668, + "mutability": "mutable", + "name": "to", + "nameLocation": "2657:2:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2649:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29667, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2649:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29670, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2666:8:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2661:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29669, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2661:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2589:86:25" + }, + "returnParameters": { + "id": 29675, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29674, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2726:7:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2712:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29672, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2712:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29673, + "nodeType": "ArrayTypeName", + "src": "2712:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2711:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29693, + "nodeType": "FunctionDefinition", + "src": "2741:176:25", + "functionSelector": "18cbafe5", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForETH", + "nameLocation": "2750:21:25", + "parameters": { + "id": 29688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29678, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "2777:8:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2772:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29677, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2772:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29680, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "2792:12:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2787:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29679, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2787:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29683, + "mutability": "mutable", + "name": "path", + "nameLocation": "2825:4:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2806:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29681, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2806:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29682, + "nodeType": "ArrayTypeName", + "src": "2806:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29685, + "mutability": "mutable", + "name": "to", + "nameLocation": "2839:2:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2831:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29684, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2831:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29687, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2848:8:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2843:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29686, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2843:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2771:86:25" + }, + "returnParameters": { + "id": 29692, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29691, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2908:7:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2894:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29689, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2894:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29690, + "nodeType": "ArrayTypeName", + "src": "2894:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2893:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29708, + "nodeType": "FunctionDefinition", + "src": "2923:175:25", + "functionSelector": "fb3bdb41", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapETHForExactTokens", + "nameLocation": "2932:21:25", + "parameters": { + "id": 29703, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29695, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "2959:9:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "2954:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29694, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2954:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29698, + "mutability": "mutable", + "name": "path", + "nameLocation": "2989:4:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "2970:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29696, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2970:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29697, + "nodeType": "ArrayTypeName", + "src": "2970:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29700, + "mutability": "mutable", + "name": "to", + "nameLocation": "3003:2:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "2995:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29699, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2995:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29702, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "3012:8:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "3007:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29701, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3007:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2953:68:25" + }, + "returnParameters": { + "id": 29707, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29706, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "3089:7:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "3075:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29704, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3075:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29705, + "nodeType": "ArrayTypeName", + "src": "3075:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3074:23:25" + }, + "scope": 29764, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29719, + "nodeType": "FunctionDefinition", + "src": "3106:96:25", + "functionSelector": "ad615dec", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "quote", + "nameLocation": "3115:5:25", + "parameters": { + "id": 29715, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29710, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "3126:7:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3121:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29709, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3121:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29712, + "mutability": "mutable", + "name": "reserveA", + "nameLocation": "3140:8:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3135:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29711, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3135:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29714, + "mutability": "mutable", + "name": "reserveB", + "nameLocation": "3155:8:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3150:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29713, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3150:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3120:44:25" + }, + "returnParameters": { + "id": 29718, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29717, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "3193:7:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3188:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29716, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3188:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3187:14:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29730, + "nodeType": "FunctionDefinition", + "src": "3208:109:25", + "functionSelector": "054d50d4", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountOut", + "nameLocation": "3217:12:25", + "parameters": { + "id": 29726, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29721, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "3235:8:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3230:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29720, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3230:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29723, + "mutability": "mutable", + "name": "reserveIn", + "nameLocation": "3250:9:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3245:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29722, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3245:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29725, + "mutability": "mutable", + "name": "reserveOut", + "nameLocation": "3266:10:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3261:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29724, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3261:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3229:48:25" + }, + "returnParameters": { + "id": 29729, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29728, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "3306:9:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3301:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29727, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3301:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3300:16:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29741, + "nodeType": "FunctionDefinition", + "src": "3323:108:25", + "functionSelector": "85f8c259", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountIn", + "nameLocation": "3332:11:25", + "parameters": { + "id": 29737, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29732, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "3349:9:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3344:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29731, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3344:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29734, + "mutability": "mutable", + "name": "reserveIn", + "nameLocation": "3365:9:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3360:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29733, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3360:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29736, + "mutability": "mutable", + "name": "reserveOut", + "nameLocation": "3381:10:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3376:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29735, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3376:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3343:49:25" + }, + "returnParameters": { + "id": 29740, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29739, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "3421:8:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3416:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29738, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3416:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3415:15:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29752, + "nodeType": "FunctionDefinition", + "src": "3437:109:25", + "functionSelector": "d06ca61f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountsOut", + "nameLocation": "3446:13:25", + "parameters": { + "id": 29747, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29743, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "3465:8:25", + "nodeType": "VariableDeclaration", + "scope": 29752, + "src": "3460:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29742, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3460:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29746, + "mutability": "mutable", + "name": "path", + "nameLocation": "3494:4:25", + "nodeType": "VariableDeclaration", + "scope": 29752, + "src": "3475:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29744, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3475:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29745, + "nodeType": "ArrayTypeName", + "src": "3475:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "3459:40:25" + }, + "returnParameters": { + "id": 29751, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29750, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "3537:7:25", + "nodeType": "VariableDeclaration", + "scope": 29752, + "src": "3523:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29748, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3523:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29749, + "nodeType": "ArrayTypeName", + "src": "3523:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3522:23:25" + }, + "scope": 29764, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29763, + "nodeType": "FunctionDefinition", + "src": "3552:109:25", + "functionSelector": "1f00ca74", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountsIn", + "nameLocation": "3561:12:25", + "parameters": { + "id": 29758, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29754, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "3579:9:25", + "nodeType": "VariableDeclaration", + "scope": 29763, + "src": "3574:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29753, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3574:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29757, + "mutability": "mutable", + "name": "path", + "nameLocation": "3609:4:25", + "nodeType": "VariableDeclaration", + "scope": 29763, + "src": "3590:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29755, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3590:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29756, + "nodeType": "ArrayTypeName", + "src": "3590:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "3573:41:25" + }, + "returnParameters": { + "id": 29762, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29761, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "3652:7:25", + "nodeType": "VariableDeclaration", + "scope": 29763, + "src": "3638:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29759, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3638:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29760, + "nodeType": "ArrayTypeName", + "src": "3638:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3637:23:25" + }, + "scope": 29764, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IUniswapV2Router01", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29764 + ], + "name": "IUniswapV2Router01", + "nameLocation": "83:18:25", + "scope": 29850, + "usedErrors": [] + }, + { + "id": 29849, + "nodeType": "ContractDefinition", + "src": "3668:1262:25", + "nodes": [ + { + "id": 29783, + "nodeType": "FunctionDefinition", + "src": "3726:250:25", + "functionSelector": "af2979eb", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETHSupportingFeeOnTransferTokens", + "nameLocation": "3735:47:25", + "parameters": { + "id": 29779, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29768, + "mutability": "mutable", + "name": "token", + "nameLocation": "3801:5:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3793:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29767, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3793:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29770, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "3822:9:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3817:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29769, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3817:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29772, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "3847:14:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3842:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29771, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3842:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29774, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "3877:12:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3872:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29773, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3872:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29776, + "mutability": "mutable", + "name": "to", + "nameLocation": "3908:2:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3900:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29775, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3900:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29778, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "3926:8:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3921:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29777, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3921:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3782:159:25" + }, + "returnParameters": { + "id": 29782, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29781, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "3965:9:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3960:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29780, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3960:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3959:16:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29808, + "nodeType": "FunctionDefinition", + "src": "3982:317:25", + "functionSelector": "5b0d5984", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens", + "nameLocation": "3991:57:25", + "parameters": { + "id": 29804, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29785, + "mutability": "mutable", + "name": "token", + "nameLocation": "4067:5:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4059:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29784, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4059:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29787, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "4088:9:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4083:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29786, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4083:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29789, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "4113:14:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4108:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29788, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4108:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29791, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "4143:12:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4138:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29790, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4138:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29793, + "mutability": "mutable", + "name": "to", + "nameLocation": "4174:2:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4166:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29792, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4166:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29795, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4192:8:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4187:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29794, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4187:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29797, + "mutability": "mutable", + "name": "approveMax", + "nameLocation": "4216:10:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4211:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29796, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4211:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29799, + "mutability": "mutable", + "name": "v", + "nameLocation": "4234:1:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4228:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29798, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "4228:5:25", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29801, + "mutability": "mutable", + "name": "r", + "nameLocation": "4245:1:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4237:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29800, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4237:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29803, + "mutability": "mutable", + "name": "s", + "nameLocation": "4256:1:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4248:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29802, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4248:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4048:216:25" + }, + "returnParameters": { + "id": 29807, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29806, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "4288:9:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4283:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29805, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4283:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4282:16:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29822, + "nodeType": "FunctionDefinition", + "src": "4307:210:25", + "functionSelector": "5c11d795", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForTokensSupportingFeeOnTransferTokens", + "nameLocation": "4316:53:25", + "parameters": { + "id": 29820, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29810, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "4385:8:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4380:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29809, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4380:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29812, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "4409:12:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4404:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29811, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4404:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29815, + "mutability": "mutable", + "name": "path", + "nameLocation": "4451:4:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4432:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29813, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4432:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29814, + "nodeType": "ArrayTypeName", + "src": "4432:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29817, + "mutability": "mutable", + "name": "to", + "nameLocation": "4474:2:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4466:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29816, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4466:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29819, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4492:8:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4487:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29818, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4487:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4369:138:25" + }, + "returnParameters": { + "id": 29821, + "nodeType": "ParameterList", + "parameters": [], + "src": "4516:0:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29834, + "nodeType": "FunctionDefinition", + "src": "4523:191:25", + "functionSelector": "b6f9de95", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactETHForTokensSupportingFeeOnTransferTokens", + "nameLocation": "4532:50:25", + "parameters": { + "id": 29832, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29824, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "4598:12:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4593:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29823, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4593:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29827, + "mutability": "mutable", + "name": "path", + "nameLocation": "4640:4:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4621:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29825, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4621:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29826, + "nodeType": "ArrayTypeName", + "src": "4621:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29829, + "mutability": "mutable", + "name": "to", + "nameLocation": "4663:2:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4655:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29828, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4655:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29831, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4681:8:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4676:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29830, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4676:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4582:114:25" + }, + "returnParameters": { + "id": 29833, + "nodeType": "ParameterList", + "parameters": [], + "src": "4713:0:25" + }, + "scope": 29849, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29848, + "nodeType": "FunctionDefinition", + "src": "4720:207:25", + "functionSelector": "791ac947", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForETHSupportingFeeOnTransferTokens", + "nameLocation": "4729:50:25", + "parameters": { + "id": 29846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29836, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "4795:8:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4790:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29835, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4790:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29838, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "4819:12:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4814:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29837, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4814:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29841, + "mutability": "mutable", + "name": "path", + "nameLocation": "4861:4:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4842:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29839, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4842:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29840, + "nodeType": "ArrayTypeName", + "src": "4842:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29843, + "mutability": "mutable", + "name": "to", + "nameLocation": "4884:2:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4876:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29842, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4876:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29845, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4902:8:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4897:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29844, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4897:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4779:138:25" + }, + "returnParameters": { + "id": 29847, + "nodeType": "ParameterList", + "parameters": [], + "src": "4926:0:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 29765, + "name": "IUniswapV2Router01", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29764, + "src": "3700:18:25" + }, + "id": 29766, + "nodeType": "InheritanceSpecifier", + "src": "3700:18:25" + } + ], + "canonicalName": "IUniswapV2Router02", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29849, + 29764 + ], + "name": "IUniswapV2Router02", + "nameLocation": "3678:18:25", + "scope": 29850, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 25 +} \ No newline at end of file diff --git a/out/IUniswapV2Router.sol/IUniswapV2Router02.json b/out/IUniswapV2Router.sol/IUniswapV2Router02.json new file mode 100644 index 0000000..30275c8 --- /dev/null +++ b/out/IUniswapV2Router.sol/IUniswapV2Router02.json @@ -0,0 +1,5973 @@ +{ + "abi": [ + { + "inputs": [], + "name": "WETH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountADesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "addLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountTokenDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "addLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "factory", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "name": "getAmountIn", + "outputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "name": "getAmountOut", + "outputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "name": "getAmountsIn", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "name": "getAmountsOut", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveB", + "type": "uint256" + } + ], + "name": "quote", + "outputs": [ + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "removeLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "removeLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "removeLiquidityETHSupportingFeeOnTransferTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "removeLiquidityETHWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "removeLiquidityWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapETHForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactETHForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactETHForTokensSupportingFeeOnTransferTokens", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactTokensForETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactTokensForETHSupportingFeeOnTransferTokens", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactTokensForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapExactTokensForTokensSupportingFeeOnTransferTokens", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapTokensForExactETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "name": "swapTokensForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "WETH()": "ad5c4648", + "addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256)": "e8e33700", + "addLiquidityETH(address,uint256,uint256,uint256,address,uint256)": "f305d719", + "factory()": "c45a0155", + "getAmountIn(uint256,uint256,uint256)": "85f8c259", + "getAmountOut(uint256,uint256,uint256)": "054d50d4", + "getAmountsIn(uint256,address[])": "1f00ca74", + "getAmountsOut(uint256,address[])": "d06ca61f", + "quote(uint256,uint256,uint256)": "ad615dec", + "removeLiquidity(address,address,uint256,uint256,uint256,address,uint256)": "baa2abde", + "removeLiquidityETH(address,uint256,uint256,uint256,address,uint256)": "02751cec", + "removeLiquidityETHSupportingFeeOnTransferTokens(address,uint256,uint256,uint256,address,uint256)": "af2979eb", + "removeLiquidityETHWithPermit(address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)": "ded9382a", + "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)": "5b0d5984", + "removeLiquidityWithPermit(address,address,uint256,uint256,uint256,address,uint256,bool,uint8,bytes32,bytes32)": "2195995c", + "swapETHForExactTokens(uint256,address[],address,uint256)": "fb3bdb41", + "swapExactETHForTokens(uint256,address[],address,uint256)": "7ff36ab5", + "swapExactETHForTokensSupportingFeeOnTransferTokens(uint256,address[],address,uint256)": "b6f9de95", + "swapExactTokensForETH(uint256,uint256,address[],address,uint256)": "18cbafe5", + "swapExactTokensForETHSupportingFeeOnTransferTokens(uint256,uint256,address[],address,uint256)": "791ac947", + "swapExactTokensForTokens(uint256,uint256,address[],address,uint256)": "38ed1739", + "swapExactTokensForTokensSupportingFeeOnTransferTokens(uint256,uint256,address[],address,uint256)": "5c11d795", + "swapTokensForExactETH(uint256,uint256,address[],address,uint256)": "4a25d94a", + "swapTokensForExactTokens(uint256,uint256,address[],address,uint256)": "8803dbee" + }, + "ast": { + "absolutePath": "src/interfaces/IUniswapV2Router.sol", + "id": 29850, + "exportedSymbols": { + "IUniswapV2Router01": [ + 29764 + ], + "IUniswapV2Router02": [ + 29849 + ] + }, + "nodeType": "SourceUnit", + "src": "46:4884:25", + "nodes": [ + { + "id": 29458, + "nodeType": "PragmaDirective", + "src": "46:23:25", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29764, + "nodeType": "ContractDefinition", + "src": "73:3591:25", + "nodes": [ + { + "id": 29463, + "nodeType": "FunctionDefinition", + "src": "109:51:25", + "functionSelector": "c45a0155", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "factory", + "nameLocation": "118:7:25", + "parameters": { + "id": 29459, + "nodeType": "ParameterList", + "parameters": [], + "src": "125:2:25" + }, + "returnParameters": { + "id": 29462, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29461, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29463, + "src": "151:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29460, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "151:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "150:9:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29468, + "nodeType": "FunctionDefinition", + "src": "166:48:25", + "functionSelector": "ad5c4648", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "WETH", + "nameLocation": "175:4:25", + "parameters": { + "id": 29464, + "nodeType": "ParameterList", + "parameters": [], + "src": "179:2:25" + }, + "returnParameters": { + "id": 29467, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29466, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29468, + "src": "205:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29465, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "205:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "204:9:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29493, + "nodeType": "FunctionDefinition", + "src": "222:298:25", + "functionSelector": "e8e33700", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addLiquidity", + "nameLocation": "231:12:25", + "parameters": { + "id": 29485, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29470, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "262:6:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "254:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29469, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "254:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29472, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "287:6:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "279:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29471, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "279:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29474, + "mutability": "mutable", + "name": "amountADesired", + "nameLocation": "309:14:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "304:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29473, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "304:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29476, + "mutability": "mutable", + "name": "amountBDesired", + "nameLocation": "339:14:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "334:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29475, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "334:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29478, + "mutability": "mutable", + "name": "amountAMin", + "nameLocation": "369:10:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "364:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29477, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "364:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29480, + "mutability": "mutable", + "name": "amountBMin", + "nameLocation": "395:10:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "390:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29479, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "390:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29482, + "mutability": "mutable", + "name": "to", + "nameLocation": "424:2:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "416:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29481, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "416:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29484, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "442:8:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "437:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29483, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "437:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "243:214:25" + }, + "returnParameters": { + "id": 29492, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29487, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "481:7:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "476:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29486, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "476:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29489, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "495:7:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "490:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29488, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "490:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29491, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "509:9:25", + "nodeType": "VariableDeclaration", + "scope": 29493, + "src": "504:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29490, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "504:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "475:44:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29514, + "nodeType": "FunctionDefinition", + "src": "526:269:25", + "functionSelector": "f305d719", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addLiquidityETH", + "nameLocation": "535:15:25", + "parameters": { + "id": 29506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29495, + "mutability": "mutable", + "name": "token", + "nameLocation": "569:5:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "561:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "561:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29497, + "mutability": "mutable", + "name": "amountTokenDesired", + "nameLocation": "590:18:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "585:23:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29496, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "585:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29499, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "624:14:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "619:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29498, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "619:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29501, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "654:12:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "649:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29500, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "649:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29503, + "mutability": "mutable", + "name": "to", + "nameLocation": "685:2:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "677:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29502, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "677:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29505, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "703:8:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "698:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29504, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "698:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "550:168:25" + }, + "returnParameters": { + "id": 29513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29508, + "mutability": "mutable", + "name": "amountToken", + "nameLocation": "750:11:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "745:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29507, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "745:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29510, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "768:9:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "763:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29509, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "763:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29512, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "784:9:25", + "nodeType": "VariableDeclaration", + "scope": 29514, + "src": "779:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29511, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "779:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "744:50:25" + }, + "scope": 29764, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29535, + "nodeType": "FunctionDefinition", + "src": "801:250:25", + "functionSelector": "baa2abde", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidity", + "nameLocation": "810:15:25", + "parameters": { + "id": 29529, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29516, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "844:6:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "836:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29515, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "836:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29518, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "869:6:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "861:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29517, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "861:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29520, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "891:9:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "886:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29519, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "886:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29522, + "mutability": "mutable", + "name": "amountAMin", + "nameLocation": "916:10:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "911:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29521, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "911:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29524, + "mutability": "mutable", + "name": "amountBMin", + "nameLocation": "942:10:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "937:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29523, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "937:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29526, + "mutability": "mutable", + "name": "to", + "nameLocation": "971:2:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "963:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29525, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "963:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29528, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "989:8:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "984:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29527, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "984:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "825:179:25" + }, + "returnParameters": { + "id": 29534, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29531, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "1028:7:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "1023:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29530, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1023:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29533, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "1042:7:25", + "nodeType": "VariableDeclaration", + "scope": 29535, + "src": "1037:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29532, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1037:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1022:28:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29554, + "nodeType": "FunctionDefinition", + "src": "1057:239:25", + "functionSelector": "02751cec", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETH", + "nameLocation": "1066:18:25", + "parameters": { + "id": 29548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29537, + "mutability": "mutable", + "name": "token", + "nameLocation": "1103:5:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1095:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29536, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1095:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29539, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "1124:9:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1119:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29538, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1119:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29541, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "1149:14:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1144:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29540, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1144:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29543, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "1179:12:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1174:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29542, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1174:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29545, + "mutability": "mutable", + "name": "to", + "nameLocation": "1210:2:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1202:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29544, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1202:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29547, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "1228:8:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1223:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29546, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1223:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1084:159:25" + }, + "returnParameters": { + "id": 29553, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29550, + "mutability": "mutable", + "name": "amountToken", + "nameLocation": "1267:11:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1262:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29549, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1262:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29552, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "1285:9:25", + "nodeType": "VariableDeclaration", + "scope": 29554, + "src": "1280:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29551, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1280:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1261:34:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29583, + "nodeType": "FunctionDefinition", + "src": "1302:317:25", + "functionSelector": "2195995c", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityWithPermit", + "nameLocation": "1311:25:25", + "parameters": { + "id": 29577, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29556, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "1355:6:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1347:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29555, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1347:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29558, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "1380:6:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1372:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29557, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1372:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29560, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "1402:9:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1397:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29559, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1397:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29562, + "mutability": "mutable", + "name": "amountAMin", + "nameLocation": "1427:10:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1422:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29561, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1422:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29564, + "mutability": "mutable", + "name": "amountBMin", + "nameLocation": "1453:10:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1448:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29563, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1448:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29566, + "mutability": "mutable", + "name": "to", + "nameLocation": "1482:2:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1474:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29565, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1474:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29568, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "1500:8:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1495:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29567, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1495:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29570, + "mutability": "mutable", + "name": "approveMax", + "nameLocation": "1524:10:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1519:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29569, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1519:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29572, + "mutability": "mutable", + "name": "v", + "nameLocation": "1542:1:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1536:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29571, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1536:5:25", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29574, + "mutability": "mutable", + "name": "r", + "nameLocation": "1553:1:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1545:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29573, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1545:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29576, + "mutability": "mutable", + "name": "s", + "nameLocation": "1564:1:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1556:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29575, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1556:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1336:236:25" + }, + "returnParameters": { + "id": 29582, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29579, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "1596:7:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1591:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29578, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1591:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29581, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "1610:7:25", + "nodeType": "VariableDeclaration", + "scope": 29583, + "src": "1605:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29580, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1605:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1590:28:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29610, + "nodeType": "FunctionDefinition", + "src": "1625:306:25", + "functionSelector": "ded9382a", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETHWithPermit", + "nameLocation": "1634:28:25", + "parameters": { + "id": 29604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29585, + "mutability": "mutable", + "name": "token", + "nameLocation": "1681:5:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1673:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29584, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1673:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29587, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "1702:9:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1697:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29586, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1697:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29589, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "1727:14:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1722:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29588, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1722:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29591, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "1757:12:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1752:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29590, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1752:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29593, + "mutability": "mutable", + "name": "to", + "nameLocation": "1788:2:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1780:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29592, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1780:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29595, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "1806:8:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1801:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29594, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1801:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29597, + "mutability": "mutable", + "name": "approveMax", + "nameLocation": "1830:10:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1825:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29596, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1825:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29599, + "mutability": "mutable", + "name": "v", + "nameLocation": "1848:1:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1842:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29598, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1842:5:25", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29601, + "mutability": "mutable", + "name": "r", + "nameLocation": "1859:1:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1851:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29600, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1851:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29603, + "mutability": "mutable", + "name": "s", + "nameLocation": "1870:1:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1862:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29602, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1862:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1662:216:25" + }, + "returnParameters": { + "id": 29609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29606, + "mutability": "mutable", + "name": "amountToken", + "nameLocation": "1902:11:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1897:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29605, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1897:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29608, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "1920:9:25", + "nodeType": "VariableDeclaration", + "scope": 29610, + "src": "1915:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29607, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1915:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1896:34:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29627, + "nodeType": "FunctionDefinition", + "src": "1937:213:25", + "functionSelector": "38ed1739", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForTokens", + "nameLocation": "1946:24:25", + "parameters": { + "id": 29622, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29612, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "1986:8:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "1981:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29611, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1981:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29614, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "2010:12:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2005:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29613, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2005:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29617, + "mutability": "mutable", + "name": "path", + "nameLocation": "2052:4:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2033:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29615, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2033:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29616, + "nodeType": "ArrayTypeName", + "src": "2033:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29619, + "mutability": "mutable", + "name": "to", + "nameLocation": "2075:2:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2067:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2067:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29621, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2093:8:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2088:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29620, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2088:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1970:138:25" + }, + "returnParameters": { + "id": 29626, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29625, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2141:7:25", + "nodeType": "VariableDeclaration", + "scope": 29627, + "src": "2127:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29623, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2127:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29624, + "nodeType": "ArrayTypeName", + "src": "2127:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2126:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29644, + "nodeType": "FunctionDefinition", + "src": "2156:213:25", + "functionSelector": "8803dbee", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapTokensForExactTokens", + "nameLocation": "2165:24:25", + "parameters": { + "id": 29639, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29629, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "2205:9:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2200:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29628, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2200:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29631, + "mutability": "mutable", + "name": "amountInMax", + "nameLocation": "2230:11:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2225:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29630, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2225:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29634, + "mutability": "mutable", + "name": "path", + "nameLocation": "2271:4:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2252:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29632, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2252:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29633, + "nodeType": "ArrayTypeName", + "src": "2252:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29636, + "mutability": "mutable", + "name": "to", + "nameLocation": "2294:2:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2286:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29635, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2286:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29638, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2312:8:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2307:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29637, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2307:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2189:138:25" + }, + "returnParameters": { + "id": 29643, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29642, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2360:7:25", + "nodeType": "VariableDeclaration", + "scope": 29644, + "src": "2346:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29640, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2346:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29641, + "nodeType": "ArrayTypeName", + "src": "2346:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2345:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29659, + "nodeType": "FunctionDefinition", + "src": "2375:178:25", + "functionSelector": "7ff36ab5", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactETHForTokens", + "nameLocation": "2384:21:25", + "parameters": { + "id": 29654, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29646, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "2411:12:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2406:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29645, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2406:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29649, + "mutability": "mutable", + "name": "path", + "nameLocation": "2444:4:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2425:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29647, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2425:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29648, + "nodeType": "ArrayTypeName", + "src": "2425:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29651, + "mutability": "mutable", + "name": "to", + "nameLocation": "2458:2:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2450:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29650, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2450:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29653, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2467:8:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2462:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29652, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2462:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2405:71:25" + }, + "returnParameters": { + "id": 29658, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29657, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2544:7:25", + "nodeType": "VariableDeclaration", + "scope": 29659, + "src": "2530:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29655, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2530:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29656, + "nodeType": "ArrayTypeName", + "src": "2530:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2529:23:25" + }, + "scope": 29764, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29676, + "nodeType": "FunctionDefinition", + "src": "2559:176:25", + "functionSelector": "4a25d94a", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapTokensForExactETH", + "nameLocation": "2568:21:25", + "parameters": { + "id": 29671, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29661, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "2595:9:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2590:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29660, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2590:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29663, + "mutability": "mutable", + "name": "amountInMax", + "nameLocation": "2611:11:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2606:16:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29662, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2606:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29666, + "mutability": "mutable", + "name": "path", + "nameLocation": "2643:4:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2624:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29664, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2624:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29665, + "nodeType": "ArrayTypeName", + "src": "2624:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29668, + "mutability": "mutable", + "name": "to", + "nameLocation": "2657:2:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2649:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29667, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2649:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29670, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2666:8:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2661:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29669, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2661:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2589:86:25" + }, + "returnParameters": { + "id": 29675, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29674, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2726:7:25", + "nodeType": "VariableDeclaration", + "scope": 29676, + "src": "2712:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29672, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2712:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29673, + "nodeType": "ArrayTypeName", + "src": "2712:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2711:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29693, + "nodeType": "FunctionDefinition", + "src": "2741:176:25", + "functionSelector": "18cbafe5", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForETH", + "nameLocation": "2750:21:25", + "parameters": { + "id": 29688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29678, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "2777:8:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2772:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29677, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2772:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29680, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "2792:12:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2787:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29679, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2787:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29683, + "mutability": "mutable", + "name": "path", + "nameLocation": "2825:4:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2806:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29681, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2806:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29682, + "nodeType": "ArrayTypeName", + "src": "2806:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29685, + "mutability": "mutable", + "name": "to", + "nameLocation": "2839:2:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2831:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29684, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2831:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29687, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "2848:8:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2843:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29686, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2843:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2771:86:25" + }, + "returnParameters": { + "id": 29692, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29691, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "2908:7:25", + "nodeType": "VariableDeclaration", + "scope": 29693, + "src": "2894:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29689, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2894:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29690, + "nodeType": "ArrayTypeName", + "src": "2894:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2893:23:25" + }, + "scope": 29764, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29708, + "nodeType": "FunctionDefinition", + "src": "2923:175:25", + "functionSelector": "fb3bdb41", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapETHForExactTokens", + "nameLocation": "2932:21:25", + "parameters": { + "id": 29703, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29695, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "2959:9:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "2954:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29694, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2954:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29698, + "mutability": "mutable", + "name": "path", + "nameLocation": "2989:4:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "2970:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29696, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2970:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29697, + "nodeType": "ArrayTypeName", + "src": "2970:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29700, + "mutability": "mutable", + "name": "to", + "nameLocation": "3003:2:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "2995:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29699, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2995:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29702, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "3012:8:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "3007:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29701, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3007:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2953:68:25" + }, + "returnParameters": { + "id": 29707, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29706, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "3089:7:25", + "nodeType": "VariableDeclaration", + "scope": 29708, + "src": "3075:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29704, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3075:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29705, + "nodeType": "ArrayTypeName", + "src": "3075:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3074:23:25" + }, + "scope": 29764, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29719, + "nodeType": "FunctionDefinition", + "src": "3106:96:25", + "functionSelector": "ad615dec", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "quote", + "nameLocation": "3115:5:25", + "parameters": { + "id": 29715, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29710, + "mutability": "mutable", + "name": "amountA", + "nameLocation": "3126:7:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3121:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29709, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3121:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29712, + "mutability": "mutable", + "name": "reserveA", + "nameLocation": "3140:8:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3135:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29711, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3135:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29714, + "mutability": "mutable", + "name": "reserveB", + "nameLocation": "3155:8:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3150:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29713, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3150:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3120:44:25" + }, + "returnParameters": { + "id": 29718, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29717, + "mutability": "mutable", + "name": "amountB", + "nameLocation": "3193:7:25", + "nodeType": "VariableDeclaration", + "scope": 29719, + "src": "3188:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29716, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3188:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3187:14:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29730, + "nodeType": "FunctionDefinition", + "src": "3208:109:25", + "functionSelector": "054d50d4", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountOut", + "nameLocation": "3217:12:25", + "parameters": { + "id": 29726, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29721, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "3235:8:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3230:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29720, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3230:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29723, + "mutability": "mutable", + "name": "reserveIn", + "nameLocation": "3250:9:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3245:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29722, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3245:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29725, + "mutability": "mutable", + "name": "reserveOut", + "nameLocation": "3266:10:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3261:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29724, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3261:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3229:48:25" + }, + "returnParameters": { + "id": 29729, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29728, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "3306:9:25", + "nodeType": "VariableDeclaration", + "scope": 29730, + "src": "3301:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29727, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3301:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3300:16:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29741, + "nodeType": "FunctionDefinition", + "src": "3323:108:25", + "functionSelector": "85f8c259", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountIn", + "nameLocation": "3332:11:25", + "parameters": { + "id": 29737, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29732, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "3349:9:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3344:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29731, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3344:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29734, + "mutability": "mutable", + "name": "reserveIn", + "nameLocation": "3365:9:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3360:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29733, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3360:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29736, + "mutability": "mutable", + "name": "reserveOut", + "nameLocation": "3381:10:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3376:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29735, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3376:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3343:49:25" + }, + "returnParameters": { + "id": 29740, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29739, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "3421:8:25", + "nodeType": "VariableDeclaration", + "scope": 29741, + "src": "3416:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29738, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3416:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3415:15:25" + }, + "scope": 29764, + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "id": 29752, + "nodeType": "FunctionDefinition", + "src": "3437:109:25", + "functionSelector": "d06ca61f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountsOut", + "nameLocation": "3446:13:25", + "parameters": { + "id": 29747, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29743, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "3465:8:25", + "nodeType": "VariableDeclaration", + "scope": 29752, + "src": "3460:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29742, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3460:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29746, + "mutability": "mutable", + "name": "path", + "nameLocation": "3494:4:25", + "nodeType": "VariableDeclaration", + "scope": 29752, + "src": "3475:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29744, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3475:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29745, + "nodeType": "ArrayTypeName", + "src": "3475:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "3459:40:25" + }, + "returnParameters": { + "id": 29751, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29750, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "3537:7:25", + "nodeType": "VariableDeclaration", + "scope": 29752, + "src": "3523:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29748, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3523:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29749, + "nodeType": "ArrayTypeName", + "src": "3523:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3522:23:25" + }, + "scope": 29764, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 29763, + "nodeType": "FunctionDefinition", + "src": "3552:109:25", + "functionSelector": "1f00ca74", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAmountsIn", + "nameLocation": "3561:12:25", + "parameters": { + "id": 29758, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29754, + "mutability": "mutable", + "name": "amountOut", + "nameLocation": "3579:9:25", + "nodeType": "VariableDeclaration", + "scope": 29763, + "src": "3574:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29753, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3574:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29757, + "mutability": "mutable", + "name": "path", + "nameLocation": "3609:4:25", + "nodeType": "VariableDeclaration", + "scope": 29763, + "src": "3590:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29755, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3590:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29756, + "nodeType": "ArrayTypeName", + "src": "3590:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "3573:41:25" + }, + "returnParameters": { + "id": 29762, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29761, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "3652:7:25", + "nodeType": "VariableDeclaration", + "scope": 29763, + "src": "3638:21:25", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 29759, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3638:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 29760, + "nodeType": "ArrayTypeName", + "src": "3638:6:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3637:23:25" + }, + "scope": 29764, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IUniswapV2Router01", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29764 + ], + "name": "IUniswapV2Router01", + "nameLocation": "83:18:25", + "scope": 29850, + "usedErrors": [] + }, + { + "id": 29849, + "nodeType": "ContractDefinition", + "src": "3668:1262:25", + "nodes": [ + { + "id": 29783, + "nodeType": "FunctionDefinition", + "src": "3726:250:25", + "functionSelector": "af2979eb", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETHSupportingFeeOnTransferTokens", + "nameLocation": "3735:47:25", + "parameters": { + "id": 29779, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29768, + "mutability": "mutable", + "name": "token", + "nameLocation": "3801:5:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3793:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29767, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3793:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29770, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "3822:9:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3817:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29769, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3817:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29772, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "3847:14:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3842:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29771, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3842:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29774, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "3877:12:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3872:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29773, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3872:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29776, + "mutability": "mutable", + "name": "to", + "nameLocation": "3908:2:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3900:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29775, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3900:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29778, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "3926:8:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3921:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29777, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3921:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3782:159:25" + }, + "returnParameters": { + "id": 29782, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29781, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "3965:9:25", + "nodeType": "VariableDeclaration", + "scope": 29783, + "src": "3960:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29780, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3960:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3959:16:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29808, + "nodeType": "FunctionDefinition", + "src": "3982:317:25", + "functionSelector": "5b0d5984", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens", + "nameLocation": "3991:57:25", + "parameters": { + "id": 29804, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29785, + "mutability": "mutable", + "name": "token", + "nameLocation": "4067:5:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4059:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29784, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4059:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29787, + "mutability": "mutable", + "name": "liquidity", + "nameLocation": "4088:9:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4083:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29786, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4083:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29789, + "mutability": "mutable", + "name": "amountTokenMin", + "nameLocation": "4113:14:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4108:19:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29788, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4108:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29791, + "mutability": "mutable", + "name": "amountETHMin", + "nameLocation": "4143:12:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4138:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29790, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4138:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29793, + "mutability": "mutable", + "name": "to", + "nameLocation": "4174:2:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4166:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29792, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4166:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29795, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4192:8:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4187:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29794, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4187:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29797, + "mutability": "mutable", + "name": "approveMax", + "nameLocation": "4216:10:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4211:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29796, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4211:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29799, + "mutability": "mutable", + "name": "v", + "nameLocation": "4234:1:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4228:7:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 29798, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "4228:5:25", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29801, + "mutability": "mutable", + "name": "r", + "nameLocation": "4245:1:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4237:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29800, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4237:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29803, + "mutability": "mutable", + "name": "s", + "nameLocation": "4256:1:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4248:9:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 29802, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4248:7:25", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4048:216:25" + }, + "returnParameters": { + "id": 29807, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29806, + "mutability": "mutable", + "name": "amountETH", + "nameLocation": "4288:9:25", + "nodeType": "VariableDeclaration", + "scope": 29808, + "src": "4283:14:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29805, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4283:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4282:16:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29822, + "nodeType": "FunctionDefinition", + "src": "4307:210:25", + "functionSelector": "5c11d795", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForTokensSupportingFeeOnTransferTokens", + "nameLocation": "4316:53:25", + "parameters": { + "id": 29820, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29810, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "4385:8:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4380:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29809, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4380:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29812, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "4409:12:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4404:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29811, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4404:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29815, + "mutability": "mutable", + "name": "path", + "nameLocation": "4451:4:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4432:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29813, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4432:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29814, + "nodeType": "ArrayTypeName", + "src": "4432:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29817, + "mutability": "mutable", + "name": "to", + "nameLocation": "4474:2:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4466:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29816, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4466:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29819, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4492:8:25", + "nodeType": "VariableDeclaration", + "scope": 29822, + "src": "4487:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29818, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4487:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4369:138:25" + }, + "returnParameters": { + "id": 29821, + "nodeType": "ParameterList", + "parameters": [], + "src": "4516:0:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29834, + "nodeType": "FunctionDefinition", + "src": "4523:191:25", + "functionSelector": "b6f9de95", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactETHForTokensSupportingFeeOnTransferTokens", + "nameLocation": "4532:50:25", + "parameters": { + "id": 29832, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29824, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "4598:12:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4593:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29823, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4593:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29827, + "mutability": "mutable", + "name": "path", + "nameLocation": "4640:4:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4621:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29825, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4621:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29826, + "nodeType": "ArrayTypeName", + "src": "4621:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29829, + "mutability": "mutable", + "name": "to", + "nameLocation": "4663:2:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4655:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29828, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4655:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29831, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4681:8:25", + "nodeType": "VariableDeclaration", + "scope": 29834, + "src": "4676:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29830, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4676:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4582:114:25" + }, + "returnParameters": { + "id": 29833, + "nodeType": "ParameterList", + "parameters": [], + "src": "4713:0:25" + }, + "scope": 29849, + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "id": 29848, + "nodeType": "FunctionDefinition", + "src": "4720:207:25", + "functionSelector": "791ac947", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "swapExactTokensForETHSupportingFeeOnTransferTokens", + "nameLocation": "4729:50:25", + "parameters": { + "id": 29846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29836, + "mutability": "mutable", + "name": "amountIn", + "nameLocation": "4795:8:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4790:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29835, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4790:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29838, + "mutability": "mutable", + "name": "amountOutMin", + "nameLocation": "4819:12:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4814:17:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29837, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4814:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29841, + "mutability": "mutable", + "name": "path", + "nameLocation": "4861:4:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4842:23:25", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 29839, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4842:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 29840, + "nodeType": "ArrayTypeName", + "src": "4842:9:25", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29843, + "mutability": "mutable", + "name": "to", + "nameLocation": "4884:2:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4876:10:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29842, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4876:7:25", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29845, + "mutability": "mutable", + "name": "deadline", + "nameLocation": "4902:8:25", + "nodeType": "VariableDeclaration", + "scope": 29848, + "src": "4897:13:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29844, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4897:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4779:138:25" + }, + "returnParameters": { + "id": 29847, + "nodeType": "ParameterList", + "parameters": [], + "src": "4926:0:25" + }, + "scope": 29849, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 29765, + "name": "IUniswapV2Router01", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29764, + "src": "3700:18:25" + }, + "id": 29766, + "nodeType": "InheritanceSpecifier", + "src": "3700:18:25" + } + ], + "canonicalName": "IUniswapV2Router02", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29849, + 29764 + ], + "name": "IUniswapV2Router02", + "nameLocation": "3678:18:25", + "scope": 29850, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 25 +} \ No newline at end of file diff --git a/out/InterfacesAggregated.sol/ITreasury.json b/out/InterfacesAggregated.sol/ITreasury.json new file mode 100644 index 0000000..40e8a63 --- /dev/null +++ b/out/InterfacesAggregated.sol/ITreasury.json @@ -0,0 +1,345 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "amt", + "type": "uint256" + } + ], + "name": "updateTaxesAccrued", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "updateTaxesAccrued(uint256)": "755965b8" + }, + "ast": { + "absolutePath": "src/interfaces/InterfacesAggregated.sol", + "id": 29874, + "exportedSymbols": { + "ITreasury": [ + 29867 + ], + "IUniswapV2Factory": [ + 29861 + ], + "IVesting": [ + 29873 + ] + }, + "nodeType": "SourceUnit", + "src": "46:332:26", + "nodes": [ + { + "id": 29851, + "nodeType": "PragmaDirective", + "src": "46:23:26", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29861, + "nodeType": "ContractDefinition", + "src": "73:122:26", + "nodes": [ + { + "id": 29860, + "nodeType": "FunctionDefinition", + "src": "108:84:26", + "functionSelector": "c9c65396", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "createPair", + "nameLocation": "117:10:26", + "parameters": { + "id": 29856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29853, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "136:6:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "128:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "128:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29855, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "152:6:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "144:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29854, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "144:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "127:32:26" + }, + "returnParameters": { + "id": 29859, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29858, + "mutability": "mutable", + "name": "pair", + "nameLocation": "186:4:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "178:12:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29857, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "178:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "177:14:26" + }, + "scope": 29861, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IUniswapV2Factory", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29861 + ], + "name": "IUniswapV2Factory", + "nameLocation": "83:17:26", + "scope": 29874, + "usedErrors": [] + }, + { + "id": 29867, + "nodeType": "ContractDefinition", + "src": "199:77:26", + "nodes": [ + { + "id": 29866, + "nodeType": "FunctionDefinition", + "src": "226:47:26", + "functionSelector": "755965b8", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "updateTaxesAccrued", + "nameLocation": "235:18:26", + "parameters": { + "id": 29864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29863, + "mutability": "mutable", + "name": "amt", + "nameLocation": "259:3:26", + "nodeType": "VariableDeclaration", + "scope": 29866, + "src": "254:8:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29862, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "254:4:26", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "253:10:26" + }, + "returnParameters": { + "id": 29865, + "nodeType": "ParameterList", + "parameters": [], + "src": "272:0:26" + }, + "scope": 29867, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "ITreasury", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29867 + ], + "name": "ITreasury", + "nameLocation": "209:9:26", + "scope": 29874, + "usedErrors": [] + }, + { + "id": 29873, + "nodeType": "ContractDefinition", + "src": "280:98:26", + "nodes": [ + { + "id": 29872, + "nodeType": "FunctionDefinition", + "src": "306:69:26", + "functionSelector": "08ac7624", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAllVestedTokens", + "nameLocation": "315:18:26", + "parameters": { + "id": 29868, + "nodeType": "ParameterList", + "parameters": [], + "src": "333:2:26" + }, + "returnParameters": { + "id": 29871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29870, + "mutability": "mutable", + "name": "amount", + "nameLocation": "367:6:26", + "nodeType": "VariableDeclaration", + "scope": 29872, + "src": "359:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "359:7:26", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "358:16:26" + }, + "scope": 29873, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IVesting", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29873 + ], + "name": "IVesting", + "nameLocation": "290:8:26", + "scope": 29874, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 26 +} \ No newline at end of file diff --git a/out/InterfacesAggregated.sol/IUniswapV2Factory.json b/out/InterfacesAggregated.sol/IUniswapV2Factory.json new file mode 100644 index 0000000..5dffdf8 --- /dev/null +++ b/out/InterfacesAggregated.sol/IUniswapV2Factory.json @@ -0,0 +1,356 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + } + ], + "name": "createPair", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "createPair(address,address)": "c9c65396" + }, + "ast": { + "absolutePath": "src/interfaces/InterfacesAggregated.sol", + "id": 29874, + "exportedSymbols": { + "ITreasury": [ + 29867 + ], + "IUniswapV2Factory": [ + 29861 + ], + "IVesting": [ + 29873 + ] + }, + "nodeType": "SourceUnit", + "src": "46:332:26", + "nodes": [ + { + "id": 29851, + "nodeType": "PragmaDirective", + "src": "46:23:26", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29861, + "nodeType": "ContractDefinition", + "src": "73:122:26", + "nodes": [ + { + "id": 29860, + "nodeType": "FunctionDefinition", + "src": "108:84:26", + "functionSelector": "c9c65396", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "createPair", + "nameLocation": "117:10:26", + "parameters": { + "id": 29856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29853, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "136:6:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "128:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "128:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29855, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "152:6:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "144:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29854, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "144:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "127:32:26" + }, + "returnParameters": { + "id": 29859, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29858, + "mutability": "mutable", + "name": "pair", + "nameLocation": "186:4:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "178:12:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29857, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "178:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "177:14:26" + }, + "scope": 29861, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IUniswapV2Factory", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29861 + ], + "name": "IUniswapV2Factory", + "nameLocation": "83:17:26", + "scope": 29874, + "usedErrors": [] + }, + { + "id": 29867, + "nodeType": "ContractDefinition", + "src": "199:77:26", + "nodes": [ + { + "id": 29866, + "nodeType": "FunctionDefinition", + "src": "226:47:26", + "functionSelector": "755965b8", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "updateTaxesAccrued", + "nameLocation": "235:18:26", + "parameters": { + "id": 29864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29863, + "mutability": "mutable", + "name": "amt", + "nameLocation": "259:3:26", + "nodeType": "VariableDeclaration", + "scope": 29866, + "src": "254:8:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29862, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "254:4:26", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "253:10:26" + }, + "returnParameters": { + "id": 29865, + "nodeType": "ParameterList", + "parameters": [], + "src": "272:0:26" + }, + "scope": 29867, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "ITreasury", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29867 + ], + "name": "ITreasury", + "nameLocation": "209:9:26", + "scope": 29874, + "usedErrors": [] + }, + { + "id": 29873, + "nodeType": "ContractDefinition", + "src": "280:98:26", + "nodes": [ + { + "id": 29872, + "nodeType": "FunctionDefinition", + "src": "306:69:26", + "functionSelector": "08ac7624", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAllVestedTokens", + "nameLocation": "315:18:26", + "parameters": { + "id": 29868, + "nodeType": "ParameterList", + "parameters": [], + "src": "333:2:26" + }, + "returnParameters": { + "id": 29871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29870, + "mutability": "mutable", + "name": "amount", + "nameLocation": "367:6:26", + "nodeType": "VariableDeclaration", + "scope": 29872, + "src": "359:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "359:7:26", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "358:16:26" + }, + "scope": 29873, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IVesting", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29873 + ], + "name": "IVesting", + "nameLocation": "290:8:26", + "scope": 29874, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 26 +} \ No newline at end of file diff --git a/out/InterfacesAggregated.sol/IVesting.json b/out/InterfacesAggregated.sol/IVesting.json new file mode 100644 index 0000000..a5d8fa6 --- /dev/null +++ b/out/InterfacesAggregated.sol/IVesting.json @@ -0,0 +1,345 @@ +{ + "abi": [ + { + "inputs": [], + "name": "getAllVestedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "getAllVestedTokens()": "08ac7624" + }, + "ast": { + "absolutePath": "src/interfaces/InterfacesAggregated.sol", + "id": 29874, + "exportedSymbols": { + "ITreasury": [ + 29867 + ], + "IUniswapV2Factory": [ + 29861 + ], + "IVesting": [ + 29873 + ] + }, + "nodeType": "SourceUnit", + "src": "46:332:26", + "nodes": [ + { + "id": 29851, + "nodeType": "PragmaDirective", + "src": "46:23:26", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 29861, + "nodeType": "ContractDefinition", + "src": "73:122:26", + "nodes": [ + { + "id": 29860, + "nodeType": "FunctionDefinition", + "src": "108:84:26", + "functionSelector": "c9c65396", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "createPair", + "nameLocation": "117:10:26", + "parameters": { + "id": 29856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29853, + "mutability": "mutable", + "name": "tokenA", + "nameLocation": "136:6:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "128:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "128:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29855, + "mutability": "mutable", + "name": "tokenB", + "nameLocation": "152:6:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "144:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29854, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "144:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "127:32:26" + }, + "returnParameters": { + "id": 29859, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29858, + "mutability": "mutable", + "name": "pair", + "nameLocation": "186:4:26", + "nodeType": "VariableDeclaration", + "scope": 29860, + "src": "178:12:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29857, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "178:7:26", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "177:14:26" + }, + "scope": 29861, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IUniswapV2Factory", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29861 + ], + "name": "IUniswapV2Factory", + "nameLocation": "83:17:26", + "scope": 29874, + "usedErrors": [] + }, + { + "id": 29867, + "nodeType": "ContractDefinition", + "src": "199:77:26", + "nodes": [ + { + "id": 29866, + "nodeType": "FunctionDefinition", + "src": "226:47:26", + "functionSelector": "755965b8", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "updateTaxesAccrued", + "nameLocation": "235:18:26", + "parameters": { + "id": 29864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29863, + "mutability": "mutable", + "name": "amt", + "nameLocation": "259:3:26", + "nodeType": "VariableDeclaration", + "scope": 29866, + "src": "254:8:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29862, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "254:4:26", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "253:10:26" + }, + "returnParameters": { + "id": 29865, + "nodeType": "ParameterList", + "parameters": [], + "src": "272:0:26" + }, + "scope": 29867, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "ITreasury", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29867 + ], + "name": "ITreasury", + "nameLocation": "209:9:26", + "scope": 29874, + "usedErrors": [] + }, + { + "id": 29873, + "nodeType": "ContractDefinition", + "src": "280:98:26", + "nodes": [ + { + "id": 29872, + "nodeType": "FunctionDefinition", + "src": "306:69:26", + "functionSelector": "08ac7624", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getAllVestedTokens", + "nameLocation": "315:18:26", + "parameters": { + "id": 29868, + "nodeType": "ParameterList", + "parameters": [], + "src": "333:2:26" + }, + "returnParameters": { + "id": 29871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29870, + "mutability": "mutable", + "name": "amount", + "nameLocation": "367:6:26", + "nodeType": "VariableDeclaration", + "scope": 29872, + "src": "359:14:26", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "359:7:26", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "358:16:26" + }, + "scope": 29873, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "IVesting", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 29873 + ], + "name": "IVesting", + "nameLocation": "290:8:26", + "scope": 29874, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 26 +} \ No newline at end of file diff --git a/out/MainDeployment.t.sol/MainDeploymentTest.json b/out/MainDeployment.t.sol/MainDeploymentTest.json new file mode 100644 index 0000000..8f37502 --- /dev/null +++ b/out/MainDeployment.t.sol/MainDeploymentTest.json @@ -0,0 +1,6869 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "Debug", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "Debug", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + }, + { + "indexed": false, + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "name": "Debug", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "Debug", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "log_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "log_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "log_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "name": "log_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "val", + "type": "address" + } + ], + "name": "log_named_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "val", + "type": "bytes" + } + ], + "name": "log_named_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "val", + "type": "bytes32" + } + ], + "name": "log_named_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + } + ], + "name": "log_named_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "val", + "type": "string" + } + ], + "name": "log_named_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + } + ], + "name": "log_named_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "log_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "logs", + "type": "event" + }, + { + "inputs": [], + "name": "CL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "DL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "FL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "INTEREST_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "LATEFEE_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "LL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "PREMIUM_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "SL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "nonZero", + "type": "bool" + } + ], + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "createActors", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "symbol", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amt", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setUp", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setUpTokens", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "test_mainDeploymentTest_claim", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "test_mainDeploymentTest_init_state", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "expectedDiff", + "type": "uint256" + } + ], + "name": "withinDiff", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accuracy", + "type": "uint256" + } + ], + "name": "withinPrecision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b031990911617905561894e806100596000396000f3fe60806040523480156200001157600080fd5b5060043610620001455760003560e01c80638c38922f11620000bb578063c060c5f3116200007a578063c060c5f31462000247578063c5ba73ed146200025e578063e70dd6cf1462000267578063eea962101462000270578063fa7626d4146200027a57600080fd5b80638c38922f14620002065780639f71f14a146200020f578063b8dae58b1462000218578063b967b5a71462000222578063ba414fa6146200022c57600080fd5b80633493f4ca11620001085780633493f4ca14620001ae57806338505fb014620001b75780636c676a6014620001c05780637a8fe3c014620001e65780637ed9db5914620001ef57600080fd5b80630a831a15146200014a5780630a9254e41462000156578063174a5be4146200016057806330f7c5c31462000180578063344b14781462000197575b600080fd5b6200015462000288565b005b620001546200082a565b62000169600181565b60405160ff90911681526020015b60405180910390f35b62000154620001913660046200201a565b620009b6565b62000154620001a83660046200201a565b62000b2c565b62000169600b81565b62000169600281565b620001d7620001d136600462002059565b62000c3c565b60405190815260200162000177565b62000169600c81565b6200015462000200366004620020b3565b62000c9a565b62000169600a81565b62000169600481565b6200015462000e69565b62000154620016ae565b6200023662001794565b604051901515815260200162000177565b620001d7620002583660046200201a565b620018c9565b62000169600381565b62000169600081565b62000154620018da565b600054620002369060ff1681565b601954604080516318160ddd60e01b815290516200030e926001600160a01b0316916318160ddd9160048083019260209291908290030181865afa158015620002d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fb9190620020ee565b6b033b2e3c9fd0803ce800000062001b33565b6019546040516370a0823160e01b81523060048201526200035a916001600160a01b0316906370a0823190602401602060405180830381865afa158015620002d5573d6000803e3d6000fd5b6019546018546040516370a0823160e01b81526001600160a01b039182166004820152620003dd9291909116906370a08231906024015b602060405180830381865afa158015620003af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d59190620020ee565b600062001b33565b60195460408051638da5cb5b60e01b8152905162000457926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa1580156200042a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000450919062002108565b3062001c0c565b601954604080516311318fbb60e21b81529051620004dc926001600160a01b0316916344c63eec9160048083019260209291908290030181865afa158015620004a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004ca919062002108565b6018546001600160a01b031662001c0c565b601954604080516311318fbb60e21b81529051620005cb926001600160a01b031691639b19251a9183916344c63eec9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000557919062002108565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015b602060405180830381865afa1580156200059d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005c391906200212f565b600162001d06565b601954604051634d8c928d60e11b81526001600160a01b03909116600482018190526200060191639b19251a906024016200057f565b60195460408051638da5cb5b60e01b8152905162000656926001600160a01b031691639b19251a918391638da5cb5b9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b601854604080516385d4cad360e01b81529051620006db926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620006a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006c9919062002108565b6019546001600160a01b031662001c0c565b6018546040805163f02c6d8f60e01b8152905162000728926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa158015620003af573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b81529051620007a3926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200079b91906200212f565b600062001d06565b60185460408051638da5cb5b60e01b8152905162000828926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015620007f0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000816919062002108565b6002546001600160a01b031662001c0c565b565b62000834620016ae565b6200083e620018da565b633b9aca006012633b9aca0080604051620008599062001ff0565b93845260c060208501819052600a908501526950726f7665205a65726f60b01b60e0850152610100604085018190526005908501526450524f564560d81b61012085015260ff9092166060840152608083015260a082015261014001604051809103906000f080158015620008d2573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b0392831690811790915560025460405191921690620009079062001ffe565b6001600160a01b03928316815291166020820152604001604051809103906000f0801580156200093b573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b03928316908117909155601954604051631bdbfcef60e21b8152600481019290925290911690636f6ff3bc90602401600060405180830381600087803b1580156200099b57600080fd5b505af1158015620009b0573d6000803e3d6000fd5b50505050565b6000828411620009d257620009cc848462002165565b620009de565b620009de838562002165565b905080600003620009ef5750505050565b60008415620009ff578462000a01565b835b9050600062000a1284600a6200227e565b62000a2a906b033b2e3c9fd0803ce8000000620022a2565b8262000a436b033b2e3c9fd0803ce800000086620022b9565b62000a4f9190620022a2565b1090508062000b2457604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b6080820152602081018690529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528660405162000aea9190620022db565b60405180910390a1600080516020620088f98339815191528560405162000b12919062002314565b60405180910390a162000b2462001e7d565b505050505050565b600082841162000b485762000b42848462002165565b62000b54565b62000b54838562002165565b9050818111158062000c3557604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e63652000000000000000006080820152602081018590529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528560405162000bfb9190620022db565b60405180910390a1600080516020620088f98339815191528460405162000c23919062002314565b60405180910390a162000c3562001e7d565b5050505050565b60008415801562000c4b575081155b1562000c5a5750600062000c92565b83830362000c6a57508162000c92565b8362000c77818562002165565b62000c8390876200233f565b62000c8f919062002356565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562000cff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d259190620020ee565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb90859060600160405160208183030381529060405280519060200120878562000d7d919062002356565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801562000dcc57600080fd5b505af115801562000de1573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000b249350861691506370a0823190602401602060405180830381865afa15801562000e31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e579190620020ee565b62000e63868462002356565b62001b33565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015269d3c21bcecceda10000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562000ecd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ef391906200212f565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562000f4e57600080fd5b505af115801562000f63573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b03928316600482015290821660248201526044810186905291169250636c4f94dc91506064016020604051808303816000875af115801562000fc8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fee91906200212f565b62000ffd5762000ffd62002371565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200104c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200107291906200212f565b62001081576200108162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620010bd9291909116906370a082319060240162000391565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200110c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200113291906200212f565b62001141576200114162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620011d69291909116906370a0823190602401602060405180830381865afa15801562001195573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011bb9190620020ee565b6064620011ca84600c620022b9565b62000e639190620022a2565b620011e46224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001233573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200125991906200212f565b62001268576200126862002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620012f19291909116906370a0823190602401602060405180830381865afa158015620012bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012e29190620020ee565b6064620011ca846014620022b9565b620012ff6224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200134e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200137491906200212f565b62001383576200138362002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200140c9291909116906370a0823190602401602060405180830381865afa158015620013d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013fd9190620020ee565b6064620011ca84601c620022b9565b6200141a626ebe0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001469573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200148f91906200212f565b6200149e576200149e62002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620015279291909116906370a0823190602401602060405180830381865afa158015620014f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015189190620020ee565b6064620011ca846034620022b9565b6200153562dd7c0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001584573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015aa91906200212f565b620015b957620015b962002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200163a9291909116906370a0823190602401602060405180830381865afa1580156200160d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016339190620020ee565b8262001b33565b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200169957600080fd5b505af115801562000c35573d6000803e3d6000fd5b604051620016bc906200200c565b604051809103906000f080158015620016d9573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405162001708906200200c565b604051809103906000f08015801562001725573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405162001754906200200c565b604051809103906000f08015801562001771573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff1615620017b55750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15620018c45760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b8284015282518083038401815260608301909352600092909162001846917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001620023b6565b60408051601f19818403018152908290526200186291620023e9565b6000604051808303816000865af19150503d8060008114620018a1576040519150601f19603f3d011682016040523d82523d6000602084013e620018a6565b606091505b5091505080806020019051810190620018c091906200212f565b9150505b919050565b600062000c92848484600062000c3c565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b80821462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001ba69060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a1600080516020620088f98339815191528160405162001bce9190620022db565b60405180910390a1600080516020620088f98339815191528260405162001bf6919062002314565b60405180910390a162001c0862001e7d565b5050565b806001600160a01b0316826001600160a01b03161462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001c949060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8160405162001ccd919062002407565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8260405162001bf691906200244c565b8015158215151462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001d7d9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838162001dd0576040518060400160405280600581526020016466616c736560d81b81525062001dee565b604051806040016040528060048152602001637472756560e01b8152505b60405162001dfd9190620024a5565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838262001e50576040518060400160405280600581526020016466616c736560d81b81525062001e6e565b604051806040016040528060048152602001637472756560e01b8152505b60405162001bf69190620024e4565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1562001f7f5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f198184030181529082905262001f1a9291602001620023b6565b60408051601f198184030181529082905262001f3691620023e9565b6000604051808303816000865af19150503d806000811462001f75576040519150601f19603f3d011682016040523d82523d6000602084013e62001f7a565b606091505b505050505b6000805461ff001916610100179055565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0262001fb6834262002356565b6040518263ffffffff1660e01b815260040162001fd591815260200190565b600060405180830381600087803b1580156200169957600080fd5b614499806200251083390190565b61196d80620069a983390190565b6105e3806200831683390190565b6000806000606084860312156200203057600080fd5b505081359360208301359350604090920135919050565b80151581146200205657600080fd5b50565b600080600080608085870312156200207057600080fd5b8435935060208501359250604085013591506060850135620020928162002047565b939692955090935050565b6001600160a01b03811681146200205657600080fd5b600080600060608486031215620020c957600080fd5b833592506020840135620020dd816200209d565b929592945050506040919091013590565b6000602082840312156200210157600080fd5b5051919050565b6000602082840312156200211b57600080fd5b815162002128816200209d565b9392505050565b6000602082840312156200214257600080fd5b8151620021288162002047565b634e487b7160e01b600052601160045260246000fd5b6000828210156200217a576200217a6200214f565b500390565b600181815b80851115620021c0578160001904821115620021a457620021a46200214f565b80851615620021b257918102915b93841c939080029062002184565b509250929050565b600082620021d95750600162002278565b81620021e85750600062002278565b81600181146200220157600281146200220c576200222c565b600191505062002278565b60ff8411156200222057620022206200214f565b50506001821b62002278565b5060208310610133831016604e8410600b841016171562002251575081810a62002278565b6200225d83836200217f565b80600019048211156200227457620022746200214f565b0290505b92915050565b6000620021288383620021c8565b634e487b7160e01b600052601260045260246000fd5b600082620022b457620022b46200228c565b500490565b6000816000190483118215151615620022d657620022d66200214f565b500290565b6040815260006200230660408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200230660408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000826200235157620023516200228c565b500690565b600082198211156200236c576200236c6200214f565b500190565b634e487b7160e01b600052600160045260246000fd5b60005b83811015620023a45781810151838201526020016200238a565b83811115620009b05750506000910152565b6001600160e01b0319831681528151600090620023db81600485016020870162002387565b919091016004019392505050565b60008251620023fd81846020870162002387565b9190910192915050565b6040815260006200243260408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200243260408301600a815269080808081058dd1d585b60b21b602082015260400190565b600081518084526200249181602086016020860162002387565b601f01601f19169290920160200192915050565b604081526000620024d060408301600a8152690808115e1c1958dd195960b21b602082015260400190565b828103602084015262000c92818562002477565b604081526000620024d060408301600a815269080808081058dd1d585b60b21b60208201526040019056fe60a06040526011805460ff191690553480156200001b57600080fd5b5060405162004499380380620044998339810160408190526200003e91620005fc565b848460036200004e83826200072c565b5060046200005d82826200072c565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a6200090b565b6200011190876200091c565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200093e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200093e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200093e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a6200090b565b620002f190836200091c565b600e5560055460ff166200030790600a6200090b565b6200031390826200091c565b600f5560055460ff166200032990600a6200090b565b620003369060016200091c565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a6200090b565b6200040290896200091c565b62000414565b5050505050506200098b565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000970565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b83821115620005f25760008385830101525b9695505050505050565b60008060008060008060c087890312156200061657600080fd5b865160208801519096506001600160401b03808211156200063657600080fd5b620006448a838b0162000545565b965060408901519150808211156200065b57600080fd5b506200066a89828a0162000545565b945050606087015160ff811681146200068257600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006b357607f821691505b602082108103620006d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620007035750805b601f850160051c820191505b8181101562000724578281556001016200070f565b505050505050565b81516001600160401b038111156200074857620007486200052f565b62000760816200075984546200069e565b84620006da565b602080601f8311600181146200079857600084156200077f5750858301515b600019600386901b1c1916600185901b17855562000724565b600085815260208120601f198616915b82811015620007c957888601518255948401946001909101908401620007a8565b5085821015620007e85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200084f578160001904821115620008335762000833620007f8565b808516156200084157918102915b93841c939080029062000813565b509250929050565b600082620008685750600162000529565b81620008775750600062000529565b81600181146200089057600281146200089b57620008bb565b600191505062000529565b60ff841115620008af57620008af620007f8565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008e0575081810a62000529565b620008ec83836200080e565b8060001904821115620009035762000903620007f8565b029392505050565b60006200052660ff84168362000857565b6000816000190483118215151615620009395762000939620007f8565b500290565b6000602082840312156200095157600080fd5b81516001600160a01b03811681146200096957600080fd5b9392505050565b60008219821115620009865762000986620007f8565b500190565b608051613aeb620009ae600039600081816107e20152611c890152613aeb6000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f003360a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220bc03a64286b04608fb74648281473dd9f7d839206dc1cb5360a14ad859ffbfc664736f6c634300080f0033", + "sourceMap": "306:3680:25:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;306:3680:25;;;;;;;;;-1:-1:-1;3122:37:26;3086:77;;;-1:-1:-1;;;;;;3086:77:26;;;;;;306:3680:25;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x60806040523480156200001157600080fd5b5060043610620001455760003560e01c80638c38922f11620000bb578063c060c5f3116200007a578063c060c5f31462000247578063c5ba73ed146200025e578063e70dd6cf1462000267578063eea962101462000270578063fa7626d4146200027a57600080fd5b80638c38922f14620002065780639f71f14a146200020f578063b8dae58b1462000218578063b967b5a71462000222578063ba414fa6146200022c57600080fd5b80633493f4ca11620001085780633493f4ca14620001ae57806338505fb014620001b75780636c676a6014620001c05780637a8fe3c014620001e65780637ed9db5914620001ef57600080fd5b80630a831a15146200014a5780630a9254e41462000156578063174a5be4146200016057806330f7c5c31462000180578063344b14781462000197575b600080fd5b6200015462000288565b005b620001546200082a565b62000169600181565b60405160ff90911681526020015b60405180910390f35b62000154620001913660046200201a565b620009b6565b62000154620001a83660046200201a565b62000b2c565b62000169600b81565b62000169600281565b620001d7620001d136600462002059565b62000c3c565b60405190815260200162000177565b62000169600c81565b6200015462000200366004620020b3565b62000c9a565b62000169600a81565b62000169600481565b6200015462000e69565b62000154620016ae565b6200023662001794565b604051901515815260200162000177565b620001d7620002583660046200201a565b620018c9565b62000169600381565b62000169600081565b62000154620018da565b600054620002369060ff1681565b601954604080516318160ddd60e01b815290516200030e926001600160a01b0316916318160ddd9160048083019260209291908290030181865afa158015620002d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fb9190620020ee565b6b033b2e3c9fd0803ce800000062001b33565b6019546040516370a0823160e01b81523060048201526200035a916001600160a01b0316906370a0823190602401602060405180830381865afa158015620002d5573d6000803e3d6000fd5b6019546018546040516370a0823160e01b81526001600160a01b039182166004820152620003dd9291909116906370a08231906024015b602060405180830381865afa158015620003af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d59190620020ee565b600062001b33565b60195460408051638da5cb5b60e01b8152905162000457926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa1580156200042a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000450919062002108565b3062001c0c565b601954604080516311318fbb60e21b81529051620004dc926001600160a01b0316916344c63eec9160048083019260209291908290030181865afa158015620004a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004ca919062002108565b6018546001600160a01b031662001c0c565b601954604080516311318fbb60e21b81529051620005cb926001600160a01b031691639b19251a9183916344c63eec9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000557919062002108565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015b602060405180830381865afa1580156200059d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005c391906200212f565b600162001d06565b601954604051634d8c928d60e11b81526001600160a01b03909116600482018190526200060191639b19251a906024016200057f565b60195460408051638da5cb5b60e01b8152905162000656926001600160a01b031691639b19251a918391638da5cb5b9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b601854604080516385d4cad360e01b81529051620006db926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620006a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006c9919062002108565b6019546001600160a01b031662001c0c565b6018546040805163f02c6d8f60e01b8152905162000728926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa158015620003af573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b81529051620007a3926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200079b91906200212f565b600062001d06565b60185460408051638da5cb5b60e01b8152905162000828926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015620007f0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000816919062002108565b6002546001600160a01b031662001c0c565b565b62000834620016ae565b6200083e620018da565b633b9aca006012633b9aca0080604051620008599062001ff0565b93845260c060208501819052600a908501526950726f7665205a65726f60b01b60e0850152610100604085018190526005908501526450524f564560d81b61012085015260ff9092166060840152608083015260a082015261014001604051809103906000f080158015620008d2573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b0392831690811790915560025460405191921690620009079062001ffe565b6001600160a01b03928316815291166020820152604001604051809103906000f0801580156200093b573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b03928316908117909155601954604051631bdbfcef60e21b8152600481019290925290911690636f6ff3bc90602401600060405180830381600087803b1580156200099b57600080fd5b505af1158015620009b0573d6000803e3d6000fd5b50505050565b6000828411620009d257620009cc848462002165565b620009de565b620009de838562002165565b905080600003620009ef5750505050565b60008415620009ff578462000a01565b835b9050600062000a1284600a6200227e565b62000a2a906b033b2e3c9fd0803ce8000000620022a2565b8262000a436b033b2e3c9fd0803ce800000086620022b9565b62000a4f9190620022a2565b1090508062000b2457604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b6080820152602081018690529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528660405162000aea9190620022db565b60405180910390a1600080516020620088f98339815191528560405162000b12919062002314565b60405180910390a162000b2462001e7d565b505050505050565b600082841162000b485762000b42848462002165565b62000b54565b62000b54838562002165565b9050818111158062000c3557604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e63652000000000000000006080820152602081018590529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528560405162000bfb9190620022db565b60405180910390a1600080516020620088f98339815191528460405162000c23919062002314565b60405180910390a162000c3562001e7d565b5050505050565b60008415801562000c4b575081155b1562000c5a5750600062000c92565b83830362000c6a57508162000c92565b8362000c77818562002165565b62000c8390876200233f565b62000c8f919062002356565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562000cff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d259190620020ee565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb90859060600160405160208183030381529060405280519060200120878562000d7d919062002356565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801562000dcc57600080fd5b505af115801562000de1573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000b249350861691506370a0823190602401602060405180830381865afa15801562000e31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e579190620020ee565b62000e63868462002356565b62001b33565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015269d3c21bcecceda10000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562000ecd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ef391906200212f565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562000f4e57600080fd5b505af115801562000f63573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b03928316600482015290821660248201526044810186905291169250636c4f94dc91506064016020604051808303816000875af115801562000fc8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fee91906200212f565b62000ffd5762000ffd62002371565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200104c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200107291906200212f565b62001081576200108162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620010bd9291909116906370a082319060240162000391565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200110c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200113291906200212f565b62001141576200114162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620011d69291909116906370a0823190602401602060405180830381865afa15801562001195573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011bb9190620020ee565b6064620011ca84600c620022b9565b62000e639190620022a2565b620011e46224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001233573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200125991906200212f565b62001268576200126862002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620012f19291909116906370a0823190602401602060405180830381865afa158015620012bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012e29190620020ee565b6064620011ca846014620022b9565b620012ff6224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200134e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200137491906200212f565b62001383576200138362002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200140c9291909116906370a0823190602401602060405180830381865afa158015620013d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013fd9190620020ee565b6064620011ca84601c620022b9565b6200141a626ebe0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001469573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200148f91906200212f565b6200149e576200149e62002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620015279291909116906370a0823190602401602060405180830381865afa158015620014f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015189190620020ee565b6064620011ca846034620022b9565b6200153562dd7c0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001584573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015aa91906200212f565b620015b957620015b962002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200163a9291909116906370a0823190602401602060405180830381865afa1580156200160d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016339190620020ee565b8262001b33565b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200169957600080fd5b505af115801562000c35573d6000803e3d6000fd5b604051620016bc906200200c565b604051809103906000f080158015620016d9573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405162001708906200200c565b604051809103906000f08015801562001725573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405162001754906200200c565b604051809103906000f08015801562001771573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff1615620017b55750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15620018c45760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b8284015282518083038401815260608301909352600092909162001846917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001620023b6565b60408051601f19818403018152908290526200186291620023e9565b6000604051808303816000865af19150503d8060008114620018a1576040519150601f19603f3d011682016040523d82523d6000602084013e620018a6565b606091505b5091505080806020019051810190620018c091906200212f565b9150505b919050565b600062000c92848484600062000c3c565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b80821462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001ba69060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a1600080516020620088f98339815191528160405162001bce9190620022db565b60405180910390a1600080516020620088f98339815191528260405162001bf6919062002314565b60405180910390a162001c0862001e7d565b5050565b806001600160a01b0316826001600160a01b03161462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001c949060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8160405162001ccd919062002407565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8260405162001bf691906200244c565b8015158215151462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001d7d9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838162001dd0576040518060400160405280600581526020016466616c736560d81b81525062001dee565b604051806040016040528060048152602001637472756560e01b8152505b60405162001dfd9190620024a5565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838262001e50576040518060400160405280600581526020016466616c736560d81b81525062001e6e565b604051806040016040528060048152602001637472756560e01b8152505b60405162001bf69190620024e4565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1562001f7f5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f198184030181529082905262001f1a9291602001620023b6565b60408051601f198184030181529082905262001f3691620023e9565b6000604051808303816000865af19150503d806000811462001f75576040519150601f19603f3d011682016040523d82523d6000602084013e62001f7a565b606091505b505050505b6000805461ff001916610100179055565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0262001fb6834262002356565b6040518263ffffffff1660e01b815260040162001fd591815260200190565b600060405180830381600087803b1580156200169957600080fd5b614499806200251083390190565b61196d80620069a983390190565b6105e3806200831683390190565b6000806000606084860312156200203057600080fd5b505081359360208301359350604090920135919050565b80151581146200205657600080fd5b50565b600080600080608085870312156200207057600080fd5b8435935060208501359250604085013591506060850135620020928162002047565b939692955090935050565b6001600160a01b03811681146200205657600080fd5b600080600060608486031215620020c957600080fd5b833592506020840135620020dd816200209d565b929592945050506040919091013590565b6000602082840312156200210157600080fd5b5051919050565b6000602082840312156200211b57600080fd5b815162002128816200209d565b9392505050565b6000602082840312156200214257600080fd5b8151620021288162002047565b634e487b7160e01b600052601160045260246000fd5b6000828210156200217a576200217a6200214f565b500390565b600181815b80851115620021c0578160001904821115620021a457620021a46200214f565b80851615620021b257918102915b93841c939080029062002184565b509250929050565b600082620021d95750600162002278565b81620021e85750600062002278565b81600181146200220157600281146200220c576200222c565b600191505062002278565b60ff8411156200222057620022206200214f565b50506001821b62002278565b5060208310610133831016604e8410600b841016171562002251575081810a62002278565b6200225d83836200217f565b80600019048211156200227457620022746200214f565b0290505b92915050565b6000620021288383620021c8565b634e487b7160e01b600052601260045260246000fd5b600082620022b457620022b46200228c565b500490565b6000816000190483118215151615620022d657620022d66200214f565b500290565b6040815260006200230660408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200230660408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000826200235157620023516200228c565b500690565b600082198211156200236c576200236c6200214f565b500190565b634e487b7160e01b600052600160045260246000fd5b60005b83811015620023a45781810151838201526020016200238a565b83811115620009b05750506000910152565b6001600160e01b0319831681528151600090620023db81600485016020870162002387565b919091016004019392505050565b60008251620023fd81846020870162002387565b9190910192915050565b6040815260006200243260408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200243260408301600a815269080808081058dd1d585b60b21b602082015260400190565b600081518084526200249181602086016020860162002387565b601f01601f19169290920160200192915050565b604081526000620024d060408301600a8152690808115e1c1958dd195960b21b602082015260400190565b828103602084015262000c92818562002477565b604081526000620024d060408301600a815269080808081058dd1d585b60b21b60208201526040019056fe60a06040526011805460ff191690553480156200001b57600080fd5b5060405162004499380380620044998339810160408190526200003e91620005fc565b848460036200004e83826200072c565b5060046200005d82826200072c565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a6200090b565b6200011190876200091c565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200093e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200093e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200093e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a6200090b565b620002f190836200091c565b600e5560055460ff166200030790600a6200090b565b6200031390826200091c565b600f5560055460ff166200032990600a6200090b565b620003369060016200091c565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a6200090b565b6200040290896200091c565b62000414565b5050505050506200098b565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000970565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b83821115620005f25760008385830101525b9695505050505050565b60008060008060008060c087890312156200061657600080fd5b865160208801519096506001600160401b03808211156200063657600080fd5b620006448a838b0162000545565b965060408901519150808211156200065b57600080fd5b506200066a89828a0162000545565b945050606087015160ff811681146200068257600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006b357607f821691505b602082108103620006d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620007035750805b601f850160051c820191505b8181101562000724578281556001016200070f565b505050505050565b81516001600160401b038111156200074857620007486200052f565b62000760816200075984546200069e565b84620006da565b602080601f8311600181146200079857600084156200077f5750858301515b600019600386901b1c1916600185901b17855562000724565b600085815260208120601f198616915b82811015620007c957888601518255948401946001909101908401620007a8565b5085821015620007e85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200084f578160001904821115620008335762000833620007f8565b808516156200084157918102915b93841c939080029062000813565b509250929050565b600082620008685750600162000529565b81620008775750600062000529565b81600181146200089057600281146200089b57620008bb565b600191505062000529565b60ff841115620008af57620008af620007f8565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008e0575081810a62000529565b620008ec83836200080e565b8060001904821115620009035762000903620007f8565b029392505050565b60006200052660ff84168362000857565b6000816000190483118215151615620009395762000939620007f8565b500290565b6000602082840312156200095157600080fd5b81516001600160a01b03811681146200096957600080fd5b9392505050565b60008219821115620009865762000986620007f8565b500190565b608051613aeb620009ae600039600081816107e20152611c890152613aeb6000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f003360a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220bc03a64286b04608fb74648281473dd9f7d839206dc1cb5360a14ad859ffbfc664736f6c634300080f0033", + "sourceMap": "306:3680:25:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1375:828;;;:::i;:::-;;432:907;;;:::i;1745:36:26:-;;1780:1;1745:36;;;;;186:4:27;174:17;;;156:36;;144:2;129:18;1745:36:26;;;;;;;;4740:583;;;;;;:::i;:::-;;:::i;5374:479::-;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;6028:291;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:27;;;1232:2;1217:18;6028:291:26;1098:177:27;2262:45:26;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;2092:45::-;;2135:2;2092:45;;2005:36;;2040:1;2005:36;;2256:1725:25;;;:::i;3312:184:26:-;;;:::i;1819:584:0:-;;;:::i;:::-;;;1969:14:27;;1962:22;1944:41;;1932:2;1917:18;1819:584:0;1804:187:27;5861:159:26;;;;;;:::i;:::-;;:::i;1916:36::-;;1951:1;1916:36;;1655;;1690:1;1655:36;;3620:551;;;:::i;1572:26:0:-;;;;;;;;;1375:828:25;1448:10;;:24;;;-1:-1:-1;;;1448:24:25;;;;1439:59;;-1:-1:-1;;;;;1448:10:25;;:22;;:24;;;;;;;;;;;;;;:10;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1478:19;1439:8;:59::i;:::-;1518:10;;:35;;-1:-1:-1;;;1518:35:25;;1547:4;1518:35;;;2331:51:27;1509:69:25;;-1:-1:-1;;;;;1518:10:25;;:20;;2304:18:27;;1518:35:25;;;;;;;;;;;;;;;;;;;;;;1509:69;1598:10;;1627:7;;1598:38;;-1:-1:-1;;;1598:38:25;;-1:-1:-1;;;;;1627:7:25;;;1598:38;;;2331:51:27;1589::25;;1598:10;;;;;:20;;2304:18:27;;1598:38:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1638:1;1589:8;:51::i;:::-;1660:10;;:18;;;-1:-1:-1;;;1660:18:25;;;;1651:46;;-1:-1:-1;;;;;1660:10:25;;:16;;:18;;;;;;;;;;;;;;:10;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1691:4;1651:8;:46::i;:::-;1717:10;;:20;;;-1:-1:-1;;;1717:20:25;;;;1708:49;;-1:-1:-1;;;;;1717:10:25;;:18;;:20;;;;;;;;;;;;;;:10;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1748:7;;-1:-1:-1;;;;;1748:7:25;1708:8;:49::i;:::-;1777:10;;1798:20;;;-1:-1:-1;;;1798:20:25;;;;1768:60;;-1:-1:-1;;;;;1777:10:25;;:20;;:10;;1798:18;;:20;;;;;;;;;;;;;;1777:10;1798:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1777:42;;-1:-1:-1;;;;;;1777:42:25;;;;;;;-1:-1:-1;;;;;2349:32:27;;;1777:42:25;;;2331:51:27;2304:18;;1777:42:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1823:4;1768:8;:60::i;:::-;1848:10;;:41;;-1:-1:-1;;;1848:41:25;;-1:-1:-1;;;;;1848:10:25;;;:41;;;2331:51:27;;;1839:60:25;;1848:20;;2304:18:27;;1848:41:25;2185:203:27;1839:60:25;1919:10;;1940:18;;;-1:-1:-1;;;1940:18:25;;;;1910:60;;-1:-1:-1;;;;;1919:10:25;;:20;;:10;;1940:16;;:18;;;;;;;;;;;;;;1919:10;1940:18;;;;;;;;;;;;;;1910:60;1992:7;;:20;;;-1:-1:-1;;;1992:20:25;;;;1983:57;;-1:-1:-1;;;;;1992:7:25;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2028:10;;-1:-1:-1;;;;;2028:10:25;1983:8;:57::i;:::-;2060:7;;:26;;;-1:-1:-1;;;2060:26:25;;;;2051:39;;-1:-1:-1;;;;;2060:7:25;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;2051:39;2110:7;;:24;;;-1:-1:-1;;;2110:24:25;;;;2101:43;;-1:-1:-1;;;;;2110:7:25;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2138:5;2101:8;:43::i;:::-;2164:7;;:15;;;-1:-1:-1;;;2164:15:25;;;;2155:40;;-1:-1:-1;;;;;2164:7:25;;:13;;:15;;;;;;;;;;;;;;:7;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2190:3;;-1:-1:-1;;;;;2190:3:25;2155:8;:40::i;:::-;1375:828::o;432:907::-;467:14;:12;:14::i;:::-;492:13;:11;:13::i;:::-;700;860:2;917:13;970;673:352;;;;;:::i;:::-;3354:25:27;;;3415:3;3410:2;3395:18;;3388:31;;;3456:2;3435:19;;;3428:31;-1:-1:-1;;;3490:3:27;3475:19;;3468:41;3528:3;3562:2;3547:18;;3540:30;;;3606:1;3586:18;;;3579:29;-1:-1:-1;;;3639:3:27;3624:19;;3617:36;3737:4;3725:17;;;3720:2;3705:18;;3698:45;-1:-1:-1;3759:19:27;;3752:35;-1:-1:-1;3803:19:27;;3796:35;3685:3;3670:19;673:352:25;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;660:10:25;:365;;-1:-1:-1;;;;;;660:365:25;-1:-1:-1;;;;;660:365:25;;;;;;;;;1214:3;;1144:85;;660:365;;1214:3;;1144:85;;;:::i;:::-;-1:-1:-1;;;;;4072:15:27;;;4054:34;;4124:15;;4119:2;4104:18;;4097:43;4004:2;3989:18;1144:85:25;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1134:7:25;:95;;-1:-1:-1;;;;;;1134:95:25;-1:-1:-1;;;;;1134:95:25;;;;;;;;;1292:10;;:39;;-1:-1:-1;;;1292:39:25;;;;;2331:51:27;;;;1292:10:25;;;;:21;;2304:18:27;;1292:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;432:907::o;4740:583:26:-;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:26;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;6429:21:27;;;6486:2;6466:18;;;6459:30;6525:34;6520:2;6505:18;;6498:62;-1:-1:-1;;;6591:3:27;6576:19;;6569:51;6687:4;6672:20;;6665:36;;;5095:80:26;;-1:-1:-1;;;;;;;;;;;5095:80:26;;;;6652:3:27;5095:80:26;;;-1:-1:-1;;;;;;;;;;;5224:4:26;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:26;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:26;;;;;5585:261;;5617:88;;;7958:21:27;;;8015:2;7995:18;;;7988:30;8054:34;8049:2;8034:18;;8027:62;8126:26;8120:3;8105:19;;8098:55;8220:4;8205:20;;8198:36;;;5617:88:26;;-1:-1:-1;;;;;;;;;;;5617:88:26;;;;8185:3:27;5617:88:26;;;-1:-1:-1;;;;;;;;;;;5754:4:26;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:26;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;6028:291::-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:26;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:26;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:26;;-1:-1:-1;;;;;2349:32:27;;;4404:31:26;;;2331:51:27;;;;4314:19:26;;;4360;;4314;;4404:22;;2304:18:27;;4404:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;;-1:-1:-1;;;;;8687:32:27;;;4502:25:26;;;8669:51:27;8736:18;;;8729:34;;;4390:45:26;;-1:-1:-1;4448:4:26;;;;;;:10;;4473:4;;8642:18:27;;4502:25:26;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;;;;;-1:-1:-1;;;;;;4448:139:26;;;-1:-1:-1;;;;;8994:32:27;;;4448:139:26;;;8976:51:27;9043:18;;;9036:34;;;;9086:18;;;9079:34;8949:18;;4448:139:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:26;;-1:-1:-1;;;4609:31:26;;-1:-1:-1;;;;;2349:32:27;;;4609:31:26;;;2331:51:27;4600:52:26;;-1:-1:-1;4609:22:26;;;-1:-1:-1;4609:22:26;;2304:18:27;;4609:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;:::-;4600:8;:52::i;2256:1725:25:-;2358:10;;2386:7;;2358:46;;-1:-1:-1;;;2358:46:25;;-1:-1:-1;;;;;2386:7:25;;;2358:46;;;8669:51:27;2330:15:25;8736:18:27;;;8729:34;;;2330:15:25;2358:10;;;;;:19;;8642:18:27;;2358:46:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2473:3:25;;2451:27;;-1:-1:-1;;;2451:27:25;;-1:-1:-1;;;;;2473:3:25;;;2451:27;;;2331:51:27;2451:13:25;;;;2304:18:27;;2451:27:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2529:3:25;;2557:7;;2575:3;;2529:60;;-1:-1:-1;;;2529:60:25;;-1:-1:-1;;;;;2557:7:25;;;2529:60;;;9364:34:27;2575:3:25;;;9414:18:27;;;9407:43;9466:18;;;9459:34;;;2529:3:25;;;-1:-1:-1;2529:19:25;;-1:-1:-1;9299:18:27;;2529:60:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2522:68;;;;:::i;:::-;2636:3;;2666:7;;2636:39;;-1:-1:-1;;;2636:39:25;;-1:-1:-1;;;;;2666:7:25;;;2636:39;;;2331:51:27;2636:3:25;;;:21;;2304:18:27;;2636:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2629:47;;;;:::i;:::-;2726:10;;2755:3;;2726:34;;-1:-1:-1;;;2726:34:25;;-1:-1:-1;;;;;2755:3:25;;;2726:34;;;2331:51:27;2717:47:25;;2726:10;;;;;:20;;2304:18:27;;2726:34:25;2185:203:27;2717:47:25;2823:3;;2845:7;;2823:31;;-1:-1:-1;;;2823:31:25;;-1:-1:-1;;;;;2845:7:25;;;2823:31;;;2331:51:27;2823:3:25;;;:13;;2304:18:27;;2823:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2816:39;;;;:::i;:::-;2906:10;;2935:3;;2906:34;;-1:-1:-1;;;2906:34:25;;-1:-1:-1;;;;;2935:3:25;;;2906:34;;;2331:51:27;2897:64:25;;2906:10;;;;;:20;;2304:18:27;;2906:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2957:3;2942:12;:7;2952:2;2942:12;:::i;:::-;:18;;;;:::i;2897:64::-;2999:13;3004:7;2999:4;:13::i;:::-;3071:3;;3093:7;;3071:31;;-1:-1:-1;;;3071:31:25;;-1:-1:-1;;;;;3093:7:25;;;3071:31;;;2331:51:27;3071:3:25;;;:13;;2304:18:27;;3071:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3064:39;;;;:::i;:::-;3154:10;;3183:3;;3154:34;;-1:-1:-1;;;3154:34:25;;-1:-1:-1;;;;;3183:3:25;;;3154:34;;;2331:51:27;3145:64:25;;3154:10;;;;;:20;;2304:18:27;;3154:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3205:3;3190:12;:7;3200:2;3190:12;:::i;3145:64::-;3247:13;3252:7;3247:4;:13::i;:::-;3319:3;;3341:7;;3319:31;;-1:-1:-1;;;3319:31:25;;-1:-1:-1;;;;;3341:7:25;;;3319:31;;;2331:51:27;3319:3:25;;;:13;;2304:18:27;;3319:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3312:39;;;;:::i;:::-;3402:10;;3431:3;;3402:34;;-1:-1:-1;;;3402:34:25;;-1:-1:-1;;;;;3431:3:25;;;3402:34;;;2331:51:27;3393:64:25;;3402:10;;;;;:20;;2304:18:27;;3402:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3453:3;3438:12;:7;3448:2;3438:12;:::i;3393:64::-;3496:14;3501:8;3496:4;:14::i;:::-;3569:3;;3591:7;;3569:31;;-1:-1:-1;;;3569:31:25;;-1:-1:-1;;;;;3591:7:25;;;3569:31;;;2331:51:27;3569:3:25;;;:13;;2304:18:27;;3569:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3562:39;;;;:::i;:::-;3652:10;;3681:3;;3652:34;;-1:-1:-1;;;3652:34:25;;-1:-1:-1;;;;;3681:3:25;;;3652:34;;;2331:51:27;3643:64:25;;3652:10;;;;;:20;;2304:18:27;;3652:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3703:3;3688:12;:7;3698:2;3688:12;:::i;3643:64::-;3746:14;3751:8;3746:4;:14::i;:::-;3819:3;;3841:7;;3819:31;;-1:-1:-1;;;3819:31:25;;-1:-1:-1;;;;;3841:7:25;;;3819:31;;;2331:51:27;3819:3:25;;;:13;;2304:18:27;;3819:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3812:39;;;;:::i;:::-;3902:10;;3931:3;;3902:34;;-1:-1:-1;;;3902:34:25;;-1:-1:-1;;;;;3931:3:25;;;3902:34;;;2331:51:27;3893:53:25;;3902:10;;;;;:20;;2304:18:27;;3902:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3938:7;3893:8;:53::i;:::-;317:28:1;309:37;;-1:-1:-1;;;;;3959:12:25;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3312:184:26;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:26;:17;;-1:-1:-1;;;;;;3354:17:26;-1:-1:-1;;;;;3354:17:26;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:26;:17;;-1:-1:-1;;;;;;3395:17:26;-1:-1:-1;;;;;3395:17:26;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:26;:17;;-1:-1:-1;;;;;;3462:17:26;-1:-1:-1;;;;;3462:17:26;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;8669:51:27;;;-1:-1:-1;;;8736:18:27;;;8729:34;2196:43:0;;;;;;;;;8642:18:27;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:26:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;3620:551::-;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:26;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:26;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551::o;5202:262:0:-;5264:1;5259;:6;5255:203;;5286:41;;;;;11035:2:27;11017:21;;;11074:2;11054:18;;;11047:30;11113:34;11108:2;11093:18;;11086:62;-1:-1:-1;;;11179:2:27;11164:18;;11157:32;11221:3;11206:19;;10833:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;:::-;;;;;;;;5441:6;:4;:6::i;:::-;5202:262;;:::o;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:0;:1;-1:-1:-1;;;;;3678:6:0;;3674:212;;3705:44;;;;;11438:2:27;11420:21;;;11477:2;11457:18;;;11450:30;11516:34;11511:2;11496:18;;11489:62;-1:-1:-1;;;11582:2:27;11567:18;;11560:35;11627:3;11612:19;;11236:401;3705:44:0;;;;;;;;3768:34;3800:1;3768:34;;;;;;:::i;:::-;;;;;;;;3821;3853:1;3821:34;;;;;;:::i;789:312:2:-;859:1;854:6;;:1;:6;;;850:245;;881:41;;;;;12602:2:27;12584:21;;;12641:2;12621:18;;;12614:30;12680:34;12675:2;12660:18;;12653:62;-1:-1:-1;;;12746:2:27;12731:18;;12724:32;12788:3;12773:19;;12400:398;881:41:2;;;;;;;;941:52;972:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;941:52;;;;;;:::i;:::-;;;;;;;;1012;1043:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;1012:52;;;;;;:::i;2410:424:0:-;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;8976:51:27;;;-1:-1:-1;;;9043:18:27;;;9036:34;;;;2705:4:0;9086:18:27;;;9079:34;2482:11:0;;1671:64;2579:43;;8949:18:27;;2645:67:0;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;17530:93:4:-;17585:7;;17593:22;17611:4;17593:15;:22;:::i;:::-;17585:31;;;;;;;;;;;;;1244:25:27;;1232:2;1217:18;;1098:177;17585:31:4;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;203:316:27:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:27;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:27;494:18;;;481:32;;203:316;-1:-1:-1;203:316:27:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;576:60;524:118;:::o;647:446::-;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:27;;-1:-1:-1;;647:446:27:o;1280:131::-;-1:-1:-1;;;;;1355:31:27;;1345:42;;1335:70;;1401:1;1398;1391:12;1416:383;1493:6;1501;1509;1562:2;1550:9;1541:7;1537:23;1533:32;1530:52;;;1578:1;1575;1568:12;1530:52;1614:9;1601:23;1591:33;;1674:2;1663:9;1659:18;1646:32;1687:31;1712:5;1687:31;:::i;:::-;1416:383;;1737:5;;-1:-1:-1;;;1789:2:27;1774:18;;;;1761:32;;1416:383::o;1996:184::-;2066:6;2119:2;2107:9;2098:7;2094:23;2090:32;2087:52;;;2135:1;2132;2125:12;2087:52;-1:-1:-1;2158:16:27;;1996:184;-1:-1:-1;1996:184:27:o;2393:251::-;2463:6;2516:2;2504:9;2495:7;2491:23;2487:32;2484:52;;;2532:1;2529;2522:12;2484:52;2564:9;2558:16;2583:31;2608:5;2583:31;:::i;:::-;2633:5;2393:251;-1:-1:-1;;;2393:251:27:o;2649:245::-;2716:6;2769:2;2757:9;2748:7;2744:23;2740:32;2737:52;;;2785:1;2782;2775:12;2737:52;2817:9;2811:16;2836:28;2858:5;2836:28;:::i;4151:127::-;4212:10;4207:3;4203:20;4200:1;4193:31;4243:4;4240:1;4233:15;4267:4;4264:1;4257:15;4283:125;4323:4;4351:1;4348;4345:8;4342:34;;;4356:18;;:::i;:::-;-1:-1:-1;4393:9:27;;4283:125::o;4413:422::-;4502:1;4545:5;4502:1;4559:270;4580:7;4570:8;4567:21;4559:270;;;4639:4;4635:1;4631:6;4627:17;4621:4;4618:27;4615:53;;;4648:18;;:::i;:::-;4698:7;4688:8;4684:22;4681:55;;;4718:16;;;;4681:55;4797:22;;;;4757:15;;;;4559:270;;;4563:3;4413:422;;;;;:::o;4840:806::-;4889:5;4919:8;4909:80;;-1:-1:-1;4960:1:27;4974:5;;4909:80;5008:4;4998:76;;-1:-1:-1;5045:1:27;5059:5;;4998:76;5090:4;5108:1;5103:59;;;;5176:1;5171:130;;;;5083:218;;5103:59;5133:1;5124:10;;5147:5;;;5171:130;5208:3;5198:8;5195:17;5192:43;;;5215:18;;:::i;:::-;-1:-1:-1;;5271:1:27;5257:16;;5286:5;;5083:218;;5385:2;5375:8;5372:16;5366:3;5360:4;5357:13;5353:36;5347:2;5337:8;5334:16;5329:2;5323:4;5320:12;5316:35;5313:77;5310:159;;;-1:-1:-1;5422:19:27;;;5454:5;;5310:159;5501:34;5526:8;5520:4;5501:34;:::i;:::-;5571:6;5567:1;5563:6;5559:19;5550:7;5547:32;5544:58;;;5582:18;;:::i;:::-;5620:20;;-1:-1:-1;4840:806:27;;;;;:::o;5651:131::-;5711:5;5740:36;5767:8;5761:4;5740:36;:::i;5787:127::-;5848:10;5843:3;5839:20;5836:1;5829:31;5879:4;5876:1;5869:15;5903:4;5900:1;5893:15;5919:120;5959:1;5985;5975:35;;5990:18;;:::i;:::-;-1:-1:-1;6024:9:27;;5919:120::o;6044:168::-;6084:7;6150:1;6146;6142:6;6138:14;6135:1;6132:21;6127:1;6120:9;6113:17;6109:45;6106:71;;;6157:18;;:::i;:::-;-1:-1:-1;6197:9:27;;6044:168::o;6876:348::-;7106:2;7095:9;7088:21;7069:4;7126:49;7171:2;7160:9;7156:18;6789:2;6777:15;;-1:-1:-1;;;6817:4:27;6808:14;;6801:36;6862:2;6853:12;;6712:159;7126:49;7118:57;;7211:6;7206:2;7195:9;7191:18;7184:34;6876:348;;;;:::o;7393:::-;7623:2;7612:9;7605:21;7586:4;7643:49;7688:2;7677:9;7673:18;7306:2;7294:15;;-1:-1:-1;;;7334:4:27;7325:14;;7318:36;7379:2;7370:12;;7229:159;8245:112;8277:1;8303;8293:35;;8308:18;;:::i;:::-;-1:-1:-1;8342:9:27;;8245:112::o;8362:128::-;8402:3;8433:1;8429:6;8426:1;8423:13;8420:39;;;8439:18;;:::i;:::-;-1:-1:-1;8475:9:27;;8362:128::o;9504:127::-;9565:10;9560:3;9556:20;9553:1;9546:31;9596:4;9593:1;9586:15;9620:4;9617:1;9610:15;9915:258;9987:1;9997:113;10011:6;10008:1;10005:13;9997:113;;;10087:11;;;10081:18;10068:11;;;10061:39;10033:2;10026:10;9997:113;;;10128:6;10125:1;10122:13;10119:48;;;-1:-1:-1;;10163:1:27;10145:16;;10138:27;9915:258::o;10178:371::-;-1:-1:-1;;;;;;10363:33:27;;10351:46;;10420:13;;10333:3;;10442:61;10420:13;10492:1;10483:11;;10476:4;10464:17;;10442:61;:::i;:::-;10523:16;;;;10541:1;10519:24;;10178:371;-1:-1:-1;;;10178:371:27:o;10554:274::-;10683:3;10721:6;10715:13;10737:53;10783:6;10778:3;10771:4;10763:6;10759:17;10737:53;:::i;:::-;10806:16;;;;;10554:274;-1:-1:-1;;10554:274:27:o;11642:374::-;11872:2;11861:9;11854:21;11835:4;11892:49;11937:2;11926:9;11922:18;6789:2;6777:15;;-1:-1:-1;;;6817:4:27;6808:14;;6801:36;6862:2;6853:12;;6712:159;11892:49;-1:-1:-1;;;;;11977:32:27;;;;11972:2;11957:18;;;;11950:60;;;;-1:-1:-1;11884:57:27;11642:374::o;12021:::-;12251:2;12240:9;12233:21;12214:4;12271:49;12316:2;12305:9;12301:18;7306:2;7294:15;;-1:-1:-1;;;7334:4:27;7325:14;;7318:36;7379:2;7370:12;;7229:159;12803:258;12845:3;12883:5;12877:12;12910:6;12905:3;12898:19;12926:63;12982:6;12975:4;12970:3;12966:14;12959:4;12952:5;12948:16;12926:63;:::i;:::-;13043:2;13022:15;-1:-1:-1;;13018:29:27;13009:39;;;;13050:4;13005:50;;12803:258;-1:-1:-1;;12803:258:27:o;13066:440::-;13316:2;13305:9;13298:21;13279:4;13342:49;13387:2;13376:9;13372:18;6789:2;6777:15;;-1:-1:-1;;;6817:4:27;6808:14;;6801:36;6862:2;6853:12;;6712:159;13342:49;13439:9;13431:6;13427:22;13422:2;13411:9;13407:18;13400:50;13467:33;13493:6;13485;13467:33;:::i;13511:440::-;13761:2;13750:9;13743:21;13724:4;13787:49;13832:2;13821:9;13817:18;7306:2;7294:15;;-1:-1:-1;;;7334:4:27;7325:14;;7318:36;7379:2;7370:12;;7229:159", + "linkReferences": {} + }, + "methodIdentifiers": { + "CL_FACTORY()": "e70dd6cf", + "DL_FACTORY()": "174a5be4", + "FL_FACTORY()": "38505fb0", + "INTEREST_CALC_TYPE()": "8c38922f", + "IS_TEST()": "fa7626d4", + "LATEFEE_CALC_TYPE()": "3493f4ca", + "LL_FACTORY()": "c5ba73ed", + "PREMIUM_CALC_TYPE()": "7a8fe3c0", + "SL_FACTORY()": "9f71f14a", + "constrictToRange(uint256,uint256,uint256)": "c060c5f3", + "constrictToRange(uint256,uint256,uint256,bool)": "6c676a60", + "createActors()": "b967b5a7", + "failed()": "ba414fa6", + "mint(bytes32,address,uint256)": "7ed9db59", + "setUp()": "0a9254e4", + "setUpTokens()": "eea96210", + "test_mainDeploymentTest_claim()": "b8dae58b", + "test_mainDeploymentTest_init_state()": "0a831a15", + "withinDiff(uint256,uint256,uint256)": "344b1478", + "withinPrecision(uint256,uint256,uint256)": "30f7c5c3" + }, + "ast": { + "absolutePath": "test/MainDeployment.t.sol", + "id": 30165, + "exportedSymbols": { + "Actor": [ + 29769 + ], + "DSTest": [ + 1786 + ], + "Hevm": [ + 30183 + ], + "IERC20": [ + 29102 + ], + "MainDeploymentTest": [ + 30164 + ], + "StdAssertions": [ + 2671 + ], + "StdChains": [ + 3207 + ], + "StdCheats": [ + 5144 + ], + "StdStorage": [ + 6051 + ], + "StdUtils": [ + 8116 + ], + "TaxToken": [ + 26950 + ], + "Test": [ + 8158 + ], + "TestBase": [ + 1843 + ], + "Treasury": [ + 27439 + ], + "User": [ + 30191 + ], + "Utility": [ + 30714 + ], + "Vesting": [ + 28040 + ], + "Vm": [ + 9315 + ], + "console": [ + 17379 + ], + "console2": [ + 25475 + ], + "stdError": [ + 5210 + ], + "stdJson": [ + 5877 + ], + "stdMath": [ + 6019 + ], + "stdStorage": [ + 7485 + ] + }, + "nodeType": "SourceUnit", + "src": "40:3948:25", + "nodes": [ + { + "id": 29771, + "nodeType": "PragmaDirective", + "src": "40:24:25", + "literals": [ + "solidity", + "^", + "0.8", + ".13" + ] + }, + { + "id": 29772, + "nodeType": "ImportDirective", + "src": "68:39:25", + "absolutePath": "lib/forge-std/src/Test.sol", + "file": "../lib/forge-std/src/Test.sol", + "nameLocation": "-1:-1:-1", + "scope": 30165, + "sourceUnit": 8159, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 29773, + "nodeType": "ImportDirective", + "src": "109:23:25", + "absolutePath": "test/Utility.sol", + "file": "./Utility.sol", + "nameLocation": "-1:-1:-1", + "scope": 30165, + "sourceUnit": 30715, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 29775, + "nodeType": "ImportDirective", + "src": "158:47:25", + "absolutePath": "src/TaxToken.sol", + "file": "../src/TaxToken.sol", + "nameLocation": "-1:-1:-1", + "scope": 30165, + "sourceUnit": 26951, + "symbolAliases": [ + { + "foreign": { + "id": 29774, + "name": "TaxToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26950, + "src": "167:8:25", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 29777, + "nodeType": "ImportDirective", + "src": "207:47:25", + "absolutePath": "src/Treasury.sol", + "file": "../src/Treasury.sol", + "nameLocation": "-1:-1:-1", + "scope": 30165, + "sourceUnit": 27440, + "symbolAliases": [ + { + "foreign": { + "id": 29776, + "name": "Treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27439, + "src": "216:8:25", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 29779, + "nodeType": "ImportDirective", + "src": "256:46:25", + "absolutePath": "src/Vesting.sol", + "file": "../src/Vesting.sol", + "nameLocation": "-1:-1:-1", + "scope": 30165, + "sourceUnit": 28041, + "symbolAliases": [ + { + "foreign": { + "id": 29778, + "name": "Vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28040, + "src": "265:7:25", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 30164, + "nodeType": "ContractDefinition", + "src": "306:3680:25", + "nodes": [ + { + "id": 29786, + "nodeType": "VariableDeclaration", + "src": "358:15:25", + "constant": false, + "mutability": "mutable", + "name": "vesting", + "nameLocation": "366:7:25", + "scope": 30164, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + }, + "typeName": { + "id": 29785, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 29784, + "name": "Vesting", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28040, + "src": "358:7:25" + }, + "referencedDeclaration": 28040, + "src": "358:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "visibility": "internal" + }, + { + "id": 29789, + "nodeType": "VariableDeclaration", + "src": "380:19:25", + "constant": false, + "mutability": "mutable", + "name": "proveToken", + "nameLocation": "389:10:25", + "scope": 30164, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + }, + "typeName": { + "id": 29788, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 29787, + "name": "TaxToken", + "nodeType": "IdentifierPath", + "referencedDeclaration": 26950, + "src": "380:8:25" + }, + "referencedDeclaration": 26950, + "src": "380:8:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "visibility": "internal" + }, + { + "id": 29792, + "nodeType": "VariableDeclaration", + "src": "406:17:25", + "constant": false, + "mutability": "mutable", + "name": "treasury", + "nameLocation": "415:8:25", + "scope": 30164, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Treasury_$27439", + "typeString": "contract Treasury" + }, + "typeName": { + "id": 29791, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 29790, + "name": "Treasury", + "nodeType": "IdentifierPath", + "referencedDeclaration": 27439, + "src": "406:8:25" + }, + "referencedDeclaration": 27439, + "src": "406:8:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Treasury_$27439", + "typeString": "contract Treasury" + } + }, + "visibility": "internal" + }, + { + "id": 29839, + "nodeType": "FunctionDefinition", + "src": "432:907:25", + "body": { + "id": 29838, + "nodeType": "Block", + "src": "456:883:25", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 29795, + "name": "createActors", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30384, + "src": "467:12:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 29796, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "467:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29797, + "nodeType": "ExpressionStatement", + "src": "467:14:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 29798, + "name": "setUpTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30465, + "src": "492:11:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 29799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "492:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29800, + "nodeType": "ExpressionStatement", + "src": "492:13:25" + }, + { + "documentation": "@dev Don't need to set up token with treasury because vesting contract should be whitelisted.", + "expression": { + "id": 29812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 29801, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "660:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "315f3030305f3030305f303030", + "id": 29805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "700:13:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000_by_1", + "typeString": "int_const 1000000000" + }, + "value": "1_000_000_000" + }, + { + "hexValue": "50726f7665205a65726f", + "id": 29806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "760:12:25", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c900c516ee73216c64eade2cd8ccc2434cd50effa418041858134e4a85b424c1", + "typeString": "literal_string \"Prove Zero\"" + }, + "value": "Prove Zero" + }, + { + "hexValue": "50524f5645", + "id": 29807, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "809:7:25", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_249fb649834e62ac501a1d393552d419515bf75f4806119e8d601f8ad51d6f54", + "typeString": "literal_string \"PROVE\"" + }, + "value": "PROVE" + }, + { + "hexValue": "3138", + "id": 29808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "860:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + { + "hexValue": "315f3030305f3030305f303030", + "id": 29809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "917:13:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000_by_1", + "typeString": "int_const 1000000000" + }, + "value": "1_000_000_000" + }, + { + "hexValue": "315f3030305f3030305f303030", + "id": 29810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "970:13:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000_by_1", + "typeString": "int_const 1000000000" + }, + "value": "1_000_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1000000000_by_1", + "typeString": "int_const 1000000000" + }, + { + "typeIdentifier": "t_stringliteral_c900c516ee73216c64eade2cd8ccc2434cd50effa418041858134e4a85b424c1", + "typeString": "literal_string \"Prove Zero\"" + }, + { + "typeIdentifier": "t_stringliteral_249fb649834e62ac501a1d393552d419515bf75f4806119e8d601f8ad51d6f54", + "typeString": "literal_string \"PROVE\"" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + { + "typeIdentifier": "t_rational_1000000000_by_1", + "typeString": "int_const 1000000000" + }, + { + "typeIdentifier": "t_rational_1000000000_by_1", + "typeString": "int_const 1000000000" + } + ], + "id": 29804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "673:12:25", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_uint8_$_t_uint256_$_t_uint256_$returns$_t_contract$_TaxToken_$26950_$", + "typeString": "function (uint256,string memory,string memory,uint8,uint256,uint256) returns (contract TaxToken)" + }, + "typeName": { + "id": 29803, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 29802, + "name": "TaxToken", + "nodeType": "IdentifierPath", + "referencedDeclaration": 26950, + "src": "677:8:25" + }, + "referencedDeclaration": 26950, + "src": "677:8:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + } + }, + "id": 29811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "673:352:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "src": "660:365:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29813, + "nodeType": "ExpressionStatement", + "src": "660:365:25" + }, + { + "expression": { + "id": 29827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 29814, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "1134:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 29820, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1178:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + ], + "id": 29819, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1170:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29818, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1170:7:25", + "typeDescriptions": {} + } + }, + "id": 29821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1170:19:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 29824, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30202, + "src": "1214:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 29823, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1206:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29822, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1206:7:25", + "typeDescriptions": {} + } + }, + "id": 29825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1206:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 29817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "1144:11:25", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$_t_address_$returns$_t_contract$_Vesting_$28040_$", + "typeString": "function (address,address) returns (contract Vesting)" + }, + "typeName": { + "id": 29816, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 29815, + "name": "Vesting", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28040, + "src": "1148:7:25" + }, + "referencedDeclaration": 28040, + "src": "1148:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + }, + "id": 29826, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1144:85:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "src": "1134:95:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 29828, + "nodeType": "ExpressionStatement", + "src": "1134:95:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 29834, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "1322:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 29833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1314:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29832, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1314:7:25", + "typeDescriptions": {} + } + }, + "id": 29835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1314:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 29829, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1292:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setVesting", + "nodeType": "MemberAccess", + "referencedDeclaration": 26559, + "src": "1292:21:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 29836, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1292:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29837, + "nodeType": "ExpressionStatement", + "src": "1292:39:25" + } + ] + }, + "functionSelector": "0a9254e4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setUp", + "nameLocation": "441:5:25", + "parameters": { + "id": 29793, + "nodeType": "ParameterList", + "parameters": [], + "src": "446:2:25" + }, + "returnParameters": { + "id": 29794, + "nodeType": "ParameterList", + "parameters": [], + "src": "456:0:25" + }, + "scope": 30164, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 29957, + "nodeType": "FunctionDefinition", + "src": "1375:828:25", + "body": { + "id": 29956, + "nodeType": "Block", + "src": "1428:775:25", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29843, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1448:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "totalSupply", + "nodeType": "MemberAccess", + "referencedDeclaration": 28611, + "src": "1448:22:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", + "typeString": "function () view external returns (uint256)" + } + }, + "id": 29845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1448:24:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "315f3030305f3030305f303030", + "id": 29846, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1478:19:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000000" + }, + "value": "1_000_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000000" + } + ], + "id": 29842, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "1439:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 29847, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1439:59:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29848, + "nodeType": "ExpressionStatement", + "src": "1439:59:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 29854, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "1547:4:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeString": "contract MainDeploymentTest" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeString": "contract MainDeploymentTest" + } + ], + "id": 29853, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1539:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1539:7:25", + "typeDescriptions": {} + } + }, + "id": 29855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1539:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 29850, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1518:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "1518:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 29856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1518:35:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "315f3030305f3030305f303030", + "id": 29857, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1558:19:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000000" + }, + "value": "1_000_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000000" + } + ], + "id": 29849, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "1509:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 29858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1509:69:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29859, + "nodeType": "ExpressionStatement", + "src": "1509:69:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 29865, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "1627:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 29864, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1619:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29863, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1619:7:25", + "typeDescriptions": {} + } + }, + "id": 29866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1619:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 29861, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1598:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "1598:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 29867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1598:38:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 29868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1638:1:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 29860, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "1589:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 29869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1589:51:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29870, + "nodeType": "ExpressionStatement", + "src": "1589:51:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29872, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1660:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29873, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 28115, + "src": "1660:16:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 29874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1660:18:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 29877, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "1691:4:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeString": "contract MainDeploymentTest" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeString": "contract MainDeploymentTest" + } + ], + "id": 29876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1683:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29875, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1683:7:25", + "typeDescriptions": {} + } + }, + "id": 29878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1683:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 29871, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 320, + "src": "1651:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 29879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1651:46:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29880, + "nodeType": "ExpressionStatement", + "src": "1651:46:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29882, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1717:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "vesting", + "nodeType": "MemberAccess", + "referencedDeclaration": 25506, + "src": "1717:18:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 29884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1717:20:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 29887, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "1748:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 29886, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1740:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29885, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1740:7:25", + "typeDescriptions": {} + } + }, + "id": 29888, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1740:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 29881, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 320, + "src": "1708:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 29889, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1708:49:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29890, + "nodeType": "ExpressionStatement", + "src": "1708:49:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29894, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1798:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "vesting", + "nodeType": "MemberAccess", + "referencedDeclaration": 25506, + "src": "1798:18:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 29896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1798:20:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 29892, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1777:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "whitelist", + "nodeType": "MemberAccess", + "referencedDeclaration": 25534, + "src": "1777:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view external returns (bool)" + } + }, + "id": 29897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1777:42:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "74727565", + "id": 29898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1823:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 29891, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 1974, + "src": "1768:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 29899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1768:60:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29900, + "nodeType": "ExpressionStatement", + "src": "1768:60:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 29906, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1877:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + ], + "id": 29905, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1869:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29904, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1869:7:25", + "typeDescriptions": {} + } + }, + "id": 29907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1869:19:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 29902, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1848:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "whitelist", + "nodeType": "MemberAccess", + "referencedDeclaration": 25534, + "src": "1848:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view external returns (bool)" + } + }, + "id": 29908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1848:41:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "74727565", + "id": 29909, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1894:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 29901, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 1974, + "src": "1839:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 29910, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1839:60:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29911, + "nodeType": "ExpressionStatement", + "src": "1839:60:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29915, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1940:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 28115, + "src": "1940:16:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 29917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1940:18:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 29913, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "1919:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "whitelist", + "nodeType": "MemberAccess", + "referencedDeclaration": 25534, + "src": "1919:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view external returns (bool)" + } + }, + "id": 29918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1919:40:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "74727565", + "id": 29919, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1965:4:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 29912, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 1974, + "src": "1910:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 29920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1910:60:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29921, + "nodeType": "ExpressionStatement", + "src": "1910:60:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29923, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "1992:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 29924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "proveToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 27449, + "src": "1992:18:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 29925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1992:20:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 29928, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "2028:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + ], + "id": 29927, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2020:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29926, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2020:7:25", + "typeDescriptions": {} + } + }, + "id": 29929, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2020:19:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 29922, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 320, + "src": "1983:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 29930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1983:57:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29931, + "nodeType": "ExpressionStatement", + "src": "1983:57:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29933, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2060:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 29934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "vestingStartUnix", + "nodeType": "MemberAccess", + "referencedDeclaration": 27452, + "src": "2060:24:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", + "typeString": "function () view external returns (uint256)" + } + }, + "id": 29935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2060:26:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 29936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2088:1:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 29932, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "2051:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 29937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2051:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29938, + "nodeType": "ExpressionStatement", + "src": "2051:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29940, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2110:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 29941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "vestingEnabled", + "nodeType": "MemberAccess", + "referencedDeclaration": 27455, + "src": "2110:22:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_bool_$", + "typeString": "function () view external returns (bool)" + } + }, + "id": 29942, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2110:24:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "66616c7365", + "id": 29943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2138:5:25", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 29939, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 1974, + "src": "2101:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 29944, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2101:43:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29945, + "nodeType": "ExpressionStatement", + "src": "2101:43:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29947, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2164:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 29948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 28115, + "src": "2164:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 29949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2164:15:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 29952, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30202, + "src": "2190:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 29951, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2182:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29950, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2182:7:25", + "typeDescriptions": {} + } + }, + "id": 29953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2182:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 29946, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 320, + "src": "2155:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 29954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2155:40:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29955, + "nodeType": "ExpressionStatement", + "src": "2155:40:25" + } + ] + }, + "functionSelector": "0a831a15", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "test_mainDeploymentTest_init_state", + "nameLocation": "1384:34:25", + "parameters": { + "id": 29840, + "nodeType": "ParameterList", + "parameters": [], + "src": "1418:2:25" + }, + "returnParameters": { + "id": 29841, + "nodeType": "ParameterList", + "parameters": [], + "src": "1428:0:25" + }, + "scope": 30164, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 30163, + "nodeType": "FunctionDefinition", + "src": "2256:1725:25", + "body": { + "id": 30162, + "nodeType": "Block", + "src": "2304:1677:25", + "statements": [ + { + "assignments": [ + 29962 + ], + "declarations": [ + { + "constant": false, + "id": 29962, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "2320:7:25", + "nodeType": "VariableDeclaration", + "scope": 30162, + "src": "2315:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29961, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2315:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 29964, + "initialValue": { + "hexValue": "315f3030305f303030", + "id": 29963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2330:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2315:30:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 29970, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2386:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 29969, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2378:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29968, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2378:7:25", + "typeDescriptions": {} + } + }, + "id": 29971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2378:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 29972, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29962, + "src": "2396:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 29965, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "2358:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 29967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28646, + "src": "2358:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 29973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2358:46:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 29974, + "nodeType": "ExpressionStatement", + "src": "2358:46:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 29980, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "2473:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 29979, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2465:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29978, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2465:7:25", + "typeDescriptions": {} + } + }, + "id": 29981, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2465:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 29975, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "2451:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 29977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 9043, + "src": "2451:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 29982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2451:27:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29983, + "nodeType": "ExpressionStatement", + "src": "2451:27:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 29989, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2557:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 29988, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2549:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29987, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2549:7:25", + "typeDescriptions": {} + } + }, + "id": 29990, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2549:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 29993, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "2575:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 29992, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2567:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 29991, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2567:7:25", + "typeDescriptions": {} + } + }, + "id": 29994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2567:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 29995, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29962, + "src": "2581:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 29985, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30202, + "src": "2529:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 29986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "try_addInvestor", + "nodeType": "MemberAccess", + "referencedDeclaration": 29684, + "src": "2529:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 29996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2529:60:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 29984, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "2522:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 29997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2522:68:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29998, + "nodeType": "ExpressionStatement", + "src": "2522:68:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30004, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2666:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30003, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2658:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30002, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2658:7:25", + "typeDescriptions": {} + } + }, + "id": 30005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2658:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30000, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30202, + "src": "2636:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "try_enableVesting", + "nodeType": "MemberAccess", + "referencedDeclaration": 29622, + "src": "2636:21:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2636:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 29999, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "2629:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2629:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30008, + "nodeType": "ExpressionStatement", + "src": "2629:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30014, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "2755:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2747:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30012, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2747:7:25", + "typeDescriptions": {} + } + }, + "id": 30015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2747:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30010, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "2726:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "2726:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2726:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 30017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2762:1:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 30009, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "2717:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2717:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30019, + "nodeType": "ExpressionStatement", + "src": "2717:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30025, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2845:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30024, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2837:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30023, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2837:7:25", + "typeDescriptions": {} + } + }, + "id": 30026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2837:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30021, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "2823:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "2823:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30027, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2823:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30020, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "2816:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2816:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30029, + "nodeType": "ExpressionStatement", + "src": "2816:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30035, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "2935:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2927:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30033, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2927:7:25", + "typeDescriptions": {} + } + }, + "id": 30036, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2927:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30031, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "2906:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "2906:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2906:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30038, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29962, + "src": "2942:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3132", + "id": 30039, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2952:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_12_by_1", + "typeString": "int_const 12" + }, + "value": "12" + }, + "src": "2942:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30041, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2957:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "2942:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30030, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "2897:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2897:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30044, + "nodeType": "ExpressionStatement", + "src": "2897:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "34", + "id": 30046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3004:7:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + }, + "value": "4" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + } + ], + "id": 30045, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "2999:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30047, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2999:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30048, + "nodeType": "ExpressionStatement", + "src": "2999:13:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30054, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3093:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30053, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3085:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30052, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3085:7:25", + "typeDescriptions": {} + } + }, + "id": 30055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3085:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30050, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3071:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "3071:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3071:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30049, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "3064:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3064:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30058, + "nodeType": "ExpressionStatement", + "src": "3064:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30064, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3183:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30063, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3175:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30062, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3175:7:25", + "typeDescriptions": {} + } + }, + "id": 30065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3175:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30060, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "3154:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "3154:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3154:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30067, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29962, + "src": "3190:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3230", + "id": 30068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3200:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + }, + "src": "3190:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3205:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "3190:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30059, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "3145:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3145:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30073, + "nodeType": "ExpressionStatement", + "src": "3145:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "34", + "id": 30075, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3252:7:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + }, + "value": "4" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + } + ], + "id": 30074, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "3247:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3247:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30077, + "nodeType": "ExpressionStatement", + "src": "3247:13:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30083, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3341:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3333:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30081, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3333:7:25", + "typeDescriptions": {} + } + }, + "id": 30084, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3333:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30079, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3319:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "3319:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3319:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30078, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "3312:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3312:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30087, + "nodeType": "ExpressionStatement", + "src": "3312:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30093, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3431:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3423:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30091, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3423:7:25", + "typeDescriptions": {} + } + }, + "id": 30094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3423:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30089, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "3402:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "3402:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3402:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30096, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29962, + "src": "3438:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3238", + "id": 30097, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3448:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_28_by_1", + "typeString": "int_const 28" + }, + "value": "28" + }, + "src": "3438:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30099, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3453:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "3438:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30088, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "3393:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3393:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30102, + "nodeType": "ExpressionStatement", + "src": "3393:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3132", + "id": 30104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3501:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_7257600_by_1", + "typeString": "int_const 7257600" + }, + "value": "12" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_7257600_by_1", + "typeString": "int_const 7257600" + } + ], + "id": 30103, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "3496:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3496:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30106, + "nodeType": "ExpressionStatement", + "src": "3496:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30112, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3591:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30111, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3583:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30110, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3583:7:25", + "typeDescriptions": {} + } + }, + "id": 30113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3583:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30108, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3569:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "3569:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3569:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30107, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "3562:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3562:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30116, + "nodeType": "ExpressionStatement", + "src": "3562:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30122, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3681:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30121, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3673:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30120, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3673:7:25", + "typeDescriptions": {} + } + }, + "id": 30123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3673:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30118, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "3652:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "3652:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3652:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30125, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29962, + "src": "3688:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3532", + "id": 30126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3698:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_52_by_1", + "typeString": "int_const 52" + }, + "value": "52" + }, + "src": "3688:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30128, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3703:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "3688:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30117, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "3643:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3643:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30131, + "nodeType": "ExpressionStatement", + "src": "3643:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3234", + "id": 30133, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3751:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_14515200_by_1", + "typeString": "int_const 14515200" + }, + "value": "24" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_14515200_by_1", + "typeString": "int_const 14515200" + } + ], + "id": 30132, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "3746:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3746:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30135, + "nodeType": "ExpressionStatement", + "src": "3746:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30141, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3841:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3833:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30139, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3833:7:25", + "typeDescriptions": {} + } + }, + "id": 30142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3833:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30137, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3819:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "3819:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3819:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30136, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "3812:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3812:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30145, + "nodeType": "ExpressionStatement", + "src": "3812:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30151, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30205, + "src": "3931:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3923:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30149, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3923:7:25", + "typeDescriptions": {} + } + }, + "id": 30152, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3923:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30147, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "3902:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "3902:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3902:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 30154, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29962, + "src": "3938:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30146, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "3893:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3893:53:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30156, + "nodeType": "ExpressionStatement", + "src": "3893:53:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30157, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3959:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 9060, + "src": "3959:12:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3959:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30161, + "nodeType": "ExpressionStatement", + "src": "3959:14:25" + } + ] + }, + "documentation": { + "id": 29958, + "nodeType": "StructuredDocumentation", + "src": "2211:39:25", + "text": "@dev Verifies claim() state changes" + }, + "functionSelector": "b8dae58b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "test_mainDeploymentTest_claim", + "nameLocation": "2265:29:25", + "parameters": { + "id": 29959, + "nodeType": "ParameterList", + "parameters": [], + "src": "2294:2:25" + }, + "returnParameters": { + "id": 29960, + "nodeType": "ParameterList", + "parameters": [], + "src": "2304:0:25" + }, + "scope": 30164, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 29780, + "name": "Utility", + "nodeType": "IdentifierPath", + "referencedDeclaration": 30714, + "src": "337:7:25" + }, + "id": 29781, + "nodeType": "InheritanceSpecifier", + "src": "337:7:25" + }, + { + "baseName": { + "id": 29782, + "name": "Test", + "nodeType": "IdentifierPath", + "referencedDeclaration": 8158, + "src": "346:4:25" + }, + "id": 29783, + "nodeType": "InheritanceSpecifier", + "src": "346:4:25" + } + ], + "canonicalName": "MainDeploymentTest", + "contractDependencies": [ + 26950, + 28040, + 29769 + ], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 30164, + 8158, + 1843, + 1840, + 8116, + 5144, + 4755, + 3207, + 2671, + 30714, + 1786 + ], + "name": "MainDeploymentTest", + "nameLocation": "315:18:25", + "scope": 30165, + "usedErrors": [] + } + ], + "license": "UNLICENSED" + }, + "id": 25 +} \ No newline at end of file diff --git a/out/Ownable.sol/Ownable.json b/out/Ownable.sol/Ownable.json index 112fe09..79b8dfd 100644 --- a/out/Ownable.sol/Ownable.json +++ b/out/Ownable.sol/Ownable.json @@ -82,157 +82,24 @@ "renounceOwnership()": "715018a6", "transferOwnership(address)": "f2fde38b" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"lock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. By default, the owner account will be the one that deploys the contract. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/extensions/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "previousOwner", - "type": "address", - "indexed": true - }, - { - "internalType": "address", - "name": "newOwner", - "type": "address", - "indexed": true - } - ], - "type": "event", - "name": "OwnershipTransferred", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "time", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "lock" - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "renounceOwnership" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "transferOwnership" - } - ], - "devdoc": { - "kind": "dev", - "methods": { - "constructor": { - "details": "Initializes the contract setting the deployer as the initial owner." - }, - "owner()": { - "details": "Returns the address of the current owner." - }, - "renounceOwnership()": { - "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." - }, - "transferOwnership(address)": { - "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "src/extensions/Ownable.sol": "Ownable" - }, - "libraries": {} - }, - "sources": { - "src/extensions/Context.sol": { - "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", - "urls": [ - "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", - "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" - ], - "license": "MIT" - }, - "src/extensions/Ownable.sol": { - "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", - "urls": [ - "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", - "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "src/extensions/Ownable.sol", - "id": 26292, + "id": 28256, "exportedSymbols": { "Context": [ - 26143 + 28107 ], "Ownable": [ - 26291 + 28255 ] }, "nodeType": "SourceUnit", - "src": "33:2640:18", + "src": "33:2640:20", "nodes": [ { - "id": 26145, + "id": 28109, "nodeType": "PragmaDirective", - "src": "33:23:18", - "nodes": [], + "src": "33:23:20", "literals": [ "solidity", "^", @@ -241,33 +108,31 @@ ] }, { - "id": 26146, + "id": 28110, "nodeType": "ImportDirective", - "src": "60:23:18", - "nodes": [], + "src": "60:23:20", "absolutePath": "src/extensions/Context.sol", "file": "./Context.sol", "nameLocation": "-1:-1:-1", - "scope": 26292, - "sourceUnit": 26144, + "scope": 28256, + "sourceUnit": 28108, "symbolAliases": [], "unitAlias": "" }, { - "id": 26291, + "id": 28255, "nodeType": "ContractDefinition", - "src": "594:2079:18", + "src": "594:2079:20", "nodes": [ { - "id": 26151, + "id": 28115, "nodeType": "VariableDeclaration", - "src": "638:22:18", - "nodes": [], + "src": "638:22:20", "constant": false, "mutability": "mutable", "name": "_owner", - "nameLocation": "654:6:18", - "scope": 26291, + "nameLocation": "654:6:20", + "scope": 28255, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -275,10 +140,10 @@ "typeString": "address" }, "typeName": { - "id": 26150, + "id": 28114, "name": "address", "nodeType": "ElementaryTypeName", - "src": "638:7:18", + "src": "638:7:20", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -288,15 +153,14 @@ "visibility": "private" }, { - "id": 26153, + "id": 28117, "nodeType": "VariableDeclaration", - "src": "667:30:18", - "nodes": [], + "src": "667:30:20", "constant": false, "mutability": "mutable", "name": "_previousOwner", - "nameLocation": "683:14:18", - "scope": 26291, + "nameLocation": "683:14:20", + "scope": 28255, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -304,10 +168,10 @@ "typeString": "address" }, "typeName": { - "id": 26152, + "id": 28116, "name": "address", "nodeType": "ElementaryTypeName", - "src": "667:7:18", + "src": "667:7:20", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -317,15 +181,14 @@ "visibility": "private" }, { - "id": 26155, + "id": 28119, "nodeType": "VariableDeclaration", - "src": "704:25:18", - "nodes": [], + "src": "704:25:20", "constant": false, "mutability": "mutable", "name": "_lockTime", - "nameLocation": "720:9:18", - "scope": 26291, + "nameLocation": "720:9:20", + "scope": 28255, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -333,10 +196,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26154, + "id": 28118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "704:7:18", + "src": "704:7:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -345,28 +208,27 @@ "visibility": "private" }, { - "id": 26161, + "id": 28125, "nodeType": "EventDefinition", - "src": "738:84:18", - "nodes": [], + "src": "738:84:20", "anonymous": false, "eventSelector": "8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", "name": "OwnershipTransferred", - "nameLocation": "744:20:18", + "nameLocation": "744:20:20", "parameters": { - "id": 26160, + "id": 28124, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26157, + "id": 28121, "indexed": true, "mutability": "mutable", "name": "previousOwner", - "nameLocation": "781:13:18", + "nameLocation": "781:13:20", "nodeType": "VariableDeclaration", - "scope": 26161, - "src": "765:29:18", + "scope": 28125, + "src": "765:29:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -374,10 +236,10 @@ "typeString": "address" }, "typeName": { - "id": 26156, + "id": 28120, "name": "address", "nodeType": "ElementaryTypeName", - "src": "765:7:18", + "src": "765:7:20", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -388,14 +250,14 @@ }, { "constant": false, - "id": 26159, + "id": 28123, "indexed": true, "mutability": "mutable", "name": "newOwner", - "nameLocation": "812:8:18", + "nameLocation": "812:8:20", "nodeType": "VariableDeclaration", - "scope": 26161, - "src": "796:24:18", + "scope": 28125, + "src": "796:24:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -403,10 +265,10 @@ "typeString": "address" }, "typeName": { - "id": 26158, + "id": 28122, "name": "address", "nodeType": "ElementaryTypeName", - "src": "796:7:18", + "src": "796:7:20", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -416,34 +278,32 @@ "visibility": "internal" } ], - "src": "764:57:18" + "src": "764:57:20" } }, { - "id": 26183, + "id": 28147, "nodeType": "FunctionDefinition", - "src": "929:154:18", - "nodes": [], + "src": "929:154:20", "body": { - "id": 26182, + "id": 28146, "nodeType": "Block", - "src": "944:139:18", - "nodes": [], + "src": "944:139:20", "statements": [ { "assignments": [ - 26166 + 28130 ], "declarations": [ { "constant": false, - "id": 26166, + "id": 28130, "mutability": "mutable", "name": "msgSender", - "nameLocation": "963:9:18", + "nameLocation": "963:9:20", "nodeType": "VariableDeclaration", - "scope": 26182, - "src": "955:17:18", + "scope": 28146, + "src": "955:17:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -451,10 +311,10 @@ "typeString": "address" }, "typeName": { - "id": 26165, + "id": 28129, "name": "address", "nodeType": "ElementaryTypeName", - "src": "955:7:18", + "src": "955:7:20", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -464,32 +324,31 @@ "visibility": "internal" } ], - "id": 26169, + "id": 28133, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 26167, + "id": 28131, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26131, - "src": "975:10:18", + "referencedDeclaration": 28095, + "src": "975:10:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 26168, + "id": 28132, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "975:12:18", + "src": "975:12:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -497,22 +356,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "955:32:18" + "src": "955:32:20" }, { "expression": { - "id": 26172, + "id": 28136, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 26170, + "id": 28134, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "998:6:18", + "referencedDeclaration": 28115, + "src": "998:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -521,26 +380,26 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 26171, + "id": 28135, "name": "msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26166, - "src": "1007:9:18", + "referencedDeclaration": 28130, + "src": "1007:9:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "998:18:18", + "src": "998:18:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 26173, + "id": 28137, "nodeType": "ExpressionStatement", - "src": "998:18:18" + "src": "998:18:20" }, { "eventCall": { @@ -549,14 +408,14 @@ "arguments": [ { "hexValue": "30", - "id": 26177, + "id": 28141, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1061:1:18", + "src": "1061:1:20", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -571,35 +430,34 @@ "typeString": "int_const 0" } ], - "id": 26176, + "id": 28140, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1053:7:18", + "src": "1053:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 26175, + "id": 28139, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1053:7:18", + "src": "1053:7:20", "typeDescriptions": {} } }, - "id": 26178, + "id": 28142, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1053:10:18", + "src": "1053:10:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -607,12 +465,12 @@ } }, { - "id": 26179, + "id": 28143, "name": "msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26166, - "src": "1065:9:18", + "referencedDeclaration": 28130, + "src": "1065:9:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -630,43 +488,42 @@ "typeString": "address" } ], - "id": 26174, + "id": 28138, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26161, - "src": "1032:20:18", + "referencedDeclaration": 28125, + "src": "1032:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 26180, + "id": 28144, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1032:43:18", + "src": "1032:43:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 26181, + "id": 28145, "nodeType": "EmitStatement", - "src": "1027:48:18" + "src": "1027:48:20" } ] }, "documentation": { - "id": 26162, + "id": 28126, "nodeType": "StructuredDocumentation", - "src": "830:93:18", + "src": "830:93:20", "text": " @dev Initializes the contract setting the deployer as the initial owner." }, "implemented": true, @@ -675,57 +532,55 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 26163, + "id": 28127, "nodeType": "ParameterList", "parameters": [], - "src": "941:2:18" + "src": "941:2:20" }, "returnParameters": { - "id": 26164, + "id": 28128, "nodeType": "ParameterList", "parameters": [], - "src": "944:0:18" + "src": "944:0:20" }, - "scope": 26291, + "scope": 28255, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { - "id": 26192, + "id": 28156, "nodeType": "FunctionDefinition", - "src": "1164:87:18", - "nodes": [], + "src": "1164:87:20", "body": { - "id": 26191, + "id": 28155, "nodeType": "Block", - "src": "1219:32:18", - "nodes": [], + "src": "1219:32:20", "statements": [ { "expression": { - "id": 26189, + "id": 28153, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "1237:6:18", + "referencedDeclaration": 28115, + "src": "1237:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 26188, - "id": 26190, + "functionReturnParameters": 28152, + "id": 28154, "nodeType": "Return", - "src": "1230:13:18" + "src": "1230:13:20" } ] }, "documentation": { - "id": 26184, + "id": 28148, "nodeType": "StructuredDocumentation", - "src": "1091:67:18", + "src": "1091:67:20", "text": " @dev Returns the address of the current owner." }, "functionSelector": "8da5cb5b", @@ -733,26 +588,26 @@ "kind": "function", "modifiers": [], "name": "owner", - "nameLocation": "1173:5:18", + "nameLocation": "1173:5:20", "parameters": { - "id": 26185, + "id": 28149, "nodeType": "ParameterList", "parameters": [], - "src": "1178:2:18" + "src": "1178:2:20" }, "returnParameters": { - "id": 26188, + "id": 28152, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26187, + "id": 28151, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26192, - "src": "1210:7:18", + "scope": 28156, + "src": "1210:7:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -760,10 +615,10 @@ "typeString": "address" }, "typeName": { - "id": 26186, + "id": 28150, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1210:7:18", + "src": "1210:7:20", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -773,23 +628,21 @@ "visibility": "internal" } ], - "src": "1209:9:18" + "src": "1209:9:20" }, - "scope": 26291, + "scope": 28255, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 26206, + "id": 28170, "nodeType": "ModifierDefinition", - "src": "1344:120:18", - "nodes": [], + "src": "1344:120:20", "body": { - "id": 26205, + "id": 28169, "nodeType": "Block", - "src": "1365:99:18", - "nodes": [], + "src": "1365:99:20", "statements": [ { "expression": { @@ -799,7 +652,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 26200, + "id": 28164, "isConstant": false, "isLValue": false, "isPure": false, @@ -808,27 +661,26 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 26196, + "id": 28160, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26192, - "src": "1384:5:18", + "referencedDeclaration": 28156, + "src": "1384:5:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 26197, + "id": 28161, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1384:7:18", + "src": "1384:7:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -841,34 +693,33 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 26198, + "id": 28162, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26131, - "src": "1395:10:18", + "referencedDeclaration": 28095, + "src": "1395:10:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 26199, + "id": 28163, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1395:12:18", + "src": "1395:12:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "src": "1384:23:18", + "src": "1384:23:20", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -876,14 +727,14 @@ }, { "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "id": 26201, + "id": 28165, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1409:34:18", + "src": "1409:34:20", "typeDescriptions": { "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", "typeString": "literal_string \"Ownable: caller is not the owner\"" @@ -902,7 +753,7 @@ "typeString": "literal_string \"Ownable: caller is not the owner\"" } ], - "id": 26195, + "id": 28159, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -910,77 +761,74 @@ -18 ], "referencedDeclaration": -18, - "src": "1376:7:18", + "src": "1376:7:20", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 26202, + "id": 28166, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1376:68:18", + "src": "1376:68:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 26203, + "id": 28167, "nodeType": "ExpressionStatement", - "src": "1376:68:18" + "src": "1376:68:20" }, { - "id": 26204, + "id": 28168, "nodeType": "PlaceholderStatement", - "src": "1455:1:18" + "src": "1455:1:20" } ] }, "documentation": { - "id": 26193, + "id": 28157, "nodeType": "StructuredDocumentation", - "src": "1259:79:18", + "src": "1259:79:20", "text": " @dev Throws if called by any account other than the owner." }, "name": "onlyOwner", - "nameLocation": "1353:9:18", + "nameLocation": "1353:9:20", "parameters": { - "id": 26194, + "id": 28158, "nodeType": "ParameterList", "parameters": [], - "src": "1362:2:18" + "src": "1362:2:20" }, "virtual": false, "visibility": "internal" }, { - "id": 26228, + "id": 28192, "nodeType": "FunctionDefinition", - "src": "1815:148:18", - "nodes": [], + "src": "1815:148:20", "body": { - "id": 26227, + "id": 28191, "nodeType": "Block", - "src": "1869:94:18", - "nodes": [], + "src": "1869:94:20", "statements": [ { "eventCall": { "arguments": [ { - "id": 26213, + "id": 28177, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "1906:6:18", + "referencedDeclaration": 28115, + "src": "1906:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -990,14 +838,14 @@ "arguments": [ { "hexValue": "30", - "id": 26216, + "id": 28180, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1922:1:18", + "src": "1922:1:20", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1012,35 +860,34 @@ "typeString": "int_const 0" } ], - "id": 26215, + "id": 28179, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1914:7:18", + "src": "1914:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 26214, + "id": 28178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1914:7:18", + "src": "1914:7:20", "typeDescriptions": {} } }, - "id": 26217, + "id": 28181, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1914:10:18", + "src": "1914:10:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -1059,51 +906,50 @@ "typeString": "address" } ], - "id": 26212, + "id": 28176, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26161, - "src": "1885:20:18", + "referencedDeclaration": 28125, + "src": "1885:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 26218, + "id": 28182, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1885:40:18", + "src": "1885:40:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 26219, + "id": 28183, "nodeType": "EmitStatement", - "src": "1880:45:18" + "src": "1880:45:20" }, { "expression": { - "id": 26225, + "id": 28189, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 26220, + "id": 28184, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "1936:6:18", + "referencedDeclaration": 28115, + "src": "1936:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1115,14 +961,14 @@ "arguments": [ { "hexValue": "30", - "id": 26223, + "id": 28187, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1953:1:18", + "src": "1953:1:20", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1137,57 +983,56 @@ "typeString": "int_const 0" } ], - "id": 26222, + "id": 28186, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1945:7:18", + "src": "1945:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 26221, + "id": 28185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1945:7:18", + "src": "1945:7:20", "typeDescriptions": {} } }, - "id": 26224, + "id": 28188, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1945:10:18", + "src": "1945:10:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1936:19:18", + "src": "1936:19:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 26226, + "id": 28190, "nodeType": "ExpressionStatement", - "src": "1936:19:18" + "src": "1936:19:20" } ] }, "documentation": { - "id": 26207, + "id": 28171, "nodeType": "StructuredDocumentation", - "src": "1472:337:18", + "src": "1472:337:20", "text": " @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions anymore. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby removing any functionality that is only available to the owner." }, "functionSelector": "715018a6", @@ -1195,51 +1040,46 @@ "kind": "function", "modifiers": [ { - "id": 26210, + "id": 28174, "kind": "modifierInvocation", "modifierName": { - "id": 26209, + "id": 28173, "name": "onlyOwner", - "nameLocations": [ - "1859:9:18" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26206, - "src": "1859:9:18" + "referencedDeclaration": 28170, + "src": "1859:9:20" }, "nodeType": "ModifierInvocation", - "src": "1859:9:18" + "src": "1859:9:20" } ], "name": "renounceOwnership", - "nameLocation": "1824:17:18", + "nameLocation": "1824:17:20", "parameters": { - "id": 26208, + "id": 28172, "nodeType": "ParameterList", "parameters": [], - "src": "1841:2:18" + "src": "1841:2:20" }, "returnParameters": { - "id": 26211, + "id": 28175, "nodeType": "ParameterList", "parameters": [], - "src": "1869:0:18" + "src": "1869:0:20" }, - "scope": 26291, + "scope": 28255, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 26256, + "id": 28220, "nodeType": "FunctionDefinition", - "src": "2118:244:18", - "nodes": [], + "src": "2118:244:20", "body": { - "id": 26255, + "id": 28219, "nodeType": "Block", - "src": "2188:174:18", - "nodes": [], + "src": "2188:174:20", "statements": [ { "expression": { @@ -1249,18 +1089,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 26242, + "id": 28206, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 26237, + "id": 28201, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26231, - "src": "2207:8:18", + "referencedDeclaration": 28195, + "src": "2207:8:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1272,14 +1112,14 @@ "arguments": [ { "hexValue": "30", - "id": 26240, + "id": 28204, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2227:1:18", + "src": "2227:1:20", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1294,42 +1134,41 @@ "typeString": "int_const 0" } ], - "id": 26239, + "id": 28203, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2219:7:18", + "src": "2219:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 26238, + "id": 28202, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2219:7:18", + "src": "2219:7:20", "typeDescriptions": {} } }, - "id": 26241, + "id": 28205, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2219:10:18", + "src": "2219:10:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2207:22:18", + "src": "2207:22:20", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1337,14 +1176,14 @@ }, { "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", - "id": 26243, + "id": 28207, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2231:40:18", + "src": "2231:40:20", "typeDescriptions": { "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", "typeString": "literal_string \"Ownable: new owner is the zero address\"" @@ -1363,7 +1202,7 @@ "typeString": "literal_string \"Ownable: new owner is the zero address\"" } ], - "id": 26236, + "id": 28200, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1371,54 +1210,53 @@ -18 ], "referencedDeclaration": -18, - "src": "2199:7:18", + "src": "2199:7:20", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 26244, + "id": 28208, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2199:73:18", + "src": "2199:73:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 26245, + "id": 28209, "nodeType": "ExpressionStatement", - "src": "2199:73:18" + "src": "2199:73:20" }, { "eventCall": { "arguments": [ { - "id": 26247, + "id": 28211, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "2309:6:18", + "referencedDeclaration": 28115, + "src": "2309:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 26248, + "id": 28212, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26231, - "src": "2317:8:18", + "referencedDeclaration": 28195, + "src": "2317:8:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1436,51 +1274,50 @@ "typeString": "address" } ], - "id": 26246, + "id": 28210, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26161, - "src": "2288:20:18", + "referencedDeclaration": 28125, + "src": "2288:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 26249, + "id": 28213, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2288:38:18", + "src": "2288:38:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 26250, + "id": 28214, "nodeType": "EmitStatement", - "src": "2283:43:18" + "src": "2283:43:20" }, { "expression": { - "id": 26253, + "id": 28217, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 26251, + "id": 28215, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "2337:6:18", + "referencedDeclaration": 28115, + "src": "2337:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1489,33 +1326,33 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 26252, + "id": 28216, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26231, - "src": "2346:8:18", + "referencedDeclaration": 28195, + "src": "2346:8:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2337:17:18", + "src": "2337:17:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 26254, + "id": 28218, "nodeType": "ExpressionStatement", - "src": "2337:17:18" + "src": "2337:17:20" } ] }, "documentation": { - "id": 26229, + "id": 28193, "nodeType": "StructuredDocumentation", - "src": "1971:141:18", + "src": "1971:141:20", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." }, "functionSelector": "f2fde38b", @@ -1523,37 +1360,34 @@ "kind": "function", "modifiers": [ { - "id": 26234, + "id": 28198, "kind": "modifierInvocation", "modifierName": { - "id": 26233, + "id": 28197, "name": "onlyOwner", - "nameLocations": [ - "2178:9:18" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26206, - "src": "2178:9:18" + "referencedDeclaration": 28170, + "src": "2178:9:20" }, "nodeType": "ModifierInvocation", - "src": "2178:9:18" + "src": "2178:9:20" } ], "name": "transferOwnership", - "nameLocation": "2127:17:18", + "nameLocation": "2127:17:20", "parameters": { - "id": 26232, + "id": 28196, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26231, + "id": 28195, "mutability": "mutable", "name": "newOwner", - "nameLocation": "2153:8:18", + "nameLocation": "2153:8:20", "nodeType": "VariableDeclaration", - "scope": 26256, - "src": "2145:16:18", + "scope": 28220, + "src": "2145:16:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1561,10 +1395,10 @@ "typeString": "address" }, "typeName": { - "id": 26230, + "id": 28194, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2145:7:18", + "src": "2145:7:20", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1574,44 +1408,42 @@ "visibility": "internal" } ], - "src": "2144:18:18" + "src": "2144:18:20" }, "returnParameters": { - "id": 26235, + "id": 28199, "nodeType": "ParameterList", "parameters": [], - "src": "2188:0:18" + "src": "2188:0:20" }, - "scope": 26291, + "scope": 28255, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 26290, + "id": 28254, "nodeType": "FunctionDefinition", - "src": "2444:226:18", - "nodes": [], + "src": "2444:226:20", "body": { - "id": 26289, + "id": 28253, "nodeType": "Block", - "src": "2497:173:18", - "nodes": [], + "src": "2497:173:20", "statements": [ { "expression": { - "id": 26265, + "id": 28229, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 26263, + "id": 28227, "name": "_previousOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26153, - "src": "2508:14:18", + "referencedDeclaration": 28117, + "src": "2508:14:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1620,41 +1452,41 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 26264, + "id": 28228, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "2525:6:18", + "referencedDeclaration": 28115, + "src": "2525:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2508:23:18", + "src": "2508:23:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 26266, + "id": 28230, "nodeType": "ExpressionStatement", - "src": "2508:23:18" + "src": "2508:23:20" }, { "expression": { - "id": 26272, + "id": 28236, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 26267, + "id": 28231, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "2542:6:18", + "referencedDeclaration": 28115, + "src": "2542:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1666,14 +1498,14 @@ "arguments": [ { "hexValue": "30", - "id": 26270, + "id": 28234, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2559:1:18", + "src": "2559:1:20", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1688,65 +1520,64 @@ "typeString": "int_const 0" } ], - "id": 26269, + "id": 28233, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2551:7:18", + "src": "2551:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 26268, + "id": 28232, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2551:7:18", + "src": "2551:7:20", "typeDescriptions": {} } }, - "id": 26271, + "id": 28235, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2551:10:18", + "src": "2551:10:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2542:19:18", + "src": "2542:19:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 26273, + "id": 28237, "nodeType": "ExpressionStatement", - "src": "2542:19:18" + "src": "2542:19:20" }, { "expression": { - "id": 26279, + "id": 28243, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 26274, + "id": 28238, "name": "_lockTime", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26155, - "src": "2572:9:18", + "referencedDeclaration": 28119, + "src": "2572:9:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1759,33 +1590,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 26278, + "id": 28242, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 26275, + "id": 28239, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "2584:5:18", + "src": "2584:5:20", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 26276, + "id": 28240, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2590:9:18", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "2584:15:18", + "src": "2584:15:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1794,43 +1624,43 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 26277, + "id": 28241, "name": "time", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26258, - "src": "2602:4:18", + "referencedDeclaration": 28222, + "src": "2602:4:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2584:22:18", + "src": "2584:22:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2572:34:18", + "src": "2572:34:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 26280, + "id": 28244, "nodeType": "ExpressionStatement", - "src": "2572:34:18" + "src": "2572:34:20" }, { "eventCall": { "arguments": [ { - "id": 26282, + "id": 28246, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26151, - "src": "2643:6:18", + "referencedDeclaration": 28115, + "src": "2643:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1840,14 +1670,14 @@ "arguments": [ { "hexValue": "30", - "id": 26285, + "id": 28249, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2659:1:18", + "src": "2659:1:20", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1862,35 +1692,34 @@ "typeString": "int_const 0" } ], - "id": 26284, + "id": 28248, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2651:7:18", + "src": "2651:7:20", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 26283, + "id": 28247, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2651:7:18", + "src": "2651:7:20", "typeDescriptions": {} } }, - "id": 26286, + "id": 28250, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2651:10:18", + "src": "2651:10:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -1909,36 +1738,35 @@ "typeString": "address" } ], - "id": 26281, + "id": 28245, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26161, - "src": "2622:20:18", + "referencedDeclaration": 28125, + "src": "2622:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 26287, + "id": 28251, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2622:40:18", + "src": "2622:40:20", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 26288, + "id": 28252, "nodeType": "EmitStatement", - "src": "2617:45:18" + "src": "2617:45:20" } ] }, @@ -1947,37 +1775,34 @@ "kind": "function", "modifiers": [ { - "id": 26261, + "id": 28225, "kind": "modifierInvocation", "modifierName": { - "id": 26260, + "id": 28224, "name": "onlyOwner", - "nameLocations": [ - "2487:9:18" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26206, - "src": "2487:9:18" + "referencedDeclaration": 28170, + "src": "2487:9:20" }, "nodeType": "ModifierInvocation", - "src": "2487:9:18" + "src": "2487:9:20" } ], "name": "lock", - "nameLocation": "2453:4:18", + "nameLocation": "2453:4:20", "parameters": { - "id": 26259, + "id": 28223, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26258, + "id": 28222, "mutability": "mutable", "name": "time", - "nameLocation": "2466:4:18", + "nameLocation": "2466:4:20", "nodeType": "VariableDeclaration", - "scope": 26290, - "src": "2458:12:18", + "scope": 28254, + "src": "2458:12:20", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1985,10 +1810,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26257, + "id": 28221, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2458:7:18", + "src": "2458:7:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1997,15 +1822,15 @@ "visibility": "internal" } ], - "src": "2457:14:18" + "src": "2457:14:20" }, "returnParameters": { - "id": 26262, + "id": 28226, "nodeType": "ParameterList", "parameters": [], - "src": "2497:0:18" + "src": "2497:0:20" }, - "scope": 26291, + "scope": 28255, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" @@ -2015,41 +1840,38 @@ "baseContracts": [ { "baseName": { - "id": 26148, + "id": 28112, "name": "Context", - "nameLocations": [ - "623:7:18" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26143, - "src": "623:7:18" + "referencedDeclaration": 28107, + "src": "623:7:20" }, - "id": 26149, + "id": 28113, "nodeType": "InheritanceSpecifier", - "src": "623:7:18" + "src": "623:7:20" } ], "canonicalName": "Ownable", "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 26147, + "id": 28111, "nodeType": "StructuredDocumentation", - "src": "87:505:18", + "src": "87:505:20", "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, "linearizedBaseContracts": [ - 26291, - 26143 + 28255, + 28107 ], "name": "Ownable", - "nameLocation": "612:7:18", - "scope": 26292, + "nameLocation": "612:7:20", + "scope": 28256, "usedErrors": [] } ], "license": "MIT" }, - "id": 18 + "id": 20 } \ No newline at end of file diff --git a/out/SafeMath.sol/SafeMath.json b/out/SafeMath.sol/SafeMath.json new file mode 100644 index 0000000..653b054 --- /dev/null +++ b/out/SafeMath.sol/SafeMath.json @@ -0,0 +1,3768 @@ +{ + "abi": [], + "bytecode": { + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220fe3253898dbf2eff9d8d80100d316dc3e709c5713a0d8b3d2d0b16b6dcfa074464736f6c634300080f0033", + "sourceMap": "497:6409:27:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;497:6409:27;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220fe3253898dbf2eff9d8d80100d316dc3e709c5713a0d8b3d2d0b16b6dcfa074464736f6c634300080f0033", + "sourceMap": "497:6409:27:-:0;;;;;;;;", + "linkReferences": {} + }, + "methodIdentifiers": {}, + "ast": { + "absolutePath": "src/libraries/SafeMath.sol", + "id": 30186, + "exportedSymbols": { + "SafeMath": [ + 30185 + ] + }, + "nodeType": "SourceUnit", + "src": "110:6796:27", + "nodes": [ + { + "id": 29875, + "nodeType": "PragmaDirective", + "src": "110:23:27", + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ] + }, + { + "id": 30185, + "nodeType": "ContractDefinition", + "src": "497:6409:27", + "nodes": [ + { + "id": 29908, + "nodeType": "FunctionDefinition", + "src": "662:222:27", + "body": { + "id": 29907, + "nodeType": "Block", + "src": "738:146:27", + "statements": [ + { + "id": 29906, + "nodeType": "UncheckedBlock", + "src": "749:128:27", + "statements": [ + { + "assignments": [ + 29889 + ], + "declarations": [ + { + "constant": false, + "id": 29889, + "mutability": "mutable", + "name": "c", + "nameLocation": "782:1:27", + "nodeType": "VariableDeclaration", + "scope": 29906, + "src": "774:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "774:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 29893, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29890, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29879, + "src": "786:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 29891, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29881, + "src": "790:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "786:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "774:17:27" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29894, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29889, + "src": "810:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 29895, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29879, + "src": "814:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "810:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 29901, + "nodeType": "IfStatement", + "src": "806:28:27", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 29897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "825:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 29898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "832:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 29899, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "824:10:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 29887, + "id": 29900, + "nodeType": "Return", + "src": "817:17:27" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 29902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "857:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 29903, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29889, + "src": "863:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 29904, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "856:9:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 29887, + "id": 29905, + "nodeType": "Return", + "src": "849:16:27" + } + ] + } + ] + }, + "documentation": { + "id": 29877, + "nodeType": "StructuredDocumentation", + "src": "521:135:27", + "text": " @dev Returns the addition of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryAdd", + "nameLocation": "671:6:27", + "parameters": { + "id": 29882, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29879, + "mutability": "mutable", + "name": "a", + "nameLocation": "686:1:27", + "nodeType": "VariableDeclaration", + "scope": 29908, + "src": "678:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29878, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "678:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29881, + "mutability": "mutable", + "name": "b", + "nameLocation": "697:1:27", + "nodeType": "VariableDeclaration", + "scope": 29908, + "src": "689:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29880, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "689:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "677:22:27" + }, + "returnParameters": { + "id": 29887, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29884, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29908, + "src": "723:4:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29883, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "723:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29886, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29908, + "src": "729:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29885, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "729:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "722:15:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 29936, + "nodeType": "FunctionDefinition", + "src": "1036:194:27", + "body": { + "id": 29935, + "nodeType": "Block", + "src": "1112:118:27", + "statements": [ + { + "id": 29934, + "nodeType": "UncheckedBlock", + "src": "1123:100:27", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29922, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29920, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29913, + "src": "1152:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 29921, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29911, + "src": "1156:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1152:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 29927, + "nodeType": "IfStatement", + "src": "1148:28:27", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 29923, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1167:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 29924, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1174:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 29925, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1166:10:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 29919, + "id": 29926, + "nodeType": "Return", + "src": "1159:17:27" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 29928, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1199:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29931, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29929, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29911, + "src": "1205:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 29930, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29913, + "src": "1209:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1205:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 29932, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1198:13:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 29919, + "id": 29933, + "nodeType": "Return", + "src": "1191:20:27" + } + ] + } + ] + }, + "documentation": { + "id": 29909, + "nodeType": "StructuredDocumentation", + "src": "892:138:27", + "text": " @dev Returns the subtraction of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "trySub", + "nameLocation": "1045:6:27", + "parameters": { + "id": 29914, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29911, + "mutability": "mutable", + "name": "a", + "nameLocation": "1060:1:27", + "nodeType": "VariableDeclaration", + "scope": 29936, + "src": "1052:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29910, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1052:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29913, + "mutability": "mutable", + "name": "b", + "nameLocation": "1071:1:27", + "nodeType": "VariableDeclaration", + "scope": 29936, + "src": "1063:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29912, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1063:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1051:22:27" + }, + "returnParameters": { + "id": 29919, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29916, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29936, + "src": "1097:4:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29915, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1097:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29918, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29936, + "src": "1103:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29917, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1103:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1096:15:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 29978, + "nodeType": "FunctionDefinition", + "src": "1385:503:27", + "body": { + "id": 29977, + "nodeType": "Block", + "src": "1461:427:27", + "statements": [ + { + "id": 29976, + "nodeType": "UncheckedBlock", + "src": "1472:409:27", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29948, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29939, + "src": "1734:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 29949, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1739:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1734:6:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 29955, + "nodeType": "IfStatement", + "src": "1730:28:27", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 29951, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1750:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "hexValue": "30", + "id": 29952, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1756:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 29953, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1749:9:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 29947, + "id": 29954, + "nodeType": "Return", + "src": "1742:16:27" + } + }, + { + "assignments": [ + 29957 + ], + "declarations": [ + { + "constant": false, + "id": 29957, + "mutability": "mutable", + "name": "c", + "nameLocation": "1781:1:27", + "nodeType": "VariableDeclaration", + "scope": 29976, + "src": "1773:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29956, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1773:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 29961, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29958, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29939, + "src": "1785:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 29959, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29941, + "src": "1789:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1785:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1773:17:27" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29964, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29962, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29957, + "src": "1809:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 29963, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29939, + "src": "1813:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1809:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 29965, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29941, + "src": "1818:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1809:10:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 29971, + "nodeType": "IfStatement", + "src": "1805:33:27", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 29967, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1829:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 29968, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1836:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 29969, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1828:10:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 29947, + "id": 29970, + "nodeType": "Return", + "src": "1821:17:27" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 29972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1861:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "id": 29973, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29957, + "src": "1867:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 29974, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1860:9:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 29947, + "id": 29975, + "nodeType": "Return", + "src": "1853:16:27" + } + ] + } + ] + }, + "documentation": { + "id": 29937, + "nodeType": "StructuredDocumentation", + "src": "1238:141:27", + "text": " @dev Returns the multiplication of two unsigned integers, with an overflow flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryMul", + "nameLocation": "1394:6:27", + "parameters": { + "id": 29942, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29939, + "mutability": "mutable", + "name": "a", + "nameLocation": "1409:1:27", + "nodeType": "VariableDeclaration", + "scope": 29978, + "src": "1401:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29938, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1401:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29941, + "mutability": "mutable", + "name": "b", + "nameLocation": "1420:1:27", + "nodeType": "VariableDeclaration", + "scope": 29978, + "src": "1412:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29940, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1412:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1400:22:27" + }, + "returnParameters": { + "id": 29947, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29944, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29978, + "src": "1446:4:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29943, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1446:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29946, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29978, + "src": "1452:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29945, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1452:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1445:15:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30006, + "nodeType": "FunctionDefinition", + "src": "2044:195:27", + "body": { + "id": 30005, + "nodeType": "Block", + "src": "2120:119:27", + "statements": [ + { + "id": 30004, + "nodeType": "UncheckedBlock", + "src": "2131:101:27", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 29992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29990, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29983, + "src": "2160:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 29991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2165:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2160:6:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 29997, + "nodeType": "IfStatement", + "src": "2156:29:27", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 29993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2176:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 29994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2183:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 29995, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2175:10:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 29989, + "id": 29996, + "nodeType": "Return", + "src": "2168:17:27" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 29998, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2208:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 29999, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29981, + "src": "2214:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 30000, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29983, + "src": "2218:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2214:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 30002, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2207:13:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 29989, + "id": 30003, + "nodeType": "Return", + "src": "2200:20:27" + } + ] + } + ] + }, + "documentation": { + "id": 29979, + "nodeType": "StructuredDocumentation", + "src": "1896:142:27", + "text": " @dev Returns the division of two unsigned integers, with a division by zero flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryDiv", + "nameLocation": "2053:6:27", + "parameters": { + "id": 29984, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29981, + "mutability": "mutable", + "name": "a", + "nameLocation": "2068:1:27", + "nodeType": "VariableDeclaration", + "scope": 30006, + "src": "2060:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29980, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2060:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29983, + "mutability": "mutable", + "name": "b", + "nameLocation": "2079:1:27", + "nodeType": "VariableDeclaration", + "scope": 30006, + "src": "2071:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2071:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2059:22:27" + }, + "returnParameters": { + "id": 29989, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 29986, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30006, + "src": "2105:4:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 29985, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2105:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29988, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30006, + "src": "2111:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 29987, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2111:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2104:15:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30034, + "nodeType": "FunctionDefinition", + "src": "2405:195:27", + "body": { + "id": 30033, + "nodeType": "Block", + "src": "2481:119:27", + "statements": [ + { + "id": 30032, + "nodeType": "UncheckedBlock", + "src": "2492:101:27", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30018, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30011, + "src": "2521:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 30019, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2526:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2521:6:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 30025, + "nodeType": "IfStatement", + "src": "2517:29:27", + "trueBody": { + "expression": { + "components": [ + { + "hexValue": "66616c7365", + "id": 30021, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2537:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "30", + "id": 30022, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2544:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "id": 30023, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2536:10:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$", + "typeString": "tuple(bool,int_const 0)" + } + }, + "functionReturnParameters": 30017, + "id": 30024, + "nodeType": "Return", + "src": "2529:17:27" + } + }, + { + "expression": { + "components": [ + { + "hexValue": "74727565", + "id": 30026, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2569:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30027, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30009, + "src": "2575:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 30028, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30011, + "src": "2579:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2575:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 30030, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2568:13:27", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$", + "typeString": "tuple(bool,uint256)" + } + }, + "functionReturnParameters": 30017, + "id": 30031, + "nodeType": "Return", + "src": "2561:20:27" + } + ] + } + ] + }, + "documentation": { + "id": 30007, + "nodeType": "StructuredDocumentation", + "src": "2247:152:27", + "text": " @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.\n _Available since v3.4._" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tryMod", + "nameLocation": "2414:6:27", + "parameters": { + "id": 30012, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30009, + "mutability": "mutable", + "name": "a", + "nameLocation": "2429:1:27", + "nodeType": "VariableDeclaration", + "scope": 30034, + "src": "2421:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30008, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2421:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30011, + "mutability": "mutable", + "name": "b", + "nameLocation": "2440:1:27", + "nodeType": "VariableDeclaration", + "scope": 30034, + "src": "2432:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30010, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2432:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2420:22:27" + }, + "returnParameters": { + "id": 30017, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30014, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30034, + "src": "2466:4:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 30013, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2466:4:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30016, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30034, + "src": "2472:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30015, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2472:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2465:15:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30049, + "nodeType": "FunctionDefinition", + "src": "2847:98:27", + "body": { + "id": 30048, + "nodeType": "Block", + "src": "2914:31:27", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30046, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30044, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30037, + "src": "2932:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 30045, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30039, + "src": "2936:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2932:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30043, + "id": 30047, + "nodeType": "Return", + "src": "2925:12:27" + } + ] + }, + "documentation": { + "id": 30035, + "nodeType": "StructuredDocumentation", + "src": "2608:233:27", + "text": " @dev Returns the addition of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `+` operator.\n Requirements:\n - Addition cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "add", + "nameLocation": "2856:3:27", + "parameters": { + "id": 30040, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30037, + "mutability": "mutable", + "name": "a", + "nameLocation": "2868:1:27", + "nodeType": "VariableDeclaration", + "scope": 30049, + "src": "2860:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30036, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2860:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30039, + "mutability": "mutable", + "name": "b", + "nameLocation": "2879:1:27", + "nodeType": "VariableDeclaration", + "scope": 30049, + "src": "2871:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30038, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2871:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2859:22:27" + }, + "returnParameters": { + "id": 30043, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30042, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30049, + "src": "2905:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30041, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2905:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2904:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30064, + "nodeType": "FunctionDefinition", + "src": "3228:98:27", + "body": { + "id": 30063, + "nodeType": "Block", + "src": "3295:31:27", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30059, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30052, + "src": "3313:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 30060, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30054, + "src": "3317:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3313:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30058, + "id": 30062, + "nodeType": "Return", + "src": "3306:12:27" + } + ] + }, + "documentation": { + "id": 30050, + "nodeType": "StructuredDocumentation", + "src": "2953:269:27", + "text": " @dev Returns the subtraction of two unsigned integers, reverting on\n overflow (when the result is negative).\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sub", + "nameLocation": "3237:3:27", + "parameters": { + "id": 30055, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30052, + "mutability": "mutable", + "name": "a", + "nameLocation": "3249:1:27", + "nodeType": "VariableDeclaration", + "scope": 30064, + "src": "3241:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30051, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3241:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30054, + "mutability": "mutable", + "name": "b", + "nameLocation": "3260:1:27", + "nodeType": "VariableDeclaration", + "scope": 30064, + "src": "3252:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30053, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3252:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3240:22:27" + }, + "returnParameters": { + "id": 30058, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30057, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30064, + "src": "3286:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30056, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3286:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3285:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30079, + "nodeType": "FunctionDefinition", + "src": "3585:98:27", + "body": { + "id": 30078, + "nodeType": "Block", + "src": "3652:31:27", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30074, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "3670:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 30075, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30069, + "src": "3674:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3670:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30073, + "id": 30077, + "nodeType": "Return", + "src": "3663:12:27" + } + ] + }, + "documentation": { + "id": 30065, + "nodeType": "StructuredDocumentation", + "src": "3334:245:27", + "text": " @dev Returns the multiplication of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `*` operator.\n Requirements:\n - Multiplication cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mul", + "nameLocation": "3594:3:27", + "parameters": { + "id": 30070, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30067, + "mutability": "mutable", + "name": "a", + "nameLocation": "3606:1:27", + "nodeType": "VariableDeclaration", + "scope": 30079, + "src": "3598:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30066, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3598:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30069, + "mutability": "mutable", + "name": "b", + "nameLocation": "3617:1:27", + "nodeType": "VariableDeclaration", + "scope": 30079, + "src": "3609:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30068, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3609:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3597:22:27" + }, + "returnParameters": { + "id": 30073, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30072, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30079, + "src": "3643:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30071, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3643:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3642:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30094, + "nodeType": "FunctionDefinition", + "src": "3984:98:27", + "body": { + "id": 30093, + "nodeType": "Block", + "src": "4051:31:27", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30089, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30082, + "src": "4069:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 30090, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30084, + "src": "4073:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4069:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30088, + "id": 30092, + "nodeType": "Return", + "src": "4062:12:27" + } + ] + }, + "documentation": { + "id": 30080, + "nodeType": "StructuredDocumentation", + "src": "3691:287:27", + "text": " @dev Returns the integer division of two unsigned integers, reverting on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator.\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "div", + "nameLocation": "3993:3:27", + "parameters": { + "id": 30085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30082, + "mutability": "mutable", + "name": "a", + "nameLocation": "4005:1:27", + "nodeType": "VariableDeclaration", + "scope": 30094, + "src": "3997:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30081, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3997:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30084, + "mutability": "mutable", + "name": "b", + "nameLocation": "4016:1:27", + "nodeType": "VariableDeclaration", + "scope": 30094, + "src": "4008:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30083, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4008:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3996:22:27" + }, + "returnParameters": { + "id": 30088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30087, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30094, + "src": "4042:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30086, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4042:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4041:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30109, + "nodeType": "FunctionDefinition", + "src": "4549:98:27", + "body": { + "id": 30108, + "nodeType": "Block", + "src": "4616:31:27", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30104, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30097, + "src": "4634:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 30105, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30099, + "src": "4638:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4634:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30103, + "id": 30107, + "nodeType": "Return", + "src": "4627:12:27" + } + ] + }, + "documentation": { + "id": 30095, + "nodeType": "StructuredDocumentation", + "src": "4090:453:27", + "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting when dividing by zero.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mod", + "nameLocation": "4558:3:27", + "parameters": { + "id": 30100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30097, + "mutability": "mutable", + "name": "a", + "nameLocation": "4570:1:27", + "nodeType": "VariableDeclaration", + "scope": 30109, + "src": "4562:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30096, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4562:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30099, + "mutability": "mutable", + "name": "b", + "nameLocation": "4581:1:27", + "nodeType": "VariableDeclaration", + "scope": 30109, + "src": "4573:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30098, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4573:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4561:22:27" + }, + "returnParameters": { + "id": 30103, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30102, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30109, + "src": "4607:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30101, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4607:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4606:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30134, + "nodeType": "FunctionDefinition", + "src": "5126:206:27", + "body": { + "id": 30133, + "nodeType": "Block", + "src": "5221:111:27", + "statements": [ + { + "id": 30132, + "nodeType": "UncheckedBlock", + "src": "5232:93:27", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30122, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30114, + "src": "5265:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 30123, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30112, + "src": "5270:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5265:6:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 30125, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30116, + "src": "5273:12:27", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 30121, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5257:7:27", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 30126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5257:29:27", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30127, + "nodeType": "ExpressionStatement", + "src": "5257:29:27" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30128, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30112, + "src": "5308:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 30129, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30114, + "src": "5312:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5308:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30120, + "id": 30131, + "nodeType": "Return", + "src": "5301:12:27" + } + ] + } + ] + }, + "documentation": { + "id": 30110, + "nodeType": "StructuredDocumentation", + "src": "4655:465:27", + "text": " @dev Returns the subtraction of two unsigned integers, reverting with custom message on\n overflow (when the result is negative).\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {trySub}.\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sub", + "nameLocation": "5135:3:27", + "parameters": { + "id": 30117, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30112, + "mutability": "mutable", + "name": "a", + "nameLocation": "5147:1:27", + "nodeType": "VariableDeclaration", + "scope": 30134, + "src": "5139:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5139:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30114, + "mutability": "mutable", + "name": "b", + "nameLocation": "5158:1:27", + "nodeType": "VariableDeclaration", + "scope": 30134, + "src": "5150:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30113, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5150:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30116, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "5175:12:27", + "nodeType": "VariableDeclaration", + "scope": 30134, + "src": "5161:26:27", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 30115, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5161:6:27", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5138:50:27" + }, + "returnParameters": { + "id": 30120, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30119, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30134, + "src": "5212:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30118, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5212:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5211:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30159, + "nodeType": "FunctionDefinition", + "src": "5830:205:27", + "body": { + "id": 30158, + "nodeType": "Block", + "src": "5925:110:27", + "statements": [ + { + "id": 30157, + "nodeType": "UncheckedBlock", + "src": "5936:92:27", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30147, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30139, + "src": "5969:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 30148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5973:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5969:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 30150, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30141, + "src": "5976:12:27", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 30146, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5961:7:27", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 30151, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5961:28:27", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30152, + "nodeType": "ExpressionStatement", + "src": "5961:28:27" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30153, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30137, + "src": "6011:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 30154, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30139, + "src": "6015:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6011:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30145, + "id": 30156, + "nodeType": "Return", + "src": "6004:12:27" + } + ] + } + ] + }, + "documentation": { + "id": 30135, + "nodeType": "StructuredDocumentation", + "src": "5340:484:27", + "text": " @dev Returns the integer division of two unsigned integers, reverting with custom message on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator. Note: this function uses a\n `revert` opcode (which leaves remaining gas untouched) while Solidity\n uses an invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "div", + "nameLocation": "5839:3:27", + "parameters": { + "id": 30142, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30137, + "mutability": "mutable", + "name": "a", + "nameLocation": "5851:1:27", + "nodeType": "VariableDeclaration", + "scope": 30159, + "src": "5843:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30136, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5843:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30139, + "mutability": "mutable", + "name": "b", + "nameLocation": "5862:1:27", + "nodeType": "VariableDeclaration", + "scope": 30159, + "src": "5854:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30138, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5854:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30141, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "5879:12:27", + "nodeType": "VariableDeclaration", + "scope": 30159, + "src": "5865:26:27", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 30140, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5865:6:27", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5842:50:27" + }, + "returnParameters": { + "id": 30145, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30144, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30159, + "src": "5916:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30143, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5916:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5915:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 30184, + "nodeType": "FunctionDefinition", + "src": "6698:205:27", + "body": { + "id": 30183, + "nodeType": "Block", + "src": "6793:110:27", + "statements": [ + { + "id": 30182, + "nodeType": "UncheckedBlock", + "src": "6804:92:27", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30172, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30164, + "src": "6837:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 30173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6841:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6837:5:27", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 30175, + "name": "errorMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30166, + "src": "6844:12:27", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 30171, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6829:7:27", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 30176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6829:28:27", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30177, + "nodeType": "ExpressionStatement", + "src": "6829:28:27" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30178, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30162, + "src": "6879:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 30179, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30164, + "src": "6883:1:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6879:5:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 30170, + "id": 30181, + "nodeType": "Return", + "src": "6872:12:27" + } + ] + } + ] + }, + "documentation": { + "id": 30160, + "nodeType": "StructuredDocumentation", + "src": "6043:649:27", + "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting with custom message when dividing by zero.\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {tryMod}.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "mod", + "nameLocation": "6707:3:27", + "parameters": { + "id": 30167, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30162, + "mutability": "mutable", + "name": "a", + "nameLocation": "6719:1:27", + "nodeType": "VariableDeclaration", + "scope": 30184, + "src": "6711:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30161, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6711:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30164, + "mutability": "mutable", + "name": "b", + "nameLocation": "6730:1:27", + "nodeType": "VariableDeclaration", + "scope": 30184, + "src": "6722:9:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30163, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6722:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 30166, + "mutability": "mutable", + "name": "errorMessage", + "nameLocation": "6747:12:27", + "nodeType": "VariableDeclaration", + "scope": 30184, + "src": "6733:26:27", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 30165, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6733:6:27", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6710:50:27" + }, + "returnParameters": { + "id": 30170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30169, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 30184, + "src": "6784:7:27", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30168, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6784:7:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6783:9:27" + }, + "scope": 30185, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "SafeMath", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 29876, + "nodeType": "StructuredDocumentation", + "src": "294:201:27", + "text": " @dev Wrappers over Solidity's arithmetic operations.\n NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler\n now has built in overflow checking." + }, + "fullyImplemented": true, + "linearizedBaseContracts": [ + 30185 + ], + "name": "SafeMath", + "nameLocation": "505:8:27", + "scope": 30186, + "usedErrors": [] + } + ], + "license": "MIT" + }, + "id": 27 +} \ No newline at end of file diff --git a/out/Script.sol/Script.json b/out/Script.sol/Script.json index 1aff697..2094364 100644 --- a/out/Script.sol/Script.json +++ b/out/Script.sol/Script.json @@ -27,148 +27,6 @@ "methodIdentifiers": { "IS_SCRIPT()": "f8ccbf47" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"IS_SCRIPT\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Script.sol\":\"Script\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/Script.sol\":{\"keccak256\":\"0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693\",\"dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "IS_SCRIPT", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/Script.sol": "Script" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/Script.sol": { - "keccak256": "0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433", - "urls": [ - "bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693", - "dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - }, - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - }, - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/Script.sol", "id": 1893, @@ -217,7 +75,6 @@ "id": 1857, "nodeType": "PragmaDirective", "src": "32:31:2", - "nodes": [], "literals": [ "solidity", ">=", @@ -232,7 +89,6 @@ "id": 1859, "nodeType": "ImportDirective", "src": "134:38:2", - "nodes": [], "absolutePath": "lib/forge-std/src/Base.sol", "file": "./Base.sol", "nameLocation": "-1:-1:-1", @@ -258,7 +114,6 @@ "id": 1861, "nodeType": "ImportDirective", "src": "173:38:2", - "nodes": [], "absolutePath": "lib/forge-std/src/console.sol", "file": "./console.sol", "nameLocation": "-1:-1:-1", @@ -284,7 +139,6 @@ "id": 1863, "nodeType": "ImportDirective", "src": "212:40:2", - "nodes": [], "absolutePath": "lib/forge-std/src/console2.sol", "file": "./console2.sol", "nameLocation": "-1:-1:-1", @@ -310,7 +164,6 @@ "id": 1865, "nodeType": "ImportDirective", "src": "253:42:2", - "nodes": [], "absolutePath": "lib/forge-std/src/StdChains.sol", "file": "./StdChains.sol", "nameLocation": "-1:-1:-1", @@ -336,7 +189,6 @@ "id": 1867, "nodeType": "ImportDirective", "src": "296:46:2", - "nodes": [], "absolutePath": "lib/forge-std/src/StdCheats.sol", "file": "./StdCheats.sol", "nameLocation": "-1:-1:-1", @@ -362,7 +214,6 @@ "id": 1869, "nodeType": "ImportDirective", "src": "343:38:2", - "nodes": [], "absolutePath": "lib/forge-std/src/StdJson.sol", "file": "./StdJson.sol", "nameLocation": "-1:-1:-1", @@ -388,7 +239,6 @@ "id": 1871, "nodeType": "ImportDirective", "src": "382:38:2", - "nodes": [], "absolutePath": "lib/forge-std/src/StdMath.sol", "file": "./StdMath.sol", "nameLocation": "-1:-1:-1", @@ -414,7 +264,6 @@ "id": 1874, "nodeType": "ImportDirective", "src": "421:60:2", - "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -452,7 +301,6 @@ "id": 1876, "nodeType": "ImportDirective", "src": "482:40:2", - "nodes": [], "absolutePath": "lib/forge-std/src/StdUtils.sol", "file": "./StdUtils.sol", "nameLocation": "-1:-1:-1", @@ -478,7 +326,6 @@ "id": 1878, "nodeType": "ImportDirective", "src": "523:32:2", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -504,7 +351,6 @@ "id": 1880, "nodeType": "ImportDirective", "src": "577:38:2", - "nodes": [], "absolutePath": "lib/forge-std/src/Base.sol", "file": "./Base.sol", "nameLocation": "-1:-1:-1", @@ -535,7 +381,6 @@ "id": 1891, "nodeType": "VariableDeclaration", "src": "758:28:2", - "nodes": [], "constant": false, "functionSelector": "f8ccbf47", "mutability": "mutable", @@ -583,9 +428,6 @@ "baseName": { "id": 1881, "name": "StdChains", - "nameLocations": [ - "662:9:2" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3244, "src": "662:9:2" @@ -598,9 +440,6 @@ "baseName": { "id": 1883, "name": "StdCheatsSafe", - "nameLocations": [ - "673:13:2" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 4792, "src": "673:13:2" @@ -613,9 +452,6 @@ "baseName": { "id": 1885, "name": "StdUtils", - "nameLocations": [ - "688:8:2" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8153, "src": "688:8:2" @@ -628,9 +464,6 @@ "baseName": { "id": 1887, "name": "ScriptBase", - "nameLocations": [ - "698:10:2" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1855, "src": "698:10:2" diff --git a/out/StdAssertions.sol/StdAssertions.json b/out/StdAssertions.sol/StdAssertions.json index 85515ad..2a47b96 100644 --- a/out/StdAssertions.sol/StdAssertions.json +++ b/out/StdAssertions.sol/StdAssertions.json @@ -405,461 +405,6 @@ "IS_TEST()": "fa7626d4", "failed()": "ba414fa6" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdAssertions.sol\":\"StdAssertions\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "val", - "type": "uint256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256[]", - "name": "val", - "type": "int256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "val", - "type": "address[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address", - "name": "val", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_named_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256[]", - "name": "val", - "type": "uint256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256[]", - "name": "val", - "type": "int256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address[]", - "name": "val", - "type": "address[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes", - "name": "val", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes32", - "name": "val", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "string", - "name": "val", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_named_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "logs", - "anonymous": false - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "IS_TEST", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "failed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdAssertions.sol": "StdAssertions" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/lib/ds-test/src/test.sol": { - "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", - "urls": [ - "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", - "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" - ], - "license": "GPL-3.0-or-later" - }, - "lib/forge-std/src/StdAssertions.sol": { - "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", - "urls": [ - "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", - "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdAssertions.sol", "id": 2709, @@ -881,7 +426,6 @@ "id": 1894, "nodeType": "PragmaDirective", "src": "32:31:3", - "nodes": [], "literals": [ "solidity", ">=", @@ -896,7 +440,6 @@ "id": 1896, "nodeType": "ImportDirective", "src": "65:40:3", - "nodes": [], "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", "file": "ds-test/test.sol", "nameLocation": "-1:-1:-1", @@ -922,7 +465,6 @@ "id": 1898, "nodeType": "ImportDirective", "src": "106:38:3", - "nodes": [], "absolutePath": "lib/forge-std/src/StdMath.sol", "file": "./StdMath.sol", "nameLocation": "-1:-1:-1", @@ -953,7 +495,6 @@ "id": 1905, "nodeType": "EventDefinition", "src": "194:31:3", - "nodes": [], "anonymous": false, "eventSelector": "fb102865d50addddf69da9b5aa1bced66c80cf869a5c8d0471a467e18ce9cab1", "name": "log_array", @@ -1007,7 +548,6 @@ "id": 1910, "nodeType": "EventDefinition", "src": "230:30:3", - "nodes": [], "anonymous": false, "eventSelector": "890a82679b470f2bd82816ed9b161f97d8b967f37fa3647c21d5bf39749e2dd5", "name": "log_array", @@ -1061,7 +601,6 @@ "id": 1915, "nodeType": "EventDefinition", "src": "265:31:3", - "nodes": [], "anonymous": false, "eventSelector": "40e1840f5769073d61bd01372d9b75baa9842d5629a0c99ff103be1178a8e9e2", "name": "log_array", @@ -1116,7 +655,6 @@ "id": 1922, "nodeType": "EventDefinition", "src": "301:49:3", - "nodes": [], "anonymous": false, "eventSelector": "00aaa39c9ffb5f567a4534380c737075702e1f7f14107fc95328e3b56c0325fb", "name": "log_named_array", @@ -1198,7 +736,6 @@ "id": 1929, "nodeType": "EventDefinition", "src": "355:48:3", - "nodes": [], "anonymous": false, "eventSelector": "a73eda09662f46dde729be4611385ff34fe6c44fbbc6f7e17b042b59a3445b57", "name": "log_named_array", @@ -1280,7 +817,6 @@ "id": 1936, "nodeType": "EventDefinition", "src": "408:49:3", - "nodes": [], "anonymous": false, "eventSelector": "3bcfb2ae2e8d132dd1fce7cf278a9a19756a9fceabe470df3bdabb4bc577d1bd", "name": "log_named_array", @@ -1363,12 +899,10 @@ "id": 1950, "nodeType": "FunctionDefinition", "src": "463:118:3", - "nodes": [], "body": { "id": 1949, "nodeType": "Block", "src": "513:68:3", - "nodes": [], "statements": [ { "eventCall": { @@ -1430,7 +964,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "528:30:3", @@ -1469,7 +1002,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "568:6:3", @@ -1539,12 +1071,10 @@ "id": 1961, "nodeType": "FunctionDefinition", "src": "587:83:3", - "nodes": [], "body": { "id": 1960, "nodeType": "Block", "src": "636:34:3", - "nodes": [], "statements": [ { "expression": { @@ -1604,7 +1134,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "646:17:3", @@ -1674,12 +1203,10 @@ "id": 1975, "nodeType": "FunctionDefinition", "src": "676:107:3", - "nodes": [], "body": { "id": 1974, "nodeType": "Block", "src": "744:39:3", - "nodes": [], "statements": [ { "expression": { @@ -1755,7 +1282,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "754:22:3", @@ -1852,12 +1378,10 @@ "id": 2011, "nodeType": "FunctionDefinition", "src": "789:312:3", - "nodes": [], "body": { "id": 2010, "nodeType": "Block", "src": "840:261:3", - "nodes": [], "statements": [ { "condition": { @@ -1954,7 +1478,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "881:41:3", @@ -2073,7 +1596,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "941:52:3", @@ -2192,7 +1714,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1012:52:3", @@ -2231,7 +1752,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1078:6:3", @@ -2331,12 +1851,10 @@ "id": 2036, "nodeType": "FunctionDefinition", "src": "1107:186:3", - "nodes": [], "body": { "id": 2035, "nodeType": "Block", "src": "1177:116:3", - "nodes": [], "statements": [ { "condition": { @@ -2449,7 +1967,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1218:30:3", @@ -2540,7 +2057,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1262:14:3", @@ -2667,12 +2183,10 @@ "id": 2049, "nodeType": "FunctionDefinition", "src": "1299:99:3", - "nodes": [], "body": { "id": 2048, "nodeType": "Block", "src": "1366:32:3", - "nodes": [], "statements": [ { "expression": { @@ -2733,7 +2247,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1376:15:3", @@ -2830,12 +2343,10 @@ "id": 2065, "nodeType": "FunctionDefinition", "src": "1404:123:3", - "nodes": [], "body": { "id": 2064, "nodeType": "Block", "src": "1490:37:3", - "nodes": [], "statements": [ { "expression": { @@ -2912,7 +2423,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1500:20:3", @@ -3036,12 +2546,10 @@ "id": 2107, "nodeType": "FunctionDefinition", "src": "1533:344:3", - "nodes": [], "body": { "id": 2106, "nodeType": "Block", "src": "1608:269:3", - "nodes": [], "statements": [ { "condition": { @@ -3095,7 +2603,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1636:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "1632:10:3", @@ -3110,7 +2617,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1632:13:3", @@ -3145,7 +2651,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1622:24:3", @@ -3198,7 +2703,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1664:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "1660:10:3", @@ -3213,7 +2717,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1660:13:3", @@ -3248,7 +2751,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1650:24:3", @@ -3316,7 +2818,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1695:43:3", @@ -3394,7 +2895,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1757:32:3", @@ -3472,7 +2972,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1808:32:3", @@ -3511,7 +3010,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1854:6:3", @@ -3629,12 +3127,10 @@ "id": 2149, "nodeType": "FunctionDefinition", "src": "1883:341:3", - "nodes": [], "body": { "id": 2148, "nodeType": "Block", "src": "1956:268:3", - "nodes": [], "statements": [ { "condition": { @@ -3688,7 +3184,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1984:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "1980:10:3", @@ -3703,7 +3198,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1980:13:3", @@ -3738,7 +3232,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1970:24:3", @@ -3791,7 +3284,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2012:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2008:10:3", @@ -3806,7 +3298,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2008:13:3", @@ -3841,7 +3332,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1998:24:3", @@ -3909,7 +3399,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2043:42:3", @@ -3987,7 +3476,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2104:32:3", @@ -4065,7 +3553,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2155:32:3", @@ -4104,7 +3591,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2201:6:3", @@ -4222,12 +3708,10 @@ "id": 2191, "nodeType": "FunctionDefinition", "src": "2230:347:3", - "nodes": [], "body": { "id": 2190, "nodeType": "Block", "src": "2305:272:3", - "nodes": [], "statements": [ { "condition": { @@ -4281,7 +3765,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2333:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2329:10:3", @@ -4296,7 +3779,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2329:13:3", @@ -4331,7 +3813,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2319:24:3", @@ -4384,7 +3865,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2361:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2357:10:3", @@ -4399,7 +3879,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2357:13:3", @@ -4434,7 +3913,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2347:24:3", @@ -4502,7 +3980,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2392:46:3", @@ -4580,7 +4057,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2457:32:3", @@ -4658,7 +4134,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2508:32:3", @@ -4697,7 +4172,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2554:6:3", @@ -4817,12 +4291,10 @@ "id": 2228, "nodeType": "FunctionDefinition", "src": "2583:256:3", - "nodes": [], "body": { "id": 2227, "nodeType": "Block", "src": "2677:162:3", - "nodes": [], "statements": [ { "condition": { @@ -4876,7 +4348,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2705:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2701:10:3", @@ -4891,7 +4362,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2701:13:3", @@ -4926,7 +4396,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2691:24:3", @@ -4979,7 +4448,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2733:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2729:10:3", @@ -4994,7 +4462,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2729:13:3", @@ -5029,7 +4496,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2719:24:3", @@ -5113,7 +4579,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2764:30:3", @@ -5204,7 +4669,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2808:14:3", @@ -5349,12 +4813,10 @@ "id": 2265, "nodeType": "FunctionDefinition", "src": "2845:254:3", - "nodes": [], "body": { "id": 2264, "nodeType": "Block", "src": "2937:162:3", - "nodes": [], "statements": [ { "condition": { @@ -5408,7 +4870,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2965:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2961:10:3", @@ -5423,7 +4884,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2961:13:3", @@ -5458,7 +4918,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2951:24:3", @@ -5511,7 +4970,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2993:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2989:10:3", @@ -5526,7 +4984,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2989:13:3", @@ -5561,7 +5018,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2979:24:3", @@ -5645,7 +5101,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3024:30:3", @@ -5736,7 +5191,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3068:14:3", @@ -5881,12 +5335,10 @@ "id": 2302, "nodeType": "FunctionDefinition", "src": "3105:256:3", - "nodes": [], "body": { "id": 2301, "nodeType": "Block", "src": "3199:162:3", - "nodes": [], "statements": [ { "condition": { @@ -5940,7 +5392,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3227:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "3223:10:3", @@ -5955,7 +5406,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3223:13:3", @@ -5990,7 +5440,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3213:24:3", @@ -6043,7 +5492,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3255:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "3251:10:3", @@ -6058,7 +5506,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3251:13:3", @@ -6093,7 +5540,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3241:24:3", @@ -6177,7 +5623,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3286:30:3", @@ -6268,7 +5713,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3330:14:3", @@ -6415,12 +5859,10 @@ "id": 2321, "nodeType": "FunctionDefinition", "src": "3388:110:3", - "nodes": [], "body": { "id": 2320, "nodeType": "Block", "src": "3449:49:3", - "nodes": [], "statements": [ { "expression": { @@ -6472,7 +5914,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3468:10:3", @@ -6529,7 +5970,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3480:10:3", @@ -6589,7 +6029,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3459:32:3", @@ -6686,12 +6125,10 @@ "id": 2371, "nodeType": "FunctionDefinition", "src": "3504:470:3", - "nodes": [], "body": { "id": 2370, "nodeType": "Block", "src": "3588:386:3", - "nodes": [], "statements": [ { "assignments": [ @@ -6782,7 +6219,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3622:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 5967, @@ -6798,7 +6234,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3614:19:3", @@ -6906,7 +6341,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3685:41:3", @@ -6980,7 +6414,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3745:31:3", @@ -7054,7 +6487,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3795:31:3", @@ -7128,7 +6560,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3845:38:3", @@ -7202,7 +6633,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3902:35:3", @@ -7241,7 +6671,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3951:6:3", @@ -7368,12 +6797,10 @@ "id": 2407, "nodeType": "FunctionDefinition", "src": "3980:294:3", - "nodes": [], "body": { "id": 2406, "nodeType": "Block", "src": "4083:191:3", - "nodes": [], "statements": [ { "assignments": [ @@ -7464,7 +6891,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4117:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 5967, @@ -7480,7 +6906,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4109:19:3", @@ -7604,7 +7029,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4180:30:3", @@ -7695,7 +7119,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4224:33:3", @@ -7849,12 +7272,10 @@ "id": 2457, "nodeType": "FunctionDefinition", "src": "4280:465:3", - "nodes": [], "body": { "id": 2456, "nodeType": "Block", "src": "4362:383:3", - "nodes": [], "statements": [ { "assignments": [ @@ -7945,7 +7366,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4396:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 6003, @@ -7961,7 +7381,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4388:19:3", @@ -8069,7 +7488,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4459:40:3", @@ -8143,7 +7561,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4518:30:3", @@ -8217,7 +7634,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4567:30:3", @@ -8291,7 +7707,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4616:38:3", @@ -8365,7 +7780,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4673:35:3", @@ -8404,7 +7818,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4722:6:3", @@ -8531,12 +7944,10 @@ "id": 2493, "nodeType": "FunctionDefinition", "src": "4751:292:3", - "nodes": [], "body": { "id": 2492, "nodeType": "Block", "src": "4852:191:3", - "nodes": [], "statements": [ { "assignments": [ @@ -8627,7 +8038,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4886:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 6003, @@ -8643,7 +8053,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4878:19:3", @@ -8767,7 +8176,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4949:30:3", @@ -8858,7 +8266,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4993:33:3", @@ -9012,12 +8419,10 @@ "id": 2554, "nodeType": "FunctionDefinition", "src": "5049:726:3", - "nodes": [], "body": { "id": 2553, "nodeType": "Block", "src": "5226:549:3", - "nodes": [], "statements": [ { "condition": { @@ -9146,7 +8551,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5255:14:3", @@ -9251,7 +8655,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5356:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6026, @@ -9267,7 +8670,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5348:26:3", @@ -9375,7 +8777,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5440:41:3", @@ -9449,7 +8850,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5500:33:3", @@ -9523,7 +8923,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5552:33:3", @@ -9617,7 +9016,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5604:59:3", @@ -9711,7 +9109,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5682:56:3", @@ -9750,7 +9147,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5752:6:3", @@ -9877,12 +9273,10 @@ "id": 2600, "nodeType": "FunctionDefinition", "src": "5781:524:3", - "nodes": [], "body": { "id": 2599, "nodeType": "Block", "src": "5985:320:3", - "nodes": [], "statements": [ { "condition": { @@ -10027,7 +9421,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6014:19:3", @@ -10132,7 +9525,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6120:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6026, @@ -10148,7 +9540,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6112:26:3", @@ -10272,7 +9663,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6204:30:3", @@ -10363,7 +9753,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6248:40:3", @@ -10517,12 +9906,10 @@ "id": 2661, "nodeType": "FunctionDefinition", "src": "6311:635:3", - "nodes": [], "body": { "id": 2660, "nodeType": "Block", "src": "6400:546:3", - "nodes": [], "statements": [ { "condition": { @@ -10651,7 +10038,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6429:14:3", @@ -10756,7 +10142,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6530:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6055, @@ -10772,7 +10157,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6522:26:3", @@ -10880,7 +10264,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6614:40:3", @@ -10954,7 +10337,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6673:32:3", @@ -11028,7 +10410,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6724:32:3", @@ -11122,7 +10503,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6775:59:3", @@ -11216,7 +10596,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6853:56:3", @@ -11255,7 +10634,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6923:6:3", @@ -11382,12 +10760,10 @@ "id": 2707, "nodeType": "FunctionDefinition", "src": "6952:428:3", - "nodes": [], "body": { "id": 2706, "nodeType": "Block", "src": "7060:320:3", - "nodes": [], "statements": [ { "condition": { @@ -11532,7 +10908,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:19:3", @@ -11637,7 +11012,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7195:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6055, @@ -11653,7 +11027,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7187:26:3", @@ -11777,7 +11150,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7279:30:3", @@ -11868,7 +11240,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7323:40:3", @@ -12025,9 +11396,6 @@ "baseName": { "id": 1899, "name": "DSTest", - "nameLocations": [ - "181:6:3" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, "src": "181:6:3" diff --git a/out/StdChains.sol/StdChains.json b/out/StdChains.sol/StdChains.json index 1549d4c..2aad4d9 100644 --- a/out/StdChains.sol/StdChains.json +++ b/out/StdChains.sol/StdChains.json @@ -11,62 +11,6 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"StdChains provides information about EVM compatible chains that can be used in scripts/tests. For each chain, the chain's name, chain ID, and a default RPC URL are provided. Chains are identified by their alias, which is the same as the alias in the `[rpc_endpoints]` section of the `foundry.toml` file. For best UX, ensure the alias in the `foundry.toml` file match the alias used in this contract, which can be found as the first argument to the `setChainWithDefaultRpcUrl` call in the `initialize` function. There are two main ways to use this contract: 1. Set a chain with `setChain(string memory chainAlias, Chain memory chain)` 2. Get a chain with `getChain(string memory chainAlias)` or `getChain(uint256 chainId)`. The first time either of those are used, chains are initialized with the default set of RPC URLs. This is done in `initialize`, which uses `setChainWithDefaultRpcUrl`. Defaults are recorded in `defaultRpcUrls`. The `setChain` function is straightforward, and it simply saves off the given chain data. The `getChain` methods use `getChainWithUpdatedRpcUrl` to return a chain. For example, let's say we want to retrieve `mainnet`'s RPC URL: - If you haven't set any mainnet chain info with `setChain` and you haven't specified that chain in `foundry.toml`, the default data and RPC URL will be returned. - If you have set a mainnet RPC URL in `foundry.toml` it will return that, if valid (e.g. if a URL is given or if an environment variable is given and that environment variable exists). Otherwise, the default data is returned. - If you specified data with `setChain` it will return that. Summarizing the above, the prioritization hierarchy is `setChain` -> `foundry.toml` -> defaults.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdChains.sol\":\"StdChains\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdChains.sol": "StdChains" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdChains.sol", "id": 3245, @@ -85,7 +29,6 @@ "id": 2710, "nodeType": "PragmaDirective", "src": "32:31:4", - "nodes": [], "literals": [ "solidity", ">=", @@ -100,7 +43,6 @@ "id": 2711, "nodeType": "PragmaDirective", "src": "65:33:4", - "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -110,7 +52,6 @@ "id": 2713, "nodeType": "ImportDirective", "src": "100:32:4", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -141,7 +82,6 @@ "id": 2731, "nodeType": "VariableDeclaration", "src": "1989:92:4", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -159,9 +99,6 @@ "pathNode": { "id": 2715, "name": "VmSafe", - "nameLocations": [ - "1989:6:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1989:6:4" @@ -224,7 +161,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2049:28:4", @@ -267,7 +203,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2041:37:4", @@ -310,7 +245,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2033:46:4", @@ -353,7 +287,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2025:55:4", @@ -388,7 +321,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2018:63:4", @@ -404,7 +336,6 @@ "id": 2733, "nodeType": "VariableDeclaration", "src": "2088:24:4", - "nodes": [], "constant": false, "mutability": "mutable", "name": "initialized", @@ -432,7 +363,6 @@ "id": 2740, "nodeType": "StructDefinition", "src": "2119:495:4", - "nodes": [], "canonicalName": "StdChains.Chain", "members": [ { @@ -526,7 +456,6 @@ "id": 2745, "nodeType": "VariableDeclaration", "src": "2718:39:4", - "nodes": [], "constant": false, "mutability": "mutable", "name": "chains", @@ -562,9 +491,6 @@ "pathNode": { "id": 2742, "name": "Chain", - "nameLocations": [ - "2736:5:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "2736:5:4" @@ -583,7 +509,6 @@ "id": 2749, "nodeType": "VariableDeclaration", "src": "2823:48:4", - "nodes": [], "constant": false, "mutability": "mutable", "name": "defaultRpcUrls", @@ -630,7 +555,6 @@ "id": 2753, "nodeType": "VariableDeclaration", "src": "2920:44:4", - "nodes": [], "constant": false, "mutability": "mutable", "name": "idToAlias", @@ -677,12 +601,10 @@ "id": 2805, "nodeType": "FunctionDefinition", "src": "3049:515:4", - "nodes": [], "body": { "id": 2804, "nodeType": "Block", "src": "3139:425:4", - "nodes": [], "statements": [ { "expression": { @@ -745,7 +667,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3157:17:4", @@ -760,7 +681,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3175:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "3157:24:4", @@ -841,7 +761,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3149:109:4", @@ -877,7 +796,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3269:12:4", @@ -990,7 +908,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3354:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -1105,7 +1022,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3391:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3387:16:4", @@ -1120,7 +1036,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3387:96:4", @@ -1163,7 +1078,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3380:104:4", @@ -1205,7 +1119,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3327:167:4", @@ -1295,7 +1208,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3513:44:4", @@ -1381,9 +1293,6 @@ "pathNode": { "id": 2757, "name": "Chain", - "nameLocations": [ - "3119:5:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "3119:5:4" @@ -1409,12 +1318,10 @@ "id": 2862, "nodeType": "FunctionDefinition", "src": "3570:532:4", - "nodes": [], "body": { "id": 2861, "nodeType": "Block", "src": "3651:451:4", - "nodes": [], "statements": [ { "expression": { @@ -1513,7 +1420,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3661:75:4", @@ -1549,7 +1455,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3746:12:4", @@ -1736,7 +1641,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3888:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -1829,7 +1733,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3988:8:4", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -1845,7 +1748,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3985:20:4", @@ -1904,7 +1806,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3925:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3921:16:4", @@ -1919,7 +1820,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3921:100:4", @@ -1962,7 +1862,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3914:108:4", @@ -2004,7 +1903,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3861:171:4", @@ -2094,7 +1992,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4051:44:4", @@ -2180,9 +2077,6 @@ "pathNode": { "id": 2809, "name": "Chain", - "nameLocations": [ - "3631:5:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "3631:5:4" @@ -2208,12 +2102,10 @@ "id": 2964, "nodeType": "FunctionDefinition", "src": "4173:1034:4", - "nodes": [], "body": { "id": 2963, "nodeType": "Block", "src": "4254:953:4", - "nodes": [], "statements": [ { "expression": { @@ -2276,7 +2168,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4285:17:4", @@ -2291,7 +2182,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4303:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "4285:24:4", @@ -2372,7 +2262,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4264:137:4", @@ -2417,7 +2306,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4426:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -2499,7 +2387,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4412:86:4", @@ -2535,7 +2422,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4509:12:4", @@ -2615,7 +2501,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4574:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -2710,7 +2595,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4614:17:4", @@ -2725,7 +2609,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4632:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "4614:24:4", @@ -2819,7 +2702,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4657:17:4", @@ -2854,7 +2736,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4647:28:4", @@ -2915,7 +2796,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4689:17:4", @@ -2950,7 +2830,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4679:28:4", @@ -3012,7 +2891,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4868:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -3047,7 +2925,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4853:8:4", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -3063,7 +2940,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4850:26:4", @@ -3158,7 +3034,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4749:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4745:16:4", @@ -3173,7 +3048,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4745:251:4", @@ -3216,7 +3090,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4721:289:4", @@ -3258,7 +3131,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4593:427:4", @@ -3349,7 +3221,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5071:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -3526,7 +3397,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5179:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -3630,9 +3500,6 @@ "pathNode": { "id": 2865, "name": "Chain", - "nameLocations": [ - "4217:5:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "4217:5:4" @@ -3664,12 +3531,10 @@ "id": 3051, "nodeType": "FunctionDefinition", "src": "5319:979:4", - "nodes": [], "body": { "id": 3050, "nodeType": "Block", "src": "5464:834:4", - "nodes": [], "statements": [ { "condition": { @@ -3703,7 +3568,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5490:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -3746,7 +3610,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5478:19:4", @@ -3761,7 +3624,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5498:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "5478:26:4", @@ -3835,7 +3697,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "5612:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -3941,7 +3802,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "5698:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -4113,7 +3973,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5915:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5911:16:4", @@ -4128,7 +3987,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5911:48:4", @@ -4171,7 +4029,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5904:56:4", @@ -4210,7 +4067,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5866:19:4", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5862:23:4", @@ -4225,7 +4081,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5862:99:4", @@ -4298,7 +4153,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5983:24:4", @@ -4349,7 +4203,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6011:14:4", @@ -4398,7 +4251,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6041:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -4441,7 +4293,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6029:19:4", @@ -4456,7 +4307,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6049:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "6029:26:4", @@ -4670,7 +4520,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5532:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 9000, @@ -4686,7 +4535,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5529:21:4", @@ -4780,9 +4628,6 @@ "pathNode": { "id": 2967, "name": "Chain", - "nameLocations": [ - "5380:5:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "5380:5:4" @@ -4824,9 +4669,6 @@ "pathNode": { "id": 2971, "name": "Chain", - "nameLocations": [ - "5446:5:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "5446:5:4" @@ -4852,12 +4694,10 @@ "id": 3206, "nodeType": "FunctionDefinition", "src": "6304:2240:4", - "nodes": [], "body": { "id": 3205, "nodeType": "Block", "src": "6334:2210:4", - "nodes": [], "statements": [ { "condition": { @@ -5031,7 +4871,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6528:46:4", @@ -5070,7 +4909,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6493:82:4", @@ -5186,7 +5024,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6635:84:4", @@ -5225,7 +5062,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6585:144:4", @@ -5341,7 +5177,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6788:82:4", @@ -5380,7 +5215,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6739:141:4", @@ -5496,7 +5330,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6940:91:4", @@ -5535,7 +5368,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6890:151:4", @@ -5651,7 +5483,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:52:4", @@ -5690,7 +5521,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7051:91:4", @@ -5806,7 +5636,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7197:59:4", @@ -5845,7 +5674,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7152:105:4", @@ -5961,7 +5789,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7309:60:4", @@ -6000,7 +5827,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7267:103:4", @@ -6116,7 +5942,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7442:77:4", @@ -6155,7 +5980,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7380:149:4", @@ -6271,7 +6095,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7582:61:4", @@ -6310,7 +6133,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7539:105:4", @@ -6426,7 +6248,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7691:48:4", @@ -6465,7 +6286,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7654:86:4", @@ -6581,7 +6401,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7794:67:4", @@ -6620,7 +6439,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7750:112:4", @@ -6736,7 +6554,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7911:66:4", @@ -6775,7 +6592,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7872:106:4", @@ -6891,7 +6707,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8045:76:4", @@ -6930,7 +6745,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7988:143:4", @@ -7046,7 +6860,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8186:65:4", @@ -7085,7 +6898,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8141:111:4", @@ -7201,7 +7013,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8315:86:4", @@ -7240,7 +7051,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8262:140:4", @@ -7356,7 +7166,6 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8479:57:4", @@ -7395,7 +7204,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8437:100:4", @@ -7437,12 +7245,10 @@ "id": 3243, "nodeType": "FunctionDefinition", "src": "8626:301:4", - "nodes": [], "body": { "id": 3242, "nodeType": "Block", "src": "8715:212:4", - "nodes": [], "statements": [ { "assignments": [ @@ -7496,7 +7302,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8754:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -7602,7 +7407,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8821:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -7696,7 +7500,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8842:27:4", @@ -7735,7 +7538,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8885:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -7828,9 +7630,6 @@ "pathNode": { "id": 3209, "name": "Chain", - "nameLocations": [ - "8687:5:4" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "8687:5:4" diff --git a/out/StdCheats.sol/StdCheats.json b/out/StdCheats.sol/StdCheats.json index a7c6cee..bf99edd 100644 --- a/out/StdCheats.sol/StdCheats.json +++ b/out/StdCheats.sol/StdCheats.json @@ -11,70 +11,6 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdCheats.sol\":\"StdCheats\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdCheats.sol": "StdCheats" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdCheats.sol", "id": 5182, @@ -102,7 +38,6 @@ "id": 3246, "nodeType": "PragmaDirective", "src": "32:31:5", - "nodes": [], "literals": [ "solidity", ">=", @@ -117,7 +52,6 @@ "id": 3247, "nodeType": "PragmaDirective", "src": "65:33:5", - "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -127,7 +61,6 @@ "id": 3250, "nodeType": "ImportDirective", "src": "100:56:5", - "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -165,7 +98,6 @@ "id": 3252, "nodeType": "ImportDirective", "src": "157:28:5", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -196,7 +128,6 @@ "id": 3269, "nodeType": "VariableDeclaration", "src": "225:84:5", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -214,9 +145,6 @@ "pathNode": { "id": 3253, "name": "Vm", - "nameLocations": [ - "225:2:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "225:2:5" @@ -279,7 +207,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "277:28:5", @@ -322,7 +249,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "269:37:5", @@ -365,7 +291,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "261:46:5", @@ -408,7 +333,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "253:55:5", @@ -443,7 +367,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "250:59:5", @@ -459,7 +382,6 @@ "id": 3271, "nodeType": "VariableDeclaration", "src": "316:27:5", - "nodes": [], "constant": false, "mutability": "mutable", "name": "gasMeteringOff", @@ -487,7 +409,6 @@ "id": 3288, "nodeType": "StructDefinition", "src": "588:325:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559", "members": [ { @@ -656,9 +577,6 @@ "pathNode": { "id": 3283, "name": "RawTx1559Detail", - "nameLocations": [ - "825:15:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "825:15:5" @@ -709,7 +627,6 @@ "id": 3307, "nodeType": "StructDefinition", "src": "919:208:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559Detail", "members": [ { @@ -734,9 +651,6 @@ "pathNode": { "id": 3289, "name": "AccessList", - "nameLocations": [ - "952:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "952:10:5" @@ -959,7 +873,6 @@ "id": 3324, "nodeType": "StructDefinition", "src": "1133:215:5", - "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559", "members": [ { @@ -1128,9 +1041,6 @@ "pathNode": { "id": 3319, "name": "Tx1559Detail", - "nameLocations": [ - "1297:12:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "1297:12:5" @@ -1181,7 +1091,6 @@ "id": 3343, "nodeType": "StructDefinition", "src": "1354:213:5", - "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559Detail", "members": [ { @@ -1206,9 +1115,6 @@ "pathNode": { "id": 3325, "name": "AccessList", - "nameLocations": [ - "1384:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "1384:10:5" @@ -1431,7 +1337,6 @@ "id": 3360, "nodeType": "StructDefinition", "src": "1818:221:5", - "nodes": [], "canonicalName": "StdCheatsSafe.TxLegacy", "members": [ { @@ -1627,9 +1532,6 @@ "pathNode": { "id": 3357, "name": "TxDetailLegacy", - "nameLocations": [ - "2006:14:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3393, "src": "2006:14:5" @@ -1653,7 +1555,6 @@ "id": 3393, "nodeType": "StructDefinition", "src": "2045:366:5", - "nodes": [], "canonicalName": "StdCheatsSafe.TxDetailLegacy", "members": [ { @@ -1678,9 +1579,6 @@ "pathNode": { "id": 3361, "name": "AccessList", - "nameLocations": [ - "2077:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "2077:10:5" @@ -2092,7 +1990,6 @@ "id": 3399, "nodeType": "StructDefinition", "src": "2417:87:5", - "nodes": [], "canonicalName": "StdCheatsSafe.AccessList", "members": [ { @@ -2169,7 +2066,6 @@ "id": 3428, "nodeType": "StructDefinition", "src": "2720:385:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawReceipt", "members": [ { @@ -2385,9 +2281,6 @@ "pathNode": { "id": 3414, "name": "RawReceiptLog", - "nameLocations": [ - "2946:13:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "2946:13:5" @@ -2555,7 +2448,6 @@ "id": 3457, "nodeType": "StructDefinition", "src": "3111:391:5", - "nodes": [], "canonicalName": "StdCheatsSafe.Receipt", "members": [ { @@ -2771,9 +2663,6 @@ "pathNode": { "id": 3443, "name": "ReceiptLog", - "nameLocations": [ - "3342:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "3342:10:5" @@ -2941,7 +2830,6 @@ "id": 3480, "nodeType": "StructDefinition", "src": "3625:227:5", - "nodes": [], "canonicalName": "StdCheatsSafe.EIP1559ScriptArtifact", "members": [ { @@ -3065,9 +2953,6 @@ "pathNode": { "id": 3466, "name": "Receipt", - "nameLocations": [ - "3739:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "3739:7:5" @@ -3138,9 +3023,6 @@ "pathNode": { "id": 3472, "name": "Tx1559", - "nameLocations": [ - "3794:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "3794:6:5" @@ -3184,9 +3066,6 @@ "pathNode": { "id": 3476, "name": "TxReturn", - "nameLocations": [ - "3825:8:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "3825:8:5" @@ -3218,7 +3097,6 @@ "id": 3503, "nodeType": "StructDefinition", "src": "3858:236:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawEIP1559ScriptArtifact", "members": [ { @@ -3342,9 +3220,6 @@ "pathNode": { "id": 3489, "name": "RawReceipt", - "nameLocations": [ - "3975:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "3975:10:5" @@ -3388,9 +3263,6 @@ "pathNode": { "id": 3493, "name": "TxReturn", - "nameLocations": [ - "4006:8:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "4006:8:5" @@ -3461,9 +3333,6 @@ "pathNode": { "id": 3499, "name": "RawTx1559", - "nameLocations": [ - "4063:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "4063:9:5" @@ -3495,7 +3364,6 @@ "id": 3525, "nodeType": "StructDefinition", "src": "4100:334:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawReceiptLog", "members": [ { @@ -3788,7 +3656,6 @@ "id": 3545, "nodeType": "StructDefinition", "src": "4440:306:5", - "nodes": [], "canonicalName": "StdCheatsSafe.ReceiptLog", "members": [ { @@ -4054,7 +3921,6 @@ "id": 3550, "nodeType": "StructDefinition", "src": "4752:74:5", - "nodes": [], "canonicalName": "StdCheatsSafe.TxReturn", "members": [ { @@ -4121,12 +3987,10 @@ "id": 3565, "nodeType": "FunctionDefinition", "src": "4832:274:5", - "nodes": [], "body": { "id": 3564, "nodeType": "Block", "src": "4892:214:5", - "nodes": [], "statements": [ { "assignments": [ @@ -4266,7 +4130,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5065:34:5", @@ -4337,12 +4200,10 @@ "id": 3708, "nodeType": "FunctionDefinition", "src": "5112:1788:5", - "nodes": [], "body": { "id": 3707, "nodeType": "Block", "src": "5194:1706:5", - "nodes": [], "statements": [ { "expression": { @@ -4432,7 +4293,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5499:12:5", @@ -4525,7 +4385,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5522:12:5", @@ -4572,7 +4431,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5485:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -4588,7 +4446,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5482:53:5", @@ -5031,7 +4888,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6446:51:5", @@ -5124,7 +4980,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6508:51:5", @@ -5171,7 +5026,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6432:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5187,7 +5041,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6429:131:5", @@ -5289,7 +5142,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6591:51:5", @@ -5382,7 +5234,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6653:51:5", @@ -5429,7 +5280,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6577:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5445,7 +5295,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6574:131:5", @@ -5547,7 +5396,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6736:51:5", @@ -5640,7 +5488,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6798:51:5", @@ -5687,7 +5534,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6722:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5703,7 +5549,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6719:131:5", @@ -5816,7 +5661,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6113:51:5", @@ -5909,7 +5753,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6175:51:5", @@ -5956,7 +5799,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6099:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5972,7 +5814,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6096:131:5", @@ -6085,7 +5926,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5799:51:5", @@ -6178,7 +6018,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5861:51:5", @@ -6225,7 +6064,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5785:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -6241,7 +6079,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5782:131:5", @@ -6342,12 +6179,10 @@ "id": 3800, "nodeType": "FunctionDefinition", "src": "6906:843:5", - "nodes": [], "body": { "id": 3799, "nodeType": "Block", "src": "7058:691:5", - "nodes": [], "statements": [ { "assignments": [ @@ -6422,7 +6257,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7092:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -6438,7 +6272,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:17:5", @@ -6524,7 +6357,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7145:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8816, @@ -6540,7 +6372,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7142:18:5", @@ -6579,9 +6410,6 @@ "pathNode": { "id": 3730, "name": "RawEIP1559ScriptArtifact", - "nameLocations": [ - "7170:24:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3503, "src": "7170:24:5" @@ -6668,7 +6496,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7220:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "7216:10:5", @@ -6683,7 +6510,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7216:50:5", @@ -6722,9 +6548,6 @@ "pathNode": { "id": 3740, "name": "EIP1559ScriptArtifact", - "nameLocations": [ - "7276:21:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7276:21:5" @@ -6768,7 +6591,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7332:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3460, @@ -6798,7 +6620,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7356:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3483, @@ -6843,7 +6664,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7384:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3462, @@ -6873,7 +6693,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7403:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3485, @@ -6918,7 +6737,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7426:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3471, @@ -6948,7 +6766,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7450:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3498, @@ -6993,7 +6810,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7478:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3465, @@ -7023,7 +6839,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7500:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3488, @@ -7068,7 +6883,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7526:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3479, @@ -7098,7 +6912,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7550:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3496, @@ -7143,7 +6956,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7578:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3469, @@ -7175,7 +6987,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7624:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3492, @@ -7210,7 +7021,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7589:44:5", @@ -7255,7 +7065,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7652:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3475, @@ -7287,7 +7096,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7704:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3502, @@ -7322,7 +7130,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7667:50:5", @@ -7426,9 +7233,6 @@ "pathNode": { "id": 3712, "name": "EIP1559ScriptArtifact", - "nameLocations": [ - "7024:21:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7024:21:5" @@ -7454,12 +7258,10 @@ "id": 3849, "nodeType": "FunctionDefinition", "src": "7755:312:5", - "nodes": [], "body": { "id": 3848, "nodeType": "Block", "src": "7864:203:5", - "nodes": [], "statements": [ { "assignments": [ @@ -7488,9 +7290,6 @@ "pathNode": { "id": 3812, "name": "Tx1559", - "nameLocations": [ - "7874:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7874:6:5" @@ -7534,7 +7333,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7916:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7909:13:5", @@ -7569,9 +7367,6 @@ "pathNode": { "id": 3816, "name": "Tx1559", - "nameLocations": [ - "7900:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7900:6:5" @@ -7598,7 +7393,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7896:27:5", @@ -7727,7 +7521,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7996:34:5", @@ -7791,7 +7584,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7960:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7953:13:5", @@ -7930,9 +7722,6 @@ "pathNode": { "id": 3801, "name": "RawTx1559", - "nameLocations": [ - "7789:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "7789:9:5" @@ -7983,9 +7772,6 @@ "pathNode": { "id": 3806, "name": "Tx1559", - "nameLocations": [ - "7847:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7847:6:5" @@ -8019,12 +7805,10 @@ "id": 3909, "nodeType": "FunctionDefinition", "src": "8073:488:5", - "nodes": [], "body": { "id": 3908, "nodeType": "Block", "src": "8176:385:5", - "nodes": [], "statements": [ { "assignments": [ @@ -8052,9 +7836,6 @@ "pathNode": { "id": 3858, "name": "Tx1559", - "nameLocations": [ - "8186:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8186:6:5" @@ -8098,7 +7879,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8233:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3310, @@ -8128,7 +7908,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8251:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3274, @@ -8173,7 +7952,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8282:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3314, @@ -8203,7 +7981,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8303:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3278, @@ -8248,7 +8025,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8337:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3316, @@ -8278,7 +8054,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8357:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3280, @@ -8323,7 +8098,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8390:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3318, @@ -8353,7 +8127,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8403:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3282, @@ -8398,7 +8171,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8429:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3321, @@ -8430,7 +8202,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8474:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3285, @@ -8465,7 +8236,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8440:43:5", @@ -8510,7 +8280,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8505:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3323, @@ -8540,7 +8309,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8520:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3287, @@ -8610,9 +8378,6 @@ "pathNode": { "id": 3850, "name": "RawTx1559", - "nameLocations": [ - "8106:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "8106:9:5" @@ -8654,9 +8419,6 @@ "pathNode": { "id": 3854, "name": "Tx1559", - "nameLocations": [ - "8161:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8161:6:5" @@ -8682,12 +8444,10 @@ "id": 3989, "nodeType": "FunctionDefinition", "src": "8567:619:5", - "nodes": [], "body": { "id": 3988, "nodeType": "Block", "src": "8726:460:5", - "nodes": [], "statements": [ { "assignments": [ @@ -8715,9 +8475,6 @@ "pathNode": { "id": 3918, "name": "Tx1559Detail", - "nameLocations": [ - "8736:12:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8736:12:5" @@ -8761,7 +8518,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8783:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3330, @@ -8791,7 +8547,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8800:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3294, @@ -8836,7 +8591,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8823:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3332, @@ -8866,7 +8620,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8840:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3296, @@ -8911,7 +8664,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8863:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3338, @@ -8941,7 +8693,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8878:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3302, @@ -8986,7 +8737,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8899:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3336, @@ -9018,7 +8768,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8930:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3300, @@ -9053,7 +8802,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:29:5", @@ -9098,7 +8846,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8955:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3340, @@ -9130,7 +8877,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8987:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3304, @@ -9165,7 +8911,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8964:30:5", @@ -9210,7 +8955,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "9013:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3342, @@ -9242,7 +8986,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9044:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3306, @@ -9277,7 +9020,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9021:29:5", @@ -9322,7 +9064,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "9069:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3334, @@ -9354,7 +9095,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9098:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3298, @@ -9389,7 +9129,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9075:27:5", @@ -9434,7 +9173,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "9121:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3328, @@ -9464,7 +9202,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9144:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3292, @@ -9534,9 +9271,6 @@ "pathNode": { "id": 3910, "name": "RawTx1559Detail", - "nameLocations": [ - "8604:15:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "8604:15:5" @@ -9578,9 +9312,6 @@ "pathNode": { "id": 3914, "name": "Tx1559Detail", - "nameLocations": [ - "8701:12:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8701:12:5" @@ -9606,12 +9337,10 @@ "id": 4031, "nodeType": "FunctionDefinition", "src": "9192:363:5", - "nodes": [], "body": { "id": 4030, "nodeType": "Block", "src": "9281:274:5", - "nodes": [], "statements": [ { "assignments": [ @@ -9686,7 +9415,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9321:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -9702,7 +9430,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9318:17:5", @@ -9808,7 +9535,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9380:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -9824,7 +9550,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9377:41:5", @@ -9864,9 +9589,6 @@ "pathNode": { "id": 4014, "name": "RawTx1559", - "nameLocations": [ - "9428:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9428:9:5" @@ -9974,7 +9696,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9460:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9456:10:5", @@ -9989,7 +9710,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9456:43:5", @@ -10042,7 +9762,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9516:32:5", @@ -10124,9 +9843,6 @@ "pathNode": { "id": 3993, "name": "Tx1559", - "nameLocations": [ - "9264:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9264:6:5" @@ -10160,12 +9876,10 @@ "id": 4086, "nodeType": "FunctionDefinition", "src": "9561:453:5", - "nodes": [], "body": { "id": 4085, "nodeType": "Block", "src": "9662:352:5", - "nodes": [], "statements": [ { "assignments": [ @@ -10240,7 +9954,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9702:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -10256,7 +9969,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9699:17:5", @@ -10362,7 +10074,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9791:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -10378,7 +10089,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9788:18:5", @@ -10437,7 +10147,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9757:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9753:16:5", @@ -10452,7 +10161,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9753:59:5", @@ -10495,7 +10203,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9746:67:5", @@ -10597,7 +10304,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9858:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -10613,7 +10319,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9855:29:5", @@ -10652,9 +10357,6 @@ "pathNode": { "id": 4071, "name": "RawTx1559", - "nameLocations": [ - "9894:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9894:9:5" @@ -10741,7 +10443,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9923:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9919:10:5", @@ -10756,7 +10457,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9919:41:5", @@ -10809,7 +10509,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9977:30:5", @@ -10917,9 +10616,6 @@ "pathNode": { "id": 4037, "name": "Tx1559", - "nameLocations": [ - "9647:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9647:6:5" @@ -10945,12 +10641,10 @@ "id": 4128, "nodeType": "FunctionDefinition", "src": "10076:371:5", - "nodes": [], "body": { "id": 4127, "nodeType": "Block", "src": "10167:280:5", - "nodes": [], "statements": [ { "assignments": [ @@ -11025,7 +10719,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10207:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -11041,7 +10734,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10204:17:5", @@ -11147,7 +10839,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10266:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -11163,7 +10854,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10263:37:5", @@ -11203,9 +10893,6 @@ "pathNode": { "id": 4111, "name": "RawReceipt", - "nameLocations": [ - "10310:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10310:10:5" @@ -11313,7 +11000,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10348:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10344:10:5", @@ -11328,7 +11014,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10344:44:5", @@ -11381,7 +11066,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10405:35:5", @@ -11463,9 +11147,6 @@ "pathNode": { "id": 4090, "name": "Receipt", - "nameLocations": [ - "10149:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10149:7:5" @@ -11499,12 +11180,10 @@ "id": 4183, "nodeType": "FunctionDefinition", "src": "10453:461:5", - "nodes": [], "body": { "id": 4182, "nodeType": "Block", "src": "10556:358:5", - "nodes": [], "statements": [ { "assignments": [ @@ -11579,7 +11258,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10596:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -11595,7 +11273,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10593:17:5", @@ -11701,7 +11378,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10681:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -11717,7 +11393,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10678:18:5", @@ -11776,7 +11451,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10651:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "10647:16:5", @@ -11791,7 +11465,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10647:55:5", @@ -11834,7 +11507,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10640:63:5", @@ -11936,7 +11608,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10748:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -11952,7 +11623,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10745:29:5", @@ -11991,9 +11661,6 @@ "pathNode": { "id": 4168, "name": "RawReceipt", - "nameLocations": [ - "10784:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10784:10:5" @@ -12080,7 +11747,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10819:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10815:10:5", @@ -12095,7 +11761,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10815:42:5", @@ -12148,7 +11813,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10874:33:5", @@ -12256,9 +11920,6 @@ "pathNode": { "id": 4134, "name": "Receipt", - "nameLocations": [ - "10540:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10540:7:5" @@ -12284,12 +11945,10 @@ "id": 4232, "nodeType": "FunctionDefinition", "src": "10920:347:5", - "nodes": [], "body": { "id": 4231, "nodeType": "Block", "src": "11034:233:5", - "nodes": [], "statements": [ { "assignments": [ @@ -12318,9 +11977,6 @@ "pathNode": { "id": 4195, "name": "Receipt", - "nameLocations": [ - "11044:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11044:7:5" @@ -12364,7 +12020,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11098:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11086:18:5", @@ -12399,9 +12054,6 @@ "pathNode": { "id": 4199, "name": "Receipt", - "nameLocations": [ - "11076:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11076:7:5" @@ -12428,7 +12080,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11072:33:5", @@ -12557,7 +12208,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11188:37:5", @@ -12621,7 +12271,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11147:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11135:18:5", @@ -12760,9 +12409,6 @@ "pathNode": { "id": 4184, "name": "RawReceipt", - "nameLocations": [ - "10952:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10952:10:5" @@ -12813,9 +12459,6 @@ "pathNode": { "id": 4189, "name": "Receipt", - "nameLocations": [ - "11016:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11016:7:5" @@ -12849,12 +12492,10 @@ "id": 4353, "nodeType": "FunctionDefinition", "src": "11273:962:5", - "nodes": [], "body": { "id": 4352, "nodeType": "Block", "src": "11381:854:5", - "nodes": [], "statements": [ { "assignments": [ @@ -12882,9 +12523,6 @@ "pathNode": { "id": 4241, "name": "Receipt", - "nameLocations": [ - "11391:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11391:7:5" @@ -12928,7 +12566,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11431:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3430, @@ -12958,7 +12595,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11454:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3401, @@ -13003,7 +12639,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11481:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3452, @@ -13033,7 +12668,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11497:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3423, @@ -13078,7 +12712,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11517:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3440, @@ -13108,7 +12741,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11535:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3411, @@ -13153,7 +12785,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11557:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3434, @@ -13183,7 +12814,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11586:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3405, @@ -13228,7 +12858,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11619:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3438, @@ -13260,7 +12889,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11663:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3409, @@ -13295,7 +12923,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11639:42:5", @@ -13340,7 +12967,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11699:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3436, @@ -13372,7 +12998,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11743:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3407, @@ -13407,7 +13032,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11719:42:5", @@ -13452,7 +13076,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11779:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3442, @@ -13484,7 +13107,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11813:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3413, @@ -13519,7 +13141,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11789:32:5", @@ -13564,7 +13185,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11839:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3450, @@ -13596,7 +13216,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11872:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3421, @@ -13631,7 +13250,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11848:31:5", @@ -13676,7 +13294,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11897:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3456, @@ -13708,7 +13325,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11940:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3427, @@ -13743,7 +13359,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11916:41:5", @@ -13788,7 +13403,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11975:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3432, @@ -13820,7 +13434,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12013:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3403, @@ -13855,7 +13468,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11989:36:5", @@ -13900,7 +13512,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12043:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3446, @@ -13932,7 +13543,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12087:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3417, @@ -13967,7 +13577,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12050:42:5", @@ -14012,7 +13621,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12110:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3448, @@ -14042,7 +13650,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12133:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3419, @@ -14087,7 +13694,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12160:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3454, @@ -14117,7 +13723,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12189:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3425, @@ -14187,9 +13792,6 @@ "pathNode": { "id": 4233, "name": "RawReceipt", - "nameLocations": [ - "11304:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "11304:10:5" @@ -14231,9 +13833,6 @@ "pathNode": { "id": 4237, "name": "Receipt", - "nameLocations": [ - "11365:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11365:7:5" @@ -14259,12 +13858,10 @@ "id": 4490, "nodeType": "FunctionDefinition", "src": "12241:873:5", - "nodes": [], "body": { "id": 4489, "nodeType": "Block", "src": "12396:718:5", - "nodes": [], "statements": [ { "assignments": [ @@ -14293,9 +13890,6 @@ "pathNode": { "id": 4365, "name": "ReceiptLog", - "nameLocations": [ - "12406:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12406:10:5" @@ -14339,7 +13933,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12458:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12450:14:5", @@ -14374,9 +13967,6 @@ "pathNode": { "id": 4369, "name": "ReceiptLog", - "nameLocations": [ - "12437:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12437:10:5" @@ -14403,7 +13993,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12433:32:5", @@ -14472,7 +14061,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12538:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3527, @@ -14527,7 +14115,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12562:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3505, @@ -14597,7 +14184,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12594:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3529, @@ -14652,7 +14238,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12617:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3507, @@ -14722,7 +14307,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12648:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3531, @@ -14779,7 +14363,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12686:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3509, @@ -14814,7 +14397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12662:36:5", @@ -14884,7 +14466,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12720:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3533, @@ -14939,7 +14520,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12738:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3511, @@ -15009,7 +14589,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12764:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3535, @@ -15066,7 +14645,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12799:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3513, @@ -15101,7 +14679,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12775:33:5", @@ -15171,7 +14748,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12830:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3538, @@ -15226,7 +14802,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12850:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3518, @@ -15296,7 +14871,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12878:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3540, @@ -15353,7 +14927,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12921:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3522, @@ -15388,7 +14961,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12897:41:5", @@ -15458,7 +15030,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12960:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3542, @@ -15515,7 +15086,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13006:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3524, @@ -15550,7 +15120,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12982:44:5", @@ -15620,7 +15189,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "13048:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3544, @@ -15675,7 +15243,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13069:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3515, @@ -15739,7 +15306,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12503:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12495:14:5", @@ -15878,9 +15444,6 @@ "pathNode": { "id": 4354, "name": "RawReceiptLog", - "nameLocations": [ - "12276:13:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "12276:13:5" @@ -15931,9 +15494,6 @@ "pathNode": { "id": 4359, "name": "ReceiptLog", - "nameLocations": [ - "12371:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12371:10:5" @@ -15967,12 +15527,10 @@ "id": 4522, "nodeType": "FunctionDefinition", "src": "13274:416:5", - "nodes": [], "body": { "id": 4521, "nodeType": "Block", "src": "13373:317:5", - "nodes": [], "statements": [ { "assignments": [ @@ -16049,7 +15607,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13427:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16065,7 +15622,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13424:16:5", @@ -16116,7 +15672,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13411:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "13407:16:5", @@ -16131,7 +15686,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13407:40:5", @@ -16326,7 +15880,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13614:10:5", @@ -16390,7 +15943,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13598:85:5", @@ -16516,12 +16068,10 @@ "id": 4548, "nodeType": "FunctionDefinition", "src": "13696:367:5", - "nodes": [], "body": { "id": 4547, "nodeType": "Block", "src": "13776:287:5", - "nodes": [], "statements": [ { "assignments": [ @@ -16596,7 +16146,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13813:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16612,7 +16161,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13810:16:5", @@ -16807,7 +16355,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13993:10:5", @@ -16871,7 +16418,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13977:79:5", @@ -16970,12 +16516,10 @@ "id": 4583, "nodeType": "FunctionDefinition", "src": "14125:439:5", - "nodes": [], "body": { "id": 4582, "nodeType": "Block", "src": "14237:327:5", - "nodes": [], "statements": [ { "assignments": [ @@ -17052,7 +16596,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14291:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -17068,7 +16611,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14288:16:5", @@ -17119,7 +16661,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14275:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14271:16:5", @@ -17134,7 +16675,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14271:40:5", @@ -17334,7 +16874,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14480:10:5", @@ -17398,7 +16937,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14464:93:5", @@ -17557,12 +17095,10 @@ "id": 4611, "nodeType": "FunctionDefinition", "src": "14570:390:5", - "nodes": [], "body": { "id": 4610, "nodeType": "Block", "src": "14663:297:5", - "nodes": [], "statements": [ { "assignments": [ @@ -17637,7 +17173,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14700:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -17653,7 +17188,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14697:16:5", @@ -17853,7 +17387,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14882:10:5", @@ -17917,7 +17450,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14866:87:5", @@ -18043,12 +17575,10 @@ "id": 4647, "nodeType": "FunctionDefinition", "src": "15033:242:5", - "nodes": [], "body": { "id": 4646, "nodeType": "Block", "src": "15137:138:5", - "nodes": [], "statements": [ { "expression": { @@ -18114,7 +17644,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15182:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15178:16:5", @@ -18129,7 +17658,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15178:22:5", @@ -18164,7 +17692,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15168:33:5", @@ -18207,7 +17734,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15160:42:5", @@ -18287,7 +17813,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15222:4:5", "memberName": "addr", "nodeType": "MemberAccess", "referencedDeclaration": 8255, @@ -18303,7 +17828,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15219:19:5", @@ -18379,7 +17903,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15251:5:5", "memberName": "label", "nodeType": "MemberAccess", "referencedDeclaration": 8585, @@ -18395,7 +17918,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15248:20:5", @@ -18521,12 +18043,10 @@ "id": 4662, "nodeType": "FunctionDefinition", "src": "15314:125:5", - "nodes": [], "body": { "id": 4661, "nodeType": "Block", "src": "15392:47:5", - "nodes": [], "statements": [ { "expression": { @@ -18605,7 +18125,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15412:20:5", @@ -18710,12 +18229,10 @@ "id": 4689, "nodeType": "FunctionDefinition", "src": "15445:253:5", - "nodes": [], "body": { "id": 4688, "nodeType": "Block", "src": "15597:101:5", - "nodes": [], "statements": [ { "expression": { @@ -18793,7 +18310,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15623:9:5", "memberName": "deriveKey", "nodeType": "MemberAccess", "referencedDeclaration": 8782, @@ -18809,7 +18325,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15620:29:5", @@ -18889,7 +18404,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15668:11:5", "memberName": "rememberKey", "nodeType": "MemberAccess", "referencedDeclaration": 8800, @@ -18905,7 +18419,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15665:26:5", @@ -19064,12 +18577,10 @@ "id": 4723, "nodeType": "FunctionDefinition", "src": "15704:253:5", - "nodes": [], "body": { "id": 4722, "nodeType": "Block", "src": "15773:184:5", - "nodes": [], "statements": [ { "expression": { @@ -19102,7 +18613,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15793:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15791:8:5", @@ -19183,7 +18693,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15783:82:5", @@ -19250,7 +18759,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15927:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15925:8:5", @@ -19301,7 +18809,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15910:24:5", @@ -19352,7 +18859,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15897:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15893:16:5", @@ -19367,7 +18873,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15893:45:5", @@ -19442,7 +18947,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15886:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "15882:10:5", @@ -19457,7 +18961,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15882:68:5", @@ -19556,12 +19059,10 @@ "id": 4744, "nodeType": "FunctionDefinition", "src": "15963:160:5", - "nodes": [], "body": { "id": 4743, "nodeType": "Block", "src": "16025:98:5", - "nodes": [], "statements": [ { "clauses": [ @@ -19693,7 +19194,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16042:10:5", "memberName": "activeFork", "nodeType": "MemberAccess", "referencedDeclaration": 9265, @@ -19709,7 +19209,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16039:15:5", @@ -19779,12 +19278,10 @@ "id": 4753, "nodeType": "ModifierDefinition", "src": "16129:84:5", - "nodes": [], "body": { "id": 4752, "nodeType": "Block", "src": "16156:57:5", - "nodes": [], "statements": [ { "condition": { @@ -19818,7 +19315,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16171:8:5", @@ -19866,12 +19362,10 @@ "id": 4761, "nodeType": "ModifierDefinition", "src": "16219:86:5", - "nodes": [], "body": { "id": 4760, "nodeType": "Block", "src": "16249:56:5", - "nodes": [], "statements": [ { "condition": { @@ -19895,7 +19389,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16263:8:5", @@ -19938,12 +19431,10 @@ "id": 4791, "nodeType": "ModifierDefinition", "src": "16311:884:5", - "nodes": [], "body": { "id": 4790, "nodeType": "Block", "src": "16336:859:5", - "nodes": [], "statements": [ { "expression": { @@ -19967,7 +19458,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16349:16:5", "memberName": "pauseGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9023, @@ -19983,7 +19473,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16346:21:5", @@ -20203,7 +19692,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17159:17:5", "memberName": "resumeGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9026, @@ -20219,7 +19707,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17156:22:5", @@ -20273,14 +19760,10 @@ "id": 4798, "nodeType": "UsingForDirective", "src": "17298:32:5", - "nodes": [], "global": false, "libraryName": { "id": 4795, "name": "stdStorage", - "nameLocations": [ - "17304:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 7522, "src": "17304:10:5" @@ -20291,9 +19774,6 @@ "pathNode": { "id": 4796, "name": "StdStorage", - "nameLocations": [ - "17319:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17319:10:5" @@ -20310,7 +19790,6 @@ "id": 4801, "nodeType": "VariableDeclaration", "src": "17336:27:5", - "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -20328,9 +19807,6 @@ "pathNode": { "id": 4799, "name": "StdStorage", - "nameLocations": [ - "17336:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17336:10:5" @@ -20348,7 +19824,6 @@ "id": 4818, "nodeType": "VariableDeclaration", "src": "17369:84:5", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -20366,9 +19841,6 @@ "pathNode": { "id": 4802, "name": "Vm", - "nameLocations": [ - "17369:2:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "17369:2:5" @@ -20431,7 +19903,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17421:28:5", @@ -20474,7 +19945,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17413:37:5", @@ -20517,7 +19987,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17405:46:5", @@ -20560,7 +20029,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17397:55:5", @@ -20595,7 +20063,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17394:59:5", @@ -20611,12 +20078,10 @@ "id": 4833, "nodeType": "FunctionDefinition", "src": "17530:93:5", - "nodes": [], "body": { "id": 4832, "nodeType": "Block", "src": "17575:48:5", - "nodes": [], "statements": [ { "expression": { @@ -20649,7 +20114,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17599:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17593:15:5", @@ -20703,7 +20167,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17588:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20719,7 +20182,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17585:31:5", @@ -20789,12 +20251,10 @@ "id": 4848, "nodeType": "FunctionDefinition", "src": "17629:95:5", - "nodes": [], "body": { "id": 4847, "nodeType": "Block", "src": "17676:48:5", - "nodes": [], "statements": [ { "expression": { @@ -20827,7 +20287,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17700:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17694:15:5", @@ -20881,7 +20340,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17689:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20897,7 +20355,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17686:31:5", @@ -20967,12 +20424,10 @@ "id": 4869, "nodeType": "FunctionDefinition", "src": "17787:106:5", - "nodes": [], "body": { "id": 4868, "nodeType": "Block", "src": "17831:62:5", - "nodes": [], "statements": [ { "expression": { @@ -21068,7 +20523,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17844:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21084,7 +20538,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17841:22:5", @@ -21138,7 +20591,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17876:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -21154,7 +20606,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17873:13:5", @@ -21225,12 +20676,10 @@ "id": 4890, "nodeType": "FunctionDefinition", "src": "17899:116:5", - "nodes": [], "body": { "id": 4889, "nodeType": "Block", "src": "17957:58:5", - "nodes": [], "statements": [ { "expression": { @@ -21288,7 +20737,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17970:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21304,7 +20752,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17967:18:5", @@ -21358,7 +20805,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17998:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -21374,7 +20820,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17995:13:5", @@ -21472,12 +20917,10 @@ "id": 4914, "nodeType": "FunctionDefinition", "src": "18021:130:5", - "nodes": [], "body": { "id": 4913, "nodeType": "Block", "src": "18081:70:5", - "nodes": [], "statements": [ { "expression": { @@ -21573,7 +21016,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18094:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21589,7 +21031,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18091:22:5", @@ -21659,7 +21100,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18126:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21675,7 +21115,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18123:21:5", @@ -21774,12 +21213,10 @@ "id": 4938, "nodeType": "FunctionDefinition", "src": "18157:140:5", - "nodes": [], "body": { "id": 4937, "nodeType": "Block", "src": "18231:66:5", - "nodes": [], "statements": [ { "expression": { @@ -21837,7 +21274,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18244:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21853,7 +21289,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18241:18:5", @@ -21923,7 +21358,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18272:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21939,7 +21373,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18269:21:5", @@ -22065,12 +21498,10 @@ "id": 4959, "nodeType": "FunctionDefinition", "src": "18368:116:5", - "nodes": [], "body": { "id": 4958, "nodeType": "Block", "src": "18417:67:5", - "nodes": [], "statements": [ { "expression": { @@ -22166,7 +21597,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18430:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22182,7 +21612,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18427:22:5", @@ -22236,7 +21665,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18462:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -22252,7 +21680,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18459:18:5", @@ -22323,12 +21750,10 @@ "id": 4980, "nodeType": "FunctionDefinition", "src": "18490:126:5", - "nodes": [], "body": { "id": 4979, "nodeType": "Block", "src": "18553:63:5", - "nodes": [], "statements": [ { "expression": { @@ -22386,7 +21811,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18566:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22402,7 +21826,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18563:18:5", @@ -22456,7 +21879,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18594:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -22472,7 +21894,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18591:18:5", @@ -22570,12 +21991,10 @@ "id": 5004, "nodeType": "FunctionDefinition", "src": "18735:140:5", - "nodes": [], "body": { "id": 5003, "nodeType": "Block", "src": "18800:75:5", - "nodes": [], "statements": [ { "expression": { @@ -22671,7 +22090,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18813:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22687,7 +22105,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18810:22:5", @@ -22757,7 +22174,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18845:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -22773,7 +22189,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18842:26:5", @@ -22872,12 +22287,10 @@ "id": 5028, "nodeType": "FunctionDefinition", "src": "18881:150:5", - "nodes": [], "body": { "id": 5027, "nodeType": "Block", "src": "18960:71:5", - "nodes": [], "statements": [ { "expression": { @@ -22935,7 +22348,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18973:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22951,7 +22363,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18970:18:5", @@ -23021,7 +22432,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19001:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -23037,7 +22447,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18998:26:5", @@ -23163,12 +22572,10 @@ "id": 5045, "nodeType": "FunctionDefinition", "src": "19037:110:5", - "nodes": [], "body": { "id": 5044, "nodeType": "Block", "src": "19088:59:5", - "nodes": [], "statements": [ { "expression": { @@ -23192,7 +22599,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19101:9:5", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9097, @@ -23208,7 +22614,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19098:14:5", @@ -23262,7 +22667,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19125:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -23278,7 +22682,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19122:18:5", @@ -23349,12 +22752,10 @@ "id": 5060, "nodeType": "FunctionDefinition", "src": "19238:91:5", - "nodes": [], "body": { "id": 5059, "nodeType": "Block", "src": "19295:34:5", - "nodes": [], "statements": [ { "expression": { @@ -23412,7 +22813,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19308:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -23428,7 +22828,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19305:17:5", @@ -23526,12 +22925,10 @@ "id": 5077, "nodeType": "FunctionDefinition", "src": "19453:117:5", - "nodes": [], "body": { "id": 5076, "nodeType": "Block", "src": "19525:45:5", - "nodes": [], "statements": [ { "expression": { @@ -23629,7 +23026,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19535:28:5", @@ -23755,12 +23151,10 @@ "id": 5180, "nodeType": "FunctionDefinition", "src": "19576:825:5", - "nodes": [], "body": { "id": 5179, "nodeType": "Block", "src": "19661:740:5", - "nodes": [], "statements": [ { "assignments": [ @@ -23859,7 +23253,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19744:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "19740:22:5", @@ -23874,7 +23267,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19740:38:5", @@ -23909,7 +23301,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19735:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "19729:10:5", @@ -23924,7 +23315,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19729:50:5", @@ -24050,7 +23440,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19811:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "19807:10:5", @@ -24065,7 +23454,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19807:30:5", @@ -24188,7 +23576,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19883:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -24204,7 +23591,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:22:5", @@ -24219,7 +23605,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19897:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -24235,7 +23620,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:38:5", @@ -24250,7 +23634,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19913:8:5", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 7097, @@ -24266,7 +23649,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:51:5", @@ -24281,7 +23663,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19926:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -24297,7 +23678,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:71:5", @@ -24413,7 +23793,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20058:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "20054:22:5", @@ -24428,7 +23807,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20054:34:5", @@ -24463,7 +23841,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20049:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "20043:10:5", @@ -24478,7 +23855,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20043:46:5", @@ -24604,7 +23980,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20124:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "20120:10:5", @@ -24619,7 +23994,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20120:33:5", @@ -24959,7 +24333,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20333:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -24975,7 +24348,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:22:5", @@ -24990,7 +24362,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20347:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -25006,7 +24377,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:38:5", @@ -25021,7 +24391,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20363:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -25037,7 +24406,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:60:5", @@ -25196,9 +24564,6 @@ "baseName": { "id": 4793, "name": "StdCheatsSafe", - "nameLocations": [ - "17278:13:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 4792, "src": "17278:13:5" diff --git a/out/StdCheats.sol/StdCheatsSafe.json b/out/StdCheats.sol/StdCheatsSafe.json index 8fd3a8f..bf99edd 100644 --- a/out/StdCheats.sol/StdCheatsSafe.json +++ b/out/StdCheats.sol/StdCheatsSafe.json @@ -11,70 +11,6 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdCheats.sol\":\"StdCheatsSafe\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdCheats.sol": "StdCheatsSafe" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdCheats.sol", "id": 5182, @@ -102,7 +38,6 @@ "id": 3246, "nodeType": "PragmaDirective", "src": "32:31:5", - "nodes": [], "literals": [ "solidity", ">=", @@ -117,7 +52,6 @@ "id": 3247, "nodeType": "PragmaDirective", "src": "65:33:5", - "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -127,7 +61,6 @@ "id": 3250, "nodeType": "ImportDirective", "src": "100:56:5", - "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -165,7 +98,6 @@ "id": 3252, "nodeType": "ImportDirective", "src": "157:28:5", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -196,7 +128,6 @@ "id": 3269, "nodeType": "VariableDeclaration", "src": "225:84:5", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -214,9 +145,6 @@ "pathNode": { "id": 3253, "name": "Vm", - "nameLocations": [ - "225:2:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "225:2:5" @@ -279,7 +207,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "277:28:5", @@ -322,7 +249,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "269:37:5", @@ -365,7 +291,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "261:46:5", @@ -408,7 +333,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "253:55:5", @@ -443,7 +367,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "250:59:5", @@ -459,7 +382,6 @@ "id": 3271, "nodeType": "VariableDeclaration", "src": "316:27:5", - "nodes": [], "constant": false, "mutability": "mutable", "name": "gasMeteringOff", @@ -487,7 +409,6 @@ "id": 3288, "nodeType": "StructDefinition", "src": "588:325:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559", "members": [ { @@ -656,9 +577,6 @@ "pathNode": { "id": 3283, "name": "RawTx1559Detail", - "nameLocations": [ - "825:15:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "825:15:5" @@ -709,7 +627,6 @@ "id": 3307, "nodeType": "StructDefinition", "src": "919:208:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559Detail", "members": [ { @@ -734,9 +651,6 @@ "pathNode": { "id": 3289, "name": "AccessList", - "nameLocations": [ - "952:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "952:10:5" @@ -959,7 +873,6 @@ "id": 3324, "nodeType": "StructDefinition", "src": "1133:215:5", - "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559", "members": [ { @@ -1128,9 +1041,6 @@ "pathNode": { "id": 3319, "name": "Tx1559Detail", - "nameLocations": [ - "1297:12:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "1297:12:5" @@ -1181,7 +1091,6 @@ "id": 3343, "nodeType": "StructDefinition", "src": "1354:213:5", - "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559Detail", "members": [ { @@ -1206,9 +1115,6 @@ "pathNode": { "id": 3325, "name": "AccessList", - "nameLocations": [ - "1384:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "1384:10:5" @@ -1431,7 +1337,6 @@ "id": 3360, "nodeType": "StructDefinition", "src": "1818:221:5", - "nodes": [], "canonicalName": "StdCheatsSafe.TxLegacy", "members": [ { @@ -1627,9 +1532,6 @@ "pathNode": { "id": 3357, "name": "TxDetailLegacy", - "nameLocations": [ - "2006:14:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3393, "src": "2006:14:5" @@ -1653,7 +1555,6 @@ "id": 3393, "nodeType": "StructDefinition", "src": "2045:366:5", - "nodes": [], "canonicalName": "StdCheatsSafe.TxDetailLegacy", "members": [ { @@ -1678,9 +1579,6 @@ "pathNode": { "id": 3361, "name": "AccessList", - "nameLocations": [ - "2077:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "2077:10:5" @@ -2092,7 +1990,6 @@ "id": 3399, "nodeType": "StructDefinition", "src": "2417:87:5", - "nodes": [], "canonicalName": "StdCheatsSafe.AccessList", "members": [ { @@ -2169,7 +2066,6 @@ "id": 3428, "nodeType": "StructDefinition", "src": "2720:385:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawReceipt", "members": [ { @@ -2385,9 +2281,6 @@ "pathNode": { "id": 3414, "name": "RawReceiptLog", - "nameLocations": [ - "2946:13:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "2946:13:5" @@ -2555,7 +2448,6 @@ "id": 3457, "nodeType": "StructDefinition", "src": "3111:391:5", - "nodes": [], "canonicalName": "StdCheatsSafe.Receipt", "members": [ { @@ -2771,9 +2663,6 @@ "pathNode": { "id": 3443, "name": "ReceiptLog", - "nameLocations": [ - "3342:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "3342:10:5" @@ -2941,7 +2830,6 @@ "id": 3480, "nodeType": "StructDefinition", "src": "3625:227:5", - "nodes": [], "canonicalName": "StdCheatsSafe.EIP1559ScriptArtifact", "members": [ { @@ -3065,9 +2953,6 @@ "pathNode": { "id": 3466, "name": "Receipt", - "nameLocations": [ - "3739:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "3739:7:5" @@ -3138,9 +3023,6 @@ "pathNode": { "id": 3472, "name": "Tx1559", - "nameLocations": [ - "3794:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "3794:6:5" @@ -3184,9 +3066,6 @@ "pathNode": { "id": 3476, "name": "TxReturn", - "nameLocations": [ - "3825:8:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "3825:8:5" @@ -3218,7 +3097,6 @@ "id": 3503, "nodeType": "StructDefinition", "src": "3858:236:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawEIP1559ScriptArtifact", "members": [ { @@ -3342,9 +3220,6 @@ "pathNode": { "id": 3489, "name": "RawReceipt", - "nameLocations": [ - "3975:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "3975:10:5" @@ -3388,9 +3263,6 @@ "pathNode": { "id": 3493, "name": "TxReturn", - "nameLocations": [ - "4006:8:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "4006:8:5" @@ -3461,9 +3333,6 @@ "pathNode": { "id": 3499, "name": "RawTx1559", - "nameLocations": [ - "4063:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "4063:9:5" @@ -3495,7 +3364,6 @@ "id": 3525, "nodeType": "StructDefinition", "src": "4100:334:5", - "nodes": [], "canonicalName": "StdCheatsSafe.RawReceiptLog", "members": [ { @@ -3788,7 +3656,6 @@ "id": 3545, "nodeType": "StructDefinition", "src": "4440:306:5", - "nodes": [], "canonicalName": "StdCheatsSafe.ReceiptLog", "members": [ { @@ -4054,7 +3921,6 @@ "id": 3550, "nodeType": "StructDefinition", "src": "4752:74:5", - "nodes": [], "canonicalName": "StdCheatsSafe.TxReturn", "members": [ { @@ -4121,12 +3987,10 @@ "id": 3565, "nodeType": "FunctionDefinition", "src": "4832:274:5", - "nodes": [], "body": { "id": 3564, "nodeType": "Block", "src": "4892:214:5", - "nodes": [], "statements": [ { "assignments": [ @@ -4266,7 +4130,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5065:34:5", @@ -4337,12 +4200,10 @@ "id": 3708, "nodeType": "FunctionDefinition", "src": "5112:1788:5", - "nodes": [], "body": { "id": 3707, "nodeType": "Block", "src": "5194:1706:5", - "nodes": [], "statements": [ { "expression": { @@ -4432,7 +4293,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5499:12:5", @@ -4525,7 +4385,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5522:12:5", @@ -4572,7 +4431,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5485:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -4588,7 +4446,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5482:53:5", @@ -5031,7 +4888,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6446:51:5", @@ -5124,7 +4980,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6508:51:5", @@ -5171,7 +5026,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6432:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5187,7 +5041,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6429:131:5", @@ -5289,7 +5142,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6591:51:5", @@ -5382,7 +5234,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6653:51:5", @@ -5429,7 +5280,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6577:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5445,7 +5295,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6574:131:5", @@ -5547,7 +5396,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6736:51:5", @@ -5640,7 +5488,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6798:51:5", @@ -5687,7 +5534,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6722:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5703,7 +5549,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6719:131:5", @@ -5816,7 +5661,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6113:51:5", @@ -5909,7 +5753,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6175:51:5", @@ -5956,7 +5799,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6099:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5972,7 +5814,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6096:131:5", @@ -6085,7 +5926,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5799:51:5", @@ -6178,7 +6018,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5861:51:5", @@ -6225,7 +6064,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5785:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -6241,7 +6079,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5782:131:5", @@ -6342,12 +6179,10 @@ "id": 3800, "nodeType": "FunctionDefinition", "src": "6906:843:5", - "nodes": [], "body": { "id": 3799, "nodeType": "Block", "src": "7058:691:5", - "nodes": [], "statements": [ { "assignments": [ @@ -6422,7 +6257,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7092:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -6438,7 +6272,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:17:5", @@ -6524,7 +6357,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7145:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8816, @@ -6540,7 +6372,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7142:18:5", @@ -6579,9 +6410,6 @@ "pathNode": { "id": 3730, "name": "RawEIP1559ScriptArtifact", - "nameLocations": [ - "7170:24:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3503, "src": "7170:24:5" @@ -6668,7 +6496,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7220:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "7216:10:5", @@ -6683,7 +6510,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7216:50:5", @@ -6722,9 +6548,6 @@ "pathNode": { "id": 3740, "name": "EIP1559ScriptArtifact", - "nameLocations": [ - "7276:21:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7276:21:5" @@ -6768,7 +6591,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7332:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3460, @@ -6798,7 +6620,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7356:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3483, @@ -6843,7 +6664,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7384:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3462, @@ -6873,7 +6693,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7403:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3485, @@ -6918,7 +6737,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7426:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3471, @@ -6948,7 +6766,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7450:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3498, @@ -6993,7 +6810,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7478:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3465, @@ -7023,7 +6839,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7500:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3488, @@ -7068,7 +6883,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7526:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3479, @@ -7098,7 +6912,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7550:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3496, @@ -7143,7 +6956,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7578:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3469, @@ -7175,7 +6987,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7624:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3492, @@ -7210,7 +7021,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7589:44:5", @@ -7255,7 +7065,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "7652:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3475, @@ -7287,7 +7096,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7704:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3502, @@ -7322,7 +7130,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7667:50:5", @@ -7426,9 +7233,6 @@ "pathNode": { "id": 3712, "name": "EIP1559ScriptArtifact", - "nameLocations": [ - "7024:21:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7024:21:5" @@ -7454,12 +7258,10 @@ "id": 3849, "nodeType": "FunctionDefinition", "src": "7755:312:5", - "nodes": [], "body": { "id": 3848, "nodeType": "Block", "src": "7864:203:5", - "nodes": [], "statements": [ { "assignments": [ @@ -7488,9 +7290,6 @@ "pathNode": { "id": 3812, "name": "Tx1559", - "nameLocations": [ - "7874:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7874:6:5" @@ -7534,7 +7333,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7916:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7909:13:5", @@ -7569,9 +7367,6 @@ "pathNode": { "id": 3816, "name": "Tx1559", - "nameLocations": [ - "7900:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7900:6:5" @@ -7598,7 +7393,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7896:27:5", @@ -7727,7 +7521,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7996:34:5", @@ -7791,7 +7584,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7960:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7953:13:5", @@ -7930,9 +7722,6 @@ "pathNode": { "id": 3801, "name": "RawTx1559", - "nameLocations": [ - "7789:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "7789:9:5" @@ -7983,9 +7772,6 @@ "pathNode": { "id": 3806, "name": "Tx1559", - "nameLocations": [ - "7847:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7847:6:5" @@ -8019,12 +7805,10 @@ "id": 3909, "nodeType": "FunctionDefinition", "src": "8073:488:5", - "nodes": [], "body": { "id": 3908, "nodeType": "Block", "src": "8176:385:5", - "nodes": [], "statements": [ { "assignments": [ @@ -8052,9 +7836,6 @@ "pathNode": { "id": 3858, "name": "Tx1559", - "nameLocations": [ - "8186:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8186:6:5" @@ -8098,7 +7879,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8233:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3310, @@ -8128,7 +7908,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8251:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3274, @@ -8173,7 +7952,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8282:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3314, @@ -8203,7 +7981,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8303:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3278, @@ -8248,7 +8025,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8337:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3316, @@ -8278,7 +8054,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8357:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3280, @@ -8323,7 +8098,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8390:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3318, @@ -8353,7 +8127,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8403:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3282, @@ -8398,7 +8171,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8429:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3321, @@ -8430,7 +8202,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8474:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3285, @@ -8465,7 +8236,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8440:43:5", @@ -8510,7 +8280,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8505:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3323, @@ -8540,7 +8309,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8520:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3287, @@ -8610,9 +8378,6 @@ "pathNode": { "id": 3850, "name": "RawTx1559", - "nameLocations": [ - "8106:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "8106:9:5" @@ -8654,9 +8419,6 @@ "pathNode": { "id": 3854, "name": "Tx1559", - "nameLocations": [ - "8161:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8161:6:5" @@ -8682,12 +8444,10 @@ "id": 3989, "nodeType": "FunctionDefinition", "src": "8567:619:5", - "nodes": [], "body": { "id": 3988, "nodeType": "Block", "src": "8726:460:5", - "nodes": [], "statements": [ { "assignments": [ @@ -8715,9 +8475,6 @@ "pathNode": { "id": 3918, "name": "Tx1559Detail", - "nameLocations": [ - "8736:12:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8736:12:5" @@ -8761,7 +8518,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8783:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3330, @@ -8791,7 +8547,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8800:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3294, @@ -8836,7 +8591,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8823:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3332, @@ -8866,7 +8620,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8840:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3296, @@ -8911,7 +8664,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8863:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3338, @@ -8941,7 +8693,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8878:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3302, @@ -8986,7 +8737,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8899:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3336, @@ -9018,7 +8768,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8930:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3300, @@ -9053,7 +8802,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:29:5", @@ -9098,7 +8846,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "8955:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3340, @@ -9130,7 +8877,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8987:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3304, @@ -9165,7 +8911,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8964:30:5", @@ -9210,7 +8955,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "9013:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3342, @@ -9242,7 +8986,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9044:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3306, @@ -9277,7 +9020,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9021:29:5", @@ -9322,7 +9064,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "9069:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3334, @@ -9354,7 +9095,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9098:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3298, @@ -9389,7 +9129,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9075:27:5", @@ -9434,7 +9173,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "9121:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3328, @@ -9464,7 +9202,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9144:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3292, @@ -9534,9 +9271,6 @@ "pathNode": { "id": 3910, "name": "RawTx1559Detail", - "nameLocations": [ - "8604:15:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "8604:15:5" @@ -9578,9 +9312,6 @@ "pathNode": { "id": 3914, "name": "Tx1559Detail", - "nameLocations": [ - "8701:12:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8701:12:5" @@ -9606,12 +9337,10 @@ "id": 4031, "nodeType": "FunctionDefinition", "src": "9192:363:5", - "nodes": [], "body": { "id": 4030, "nodeType": "Block", "src": "9281:274:5", - "nodes": [], "statements": [ { "assignments": [ @@ -9686,7 +9415,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9321:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -9702,7 +9430,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9318:17:5", @@ -9808,7 +9535,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9380:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -9824,7 +9550,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9377:41:5", @@ -9864,9 +9589,6 @@ "pathNode": { "id": 4014, "name": "RawTx1559", - "nameLocations": [ - "9428:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9428:9:5" @@ -9974,7 +9696,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9460:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9456:10:5", @@ -9989,7 +9710,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9456:43:5", @@ -10042,7 +9762,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9516:32:5", @@ -10124,9 +9843,6 @@ "pathNode": { "id": 3993, "name": "Tx1559", - "nameLocations": [ - "9264:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9264:6:5" @@ -10160,12 +9876,10 @@ "id": 4086, "nodeType": "FunctionDefinition", "src": "9561:453:5", - "nodes": [], "body": { "id": 4085, "nodeType": "Block", "src": "9662:352:5", - "nodes": [], "statements": [ { "assignments": [ @@ -10240,7 +9954,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9702:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -10256,7 +9969,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9699:17:5", @@ -10362,7 +10074,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9791:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -10378,7 +10089,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9788:18:5", @@ -10437,7 +10147,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9757:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9753:16:5", @@ -10452,7 +10161,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9753:59:5", @@ -10495,7 +10203,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9746:67:5", @@ -10597,7 +10304,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9858:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -10613,7 +10319,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9855:29:5", @@ -10652,9 +10357,6 @@ "pathNode": { "id": 4071, "name": "RawTx1559", - "nameLocations": [ - "9894:9:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9894:9:5" @@ -10741,7 +10443,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9923:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9919:10:5", @@ -10756,7 +10457,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9919:41:5", @@ -10809,7 +10509,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9977:30:5", @@ -10917,9 +10616,6 @@ "pathNode": { "id": 4037, "name": "Tx1559", - "nameLocations": [ - "9647:6:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9647:6:5" @@ -10945,12 +10641,10 @@ "id": 4128, "nodeType": "FunctionDefinition", "src": "10076:371:5", - "nodes": [], "body": { "id": 4127, "nodeType": "Block", "src": "10167:280:5", - "nodes": [], "statements": [ { "assignments": [ @@ -11025,7 +10719,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10207:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -11041,7 +10734,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10204:17:5", @@ -11147,7 +10839,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10266:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -11163,7 +10854,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10263:37:5", @@ -11203,9 +10893,6 @@ "pathNode": { "id": 4111, "name": "RawReceipt", - "nameLocations": [ - "10310:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10310:10:5" @@ -11313,7 +11000,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10348:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10344:10:5", @@ -11328,7 +11014,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10344:44:5", @@ -11381,7 +11066,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10405:35:5", @@ -11463,9 +11147,6 @@ "pathNode": { "id": 4090, "name": "Receipt", - "nameLocations": [ - "10149:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10149:7:5" @@ -11499,12 +11180,10 @@ "id": 4183, "nodeType": "FunctionDefinition", "src": "10453:461:5", - "nodes": [], "body": { "id": 4182, "nodeType": "Block", "src": "10556:358:5", - "nodes": [], "statements": [ { "assignments": [ @@ -11579,7 +11258,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10596:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -11595,7 +11273,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10593:17:5", @@ -11701,7 +11378,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10681:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -11717,7 +11393,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10678:18:5", @@ -11776,7 +11451,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10651:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "10647:16:5", @@ -11791,7 +11465,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10647:55:5", @@ -11834,7 +11507,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10640:63:5", @@ -11936,7 +11608,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10748:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -11952,7 +11623,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10745:29:5", @@ -11991,9 +11661,6 @@ "pathNode": { "id": 4168, "name": "RawReceipt", - "nameLocations": [ - "10784:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10784:10:5" @@ -12080,7 +11747,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10819:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10815:10:5", @@ -12095,7 +11761,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10815:42:5", @@ -12148,7 +11813,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10874:33:5", @@ -12256,9 +11920,6 @@ "pathNode": { "id": 4134, "name": "Receipt", - "nameLocations": [ - "10540:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10540:7:5" @@ -12284,12 +11945,10 @@ "id": 4232, "nodeType": "FunctionDefinition", "src": "10920:347:5", - "nodes": [], "body": { "id": 4231, "nodeType": "Block", "src": "11034:233:5", - "nodes": [], "statements": [ { "assignments": [ @@ -12318,9 +11977,6 @@ "pathNode": { "id": 4195, "name": "Receipt", - "nameLocations": [ - "11044:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11044:7:5" @@ -12364,7 +12020,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11098:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11086:18:5", @@ -12399,9 +12054,6 @@ "pathNode": { "id": 4199, "name": "Receipt", - "nameLocations": [ - "11076:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11076:7:5" @@ -12428,7 +12080,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11072:33:5", @@ -12557,7 +12208,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11188:37:5", @@ -12621,7 +12271,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11147:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11135:18:5", @@ -12760,9 +12409,6 @@ "pathNode": { "id": 4184, "name": "RawReceipt", - "nameLocations": [ - "10952:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10952:10:5" @@ -12813,9 +12459,6 @@ "pathNode": { "id": 4189, "name": "Receipt", - "nameLocations": [ - "11016:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11016:7:5" @@ -12849,12 +12492,10 @@ "id": 4353, "nodeType": "FunctionDefinition", "src": "11273:962:5", - "nodes": [], "body": { "id": 4352, "nodeType": "Block", "src": "11381:854:5", - "nodes": [], "statements": [ { "assignments": [ @@ -12882,9 +12523,6 @@ "pathNode": { "id": 4241, "name": "Receipt", - "nameLocations": [ - "11391:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11391:7:5" @@ -12928,7 +12566,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11431:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3430, @@ -12958,7 +12595,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11454:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3401, @@ -13003,7 +12639,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11481:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3452, @@ -13033,7 +12668,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11497:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3423, @@ -13078,7 +12712,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11517:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3440, @@ -13108,7 +12741,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11535:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3411, @@ -13153,7 +12785,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11557:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3434, @@ -13183,7 +12814,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11586:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3405, @@ -13228,7 +12858,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11619:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3438, @@ -13260,7 +12889,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11663:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3409, @@ -13295,7 +12923,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11639:42:5", @@ -13340,7 +12967,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11699:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3436, @@ -13372,7 +12998,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11743:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3407, @@ -13407,7 +13032,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11719:42:5", @@ -13452,7 +13076,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11779:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3442, @@ -13484,7 +13107,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11813:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3413, @@ -13519,7 +13141,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11789:32:5", @@ -13564,7 +13185,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11839:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3450, @@ -13596,7 +13216,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11872:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3421, @@ -13631,7 +13250,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11848:31:5", @@ -13676,7 +13294,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11897:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3456, @@ -13708,7 +13325,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "11940:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3427, @@ -13743,7 +13359,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11916:41:5", @@ -13788,7 +13403,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "11975:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3432, @@ -13820,7 +13434,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12013:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3403, @@ -13855,7 +13468,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11989:36:5", @@ -13900,7 +13512,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12043:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3446, @@ -13932,7 +13543,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12087:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3417, @@ -13967,7 +13577,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12050:42:5", @@ -14012,7 +13621,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12110:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3448, @@ -14042,7 +13650,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12133:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3419, @@ -14087,7 +13694,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12160:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3454, @@ -14117,7 +13723,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12189:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3425, @@ -14187,9 +13792,6 @@ "pathNode": { "id": 4233, "name": "RawReceipt", - "nameLocations": [ - "11304:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "11304:10:5" @@ -14231,9 +13833,6 @@ "pathNode": { "id": 4237, "name": "Receipt", - "nameLocations": [ - "11365:7:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11365:7:5" @@ -14259,12 +13858,10 @@ "id": 4490, "nodeType": "FunctionDefinition", "src": "12241:873:5", - "nodes": [], "body": { "id": 4489, "nodeType": "Block", "src": "12396:718:5", - "nodes": [], "statements": [ { "assignments": [ @@ -14293,9 +13890,6 @@ "pathNode": { "id": 4365, "name": "ReceiptLog", - "nameLocations": [ - "12406:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12406:10:5" @@ -14339,7 +13933,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12458:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12450:14:5", @@ -14374,9 +13967,6 @@ "pathNode": { "id": 4369, "name": "ReceiptLog", - "nameLocations": [ - "12437:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12437:10:5" @@ -14403,7 +13993,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12433:32:5", @@ -14472,7 +14061,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12538:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3527, @@ -14527,7 +14115,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12562:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3505, @@ -14597,7 +14184,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12594:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3529, @@ -14652,7 +14238,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12617:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3507, @@ -14722,7 +14307,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12648:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3531, @@ -14779,7 +14363,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12686:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3509, @@ -14814,7 +14397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12662:36:5", @@ -14884,7 +14466,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12720:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3533, @@ -14939,7 +14520,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12738:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3511, @@ -15009,7 +14589,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12764:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3535, @@ -15066,7 +14645,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12799:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3513, @@ -15101,7 +14679,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12775:33:5", @@ -15171,7 +14748,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12830:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3538, @@ -15226,7 +14802,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12850:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3518, @@ -15296,7 +14871,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12878:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3540, @@ -15353,7 +14927,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12921:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3522, @@ -15388,7 +14961,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12897:41:5", @@ -15458,7 +15030,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "12960:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3542, @@ -15515,7 +15086,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13006:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3524, @@ -15550,7 +15120,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12982:44:5", @@ -15620,7 +15189,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "13048:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3544, @@ -15675,7 +15243,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13069:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3515, @@ -15739,7 +15306,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12503:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12495:14:5", @@ -15878,9 +15444,6 @@ "pathNode": { "id": 4354, "name": "RawReceiptLog", - "nameLocations": [ - "12276:13:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "12276:13:5" @@ -15931,9 +15494,6 @@ "pathNode": { "id": 4359, "name": "ReceiptLog", - "nameLocations": [ - "12371:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12371:10:5" @@ -15967,12 +15527,10 @@ "id": 4522, "nodeType": "FunctionDefinition", "src": "13274:416:5", - "nodes": [], "body": { "id": 4521, "nodeType": "Block", "src": "13373:317:5", - "nodes": [], "statements": [ { "assignments": [ @@ -16049,7 +15607,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13427:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16065,7 +15622,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13424:16:5", @@ -16116,7 +15672,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13411:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "13407:16:5", @@ -16131,7 +15686,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13407:40:5", @@ -16326,7 +15880,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13614:10:5", @@ -16390,7 +15943,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13598:85:5", @@ -16516,12 +16068,10 @@ "id": 4548, "nodeType": "FunctionDefinition", "src": "13696:367:5", - "nodes": [], "body": { "id": 4547, "nodeType": "Block", "src": "13776:287:5", - "nodes": [], "statements": [ { "assignments": [ @@ -16596,7 +16146,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13813:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16612,7 +16161,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13810:16:5", @@ -16807,7 +16355,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13993:10:5", @@ -16871,7 +16418,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13977:79:5", @@ -16970,12 +16516,10 @@ "id": 4583, "nodeType": "FunctionDefinition", "src": "14125:439:5", - "nodes": [], "body": { "id": 4582, "nodeType": "Block", "src": "14237:327:5", - "nodes": [], "statements": [ { "assignments": [ @@ -17052,7 +16596,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14291:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -17068,7 +16611,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14288:16:5", @@ -17119,7 +16661,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14275:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14271:16:5", @@ -17134,7 +16675,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14271:40:5", @@ -17334,7 +16874,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14480:10:5", @@ -17398,7 +16937,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14464:93:5", @@ -17557,12 +17095,10 @@ "id": 4611, "nodeType": "FunctionDefinition", "src": "14570:390:5", - "nodes": [], "body": { "id": 4610, "nodeType": "Block", "src": "14663:297:5", - "nodes": [], "statements": [ { "assignments": [ @@ -17637,7 +17173,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14700:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -17653,7 +17188,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14697:16:5", @@ -17853,7 +17387,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14882:10:5", @@ -17917,7 +17450,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14866:87:5", @@ -18043,12 +17575,10 @@ "id": 4647, "nodeType": "FunctionDefinition", "src": "15033:242:5", - "nodes": [], "body": { "id": 4646, "nodeType": "Block", "src": "15137:138:5", - "nodes": [], "statements": [ { "expression": { @@ -18114,7 +17644,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15182:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15178:16:5", @@ -18129,7 +17658,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15178:22:5", @@ -18164,7 +17692,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15168:33:5", @@ -18207,7 +17734,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15160:42:5", @@ -18287,7 +17813,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15222:4:5", "memberName": "addr", "nodeType": "MemberAccess", "referencedDeclaration": 8255, @@ -18303,7 +17828,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15219:19:5", @@ -18379,7 +17903,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15251:5:5", "memberName": "label", "nodeType": "MemberAccess", "referencedDeclaration": 8585, @@ -18395,7 +17918,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15248:20:5", @@ -18521,12 +18043,10 @@ "id": 4662, "nodeType": "FunctionDefinition", "src": "15314:125:5", - "nodes": [], "body": { "id": 4661, "nodeType": "Block", "src": "15392:47:5", - "nodes": [], "statements": [ { "expression": { @@ -18605,7 +18125,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15412:20:5", @@ -18710,12 +18229,10 @@ "id": 4689, "nodeType": "FunctionDefinition", "src": "15445:253:5", - "nodes": [], "body": { "id": 4688, "nodeType": "Block", "src": "15597:101:5", - "nodes": [], "statements": [ { "expression": { @@ -18793,7 +18310,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15623:9:5", "memberName": "deriveKey", "nodeType": "MemberAccess", "referencedDeclaration": 8782, @@ -18809,7 +18325,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15620:29:5", @@ -18889,7 +18404,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15668:11:5", "memberName": "rememberKey", "nodeType": "MemberAccess", "referencedDeclaration": 8800, @@ -18905,7 +18419,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15665:26:5", @@ -19064,12 +18577,10 @@ "id": 4723, "nodeType": "FunctionDefinition", "src": "15704:253:5", - "nodes": [], "body": { "id": 4722, "nodeType": "Block", "src": "15773:184:5", - "nodes": [], "statements": [ { "expression": { @@ -19102,7 +18613,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15793:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15791:8:5", @@ -19183,7 +18693,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15783:82:5", @@ -19250,7 +18759,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15927:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15925:8:5", @@ -19301,7 +18809,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15910:24:5", @@ -19352,7 +18859,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15897:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15893:16:5", @@ -19367,7 +18873,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15893:45:5", @@ -19442,7 +18947,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15886:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "15882:10:5", @@ -19457,7 +18961,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15882:68:5", @@ -19556,12 +19059,10 @@ "id": 4744, "nodeType": "FunctionDefinition", "src": "15963:160:5", - "nodes": [], "body": { "id": 4743, "nodeType": "Block", "src": "16025:98:5", - "nodes": [], "statements": [ { "clauses": [ @@ -19693,7 +19194,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16042:10:5", "memberName": "activeFork", "nodeType": "MemberAccess", "referencedDeclaration": 9265, @@ -19709,7 +19209,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16039:15:5", @@ -19779,12 +19278,10 @@ "id": 4753, "nodeType": "ModifierDefinition", "src": "16129:84:5", - "nodes": [], "body": { "id": 4752, "nodeType": "Block", "src": "16156:57:5", - "nodes": [], "statements": [ { "condition": { @@ -19818,7 +19315,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16171:8:5", @@ -19866,12 +19362,10 @@ "id": 4761, "nodeType": "ModifierDefinition", "src": "16219:86:5", - "nodes": [], "body": { "id": 4760, "nodeType": "Block", "src": "16249:56:5", - "nodes": [], "statements": [ { "condition": { @@ -19895,7 +19389,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16263:8:5", @@ -19938,12 +19431,10 @@ "id": 4791, "nodeType": "ModifierDefinition", "src": "16311:884:5", - "nodes": [], "body": { "id": 4790, "nodeType": "Block", "src": "16336:859:5", - "nodes": [], "statements": [ { "expression": { @@ -19967,7 +19458,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16349:16:5", "memberName": "pauseGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9023, @@ -19983,7 +19473,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16346:21:5", @@ -20203,7 +19692,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17159:17:5", "memberName": "resumeGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9026, @@ -20219,7 +19707,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17156:22:5", @@ -20273,14 +19760,10 @@ "id": 4798, "nodeType": "UsingForDirective", "src": "17298:32:5", - "nodes": [], "global": false, "libraryName": { "id": 4795, "name": "stdStorage", - "nameLocations": [ - "17304:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 7522, "src": "17304:10:5" @@ -20291,9 +19774,6 @@ "pathNode": { "id": 4796, "name": "StdStorage", - "nameLocations": [ - "17319:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17319:10:5" @@ -20310,7 +19790,6 @@ "id": 4801, "nodeType": "VariableDeclaration", "src": "17336:27:5", - "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -20328,9 +19807,6 @@ "pathNode": { "id": 4799, "name": "StdStorage", - "nameLocations": [ - "17336:10:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17336:10:5" @@ -20348,7 +19824,6 @@ "id": 4818, "nodeType": "VariableDeclaration", "src": "17369:84:5", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -20366,9 +19841,6 @@ "pathNode": { "id": 4802, "name": "Vm", - "nameLocations": [ - "17369:2:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "17369:2:5" @@ -20431,7 +19903,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17421:28:5", @@ -20474,7 +19945,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17413:37:5", @@ -20517,7 +19987,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17405:46:5", @@ -20560,7 +20029,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17397:55:5", @@ -20595,7 +20063,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17394:59:5", @@ -20611,12 +20078,10 @@ "id": 4833, "nodeType": "FunctionDefinition", "src": "17530:93:5", - "nodes": [], "body": { "id": 4832, "nodeType": "Block", "src": "17575:48:5", - "nodes": [], "statements": [ { "expression": { @@ -20649,7 +20114,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17599:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17593:15:5", @@ -20703,7 +20167,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17588:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20719,7 +20182,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17585:31:5", @@ -20789,12 +20251,10 @@ "id": 4848, "nodeType": "FunctionDefinition", "src": "17629:95:5", - "nodes": [], "body": { "id": 4847, "nodeType": "Block", "src": "17676:48:5", - "nodes": [], "statements": [ { "expression": { @@ -20827,7 +20287,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17700:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17694:15:5", @@ -20881,7 +20340,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17689:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20897,7 +20355,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17686:31:5", @@ -20967,12 +20424,10 @@ "id": 4869, "nodeType": "FunctionDefinition", "src": "17787:106:5", - "nodes": [], "body": { "id": 4868, "nodeType": "Block", "src": "17831:62:5", - "nodes": [], "statements": [ { "expression": { @@ -21068,7 +20523,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17844:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21084,7 +20538,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17841:22:5", @@ -21138,7 +20591,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17876:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -21154,7 +20606,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17873:13:5", @@ -21225,12 +20676,10 @@ "id": 4890, "nodeType": "FunctionDefinition", "src": "17899:116:5", - "nodes": [], "body": { "id": 4889, "nodeType": "Block", "src": "17957:58:5", - "nodes": [], "statements": [ { "expression": { @@ -21288,7 +20737,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17970:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21304,7 +20752,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17967:18:5", @@ -21358,7 +20805,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17998:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -21374,7 +20820,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17995:13:5", @@ -21472,12 +20917,10 @@ "id": 4914, "nodeType": "FunctionDefinition", "src": "18021:130:5", - "nodes": [], "body": { "id": 4913, "nodeType": "Block", "src": "18081:70:5", - "nodes": [], "statements": [ { "expression": { @@ -21573,7 +21016,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18094:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21589,7 +21031,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18091:22:5", @@ -21659,7 +21100,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18126:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21675,7 +21115,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18123:21:5", @@ -21774,12 +21213,10 @@ "id": 4938, "nodeType": "FunctionDefinition", "src": "18157:140:5", - "nodes": [], "body": { "id": 4937, "nodeType": "Block", "src": "18231:66:5", - "nodes": [], "statements": [ { "expression": { @@ -21837,7 +21274,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18244:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21853,7 +21289,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18241:18:5", @@ -21923,7 +21358,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18272:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21939,7 +21373,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18269:21:5", @@ -22065,12 +21498,10 @@ "id": 4959, "nodeType": "FunctionDefinition", "src": "18368:116:5", - "nodes": [], "body": { "id": 4958, "nodeType": "Block", "src": "18417:67:5", - "nodes": [], "statements": [ { "expression": { @@ -22166,7 +21597,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18430:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22182,7 +21612,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18427:22:5", @@ -22236,7 +21665,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18462:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -22252,7 +21680,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18459:18:5", @@ -22323,12 +21750,10 @@ "id": 4980, "nodeType": "FunctionDefinition", "src": "18490:126:5", - "nodes": [], "body": { "id": 4979, "nodeType": "Block", "src": "18553:63:5", - "nodes": [], "statements": [ { "expression": { @@ -22386,7 +21811,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18566:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22402,7 +21826,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18563:18:5", @@ -22456,7 +21879,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18594:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -22472,7 +21894,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18591:18:5", @@ -22570,12 +21991,10 @@ "id": 5004, "nodeType": "FunctionDefinition", "src": "18735:140:5", - "nodes": [], "body": { "id": 5003, "nodeType": "Block", "src": "18800:75:5", - "nodes": [], "statements": [ { "expression": { @@ -22671,7 +22090,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18813:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22687,7 +22105,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18810:22:5", @@ -22757,7 +22174,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18845:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -22773,7 +22189,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18842:26:5", @@ -22872,12 +22287,10 @@ "id": 5028, "nodeType": "FunctionDefinition", "src": "18881:150:5", - "nodes": [], "body": { "id": 5027, "nodeType": "Block", "src": "18960:71:5", - "nodes": [], "statements": [ { "expression": { @@ -22935,7 +22348,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18973:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22951,7 +22363,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18970:18:5", @@ -23021,7 +22432,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19001:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -23037,7 +22447,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18998:26:5", @@ -23163,12 +22572,10 @@ "id": 5045, "nodeType": "FunctionDefinition", "src": "19037:110:5", - "nodes": [], "body": { "id": 5044, "nodeType": "Block", "src": "19088:59:5", - "nodes": [], "statements": [ { "expression": { @@ -23192,7 +22599,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19101:9:5", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9097, @@ -23208,7 +22614,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19098:14:5", @@ -23262,7 +22667,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19125:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -23278,7 +22682,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19122:18:5", @@ -23349,12 +22752,10 @@ "id": 5060, "nodeType": "FunctionDefinition", "src": "19238:91:5", - "nodes": [], "body": { "id": 5059, "nodeType": "Block", "src": "19295:34:5", - "nodes": [], "statements": [ { "expression": { @@ -23412,7 +22813,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19308:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -23428,7 +22828,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19305:17:5", @@ -23526,12 +22925,10 @@ "id": 5077, "nodeType": "FunctionDefinition", "src": "19453:117:5", - "nodes": [], "body": { "id": 5076, "nodeType": "Block", "src": "19525:45:5", - "nodes": [], "statements": [ { "expression": { @@ -23629,7 +23026,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19535:28:5", @@ -23755,12 +23151,10 @@ "id": 5180, "nodeType": "FunctionDefinition", "src": "19576:825:5", - "nodes": [], "body": { "id": 5179, "nodeType": "Block", "src": "19661:740:5", - "nodes": [], "statements": [ { "assignments": [ @@ -23859,7 +23253,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19744:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "19740:22:5", @@ -23874,7 +23267,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19740:38:5", @@ -23909,7 +23301,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19735:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "19729:10:5", @@ -23924,7 +23315,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19729:50:5", @@ -24050,7 +23440,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19811:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "19807:10:5", @@ -24065,7 +23454,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19807:30:5", @@ -24188,7 +23576,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19883:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -24204,7 +23591,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:22:5", @@ -24219,7 +23605,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19897:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -24235,7 +23620,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:38:5", @@ -24250,7 +23634,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19913:8:5", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 7097, @@ -24266,7 +23649,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:51:5", @@ -24281,7 +23663,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19926:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -24297,7 +23678,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:71:5", @@ -24413,7 +23793,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20058:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "20054:22:5", @@ -24428,7 +23807,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20054:34:5", @@ -24463,7 +23841,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20049:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "20043:10:5", @@ -24478,7 +23855,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20043:46:5", @@ -24604,7 +23980,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20124:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "20120:10:5", @@ -24619,7 +23994,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20120:33:5", @@ -24959,7 +24333,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20333:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -24975,7 +24348,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:22:5", @@ -24990,7 +24362,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20347:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -25006,7 +24377,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:38:5", @@ -25021,7 +24391,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20363:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -25037,7 +24406,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:60:5", @@ -25196,9 +24564,6 @@ "baseName": { "id": 4793, "name": "StdCheatsSafe", - "nameLocations": [ - "17278:13:5" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 4792, "src": "17278:13:5" diff --git a/out/StdError.sol/stdError.json b/out/StdError.sol/stdError.json index 36dfa1f..3a14ae2 100644 --- a/out/StdError.sol/stdError.json +++ b/out/StdError.sol/stdError.json @@ -119,13 +119,13 @@ } ], "bytecode": { - "object": "0x61024f61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b506000604082860101526040601f19601f830116850101925050509291505056fea264697066735822122035cba101b650f66ba50a55224c6366c3102f19728c9336b26b1995308dd6fbe264736f6c63430008110033", + "object": "0x61025661003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b8181111561020a576000604083870101525b50601f01601f191692909201604001939250505056fea26469706673582212201c7c3f64460b87cc6d6b60e4aa707c81770dcb950d6760b3c02198ffd29fbc1e64736f6c634300080f0033", "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;162:850:6;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b506000604082860101526040601f19601f830116850101925050509291505056fea264697066735822122035cba101b650f66ba50a55224c6366c3102f19728c9336b26b1995308dd6fbe264736f6c63430008110033", - "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;185:86;;;:::i;461:91::-;;;:::i;277:87::-;;;:::i;831:88::-;;;:::i;654:80::-;;;:::i;925:84::-;;;:::i;558:90::-;;;:::i;370:85::-;;;:::i;740:::-;778:47;;820:4;778:47;;;726:36:23;699:18;;778:47:6;;;;-1:-1:-1;;778:47:6;;;;;;;;;;;;;;-1:-1:-1;;;;;778:47:6;-1:-1:-1;;;778:47:6;;;740:85;:::o;185:86::-;224:47;;266:4;224:47;;;726:36:23;699:18;;224:47:6;573:195:23;461:91:6;505:47;;547:4;505:47;;;726:36:23;699:18;;505:47:6;573:195:23;277:87:6;317:47;;359:4;317:47;;;726:36:23;699:18;;317:47:6;573:195:23;831:88:6;872:47;;914:4;872:47;;;726:36:23;699:18;;872:47:6;573:195:23;654:80:6;687:47;;729:4;687:47;;;726:36:23;699:18;;687:47:6;573:195:23;925:84:6;962:47;;1004:4;962:47;;;726:36:23;699:18;;962:47:6;573:195:23;558:90:6;601:47;;643:4;601:47;;;726:36:23;699:18;;601:47:6;573:195:23;370:85:6;408:47;;450:4;408:47;;;726:36:23;699:18;;408:47:6;573:195:23;14:554;132:4;161:2;190;179:9;172:21;222:6;216:13;265:6;260:2;249:9;245:18;238:34;290:1;300:140;314:6;311:1;308:13;300:140;;;409:14;;;405:23;;399:30;375:17;;;394:2;371:26;364:66;329:10;;300:140;;;304:3;489:1;484:2;475:6;464:9;460:22;456:31;449:42;559:2;552;548:7;543:2;535:6;531:15;527:29;516:9;512:45;508:54;500:62;;;;14:554;;;;:::o", + "object": "0x730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b8181111561020a576000604083870101525b50601f01601f191692909201604001939250505056fea26469706673582212201c7c3f64460b87cc6d6b60e4aa707c81770dcb950d6760b3c02198ffd29fbc1e64736f6c634300080f0033", + "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;185:86;;;:::i;461:91::-;;;:::i;277:87::-;;;:::i;831:88::-;;;:::i;654:80::-;;;:::i;925:84::-;;;:::i;558:90::-;;;:::i;370:85::-;;;:::i;740:::-;778:47;;820:4;778:47;;;775:36:32;748:18;;778:47:6;;;;-1:-1:-1;;778:47:6;;;;;;;;;;;;;;-1:-1:-1;;;;;778:47:6;-1:-1:-1;;;778:47:6;;;740:85;:::o;185:86::-;224:47;;266:4;224:47;;;775:36:32;748:18;;224:47:6;622:195:32;461:91:6;505:47;;547:4;505:47;;;775:36:32;748:18;;505:47:6;622:195:32;277:87:6;317:47;;359:4;317:47;;;775:36:32;748:18;;317:47:6;622:195:32;831:88:6;872:47;;914:4;872:47;;;775:36:32;748:18;;872:47:6;622:195:32;654:80:6;687:47;;729:4;687:47;;;775:36:32;748:18;;687:47:6;622:195:32;925:84:6;962:47;;1004:4;962:47;;;775:36:32;748:18;;962:47:6;622:195:32;558:90:6;601:47;;643:4;601:47;;;775:36:32;748:18;;601:47:6;622:195:32;370:85:6;408:47;;450:4;408:47;;;775:36:32;748:18;;408:47:6;622:195:32;14:603;132:4;161:2;190;179:9;172:21;222:6;216:13;265:6;260:2;249:9;245:18;238:34;290:1;300:140;314:6;311:1;308:13;300:140;;;409:14;;;405:23;;399:30;375:17;;;394:2;371:26;364:66;329:10;;300:140;;;458:6;455:1;452:13;449:91;;;528:1;523:2;514:6;503:9;499:22;495:31;488:42;449:91;-1:-1:-1;601:2:32;580:15;-1:-1:-1;;576:29:32;561:45;;;;608:2;557:54;;14:603;-1:-1:-1;;;14:603:32:o", "linkReferences": {} }, "methodIdentifiers": { @@ -139,172 +139,6 @@ "popError()": "b22dc54d", "zeroVarError()": "b67689da" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"arithmeticError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"assertionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"divisionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"encodeStorageError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enumConversionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"indexOOBError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"memOverflowError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"popError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"zeroVarError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdError.sol\":\"stdError\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "arithmeticError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "assertionError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "divisionError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "encodeStorageError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "enumConversionError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "indexOOBError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "memOverflowError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "popError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "zeroVarError", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ] - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdError.sol": "stdError" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdError.sol": { - "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", - "urls": [ - "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", - "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdError.sol", "id": 5248, @@ -320,7 +154,6 @@ "id": 5183, "nodeType": "PragmaDirective", "src": "129:31:6", - "nodes": [], "literals": [ "solidity", ">=", @@ -340,7 +173,6 @@ "id": 5190, "nodeType": "VariableDeclaration", "src": "185:86:6", - "nodes": [], "constant": true, "functionSelector": "10332977", "mutability": "constant", @@ -426,7 +258,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "228:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "224:23:6", @@ -441,7 +272,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "224:47:6", @@ -457,7 +287,6 @@ "id": 5197, "nodeType": "VariableDeclaration", "src": "277:87:6", - "nodes": [], "constant": true, "functionSelector": "8995290f", "mutability": "constant", @@ -543,7 +372,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "321:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "317:23:6", @@ -558,7 +386,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:47:6", @@ -574,7 +401,6 @@ "id": 5204, "nodeType": "VariableDeclaration", "src": "370:85:6", - "nodes": [], "constant": true, "functionSelector": "fa784a44", "mutability": "constant", @@ -660,7 +486,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "412:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "408:23:6", @@ -675,7 +500,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "408:47:6", @@ -691,7 +515,6 @@ "id": 5211, "nodeType": "VariableDeclaration", "src": "461:91:6", - "nodes": [], "constant": true, "functionSelector": "1de45560", "mutability": "constant", @@ -777,7 +600,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "509:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "505:23:6", @@ -792,7 +614,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "505:47:6", @@ -808,7 +629,6 @@ "id": 5218, "nodeType": "VariableDeclaration", "src": "558:90:6", - "nodes": [], "constant": true, "functionSelector": "d160e4de", "mutability": "constant", @@ -894,7 +714,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "605:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "601:23:6", @@ -909,7 +728,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "601:47:6", @@ -925,7 +743,6 @@ "id": 5225, "nodeType": "VariableDeclaration", "src": "654:80:6", - "nodes": [], "constant": true, "functionSelector": "b22dc54d", "mutability": "constant", @@ -1011,7 +828,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "691:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "687:23:6", @@ -1026,7 +842,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "687:47:6", @@ -1042,7 +857,6 @@ "id": 5232, "nodeType": "VariableDeclaration", "src": "740:85:6", - "nodes": [], "constant": true, "functionSelector": "05ee8612", "mutability": "constant", @@ -1128,7 +942,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "782:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "778:23:6", @@ -1143,7 +956,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "778:47:6", @@ -1159,7 +971,6 @@ "id": 5239, "nodeType": "VariableDeclaration", "src": "831:88:6", - "nodes": [], "constant": true, "functionSelector": "986c5f68", "mutability": "constant", @@ -1245,7 +1056,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "876:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "872:23:6", @@ -1260,7 +1070,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "872:47:6", @@ -1276,7 +1085,6 @@ "id": 5246, "nodeType": "VariableDeclaration", "src": "925:84:6", - "nodes": [], "constant": true, "functionSelector": "b67689da", "mutability": "constant", @@ -1362,7 +1170,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "966:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "962:23:6", @@ -1377,7 +1184,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "962:47:6", diff --git a/out/StdJson.sol/stdJson.json b/out/StdJson.sol/stdJson.json index 500d4e7..4264a8d 100644 --- a/out/StdJson.sol/stdJson.json +++ b/out/StdJson.sol/stdJson.json @@ -1,72 +1,16 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122023ba07c7ad2d9f98c832ff09a007f2b41e8b726752b5fd4a2f044ed58534930164736f6c63430008110033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ae5b3af905fd7b2a8f5937cfe25626212abdafb52b4b54e4dddce0d2038e717a64736f6c634300080f0033", "sourceMap": "830:5659:7:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;830:5659:7;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122023ba07c7ad2d9f98c832ff09a007f2b41e8b726752b5fd4a2f044ed58534930164736f6c63430008110033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ae5b3af905fd7b2a8f5937cfe25626212abdafb52b4b54e4dddce0d2038e717a64736f6c634300080f0033", "sourceMap": "830:5659:7:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdJson.sol\":\"stdJson\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdJson.sol": "stdJson" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdJson.sol", "id": 5915, @@ -85,7 +29,6 @@ "id": 5249, "nodeType": "PragmaDirective", "src": "32:31:7", - "nodes": [], "literals": [ "solidity", ">=", @@ -100,7 +43,6 @@ "id": 5250, "nodeType": "PragmaDirective", "src": "65:33:7", - "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -110,7 +52,6 @@ "id": 5252, "nodeType": "ImportDirective", "src": "100:32:7", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -141,7 +82,6 @@ "id": 5269, "nodeType": "VariableDeclaration", "src": "852:92:7", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -159,9 +99,6 @@ "pathNode": { "id": 5253, "name": "VmSafe", - "nameLocations": [ - "852:6:7" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "852:6:7" @@ -224,7 +161,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "912:28:7", @@ -267,7 +203,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "904:37:7", @@ -310,7 +245,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "896:46:7", @@ -353,7 +287,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "888:55:7", @@ -388,7 +321,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "881:63:7", @@ -404,12 +336,10 @@ "id": 5285, "nodeType": "FunctionDefinition", "src": "951:141:7", - "nodes": [], "body": { "id": 5284, "nodeType": "Block", "src": "1045:47:7", - "nodes": [], "statements": [ { "expression": { @@ -467,7 +397,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1065:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -483,7 +412,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1062:23:7", @@ -609,12 +537,10 @@ "id": 5307, "nodeType": "FunctionDefinition", "src": "1098:159:7", - "nodes": [], "body": { "id": 5306, "nodeType": "Block", "src": "1187:70:7", - "nodes": [], "statements": [ { "expression": { @@ -674,7 +600,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1218:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -690,7 +615,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1215:23:7", @@ -765,7 +689,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1208:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1204:10:7", @@ -780,7 +703,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1204:46:7", @@ -906,12 +828,10 @@ "id": 5331, "nodeType": "FunctionDefinition", "src": "1263:175:7", - "nodes": [], "body": { "id": 5330, "nodeType": "Block", "src": "1366:72:7", - "nodes": [], "statements": [ { "expression": { @@ -971,7 +891,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1397:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -987,7 +906,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1394:23:7", @@ -1075,7 +993,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1387:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1383:10:7", @@ -1090,7 +1007,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1383:48:7", @@ -1225,12 +1141,10 @@ "id": 5353, "nodeType": "FunctionDefinition", "src": "1444:156:7", - "nodes": [], "body": { "id": 5352, "nodeType": "Block", "src": "1531:69:7", - "nodes": [], "statements": [ { "expression": { @@ -1290,7 +1204,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1562:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -1306,7 +1219,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1559:23:7", @@ -1381,7 +1293,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1552:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1548:10:7", @@ -1396,7 +1307,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1548:45:7", @@ -1522,12 +1432,10 @@ "id": 5377, "nodeType": "FunctionDefinition", "src": "1606:172:7", - "nodes": [], "body": { "id": 5376, "nodeType": "Block", "src": "1707:71:7", - "nodes": [], "statements": [ { "expression": { @@ -1587,7 +1495,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1738:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -1603,7 +1510,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:23:7", @@ -1691,7 +1597,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1728:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1724:10:7", @@ -1706,7 +1611,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1724:47:7", @@ -1841,12 +1745,10 @@ "id": 5399, "nodeType": "FunctionDefinition", "src": "1784:162:7", - "nodes": [], "body": { "id": 5398, "nodeType": "Block", "src": "1876:70:7", - "nodes": [], "statements": [ { "expression": { @@ -1906,7 +1808,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1907:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -1922,7 +1823,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1904:23:7", @@ -1997,7 +1897,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1897:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1893:10:7", @@ -2012,7 +1911,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1893:46:7", @@ -2138,12 +2036,10 @@ "id": 5423, "nodeType": "FunctionDefinition", "src": "1952:178:7", - "nodes": [], "body": { "id": 5422, "nodeType": "Block", "src": "2058:72:7", - "nodes": [], "statements": [ { "expression": { @@ -2203,7 +2099,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2089:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -2219,7 +2114,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2086:23:7", @@ -2307,7 +2201,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2079:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2075:10:7", @@ -2322,7 +2215,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2075:48:7", @@ -2457,12 +2349,10 @@ "id": 5445, "nodeType": "FunctionDefinition", "src": "2136:166:7", - "nodes": [], "body": { "id": 5444, "nodeType": "Block", "src": "2233:69:7", - "nodes": [], "statements": [ { "expression": { @@ -2522,7 +2412,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2264:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -2538,7 +2427,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2261:23:7", @@ -2613,7 +2501,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2254:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2250:10:7", @@ -2628,7 +2515,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2250:45:7", @@ -2754,12 +2640,10 @@ "id": 5469, "nodeType": "FunctionDefinition", "src": "2308:175:7", - "nodes": [], "body": { "id": 5468, "nodeType": "Block", "src": "2412:71:7", - "nodes": [], "statements": [ { "expression": { @@ -2819,7 +2703,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2443:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -2835,7 +2718,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2440:23:7", @@ -2923,7 +2805,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2433:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2429:10:7", @@ -2938,7 +2819,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2429:47:7", @@ -3073,12 +2953,10 @@ "id": 5491, "nodeType": "FunctionDefinition", "src": "2489:162:7", - "nodes": [], "body": { "id": 5490, "nodeType": "Block", "src": "2581:70:7", - "nodes": [], "statements": [ { "expression": { @@ -3138,7 +3016,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2612:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -3154,7 +3031,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2609:23:7", @@ -3229,7 +3105,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2602:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2598:10:7", @@ -3244,7 +3119,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2598:46:7", @@ -3371,12 +3245,10 @@ "id": 5515, "nodeType": "FunctionDefinition", "src": "2657:178:7", - "nodes": [], "body": { "id": 5514, "nodeType": "Block", "src": "2763:72:7", - "nodes": [], "statements": [ { "expression": { @@ -3436,7 +3308,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2794:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -3452,7 +3323,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2791:23:7", @@ -3540,7 +3410,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2784:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2780:10:7", @@ -3555,7 +3424,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2780:48:7", @@ -3691,12 +3559,10 @@ "id": 5537, "nodeType": "FunctionDefinition", "src": "2841:153:7", - "nodes": [], "body": { "id": 5536, "nodeType": "Block", "src": "2927:67:7", - "nodes": [], "statements": [ { "expression": { @@ -3756,7 +3622,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2958:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -3772,7 +3637,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2955:23:7", @@ -3847,7 +3711,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2948:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2944:10:7", @@ -3862,7 +3725,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2944:43:7", @@ -3988,12 +3850,10 @@ "id": 5561, "nodeType": "FunctionDefinition", "src": "3000:169:7", - "nodes": [], "body": { "id": 5560, "nodeType": "Block", "src": "3100:69:7", - "nodes": [], "statements": [ { "expression": { @@ -4053,7 +3913,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3131:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -4069,7 +3928,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3128:23:7", @@ -4157,7 +4015,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3121:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "3117:10:7", @@ -4172,7 +4029,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3117:45:7", @@ -4307,12 +4163,10 @@ "id": 5583, "nodeType": "FunctionDefinition", "src": "3175:163:7", - "nodes": [], "body": { "id": 5582, "nodeType": "Block", "src": "3270:68:7", - "nodes": [], "statements": [ { "expression": { @@ -4372,7 +4226,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3301:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -4388,7 +4241,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3298:23:7", @@ -4463,7 +4315,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3291:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "3287:10:7", @@ -4478,7 +4329,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3287:44:7", @@ -4604,12 +4454,10 @@ "id": 5607, "nodeType": "FunctionDefinition", "src": "3344:172:7", - "nodes": [], "body": { "id": 5606, "nodeType": "Block", "src": "3446:70:7", - "nodes": [], "statements": [ { "expression": { @@ -4669,7 +4517,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3477:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -4685,7 +4532,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3474:23:7", @@ -4773,7 +4619,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3467:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "3463:10:7", @@ -4788,7 +4633,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3463:46:7", @@ -4923,12 +4767,10 @@ "id": 5626, "nodeType": "FunctionDefinition", "src": "3522:167:7", - "nodes": [], "body": { "id": 5625, "nodeType": "Block", "src": "3628:61:7", - "nodes": [], "statements": [ { "expression": { @@ -5002,7 +4844,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3648:13:7", "memberName": "serializeBool", "nodeType": "MemberAccess", "referencedDeclaration": 8827, @@ -5018,7 +4859,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3645:37:7", @@ -5171,12 +5011,10 @@ "id": 5646, "nodeType": "FunctionDefinition", "src": "3695:196:7", - "nodes": [], "body": { "id": 5645, "nodeType": "Block", "src": "3830:61:7", - "nodes": [], "statements": [ { "expression": { @@ -5250,7 +5088,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3850:13:7", "memberName": "serializeBool", "nodeType": "MemberAccess", "referencedDeclaration": 8905, @@ -5266,7 +5103,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3847:37:7", @@ -5428,12 +5264,10 @@ "id": 5665, "nodeType": "FunctionDefinition", "src": "3897:170:7", - "nodes": [], "body": { "id": 5664, "nodeType": "Block", "src": "4006:61:7", - "nodes": [], "statements": [ { "expression": { @@ -5507,7 +5341,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4026:13:7", "memberName": "serializeUint", "nodeType": "MemberAccess", "referencedDeclaration": 8838, @@ -5523,7 +5356,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4023:37:7", @@ -5676,12 +5508,10 @@ "id": 5685, "nodeType": "FunctionDefinition", "src": "4073:199:7", - "nodes": [], "body": { "id": 5684, "nodeType": "Block", "src": "4211:61:7", - "nodes": [], "statements": [ { "expression": { @@ -5755,7 +5585,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4231:13:7", "memberName": "serializeUint", "nodeType": "MemberAccess", "referencedDeclaration": 8917, @@ -5771,7 +5600,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4228:37:7", @@ -5933,12 +5761,10 @@ "id": 5704, "nodeType": "FunctionDefinition", "src": "4278:168:7", - "nodes": [], "body": { "id": 5703, "nodeType": "Block", "src": "4386:60:7", - "nodes": [], "statements": [ { "expression": { @@ -6012,7 +5838,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4406:12:7", "memberName": "serializeInt", "nodeType": "MemberAccess", "referencedDeclaration": 8849, @@ -6028,7 +5853,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4403:36:7", @@ -6181,12 +6005,10 @@ "id": 5724, "nodeType": "FunctionDefinition", "src": "4452:197:7", - "nodes": [], "body": { "id": 5723, "nodeType": "Block", "src": "4589:60:7", - "nodes": [], "statements": [ { "expression": { @@ -6260,7 +6082,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4609:12:7", "memberName": "serializeInt", "nodeType": "MemberAccess", "referencedDeclaration": 8929, @@ -6276,7 +6097,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4606:36:7", @@ -6438,12 +6258,10 @@ "id": 5743, "nodeType": "FunctionDefinition", "src": "4655:173:7", - "nodes": [], "body": { "id": 5742, "nodeType": "Block", "src": "4764:64:7", - "nodes": [], "statements": [ { "expression": { @@ -6517,7 +6335,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4784:16:7", "memberName": "serializeAddress", "nodeType": "MemberAccess", "referencedDeclaration": 8860, @@ -6533,7 +6350,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4781:40:7", @@ -6687,12 +6503,10 @@ "id": 5763, "nodeType": "FunctionDefinition", "src": "4834:202:7", - "nodes": [], "body": { "id": 5762, "nodeType": "Block", "src": "4972:64:7", - "nodes": [], "statements": [ { "expression": { @@ -6766,7 +6580,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4992:16:7", "memberName": "serializeAddress", "nodeType": "MemberAccess", "referencedDeclaration": 8941, @@ -6782,7 +6595,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4989:40:7", @@ -6945,12 +6757,10 @@ "id": 5782, "nodeType": "FunctionDefinition", "src": "5042:173:7", - "nodes": [], "body": { "id": 5781, "nodeType": "Block", "src": "5151:64:7", - "nodes": [], "statements": [ { "expression": { @@ -7024,7 +6834,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5171:16:7", "memberName": "serializeBytes32", "nodeType": "MemberAccess", "referencedDeclaration": 8871, @@ -7040,7 +6849,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5168:40:7", @@ -7193,12 +7001,10 @@ "id": 5802, "nodeType": "FunctionDefinition", "src": "5221:202:7", - "nodes": [], "body": { "id": 5801, "nodeType": "Block", "src": "5359:64:7", - "nodes": [], "statements": [ { "expression": { @@ -7272,7 +7078,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5379:16:7", "memberName": "serializeBytes32", "nodeType": "MemberAccess", "referencedDeclaration": 8953, @@ -7288,7 +7093,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5376:40:7", @@ -7450,12 +7254,10 @@ "id": 5821, "nodeType": "FunctionDefinition", "src": "5429:176:7", - "nodes": [], "body": { "id": 5820, "nodeType": "Block", "src": "5543:62:7", - "nodes": [], "statements": [ { "expression": { @@ -7529,7 +7331,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5563:14:7", "memberName": "serializeBytes", "nodeType": "MemberAccess", "referencedDeclaration": 8893, @@ -7545,7 +7346,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5560:38:7", @@ -7698,12 +7498,10 @@ "id": 5841, "nodeType": "FunctionDefinition", "src": "5611:198:7", - "nodes": [], "body": { "id": 5840, "nodeType": "Block", "src": "5747:62:7", - "nodes": [], "statements": [ { "expression": { @@ -7777,7 +7575,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5767:14:7", "memberName": "serializeBytes", "nodeType": "MemberAccess", "referencedDeclaration": 8977, @@ -7793,7 +7590,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5764:38:7", @@ -7955,12 +7751,10 @@ "id": 5860, "nodeType": "FunctionDefinition", "src": "5815:198:7", - "nodes": [], "body": { "id": 5859, "nodeType": "Block", "src": "5950:63:7", - "nodes": [], "statements": [ { "expression": { @@ -8034,7 +7828,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5970:15:7", "memberName": "serializeString", "nodeType": "MemberAccess", "referencedDeclaration": 8882, @@ -8050,7 +7843,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5967:39:7", @@ -8203,12 +7995,10 @@ "id": 5880, "nodeType": "FunctionDefinition", "src": "6019:200:7", - "nodes": [], "body": { "id": 5879, "nodeType": "Block", "src": "6156:63:7", - "nodes": [], "statements": [ { "expression": { @@ -8282,7 +8072,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6176:15:7", "memberName": "serializeString", "nodeType": "MemberAccess", "referencedDeclaration": 8965, @@ -8298,7 +8087,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6173:39:7", @@ -8460,12 +8248,10 @@ "id": 5895, "nodeType": "FunctionDefinition", "src": "6225:111:7", - "nodes": [], "body": { "id": 5894, "nodeType": "Block", "src": "6292:44:7", - "nodes": [], "statements": [ { "expression": { @@ -8523,7 +8309,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6305:9:7", "memberName": "writeJson", "nodeType": "MemberAccess", "referencedDeclaration": 8984, @@ -8539,7 +8324,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6302:27:7", @@ -8636,12 +8420,10 @@ "id": 5913, "nodeType": "FunctionDefinition", "src": "6342:145:7", - "nodes": [], "body": { "id": 5912, "nodeType": "Block", "src": "6433:54:7", - "nodes": [], "statements": [ { "expression": { @@ -8715,7 +8497,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6446:9:7", "memberName": "writeJson", "nodeType": "MemberAccess", "referencedDeclaration": 8993, @@ -8731,7 +8512,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6443:37:7", diff --git a/out/StdMath.sol/stdMath.json b/out/StdMath.sol/stdMath.json index e38c8b8..6db23b2 100644 --- a/out/StdMath.sol/stdMath.json +++ b/out/StdMath.sol/stdMath.json @@ -1,64 +1,16 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220468f4fb5bb93331c84cf23e07ae9055464fca92e82893094a3e764f0c78de82264736f6c63430008110033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208f9c046a18e1b25f0b0f4123cb77217f1ec99e638aab49f3bf13c4a7922f6c3364736f6c634300080f0033", "sourceMap": "65:1294:8:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;65:1294:8;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220468f4fb5bb93331c84cf23e07ae9055464fca92e82893094a3e764f0c78de82264736f6c63430008110033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208f9c046a18e1b25f0b0f4123cb77217f1ec99e638aab49f3bf13c4a7922f6c3364736f6c634300080f0033", "sourceMap": "65:1294:8:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdMath.sol\":\"stdMath\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdMath.sol": "stdMath" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdMath.sol", "id": 6057, @@ -74,7 +26,6 @@ "id": 5916, "nodeType": "PragmaDirective", "src": "32:31:8", - "nodes": [], "literals": [ "solidity", ">=", @@ -94,7 +45,6 @@ "id": 5920, "nodeType": "VariableDeclaration", "src": "87:115:8", - "nodes": [], "constant": true, "mutability": "constant", "name": "INT256_MIN", @@ -153,12 +103,10 @@ "id": 5946, "nodeType": "FunctionDefinition", "src": "209:306:8", - "nodes": [], "body": { "id": 5945, "nodeType": "Block", "src": "264:251:8", - "nodes": [], "statements": [ { "condition": { @@ -370,7 +318,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "485:23:8", @@ -469,12 +416,10 @@ "id": 5967, "nodeType": "FunctionDefinition", "src": "521:114:8", - "nodes": [], "body": { "id": 5966, "nodeType": "Block", "src": "590:45:8", - "nodes": [], "statements": [ { "expression": { @@ -732,12 +677,10 @@ "id": 6003, "nodeType": "FunctionDefinition", "src": "641:352:8", - "nodes": [], "body": { "id": 6002, "nodeType": "Block", "src": "708:285:8", - "nodes": [], "statements": [ { "condition": { @@ -897,7 +840,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "887:6:8", @@ -946,7 +888,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "895:6:8", @@ -988,7 +929,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "881:21:8", @@ -1056,7 +996,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "971:6:8", @@ -1107,7 +1046,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "980:6:8", @@ -1239,12 +1177,10 @@ "id": 6026, "nodeType": "FunctionDefinition", "src": "999:160:8", - "nodes": [], "body": { "id": 6025, "nodeType": "Block", "src": "1075:84:8", - "nodes": [], "statements": [ { "assignments": [ @@ -1338,7 +1274,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1104:11:8", @@ -1544,12 +1479,10 @@ "id": 6055, "nodeType": "FunctionDefinition", "src": "1165:192:8", - "nodes": [], "body": { "id": 6054, "nodeType": "Block", "src": "1239:118:8", - "nodes": [], "statements": [ { "assignments": [ @@ -1643,7 +1576,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1268:11:8", @@ -1729,7 +1661,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1304:6:8", diff --git a/out/StdStorage.sol/stdStorage.json b/out/StdStorage.sol/stdStorage.json index 9f2ca3d..398b9a7 100644 --- a/out/StdStorage.sol/stdStorage.json +++ b/out/StdStorage.sol/stdStorage.json @@ -1,72 +1,16 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208aa12bf39ed4cf97c04c3f9b623ca93ffd97a68ee8ec538219d93991644b120164736f6c63430008110033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c67d699f8530d2e784ab212a7d7d310a1de8210ac394a480740d7aa70ef7f83264736f6c634300080f0033", "sourceMap": "7347:4527:9:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;7347:4527:9;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208aa12bf39ed4cf97c04c3f9b623ca93ffd97a68ee8ec538219d93991644b120164736f6c63430008110033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c67d699f8530d2e784ab212a7d7d310a1de8210ac394a480740d7aa70ef7f83264736f6c634300080f0033", "sourceMap": "7347:4527:9:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdStorage.sol\":\"stdStorage\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdStorage.sol": "stdStorage" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdStorage.sol", "id": 7523, @@ -91,7 +35,6 @@ "id": 6058, "nodeType": "PragmaDirective", "src": "32:31:9", - "nodes": [], "literals": [ "solidity", ">=", @@ -106,7 +49,6 @@ "id": 6060, "nodeType": "ImportDirective", "src": "65:28:9", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -132,7 +74,6 @@ "id": 6088, "nodeType": "StructDefinition", "src": "95:271:9", - "nodes": [], "canonicalName": "StdStorage", "members": [ { @@ -463,7 +404,6 @@ "id": 6098, "nodeType": "EventDefinition", "src": "397:74:9", - "nodes": [], "anonymous": false, "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", "name": "SlotFound", @@ -593,7 +533,6 @@ "id": 6104, "nodeType": "EventDefinition", "src": "476:54:9", - "nodes": [], "anonymous": false, "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", "name": "WARNING_UninitedSlot", @@ -667,7 +606,6 @@ "id": 6121, "nodeType": "VariableDeclaration", "src": "536:84:9", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -685,9 +623,6 @@ "pathNode": { "id": 6105, "name": "Vm", - "nameLocations": [ - "536:2:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "536:2:9" @@ -750,7 +685,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "588:28:9", @@ -793,7 +727,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "580:37:9", @@ -836,7 +769,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "572:46:9", @@ -879,7 +811,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "564:55:9", @@ -914,7 +845,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "561:59:9", @@ -930,12 +860,10 @@ "id": 6139, "nodeType": "FunctionDefinition", "src": "627:123:9", - "nodes": [], "body": { "id": 6138, "nodeType": "Block", "src": "694:56:9", - "nodes": [], "statements": [ { "expression": { @@ -989,7 +917,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "728:13:9", @@ -1024,7 +951,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "718:24:9", @@ -1067,7 +993,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "711:32:9", @@ -1166,12 +1091,10 @@ "id": 6584, "nodeType": "FunctionDefinition", "src": "1264:3205:9", - "nodes": [], "body": { "id": 6583, "nodeType": "Block", "src": "1330:3139:9", - "nodes": [], "statements": [ { "assignments": [ @@ -1226,7 +1149,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1359:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -1291,7 +1213,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1395:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -1356,7 +1277,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1436:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -1430,7 +1350,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1480:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -1465,7 +1384,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1541:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -1581,7 +1499,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1572:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1568:16:9", @@ -1596,7 +1513,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1568:34:9", @@ -1631,7 +1547,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1558:45:9", @@ -1682,7 +1597,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -1798,7 +1712,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1659:16:9", @@ -1813,7 +1726,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1659:34:9", @@ -1848,7 +1760,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1649:45:9", @@ -1964,7 +1875,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1758:12:9", @@ -2003,7 +1913,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1739:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1735:16:9", @@ -2018,7 +1927,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:36:9", @@ -2053,7 +1961,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1784:6:9", "memberName": "record", "nodeType": "MemberAccess", "referencedDeclaration": 8553, @@ -2069,7 +1976,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1781:11:9", @@ -2200,7 +2106,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1866:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "1862:14:9", @@ -2215,7 +2120,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1862:20:9", @@ -2338,7 +2242,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1903:38:9", @@ -2454,7 +2357,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2002:12:9", @@ -2489,7 +2391,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1993:8:9", "memberName": "accesses", "nodeType": "MemberAccess", "referencedDeclaration": 8564, @@ -2505,7 +2406,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1990:25:9", @@ -2547,7 +2447,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2035:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2029:12:9", @@ -2609,7 +2508,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2792:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2786:12:9", @@ -2714,7 +2612,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4000:82:9", @@ -2858,7 +2755,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2897:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -2874,7 +2770,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2894:22:9", @@ -2963,7 +2858,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2946:10:9", @@ -3074,7 +2968,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3011:17:9", @@ -3113,7 +3006,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2985:44:9", @@ -3233,7 +3125,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3114:18:9", @@ -3276,7 +3167,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3093:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -3292,7 +3182,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3090:43:9", @@ -3473,7 +3362,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3260:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "3256:14:9", @@ -3488,7 +3376,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3256:20:9", @@ -3618,7 +3505,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3305:38:9", @@ -3740,7 +3626,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3403:18:9", @@ -3854,7 +3739,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3554:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3550:16:9", @@ -3869,7 +3753,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3550:34:9", @@ -3904,7 +3787,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3540:45:9", @@ -3986,7 +3868,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3587:17:9", @@ -4033,7 +3914,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3519:86:9", @@ -4075,7 +3955,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -4191,7 +4070,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3659:16:9", @@ -4206,7 +4084,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3659:34:9", @@ -4241,7 +4118,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3649:45:9", @@ -4336,7 +4212,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3698:17:9", @@ -4384,7 +4259,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3742:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -4500,7 +4374,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3773:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3769:16:9", @@ -4515,7 +4388,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3769:34:9", @@ -4550,7 +4422,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3759:45:9", @@ -4696,7 +4567,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3837:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4712,7 +4582,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3834:29:9", @@ -4831,7 +4700,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3929:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4847,7 +4715,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3926:29:9", @@ -4905,7 +4772,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2848:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2842:12:9", @@ -5138,7 +5004,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2080:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -5154,7 +5019,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2077:22:9", @@ -5243,7 +5107,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2125:10:9", @@ -5358,7 +5221,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2186:17:9", @@ -5397,7 +5259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2160:44:9", @@ -5532,7 +5393,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2268:187:9", @@ -5633,7 +5493,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2523:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2519:16:9", @@ -5648,7 +5507,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2519:34:9", @@ -5683,7 +5541,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2509:45:9", @@ -5769,7 +5626,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2556:17:9", @@ -5816,7 +5672,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2488:86:9", @@ -5858,7 +5713,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "2593:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -5974,7 +5828,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2624:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2620:16:9", @@ -5989,7 +5842,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2620:34:9", @@ -6024,7 +5876,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2610:45:9", @@ -6123,7 +5974,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2659:17:9", @@ -6171,7 +6021,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "2695:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6287,7 +6136,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2726:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2722:16:9", @@ -6302,7 +6150,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2722:34:9", @@ -6337,7 +6184,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2712:45:9", @@ -6413,7 +6259,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4129:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6529,7 +6374,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4160:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4156:16:9", @@ -6544,7 +6388,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4156:34:9", @@ -6579,7 +6422,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4146:45:9", @@ -6648,7 +6490,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4103:162:9", @@ -6691,7 +6532,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4288:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -6739,7 +6579,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4317:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -6787,7 +6626,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4343:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -6835,7 +6673,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4370:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -6876,7 +6713,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4399:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -6992,7 +6828,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4430:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4426:16:9", @@ -7007,7 +6842,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4426:34:9", @@ -7042,7 +6876,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4416:45:9", @@ -7106,9 +6939,6 @@ "pathNode": { "id": 6141, "name": "StdStorage", - "nameLocations": [ - "1278:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1278:10:9" @@ -7168,12 +6998,10 @@ "id": 6604, "nodeType": "FunctionDefinition", "src": "4475:156:9", - "nodes": [], "body": { "id": 6603, "nodeType": "Block", "src": "4571:60:9", - "nodes": [], "statements": [ { "expression": { @@ -7200,7 +7028,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4586:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -7284,9 +7111,6 @@ "pathNode": { "id": 6585, "name": "StdStorage", - "nameLocations": [ - "4491:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4491:10:9" @@ -7356,9 +7180,6 @@ "pathNode": { "id": 6591, "name": "StdStorage", - "nameLocations": [ - "4551:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4551:10:9" @@ -7384,12 +7205,10 @@ "id": 6624, "nodeType": "FunctionDefinition", "src": "4637:143:9", - "nodes": [], "body": { "id": 6623, "nodeType": "Block", "src": "4726:54:9", - "nodes": [], "statements": [ { "expression": { @@ -7416,7 +7235,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4741:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7500,9 +7318,6 @@ "pathNode": { "id": 6605, "name": "StdStorage", - "nameLocations": [ - "4650:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4650:10:9" @@ -7571,9 +7386,6 @@ "pathNode": { "id": 6611, "name": "StdStorage", - "nameLocations": [ - "4706:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4706:10:9" @@ -7599,12 +7411,10 @@ "id": 6646, "nodeType": "FunctionDefinition", "src": "4786:156:9", - "nodes": [], "body": { "id": 6645, "nodeType": "Block", "src": "4882:60:9", - "nodes": [], "statements": [ { "expression": { @@ -7631,7 +7441,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4897:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7682,7 +7491,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4904:10:9", @@ -7752,9 +7560,6 @@ "pathNode": { "id": 6625, "name": "StdStorage", - "nameLocations": [ - "4799:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4799:10:9" @@ -7823,9 +7628,6 @@ "pathNode": { "id": 6631, "name": "StdStorage", - "nameLocations": [ - "4862:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4862:10:9" @@ -7851,12 +7653,10 @@ "id": 6677, "nodeType": "FunctionDefinition", "src": "4948:179:9", - "nodes": [], "body": { "id": 6676, "nodeType": "Block", "src": "5042:85:9", - "nodes": [], "statements": [ { "expression": { @@ -7912,7 +7712,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5084:12:9", @@ -7955,7 +7754,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5076:21:9", @@ -7998,7 +7796,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5068:30:9", @@ -8034,7 +7831,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5057:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8049,7 +7845,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5063:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5052:15:9", @@ -8064,7 +7859,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5052:47:9", @@ -8128,9 +7922,6 @@ "pathNode": { "id": 6647, "name": "StdStorage", - "nameLocations": [ - "4966:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4966:10:9" @@ -8200,9 +7991,6 @@ "pathNode": { "id": 6653, "name": "StdStorage", - "nameLocations": [ - "5022:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5022:10:9" @@ -8228,12 +8016,10 @@ "id": 6702, "nodeType": "FunctionDefinition", "src": "5133:161:9", - "nodes": [], "body": { "id": 6701, "nodeType": "Block", "src": "5227:67:9", - "nodes": [], "statements": [ { "expression": { @@ -8285,7 +8071,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5253:12:9", @@ -8321,7 +8106,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5242:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8336,7 +8120,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5248:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5237:15:9", @@ -8351,7 +8134,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5237:29:9", @@ -8415,9 +8197,6 @@ "pathNode": { "id": 6678, "name": "StdStorage", - "nameLocations": [ - "5151:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5151:10:9" @@ -8486,9 +8265,6 @@ "pathNode": { "id": 6684, "name": "StdStorage", - "nameLocations": [ - "5207:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5207:10:9" @@ -8514,12 +8290,10 @@ "id": 6724, "nodeType": "FunctionDefinition", "src": "5300:152:9", - "nodes": [], "body": { "id": 6723, "nodeType": "Block", "src": "5394:58:9", - "nodes": [], "statements": [ { "expression": { @@ -8562,7 +8336,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5409:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8577,7 +8350,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5415:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5404:15:9", @@ -8592,7 +8364,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5404:20:9", @@ -8656,9 +8427,6 @@ "pathNode": { "id": 6703, "name": "StdStorage", - "nameLocations": [ - "5318:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5318:10:9" @@ -8727,9 +8495,6 @@ "pathNode": { "id": 6709, "name": "StdStorage", - "nameLocations": [ - "5374:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5374:10:9" @@ -8755,12 +8520,10 @@ "id": 6744, "nodeType": "FunctionDefinition", "src": "5458:152:9", - "nodes": [], "body": { "id": 6743, "nodeType": "Block", "src": "5552:58:9", - "nodes": [], "statements": [ { "expression": { @@ -8787,7 +8550,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "5567:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -8871,9 +8633,6 @@ "pathNode": { "id": 6725, "name": "StdStorage", - "nameLocations": [ - "5473:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5473:10:9" @@ -8942,9 +8701,6 @@ "pathNode": { "id": 6731, "name": "StdStorage", - "nameLocations": [ - "5532:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5532:10:9" @@ -8970,12 +8726,10 @@ "id": 6776, "nodeType": "FunctionDefinition", "src": "5616:194:9", - "nodes": [], "body": { "id": 6775, "nodeType": "Block", "src": "5686:124:9", - "nodes": [], "statements": [ { "assignments": [ @@ -9030,7 +8784,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5713:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -9116,7 +8869,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5742:10:9", @@ -9193,7 +8945,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5791:10:9", @@ -9232,7 +8983,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5783:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -9248,7 +8998,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5780:22:9", @@ -9283,7 +9032,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5773:6:9", "memberName": "encode", "nodeType": "MemberAccess", "src": "5769:10:9", @@ -9298,7 +9046,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5769:34:9", @@ -9345,9 +9092,6 @@ "pathNode": { "id": 6745, "name": "StdStorage", - "nameLocations": [ - "5630:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5630:10:9" @@ -9407,12 +9151,10 @@ "id": 6795, "nodeType": "FunctionDefinition", "src": "5816:131:9", - "nodes": [], "body": { "id": 6794, "nodeType": "Block", "src": "5890:57:9", - "nodes": [], "statements": [ { "expression": { @@ -9456,7 +9198,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5918:10:9", @@ -9531,7 +9272,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5911:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "5907:10:9", @@ -9546,7 +9286,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5907:33:9", @@ -9593,9 +9332,6 @@ "pathNode": { "id": 6777, "name": "StdStorage", - "nameLocations": [ - "5838:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5838:10:9" @@ -9655,12 +9391,10 @@ "id": 6826, "nodeType": "FunctionDefinition", "src": "5953:279:9", - "nodes": [], "body": { "id": 6825, "nodeType": "Block", "src": "6021:211:9", - "nodes": [], "statements": [ { "assignments": [ @@ -9735,7 +9469,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6042:14:9", @@ -9941,7 +9674,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6133:92:9", @@ -9987,9 +9719,6 @@ "pathNode": { "id": 6796, "name": "StdStorage", - "nameLocations": [ - "5972:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5972:10:9" @@ -10049,12 +9778,10 @@ "id": 6845, "nodeType": "FunctionDefinition", "src": "6238:131:9", - "nodes": [], "body": { "id": 6844, "nodeType": "Block", "src": "6312:57:9", - "nodes": [], "statements": [ { "expression": { @@ -10098,7 +9825,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6340:10:9", @@ -10173,7 +9899,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6333:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6329:10:9", @@ -10188,7 +9913,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6329:33:9", @@ -10235,9 +9959,6 @@ "pathNode": { "id": 6827, "name": "StdStorage", - "nameLocations": [ - "6260:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6260:10:9" @@ -10298,12 +10019,10 @@ "id": 6864, "nodeType": "FunctionDefinition", "src": "6375:128:9", - "nodes": [], "body": { "id": 6863, "nodeType": "Block", "src": "6446:57:9", - "nodes": [], "statements": [ { "expression": { @@ -10347,7 +10066,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6474:10:9", @@ -10422,7 +10140,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6467:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6463:10:9", @@ -10437,7 +10154,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6463:33:9", @@ -10484,9 +10200,6 @@ "pathNode": { "id": 6846, "name": "StdStorage", - "nameLocations": [ - "6394:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6394:10:9" @@ -10546,12 +10259,10 @@ "id": 6883, "nodeType": "FunctionDefinition", "src": "6509:125:9", - "nodes": [], "body": { "id": 6882, "nodeType": "Block", "src": "6578:56:9", - "nodes": [], "statements": [ { "expression": { @@ -10595,7 +10306,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6606:10:9", @@ -10670,7 +10380,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6599:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6595:10:9", @@ -10685,7 +10394,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6595:32:9", @@ -10732,9 +10440,6 @@ "pathNode": { "id": 6865, "name": "StdStorage", - "nameLocations": [ - "6527:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6527:10:9" @@ -10794,12 +10499,10 @@ "id": 6939, "nodeType": "FunctionDefinition", "src": "6640:304:9", - "nodes": [], "body": { "id": 6938, "nodeType": "Block", "src": "6727:217:9", - "nodes": [], "statements": [ { "assignments": [ @@ -10901,7 +10604,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6775:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6773:8:9", @@ -10952,7 +10654,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6796:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6794:8:9", @@ -11165,7 +10866,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6867:29:9", @@ -11517,12 +11217,10 @@ "id": 6980, "nodeType": "FunctionDefinition", "src": "6950:393:9", - "nodes": [], "body": { "id": 6979, "nodeType": "Block", "src": "7023:320:9", - "nodes": [], "statements": [ { "assignments": [ @@ -11588,7 +11286,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7067:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7065:8:9", @@ -11657,7 +11354,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7055:24:9", @@ -11907,7 +11603,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7115:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7113:8:9", @@ -12142,7 +11837,6 @@ "id": 6998, "nodeType": "VariableDeclaration", "src": "7372:84:9", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -12160,9 +11854,6 @@ "pathNode": { "id": 6982, "name": "Vm", - "nameLocations": [ - "7372:2:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "7372:2:9" @@ -12225,7 +11916,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7424:28:9", @@ -12268,7 +11958,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7416:37:9", @@ -12311,7 +12000,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7408:46:9", @@ -12354,7 +12042,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7400:55:9", @@ -12389,7 +12076,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7397:59:9", @@ -12405,12 +12091,10 @@ "id": 7011, "nodeType": "FunctionDefinition", "src": "7463:118:9", - "nodes": [], "body": { "id": 7010, "nodeType": "Block", "src": "7530:51:9", - "nodes": [], "statements": [ { "expression": { @@ -12452,7 +12136,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7562:4:9", "memberName": "sigs", "nodeType": "MemberAccess", "referencedDeclaration": 6139, @@ -12468,7 +12151,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7547:27:9", @@ -12567,12 +12249,10 @@ "id": 7025, "nodeType": "FunctionDefinition", "src": "7587:115:9", - "nodes": [], "body": { "id": 7024, "nodeType": "Block", "src": "7653:49:9", - "nodes": [], "statements": [ { "expression": { @@ -12614,7 +12294,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7685:4:9", "memberName": "find", "nodeType": "MemberAccess", "referencedDeclaration": 6584, @@ -12630,7 +12309,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7670:25:9", @@ -12677,9 +12355,6 @@ "pathNode": { "id": 7012, "name": "StdStorage", - "nameLocations": [ - "7601:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7601:10:9" @@ -12739,12 +12414,10 @@ "id": 7043, "nodeType": "FunctionDefinition", "src": "7708:156:9", - "nodes": [], "body": { "id": 7042, "nodeType": "Block", "src": "7804:60:9", - "nodes": [], "statements": [ { "expression": { @@ -12802,7 +12475,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7836:6:9", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 6604, @@ -12818,7 +12490,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7821:36:9", @@ -12865,9 +12536,6 @@ "pathNode": { "id": 7026, "name": "StdStorage", - "nameLocations": [ - "7724:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7724:10:9" @@ -12937,9 +12605,6 @@ "pathNode": { "id": 7032, "name": "StdStorage", - "nameLocations": [ - "7784:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7784:10:9" @@ -12965,12 +12630,10 @@ "id": 7061, "nodeType": "FunctionDefinition", "src": "7870:143:9", - "nodes": [], "body": { "id": 7060, "nodeType": "Block", "src": "7959:54:9", - "nodes": [], "statements": [ { "expression": { @@ -13028,7 +12691,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7991:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6624, @@ -13044,7 +12706,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7976:30:9", @@ -13091,9 +12752,6 @@ "pathNode": { "id": 7044, "name": "StdStorage", - "nameLocations": [ - "7883:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7883:10:9" @@ -13162,9 +12820,6 @@ "pathNode": { "id": 7050, "name": "StdStorage", - "nameLocations": [ - "7939:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7939:10:9" @@ -13190,12 +12845,10 @@ "id": 7079, "nodeType": "FunctionDefinition", "src": "8019:150:9", - "nodes": [], "body": { "id": 7078, "nodeType": "Block", "src": "8115:54:9", - "nodes": [], "statements": [ { "expression": { @@ -13253,7 +12906,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8147:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6646, @@ -13269,7 +12921,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8132:30:9", @@ -13316,9 +12967,6 @@ "pathNode": { "id": 7062, "name": "StdStorage", - "nameLocations": [ - "8032:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8032:10:9" @@ -13387,9 +13035,6 @@ "pathNode": { "id": 7068, "name": "StdStorage", - "nameLocations": [ - "8095:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8095:10:9" @@ -13415,12 +13060,10 @@ "id": 7097, "nodeType": "FunctionDefinition", "src": "8175:152:9", - "nodes": [], "body": { "id": 7096, "nodeType": "Block", "src": "8269:58:9", - "nodes": [], "statements": [ { "expression": { @@ -13478,7 +13121,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8301:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6677, @@ -13494,7 +13136,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8286:34:9", @@ -13541,9 +13182,6 @@ "pathNode": { "id": 7080, "name": "StdStorage", - "nameLocations": [ - "8193:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8193:10:9" @@ -13613,9 +13251,6 @@ "pathNode": { "id": 7086, "name": "StdStorage", - "nameLocations": [ - "8249:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8249:10:9" @@ -13641,12 +13276,10 @@ "id": 7115, "nodeType": "FunctionDefinition", "src": "8333:152:9", - "nodes": [], "body": { "id": 7114, "nodeType": "Block", "src": "8427:58:9", - "nodes": [], "statements": [ { "expression": { @@ -13704,7 +13337,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8459:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6702, @@ -13720,7 +13352,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8444:34:9", @@ -13767,9 +13398,6 @@ "pathNode": { "id": 7098, "name": "StdStorage", - "nameLocations": [ - "8351:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8351:10:9" @@ -13838,9 +13466,6 @@ "pathNode": { "id": 7104, "name": "StdStorage", - "nameLocations": [ - "8407:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8407:10:9" @@ -13866,12 +13491,10 @@ "id": 7133, "nodeType": "FunctionDefinition", "src": "8491:152:9", - "nodes": [], "body": { "id": 7132, "nodeType": "Block", "src": "8585:58:9", - "nodes": [], "statements": [ { "expression": { @@ -13929,7 +13552,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8617:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6724, @@ -13945,7 +13567,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8602:34:9", @@ -13992,9 +13613,6 @@ "pathNode": { "id": 7116, "name": "StdStorage", - "nameLocations": [ - "8509:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8509:10:9" @@ -14063,9 +13681,6 @@ "pathNode": { "id": 7122, "name": "StdStorage", - "nameLocations": [ - "8565:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8565:10:9" @@ -14091,12 +13706,10 @@ "id": 7151, "nodeType": "FunctionDefinition", "src": "8649:152:9", - "nodes": [], "body": { "id": 7150, "nodeType": "Block", "src": "8743:58:9", - "nodes": [], "statements": [ { "expression": { @@ -14154,7 +13767,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8775:5:9", "memberName": "depth", "nodeType": "MemberAccess", "referencedDeclaration": 6744, @@ -14170,7 +13782,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8760:34:9", @@ -14217,9 +13828,6 @@ "pathNode": { "id": 7134, "name": "StdStorage", - "nameLocations": [ - "8664:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8664:10:9" @@ -14288,9 +13896,6 @@ "pathNode": { "id": 7140, "name": "StdStorage", - "nameLocations": [ - "8723:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8723:10:9" @@ -14316,12 +13921,10 @@ "id": 7174, "nodeType": "FunctionDefinition", "src": "8807:138:9", - "nodes": [], "body": { "id": 7173, "nodeType": "Block", "src": "8877:68:9", - "nodes": [], "statements": [ { "expression": { @@ -14389,7 +13992,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8923:12:9", @@ -14432,7 +14034,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8915:21:9", @@ -14475,7 +14076,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:30:9", @@ -14519,7 +14119,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8887:51:9", @@ -14565,9 +14164,6 @@ "pathNode": { "id": 7152, "name": "StdStorage", - "nameLocations": [ - "8830:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8830:10:9" @@ -14627,12 +14223,10 @@ "id": 7191, "nodeType": "FunctionDefinition", "src": "8951:120:9", - "nodes": [], "body": { "id": 7190, "nodeType": "Block", "src": "9021:50:9", - "nodes": [], "statements": [ { "expression": { @@ -14696,7 +14290,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9051:12:9", @@ -14740,7 +14333,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9031:33:9", @@ -14786,9 +14378,6 @@ "pathNode": { "id": 7175, "name": "StdStorage", - "nameLocations": [ - "8974:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8974:10:9" @@ -14847,12 +14436,10 @@ "id": 7209, "nodeType": "FunctionDefinition", "src": "9077:222:9", - "nodes": [], "body": { "id": 7208, "nodeType": "Block", "src": "9146:153:9", - "nodes": [], "statements": [ { "assignments": [ @@ -14997,7 +14584,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9270:22:9", @@ -15043,9 +14629,6 @@ "pathNode": { "id": 7192, "name": "StdStorage", - "nameLocations": [ - "9100:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9100:10:9" @@ -15104,12 +14687,10 @@ "id": 7354, "nodeType": "FunctionDefinition", "src": "9305:1095:9", - "nodes": [], "body": { "id": 7353, "nodeType": "Block", "src": "9375:1025:9", - "nodes": [], "statements": [ { "assignments": [ @@ -15164,7 +14745,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9404:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -15229,7 +14809,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9440:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -15294,7 +14873,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9481:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -15368,7 +14946,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9525:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -15468,7 +15045,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9584:12:9", @@ -15507,7 +15083,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9565:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9561:16:9", @@ -15522,7 +15097,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9561:36:9", @@ -15567,7 +15141,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9617:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -15683,7 +15256,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9648:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9644:16:9", @@ -15698,7 +15270,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9644:34:9", @@ -15733,7 +15304,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9634:45:9", @@ -15807,7 +15377,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9696:10:9", @@ -15881,7 +15450,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9754:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -15997,7 +15565,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9785:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9781:16:9", @@ -16012,7 +15579,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9781:34:9", @@ -16047,7 +15613,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9771:45:9", @@ -16101,7 +15666,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9741:77:9", @@ -16231,7 +15795,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9893:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "9889:14:9", @@ -16246,7 +15809,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9889:20:9", @@ -16369,7 +15931,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9930:38:9", @@ -16480,7 +16041,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10006:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -16496,7 +16056,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10003:18:9", @@ -16627,7 +16186,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10064:175:9", @@ -16716,7 +16274,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10262:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -16732,7 +16289,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10259:24:9", @@ -16775,7 +16331,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10305:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -16823,7 +16378,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10334:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -16871,7 +16425,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10360:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -16919,7 +16472,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10387:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -16970,9 +16522,6 @@ "pathNode": { "id": 7210, "name": "StdStorage", - "nameLocations": [ - "9328:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9328:10:9" @@ -17031,12 +16580,10 @@ "id": 7368, "nodeType": "FunctionDefinition", "src": "10406:131:9", - "nodes": [], "body": { "id": 7367, "nodeType": "Block", "src": "10480:57:9", - "nodes": [], "statements": [ { "expression": { @@ -17078,7 +16625,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10512:12:9", "memberName": "read_bytes32", "nodeType": "MemberAccess", "referencedDeclaration": 6795, @@ -17094,7 +16640,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10497:33:9", @@ -17141,9 +16686,6 @@ "pathNode": { "id": 7355, "name": "StdStorage", - "nameLocations": [ - "10428:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10428:10:9" @@ -17203,12 +16745,10 @@ "id": 7382, "nodeType": "FunctionDefinition", "src": "10543:122:9", - "nodes": [], "body": { "id": 7381, "nodeType": "Block", "src": "10611:54:9", - "nodes": [], "statements": [ { "expression": { @@ -17250,7 +16790,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10643:9:9", "memberName": "read_bool", "nodeType": "MemberAccess", "referencedDeclaration": 6826, @@ -17266,7 +16805,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10628:30:9", @@ -17313,9 +16851,6 @@ "pathNode": { "id": 7369, "name": "StdStorage", - "nameLocations": [ - "10562:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10562:10:9" @@ -17375,12 +16910,10 @@ "id": 7396, "nodeType": "FunctionDefinition", "src": "10671:131:9", - "nodes": [], "body": { "id": 7395, "nodeType": "Block", "src": "10745:57:9", - "nodes": [], "statements": [ { "expression": { @@ -17422,7 +16955,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10777:12:9", "memberName": "read_address", "nodeType": "MemberAccess", "referencedDeclaration": 6845, @@ -17438,7 +16970,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10762:33:9", @@ -17485,9 +17016,6 @@ "pathNode": { "id": 7383, "name": "StdStorage", - "nameLocations": [ - "10693:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10693:10:9" @@ -17548,12 +17076,10 @@ "id": 7410, "nodeType": "FunctionDefinition", "src": "10808:125:9", - "nodes": [], "body": { "id": 7409, "nodeType": "Block", "src": "10879:54:9", - "nodes": [], "statements": [ { "expression": { @@ -17595,7 +17121,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10911:9:9", "memberName": "read_uint", "nodeType": "MemberAccess", "referencedDeclaration": 6864, @@ -17611,7 +17136,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10896:30:9", @@ -17658,9 +17182,6 @@ "pathNode": { "id": 7397, "name": "StdStorage", - "nameLocations": [ - "10827:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10827:10:9" @@ -17720,12 +17241,10 @@ "id": 7424, "nodeType": "FunctionDefinition", "src": "10939:122:9", - "nodes": [], "body": { "id": 7423, "nodeType": "Block", "src": "11008:53:9", - "nodes": [], "statements": [ { "expression": { @@ -17767,7 +17286,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11040:8:9", "memberName": "read_int", "nodeType": "MemberAccess", "referencedDeclaration": 6883, @@ -17783,7 +17301,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11025:29:9", @@ -17830,9 +17347,6 @@ "pathNode": { "id": 7411, "name": "StdStorage", - "nameLocations": [ - "10957:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10957:10:9" @@ -17892,12 +17406,10 @@ "id": 7480, "nodeType": "FunctionDefinition", "src": "11118:304:9", - "nodes": [], "body": { "id": 7479, "nodeType": "Block", "src": "11205:217:9", - "nodes": [], "statements": [ { "assignments": [ @@ -17999,7 +17511,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11253:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11251:8:9", @@ -18050,7 +17561,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11274:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11272:8:9", @@ -18263,7 +17773,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11345:29:9", @@ -18615,12 +18124,10 @@ "id": 7521, "nodeType": "FunctionDefinition", "src": "11479:393:9", - "nodes": [], "body": { "id": 7520, "nodeType": "Block", "src": "11552:320:9", - "nodes": [], "statements": [ { "assignments": [ @@ -18686,7 +18193,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11596:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11594:8:9", @@ -18755,7 +18261,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11584:24:9", @@ -19005,7 +18510,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11644:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11642:8:9", diff --git a/out/StdStorage.sol/stdStorageSafe.json b/out/StdStorage.sol/stdStorageSafe.json index 31a2566..c27680f 100644 --- a/out/StdStorage.sol/stdStorageSafe.json +++ b/out/StdStorage.sol/stdStorageSafe.json @@ -52,123 +52,16 @@ } ], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220466e06831f252d0815d15ccf9db6ba3a74c566fe27f339645978313aee8ca2a164736f6c63430008110033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e80866b3247ad5aa74c70fc2f628d5ec50563f92e5f120127fd15a0cf287d2db64736f6c634300080f0033", "sourceMap": "368:6977:9:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;368:6977:9;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220466e06831f252d0815d15ccf9db6ba3a74c566fe27f339645978313aee8ca2a164736f6c63430008110033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e80866b3247ad5aa74c70fc2f628d5ec50563f92e5f120127fd15a0cf287d2db64736f6c634300080f0033", "sourceMap": "368:6977:9:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes4\",\"name\":\"fsig\",\"type\":\"bytes4\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"keysHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"slot\",\"type\":\"uint256\"}],\"name\":\"SlotFound\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"slot\",\"type\":\"uint256\"}],\"name\":\"WARNING_UninitedSlot\",\"type\":\"event\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdStorage.sol\":\"stdStorageSafe\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "who", - "type": "address", - "indexed": false - }, - { - "internalType": "bytes4", - "name": "fsig", - "type": "bytes4", - "indexed": false - }, - { - "internalType": "bytes32", - "name": "keysHash", - "type": "bytes32", - "indexed": false - }, - { - "internalType": "uint256", - "name": "slot", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "SlotFound", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "who", - "type": "address", - "indexed": false - }, - { - "internalType": "uint256", - "name": "slot", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "WARNING_UninitedSlot", - "anonymous": false - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdStorage.sol": "stdStorageSafe" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdStorage.sol", "id": 7523, @@ -193,7 +86,6 @@ "id": 6058, "nodeType": "PragmaDirective", "src": "32:31:9", - "nodes": [], "literals": [ "solidity", ">=", @@ -208,7 +100,6 @@ "id": 6060, "nodeType": "ImportDirective", "src": "65:28:9", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -234,7 +125,6 @@ "id": 6088, "nodeType": "StructDefinition", "src": "95:271:9", - "nodes": [], "canonicalName": "StdStorage", "members": [ { @@ -565,7 +455,6 @@ "id": 6098, "nodeType": "EventDefinition", "src": "397:74:9", - "nodes": [], "anonymous": false, "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", "name": "SlotFound", @@ -695,7 +584,6 @@ "id": 6104, "nodeType": "EventDefinition", "src": "476:54:9", - "nodes": [], "anonymous": false, "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", "name": "WARNING_UninitedSlot", @@ -769,7 +657,6 @@ "id": 6121, "nodeType": "VariableDeclaration", "src": "536:84:9", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -787,9 +674,6 @@ "pathNode": { "id": 6105, "name": "Vm", - "nameLocations": [ - "536:2:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "536:2:9" @@ -852,7 +736,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "588:28:9", @@ -895,7 +778,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "580:37:9", @@ -938,7 +820,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "572:46:9", @@ -981,7 +862,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "564:55:9", @@ -1016,7 +896,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "561:59:9", @@ -1032,12 +911,10 @@ "id": 6139, "nodeType": "FunctionDefinition", "src": "627:123:9", - "nodes": [], "body": { "id": 6138, "nodeType": "Block", "src": "694:56:9", - "nodes": [], "statements": [ { "expression": { @@ -1091,7 +968,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "728:13:9", @@ -1126,7 +1002,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "718:24:9", @@ -1169,7 +1044,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "711:32:9", @@ -1268,12 +1142,10 @@ "id": 6584, "nodeType": "FunctionDefinition", "src": "1264:3205:9", - "nodes": [], "body": { "id": 6583, "nodeType": "Block", "src": "1330:3139:9", - "nodes": [], "statements": [ { "assignments": [ @@ -1328,7 +1200,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1359:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -1393,7 +1264,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1395:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -1458,7 +1328,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1436:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -1532,7 +1401,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1480:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -1567,7 +1435,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1541:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -1683,7 +1550,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1572:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1568:16:9", @@ -1698,7 +1564,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1568:34:9", @@ -1733,7 +1598,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1558:45:9", @@ -1784,7 +1648,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "1632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -1900,7 +1763,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1659:16:9", @@ -1915,7 +1777,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1659:34:9", @@ -1950,7 +1811,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1649:45:9", @@ -2066,7 +1926,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1758:12:9", @@ -2105,7 +1964,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1739:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1735:16:9", @@ -2120,7 +1978,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:36:9", @@ -2155,7 +2012,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1784:6:9", "memberName": "record", "nodeType": "MemberAccess", "referencedDeclaration": 8553, @@ -2171,7 +2027,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1781:11:9", @@ -2302,7 +2157,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1866:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "1862:14:9", @@ -2317,7 +2171,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1862:20:9", @@ -2440,7 +2293,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1903:38:9", @@ -2556,7 +2408,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2002:12:9", @@ -2591,7 +2442,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1993:8:9", "memberName": "accesses", "nodeType": "MemberAccess", "referencedDeclaration": 8564, @@ -2607,7 +2457,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1990:25:9", @@ -2649,7 +2498,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2035:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2029:12:9", @@ -2711,7 +2559,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2792:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2786:12:9", @@ -2816,7 +2663,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4000:82:9", @@ -2960,7 +2806,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2897:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -2976,7 +2821,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2894:22:9", @@ -3065,7 +2909,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2946:10:9", @@ -3176,7 +3019,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3011:17:9", @@ -3215,7 +3057,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2985:44:9", @@ -3335,7 +3176,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3114:18:9", @@ -3378,7 +3218,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3093:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -3394,7 +3233,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3090:43:9", @@ -3575,7 +3413,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3260:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "3256:14:9", @@ -3590,7 +3427,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3256:20:9", @@ -3720,7 +3556,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3305:38:9", @@ -3842,7 +3677,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3403:18:9", @@ -3956,7 +3790,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3554:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3550:16:9", @@ -3971,7 +3804,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3550:34:9", @@ -4006,7 +3838,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3540:45:9", @@ -4088,7 +3919,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3587:17:9", @@ -4135,7 +3965,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3519:86:9", @@ -4177,7 +4006,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -4293,7 +4121,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3659:16:9", @@ -4308,7 +4135,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3659:34:9", @@ -4343,7 +4169,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3649:45:9", @@ -4438,7 +4263,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3698:17:9", @@ -4486,7 +4310,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3742:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -4602,7 +4425,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3773:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3769:16:9", @@ -4617,7 +4439,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3769:34:9", @@ -4652,7 +4473,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3759:45:9", @@ -4798,7 +4618,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3837:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4814,7 +4633,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3834:29:9", @@ -4933,7 +4751,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3929:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4949,7 +4766,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3926:29:9", @@ -5007,7 +4823,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2848:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2842:12:9", @@ -5240,7 +5055,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2080:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -5256,7 +5070,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2077:22:9", @@ -5345,7 +5158,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2125:10:9", @@ -5460,7 +5272,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2186:17:9", @@ -5499,7 +5310,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2160:44:9", @@ -5634,7 +5444,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2268:187:9", @@ -5735,7 +5544,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2523:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2519:16:9", @@ -5750,7 +5558,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2519:34:9", @@ -5785,7 +5592,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2509:45:9", @@ -5871,7 +5677,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2556:17:9", @@ -5918,7 +5723,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2488:86:9", @@ -5960,7 +5764,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "2593:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -6076,7 +5879,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2624:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2620:16:9", @@ -6091,7 +5893,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2620:34:9", @@ -6126,7 +5927,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2610:45:9", @@ -6225,7 +6025,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2659:17:9", @@ -6273,7 +6072,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "2695:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6389,7 +6187,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2726:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2722:16:9", @@ -6404,7 +6201,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2722:34:9", @@ -6439,7 +6235,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2712:45:9", @@ -6515,7 +6310,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4129:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6631,7 +6425,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4160:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4156:16:9", @@ -6646,7 +6439,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4156:34:9", @@ -6681,7 +6473,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4146:45:9", @@ -6750,7 +6541,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4103:162:9", @@ -6793,7 +6583,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4288:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -6841,7 +6630,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4317:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -6889,7 +6677,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4343:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -6937,7 +6724,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4370:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -6978,7 +6764,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4399:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -7094,7 +6879,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4430:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4426:16:9", @@ -7109,7 +6893,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4426:34:9", @@ -7144,7 +6927,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4416:45:9", @@ -7208,9 +6990,6 @@ "pathNode": { "id": 6141, "name": "StdStorage", - "nameLocations": [ - "1278:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1278:10:9" @@ -7270,12 +7049,10 @@ "id": 6604, "nodeType": "FunctionDefinition", "src": "4475:156:9", - "nodes": [], "body": { "id": 6603, "nodeType": "Block", "src": "4571:60:9", - "nodes": [], "statements": [ { "expression": { @@ -7302,7 +7079,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4586:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -7386,9 +7162,6 @@ "pathNode": { "id": 6585, "name": "StdStorage", - "nameLocations": [ - "4491:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4491:10:9" @@ -7458,9 +7231,6 @@ "pathNode": { "id": 6591, "name": "StdStorage", - "nameLocations": [ - "4551:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4551:10:9" @@ -7486,12 +7256,10 @@ "id": 6624, "nodeType": "FunctionDefinition", "src": "4637:143:9", - "nodes": [], "body": { "id": 6623, "nodeType": "Block", "src": "4726:54:9", - "nodes": [], "statements": [ { "expression": { @@ -7518,7 +7286,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4741:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7602,9 +7369,6 @@ "pathNode": { "id": 6605, "name": "StdStorage", - "nameLocations": [ - "4650:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4650:10:9" @@ -7673,9 +7437,6 @@ "pathNode": { "id": 6611, "name": "StdStorage", - "nameLocations": [ - "4706:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4706:10:9" @@ -7701,12 +7462,10 @@ "id": 6646, "nodeType": "FunctionDefinition", "src": "4786:156:9", - "nodes": [], "body": { "id": 6645, "nodeType": "Block", "src": "4882:60:9", - "nodes": [], "statements": [ { "expression": { @@ -7733,7 +7492,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4897:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7784,7 +7542,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4904:10:9", @@ -7854,9 +7611,6 @@ "pathNode": { "id": 6625, "name": "StdStorage", - "nameLocations": [ - "4799:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4799:10:9" @@ -7925,9 +7679,6 @@ "pathNode": { "id": 6631, "name": "StdStorage", - "nameLocations": [ - "4862:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4862:10:9" @@ -7953,12 +7704,10 @@ "id": 6677, "nodeType": "FunctionDefinition", "src": "4948:179:9", - "nodes": [], "body": { "id": 6676, "nodeType": "Block", "src": "5042:85:9", - "nodes": [], "statements": [ { "expression": { @@ -8014,7 +7763,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5084:12:9", @@ -8057,7 +7805,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5076:21:9", @@ -8100,7 +7847,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5068:30:9", @@ -8136,7 +7882,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5057:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8151,7 +7896,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5063:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5052:15:9", @@ -8166,7 +7910,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5052:47:9", @@ -8230,9 +7973,6 @@ "pathNode": { "id": 6647, "name": "StdStorage", - "nameLocations": [ - "4966:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4966:10:9" @@ -8302,9 +8042,6 @@ "pathNode": { "id": 6653, "name": "StdStorage", - "nameLocations": [ - "5022:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5022:10:9" @@ -8330,12 +8067,10 @@ "id": 6702, "nodeType": "FunctionDefinition", "src": "5133:161:9", - "nodes": [], "body": { "id": 6701, "nodeType": "Block", "src": "5227:67:9", - "nodes": [], "statements": [ { "expression": { @@ -8387,7 +8122,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5253:12:9", @@ -8423,7 +8157,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5242:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8438,7 +8171,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5248:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5237:15:9", @@ -8453,7 +8185,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5237:29:9", @@ -8517,9 +8248,6 @@ "pathNode": { "id": 6678, "name": "StdStorage", - "nameLocations": [ - "5151:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5151:10:9" @@ -8588,9 +8316,6 @@ "pathNode": { "id": 6684, "name": "StdStorage", - "nameLocations": [ - "5207:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5207:10:9" @@ -8616,12 +8341,10 @@ "id": 6724, "nodeType": "FunctionDefinition", "src": "5300:152:9", - "nodes": [], "body": { "id": 6723, "nodeType": "Block", "src": "5394:58:9", - "nodes": [], "statements": [ { "expression": { @@ -8664,7 +8387,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5409:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8679,7 +8401,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5415:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5404:15:9", @@ -8694,7 +8415,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5404:20:9", @@ -8758,9 +8478,6 @@ "pathNode": { "id": 6703, "name": "StdStorage", - "nameLocations": [ - "5318:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5318:10:9" @@ -8829,9 +8546,6 @@ "pathNode": { "id": 6709, "name": "StdStorage", - "nameLocations": [ - "5374:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5374:10:9" @@ -8857,12 +8571,10 @@ "id": 6744, "nodeType": "FunctionDefinition", "src": "5458:152:9", - "nodes": [], "body": { "id": 6743, "nodeType": "Block", "src": "5552:58:9", - "nodes": [], "statements": [ { "expression": { @@ -8889,7 +8601,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "5567:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -8973,9 +8684,6 @@ "pathNode": { "id": 6725, "name": "StdStorage", - "nameLocations": [ - "5473:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5473:10:9" @@ -9044,9 +8752,6 @@ "pathNode": { "id": 6731, "name": "StdStorage", - "nameLocations": [ - "5532:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5532:10:9" @@ -9072,12 +8777,10 @@ "id": 6776, "nodeType": "FunctionDefinition", "src": "5616:194:9", - "nodes": [], "body": { "id": 6775, "nodeType": "Block", "src": "5686:124:9", - "nodes": [], "statements": [ { "assignments": [ @@ -9132,7 +8835,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5713:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -9218,7 +8920,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5742:10:9", @@ -9295,7 +8996,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5791:10:9", @@ -9334,7 +9034,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5783:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -9350,7 +9049,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5780:22:9", @@ -9385,7 +9083,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5773:6:9", "memberName": "encode", "nodeType": "MemberAccess", "src": "5769:10:9", @@ -9400,7 +9097,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5769:34:9", @@ -9447,9 +9143,6 @@ "pathNode": { "id": 6745, "name": "StdStorage", - "nameLocations": [ - "5630:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5630:10:9" @@ -9509,12 +9202,10 @@ "id": 6795, "nodeType": "FunctionDefinition", "src": "5816:131:9", - "nodes": [], "body": { "id": 6794, "nodeType": "Block", "src": "5890:57:9", - "nodes": [], "statements": [ { "expression": { @@ -9558,7 +9249,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5918:10:9", @@ -9633,7 +9323,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5911:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "5907:10:9", @@ -9648,7 +9337,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5907:33:9", @@ -9695,9 +9383,6 @@ "pathNode": { "id": 6777, "name": "StdStorage", - "nameLocations": [ - "5838:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5838:10:9" @@ -9757,12 +9442,10 @@ "id": 6826, "nodeType": "FunctionDefinition", "src": "5953:279:9", - "nodes": [], "body": { "id": 6825, "nodeType": "Block", "src": "6021:211:9", - "nodes": [], "statements": [ { "assignments": [ @@ -9837,7 +9520,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6042:14:9", @@ -10043,7 +9725,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6133:92:9", @@ -10089,9 +9770,6 @@ "pathNode": { "id": 6796, "name": "StdStorage", - "nameLocations": [ - "5972:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5972:10:9" @@ -10151,12 +9829,10 @@ "id": 6845, "nodeType": "FunctionDefinition", "src": "6238:131:9", - "nodes": [], "body": { "id": 6844, "nodeType": "Block", "src": "6312:57:9", - "nodes": [], "statements": [ { "expression": { @@ -10200,7 +9876,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6340:10:9", @@ -10275,7 +9950,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6333:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6329:10:9", @@ -10290,7 +9964,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6329:33:9", @@ -10337,9 +10010,6 @@ "pathNode": { "id": 6827, "name": "StdStorage", - "nameLocations": [ - "6260:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6260:10:9" @@ -10400,12 +10070,10 @@ "id": 6864, "nodeType": "FunctionDefinition", "src": "6375:128:9", - "nodes": [], "body": { "id": 6863, "nodeType": "Block", "src": "6446:57:9", - "nodes": [], "statements": [ { "expression": { @@ -10449,7 +10117,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6474:10:9", @@ -10524,7 +10191,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6467:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6463:10:9", @@ -10539,7 +10205,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6463:33:9", @@ -10586,9 +10251,6 @@ "pathNode": { "id": 6846, "name": "StdStorage", - "nameLocations": [ - "6394:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6394:10:9" @@ -10648,12 +10310,10 @@ "id": 6883, "nodeType": "FunctionDefinition", "src": "6509:125:9", - "nodes": [], "body": { "id": 6882, "nodeType": "Block", "src": "6578:56:9", - "nodes": [], "statements": [ { "expression": { @@ -10697,7 +10357,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6606:10:9", @@ -10772,7 +10431,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6599:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6595:10:9", @@ -10787,7 +10445,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6595:32:9", @@ -10834,9 +10491,6 @@ "pathNode": { "id": 6865, "name": "StdStorage", - "nameLocations": [ - "6527:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6527:10:9" @@ -10896,12 +10550,10 @@ "id": 6939, "nodeType": "FunctionDefinition", "src": "6640:304:9", - "nodes": [], "body": { "id": 6938, "nodeType": "Block", "src": "6727:217:9", - "nodes": [], "statements": [ { "assignments": [ @@ -11003,7 +10655,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6775:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6773:8:9", @@ -11054,7 +10705,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6796:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6794:8:9", @@ -11267,7 +10917,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6867:29:9", @@ -11619,12 +11268,10 @@ "id": 6980, "nodeType": "FunctionDefinition", "src": "6950:393:9", - "nodes": [], "body": { "id": 6979, "nodeType": "Block", "src": "7023:320:9", - "nodes": [], "statements": [ { "assignments": [ @@ -11690,7 +11337,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7067:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7065:8:9", @@ -11759,7 +11405,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7055:24:9", @@ -12009,7 +11654,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7115:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7113:8:9", @@ -12244,7 +11888,6 @@ "id": 6998, "nodeType": "VariableDeclaration", "src": "7372:84:9", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -12262,9 +11905,6 @@ "pathNode": { "id": 6982, "name": "Vm", - "nameLocations": [ - "7372:2:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "7372:2:9" @@ -12327,7 +11967,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7424:28:9", @@ -12370,7 +12009,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7416:37:9", @@ -12413,7 +12051,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7408:46:9", @@ -12456,7 +12093,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7400:55:9", @@ -12491,7 +12127,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7397:59:9", @@ -12507,12 +12142,10 @@ "id": 7011, "nodeType": "FunctionDefinition", "src": "7463:118:9", - "nodes": [], "body": { "id": 7010, "nodeType": "Block", "src": "7530:51:9", - "nodes": [], "statements": [ { "expression": { @@ -12554,7 +12187,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7562:4:9", "memberName": "sigs", "nodeType": "MemberAccess", "referencedDeclaration": 6139, @@ -12570,7 +12202,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7547:27:9", @@ -12669,12 +12300,10 @@ "id": 7025, "nodeType": "FunctionDefinition", "src": "7587:115:9", - "nodes": [], "body": { "id": 7024, "nodeType": "Block", "src": "7653:49:9", - "nodes": [], "statements": [ { "expression": { @@ -12716,7 +12345,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7685:4:9", "memberName": "find", "nodeType": "MemberAccess", "referencedDeclaration": 6584, @@ -12732,7 +12360,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7670:25:9", @@ -12779,9 +12406,6 @@ "pathNode": { "id": 7012, "name": "StdStorage", - "nameLocations": [ - "7601:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7601:10:9" @@ -12841,12 +12465,10 @@ "id": 7043, "nodeType": "FunctionDefinition", "src": "7708:156:9", - "nodes": [], "body": { "id": 7042, "nodeType": "Block", "src": "7804:60:9", - "nodes": [], "statements": [ { "expression": { @@ -12904,7 +12526,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7836:6:9", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 6604, @@ -12920,7 +12541,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7821:36:9", @@ -12967,9 +12587,6 @@ "pathNode": { "id": 7026, "name": "StdStorage", - "nameLocations": [ - "7724:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7724:10:9" @@ -13039,9 +12656,6 @@ "pathNode": { "id": 7032, "name": "StdStorage", - "nameLocations": [ - "7784:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7784:10:9" @@ -13067,12 +12681,10 @@ "id": 7061, "nodeType": "FunctionDefinition", "src": "7870:143:9", - "nodes": [], "body": { "id": 7060, "nodeType": "Block", "src": "7959:54:9", - "nodes": [], "statements": [ { "expression": { @@ -13130,7 +12742,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7991:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6624, @@ -13146,7 +12757,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7976:30:9", @@ -13193,9 +12803,6 @@ "pathNode": { "id": 7044, "name": "StdStorage", - "nameLocations": [ - "7883:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7883:10:9" @@ -13264,9 +12871,6 @@ "pathNode": { "id": 7050, "name": "StdStorage", - "nameLocations": [ - "7939:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7939:10:9" @@ -13292,12 +12896,10 @@ "id": 7079, "nodeType": "FunctionDefinition", "src": "8019:150:9", - "nodes": [], "body": { "id": 7078, "nodeType": "Block", "src": "8115:54:9", - "nodes": [], "statements": [ { "expression": { @@ -13355,7 +12957,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8147:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6646, @@ -13371,7 +12972,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8132:30:9", @@ -13418,9 +13018,6 @@ "pathNode": { "id": 7062, "name": "StdStorage", - "nameLocations": [ - "8032:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8032:10:9" @@ -13489,9 +13086,6 @@ "pathNode": { "id": 7068, "name": "StdStorage", - "nameLocations": [ - "8095:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8095:10:9" @@ -13517,12 +13111,10 @@ "id": 7097, "nodeType": "FunctionDefinition", "src": "8175:152:9", - "nodes": [], "body": { "id": 7096, "nodeType": "Block", "src": "8269:58:9", - "nodes": [], "statements": [ { "expression": { @@ -13580,7 +13172,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8301:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6677, @@ -13596,7 +13187,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8286:34:9", @@ -13643,9 +13233,6 @@ "pathNode": { "id": 7080, "name": "StdStorage", - "nameLocations": [ - "8193:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8193:10:9" @@ -13715,9 +13302,6 @@ "pathNode": { "id": 7086, "name": "StdStorage", - "nameLocations": [ - "8249:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8249:10:9" @@ -13743,12 +13327,10 @@ "id": 7115, "nodeType": "FunctionDefinition", "src": "8333:152:9", - "nodes": [], "body": { "id": 7114, "nodeType": "Block", "src": "8427:58:9", - "nodes": [], "statements": [ { "expression": { @@ -13806,7 +13388,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8459:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6702, @@ -13822,7 +13403,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8444:34:9", @@ -13869,9 +13449,6 @@ "pathNode": { "id": 7098, "name": "StdStorage", - "nameLocations": [ - "8351:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8351:10:9" @@ -13940,9 +13517,6 @@ "pathNode": { "id": 7104, "name": "StdStorage", - "nameLocations": [ - "8407:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8407:10:9" @@ -13968,12 +13542,10 @@ "id": 7133, "nodeType": "FunctionDefinition", "src": "8491:152:9", - "nodes": [], "body": { "id": 7132, "nodeType": "Block", "src": "8585:58:9", - "nodes": [], "statements": [ { "expression": { @@ -14031,7 +13603,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8617:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6724, @@ -14047,7 +13618,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8602:34:9", @@ -14094,9 +13664,6 @@ "pathNode": { "id": 7116, "name": "StdStorage", - "nameLocations": [ - "8509:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8509:10:9" @@ -14165,9 +13732,6 @@ "pathNode": { "id": 7122, "name": "StdStorage", - "nameLocations": [ - "8565:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8565:10:9" @@ -14193,12 +13757,10 @@ "id": 7151, "nodeType": "FunctionDefinition", "src": "8649:152:9", - "nodes": [], "body": { "id": 7150, "nodeType": "Block", "src": "8743:58:9", - "nodes": [], "statements": [ { "expression": { @@ -14256,7 +13818,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8775:5:9", "memberName": "depth", "nodeType": "MemberAccess", "referencedDeclaration": 6744, @@ -14272,7 +13833,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8760:34:9", @@ -14319,9 +13879,6 @@ "pathNode": { "id": 7134, "name": "StdStorage", - "nameLocations": [ - "8664:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8664:10:9" @@ -14390,9 +13947,6 @@ "pathNode": { "id": 7140, "name": "StdStorage", - "nameLocations": [ - "8723:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8723:10:9" @@ -14418,12 +13972,10 @@ "id": 7174, "nodeType": "FunctionDefinition", "src": "8807:138:9", - "nodes": [], "body": { "id": 7173, "nodeType": "Block", "src": "8877:68:9", - "nodes": [], "statements": [ { "expression": { @@ -14491,7 +14043,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8923:12:9", @@ -14534,7 +14085,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8915:21:9", @@ -14577,7 +14127,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:30:9", @@ -14621,7 +14170,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8887:51:9", @@ -14667,9 +14215,6 @@ "pathNode": { "id": 7152, "name": "StdStorage", - "nameLocations": [ - "8830:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8830:10:9" @@ -14729,12 +14274,10 @@ "id": 7191, "nodeType": "FunctionDefinition", "src": "8951:120:9", - "nodes": [], "body": { "id": 7190, "nodeType": "Block", "src": "9021:50:9", - "nodes": [], "statements": [ { "expression": { @@ -14798,7 +14341,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9051:12:9", @@ -14842,7 +14384,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9031:33:9", @@ -14888,9 +14429,6 @@ "pathNode": { "id": 7175, "name": "StdStorage", - "nameLocations": [ - "8974:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8974:10:9" @@ -14949,12 +14487,10 @@ "id": 7209, "nodeType": "FunctionDefinition", "src": "9077:222:9", - "nodes": [], "body": { "id": 7208, "nodeType": "Block", "src": "9146:153:9", - "nodes": [], "statements": [ { "assignments": [ @@ -15099,7 +14635,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9270:22:9", @@ -15145,9 +14680,6 @@ "pathNode": { "id": 7192, "name": "StdStorage", - "nameLocations": [ - "9100:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9100:10:9" @@ -15206,12 +14738,10 @@ "id": 7354, "nodeType": "FunctionDefinition", "src": "9305:1095:9", - "nodes": [], "body": { "id": 7353, "nodeType": "Block", "src": "9375:1025:9", - "nodes": [], "statements": [ { "assignments": [ @@ -15266,7 +14796,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9404:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -15331,7 +14860,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9440:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -15396,7 +14924,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9481:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -15470,7 +14997,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9525:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -15570,7 +15096,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9584:12:9", @@ -15609,7 +15134,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9565:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9561:16:9", @@ -15624,7 +15148,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9561:36:9", @@ -15669,7 +15192,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9617:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -15785,7 +15307,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9648:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9644:16:9", @@ -15800,7 +15321,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9644:34:9", @@ -15835,7 +15355,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9634:45:9", @@ -15909,7 +15428,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9696:10:9", @@ -15983,7 +15501,6 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9754:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -16099,7 +15616,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9785:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9781:16:9", @@ -16114,7 +15630,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9781:34:9", @@ -16149,7 +15664,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9771:45:9", @@ -16203,7 +15717,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9741:77:9", @@ -16333,7 +15846,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9893:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "9889:14:9", @@ -16348,7 +15860,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9889:20:9", @@ -16471,7 +15982,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9930:38:9", @@ -16582,7 +16092,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10006:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -16598,7 +16107,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10003:18:9", @@ -16729,7 +16237,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10064:175:9", @@ -16818,7 +16325,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10262:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -16834,7 +16340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10259:24:9", @@ -16877,7 +16382,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10305:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -16925,7 +16429,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10334:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -16973,7 +16476,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10360:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -17021,7 +16523,6 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "10387:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -17072,9 +16573,6 @@ "pathNode": { "id": 7210, "name": "StdStorage", - "nameLocations": [ - "9328:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9328:10:9" @@ -17133,12 +16631,10 @@ "id": 7368, "nodeType": "FunctionDefinition", "src": "10406:131:9", - "nodes": [], "body": { "id": 7367, "nodeType": "Block", "src": "10480:57:9", - "nodes": [], "statements": [ { "expression": { @@ -17180,7 +16676,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10512:12:9", "memberName": "read_bytes32", "nodeType": "MemberAccess", "referencedDeclaration": 6795, @@ -17196,7 +16691,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10497:33:9", @@ -17243,9 +16737,6 @@ "pathNode": { "id": 7355, "name": "StdStorage", - "nameLocations": [ - "10428:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10428:10:9" @@ -17305,12 +16796,10 @@ "id": 7382, "nodeType": "FunctionDefinition", "src": "10543:122:9", - "nodes": [], "body": { "id": 7381, "nodeType": "Block", "src": "10611:54:9", - "nodes": [], "statements": [ { "expression": { @@ -17352,7 +16841,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10643:9:9", "memberName": "read_bool", "nodeType": "MemberAccess", "referencedDeclaration": 6826, @@ -17368,7 +16856,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10628:30:9", @@ -17415,9 +16902,6 @@ "pathNode": { "id": 7369, "name": "StdStorage", - "nameLocations": [ - "10562:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10562:10:9" @@ -17477,12 +16961,10 @@ "id": 7396, "nodeType": "FunctionDefinition", "src": "10671:131:9", - "nodes": [], "body": { "id": 7395, "nodeType": "Block", "src": "10745:57:9", - "nodes": [], "statements": [ { "expression": { @@ -17524,7 +17006,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10777:12:9", "memberName": "read_address", "nodeType": "MemberAccess", "referencedDeclaration": 6845, @@ -17540,7 +17021,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10762:33:9", @@ -17587,9 +17067,6 @@ "pathNode": { "id": 7383, "name": "StdStorage", - "nameLocations": [ - "10693:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10693:10:9" @@ -17650,12 +17127,10 @@ "id": 7410, "nodeType": "FunctionDefinition", "src": "10808:125:9", - "nodes": [], "body": { "id": 7409, "nodeType": "Block", "src": "10879:54:9", - "nodes": [], "statements": [ { "expression": { @@ -17697,7 +17172,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10911:9:9", "memberName": "read_uint", "nodeType": "MemberAccess", "referencedDeclaration": 6864, @@ -17713,7 +17187,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10896:30:9", @@ -17760,9 +17233,6 @@ "pathNode": { "id": 7397, "name": "StdStorage", - "nameLocations": [ - "10827:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10827:10:9" @@ -17822,12 +17292,10 @@ "id": 7424, "nodeType": "FunctionDefinition", "src": "10939:122:9", - "nodes": [], "body": { "id": 7423, "nodeType": "Block", "src": "11008:53:9", - "nodes": [], "statements": [ { "expression": { @@ -17869,7 +17337,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11040:8:9", "memberName": "read_int", "nodeType": "MemberAccess", "referencedDeclaration": 6883, @@ -17885,7 +17352,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11025:29:9", @@ -17932,9 +17398,6 @@ "pathNode": { "id": 7411, "name": "StdStorage", - "nameLocations": [ - "10957:10:9" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10957:10:9" @@ -17994,12 +17457,10 @@ "id": 7480, "nodeType": "FunctionDefinition", "src": "11118:304:9", - "nodes": [], "body": { "id": 7479, "nodeType": "Block", "src": "11205:217:9", - "nodes": [], "statements": [ { "assignments": [ @@ -18101,7 +17562,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11253:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11251:8:9", @@ -18152,7 +17612,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11274:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11272:8:9", @@ -18365,7 +17824,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11345:29:9", @@ -18717,12 +18175,10 @@ "id": 7521, "nodeType": "FunctionDefinition", "src": "11479:393:9", - "nodes": [], "body": { "id": 7520, "nodeType": "Block", "src": "11552:320:9", - "nodes": [], "statements": [ { "assignments": [ @@ -18788,7 +18244,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11596:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11594:8:9", @@ -18857,7 +18312,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11584:24:9", @@ -19107,7 +18561,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11644:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11642:8:9", diff --git a/out/StdUtils.sol/StdUtils.json b/out/StdUtils.sol/StdUtils.json index 04e5410..269f3cf 100644 --- a/out/StdUtils.sol/StdUtils.json +++ b/out/StdUtils.sol/StdUtils.json @@ -11,62 +11,6 @@ "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdUtils.sol\":\"StdUtils\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/StdUtils.sol": "StdUtils" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/StdUtils.sol", "id": 8154, @@ -85,7 +29,6 @@ "id": 7524, "nodeType": "PragmaDirective", "src": "32:31:10", - "nodes": [], "literals": [ "solidity", ">=", @@ -100,7 +43,6 @@ "id": 7526, "nodeType": "ImportDirective", "src": "88:32:10", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -131,7 +73,6 @@ "id": 7543, "nodeType": "VariableDeclaration", "src": "155:92:10", - "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -149,9 +90,6 @@ "pathNode": { "id": 7527, "name": "VmSafe", - "nameLocations": [ - "155:6:10" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "155:6:10" @@ -214,7 +152,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "215:28:10", @@ -257,7 +194,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "207:37:10", @@ -300,7 +236,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "199:46:10", @@ -343,7 +278,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "191:55:10", @@ -378,7 +312,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "184:63:10", @@ -394,7 +327,6 @@ "id": 7546, "nodeType": "VariableDeclaration", "src": "253:86:10", - "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE2_ADDRESS", @@ -439,7 +371,6 @@ "id": 7549, "nodeType": "VariableDeclaration", "src": "346:127:10", - "nodes": [], "constant": true, "mutability": "constant", "name": "INT256_MIN_ABS", @@ -483,7 +414,6 @@ "id": 7552, "nodeType": "VariableDeclaration", "src": "479:125:10", - "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -527,12 +457,10 @@ "id": 7682, "nodeType": "FunctionDefinition", "src": "611:1263:10", - "nodes": [], "body": { "id": 7681, "nodeType": "Block", "src": "711:1163:10", - "nodes": [], "statements": [ { "expression": { @@ -627,7 +555,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "721:85:10", @@ -2217,12 +2144,10 @@ "id": 7707, "nodeType": "FunctionDefinition", "src": "1880:190:10", - "nodes": [], "body": { "id": 7706, "nodeType": "Block", "src": "1979:91:10", - "nodes": [], "statements": [ { "expression": { @@ -2316,7 +2241,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1998:19:10", @@ -2399,7 +2323,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2027:36:10", @@ -2551,12 +2474,10 @@ "id": 7837, "nodeType": "FunctionDefinition", "src": "2076:1203:10", - "nodes": [], "body": { "id": 7836, "nodeType": "Block", "src": "2171:1108:10", - "nodes": [], "statements": [ { "expression": { @@ -2651,7 +2572,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2181:82:10", @@ -2805,7 +2725,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2750:10:10", @@ -2949,7 +2868,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2731:10:10", @@ -3156,7 +3074,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2853:12:10", @@ -3300,7 +3217,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2832:12:10", @@ -3507,7 +3423,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2958:12:10", @@ -3651,7 +3566,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2937:12:10", @@ -3823,7 +3737,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3011:22:10", @@ -3977,7 +3890,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3187:26:10", @@ -4136,7 +4048,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3151:33:10", @@ -4219,7 +4130,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3255:8:10", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8721, @@ -4235,7 +4145,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3252:19:10", @@ -4277,7 +4186,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3223:49:10", @@ -4429,12 +4337,10 @@ "id": 8022, "nodeType": "FunctionDefinition", "src": "3514:1962:10", - "nodes": [], "body": { "id": 8021, "nodeType": "Block", "src": "3617:1859:10", - "nodes": [], "statements": [ { "condition": { @@ -4544,7 +4450,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4020:12:10", @@ -4605,7 +4510,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4034:12:10", @@ -4678,7 +4582,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4058:12:10", @@ -4725,7 +4628,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4007:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4003:16:10", @@ -4740,7 +4642,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4003:68:10", @@ -4775,7 +4676,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3993:79:10", @@ -4810,7 +4710,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3970:103:10", @@ -4934,7 +4833,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4164:12:10", @@ -4995,7 +4893,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4178:12:10", @@ -5064,7 +4961,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4202:12:10", @@ -5111,7 +5007,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4151:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4147:16:10", @@ -5126,7 +5021,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4147:68:10", @@ -5161,7 +5055,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4137:79:10", @@ -5196,7 +5089,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4114:103:10", @@ -5388,7 +5280,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4447:12:10", @@ -5449,7 +5340,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4461:12:10", @@ -5522,7 +5412,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4485:12:10", @@ -5579,7 +5468,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4499:12:10", @@ -5630,7 +5518,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4434:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4430:16:10", @@ -5645,7 +5532,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4430:82:10", @@ -5680,7 +5566,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4420:93:10", @@ -5715,7 +5600,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4397:117:10", @@ -5907,7 +5791,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4605:12:10", @@ -5968,7 +5851,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4619:12:10", @@ -6041,7 +5923,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4643:12:10", @@ -6098,7 +5979,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4657:13:10", @@ -6149,7 +6029,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4592:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4588:16:10", @@ -6164,7 +6043,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4588:83:10", @@ -6199,7 +6077,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4578:94:10", @@ -6234,7 +6111,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4555:118:10", @@ -6426,7 +6302,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4764:12:10", @@ -6487,7 +6362,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4778:12:10", @@ -6560,7 +6434,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4802:12:10", @@ -6617,7 +6490,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4816:13:10", @@ -6668,7 +6540,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4751:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4747:16:10", @@ -6683,7 +6554,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4747:83:10", @@ -6718,7 +6588,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4737:94:10", @@ -6753,7 +6622,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4714:118:10", @@ -6827,7 +6695,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5392:12:10", @@ -6888,7 +6755,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5406:12:10", @@ -6961,7 +6827,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5430:12:10", @@ -7018,7 +6883,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5444:13:10", @@ -7069,7 +6933,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5379:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5375:16:10", @@ -7084,7 +6947,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5375:83:10", @@ -7119,7 +6981,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5365:94:10", @@ -7154,7 +7015,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5329:140:10", @@ -7288,12 +7148,10 @@ "id": 8049, "nodeType": "FunctionDefinition", "src": "5482:280:10", - "nodes": [], "body": { "id": 8048, "nodeType": "Block", "src": "5643:119:10", - "nodes": [], "statements": [ { "expression": { @@ -7353,7 +7211,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5710:12:10", @@ -7436,7 +7293,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5697:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5693:16:10", @@ -7451,7 +7307,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5693:60:10", @@ -7486,7 +7341,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5683:71:10", @@ -7521,7 +7375,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5660:95:10", @@ -7676,12 +7529,10 @@ "id": 8083, "nodeType": "FunctionDefinition", "src": "5768:259:10", - "nodes": [], "body": { "id": 8082, "nodeType": "Block", "src": "5845:182:10", - "nodes": [], "statements": [ { "expression": { @@ -7714,7 +7565,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5865:6:10", "memberName": "length", "nodeType": "MemberAccess", "src": "5863:8:10", @@ -7795,7 +7645,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5855:80:10", @@ -7862,7 +7711,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5997:6:10", "memberName": "length", "nodeType": "MemberAccess", "src": "5995:8:10", @@ -7913,7 +7761,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5980:24:10", @@ -7964,7 +7811,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5967:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5963:16:10", @@ -7979,7 +7825,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5963:45:10", @@ -8054,7 +7899,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5956:6:10", "memberName": "decode", "nodeType": "MemberAccess", "src": "5952:10:10", @@ -8069,7 +7913,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5952:68:10", @@ -8168,12 +8011,10 @@ "id": 8102, "nodeType": "FunctionDefinition", "src": "6033:144:10", - "nodes": [], "body": { "id": 8101, "nodeType": "Block", "src": "6116:61:10", - "nodes": [], "statements": [ { "expression": { @@ -8227,7 +8068,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6149:19:10", @@ -8270,7 +8110,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6141:28:10", @@ -8313,7 +8152,6 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6133:37:10", @@ -8413,12 +8251,10 @@ "id": 8127, "nodeType": "FunctionDefinition", "src": "6307:207:10", - "nodes": [], "body": { "id": 8126, "nodeType": "Block", "src": "6372:142:10", - "nodes": [], "statements": [ { "assignments": [ @@ -8533,7 +8369,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6440:19:10", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6436:23:10", @@ -8548,7 +8383,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6436:54:10", @@ -8613,7 +8447,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6399:25:10", @@ -8628,7 +8461,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6425:10:10", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "6399:36:10", @@ -8643,7 +8475,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6399:92:10", @@ -8756,12 +8587,10 @@ "id": 8152, "nodeType": "FunctionDefinition", "src": "6520:212:10", - "nodes": [], "body": { "id": 8151, "nodeType": "Block", "src": "6591:141:10", - "nodes": [], "statements": [ { "assignments": [ @@ -8876,7 +8705,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6659:19:10", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6655:23:10", @@ -8891,7 +8719,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6655:53:10", @@ -8956,7 +8783,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6618:25:10", @@ -8971,7 +8797,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6644:10:10", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "6618:36:10", @@ -8986,7 +8811,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6618:91:10", diff --git a/out/TaxToken.sol/TaxToken.json b/out/TaxToken.sol/TaxToken.json new file mode 100644 index 0000000..175123b --- /dev/null +++ b/out/TaxToken.sol/TaxToken.json @@ -0,0 +1,19958 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "totalSupplyInput", + "type": "uint256" + }, + { + "internalType": "string", + "name": "nameInput", + "type": "string" + }, + { + "internalType": "string", + "name": "symbolInput", + "type": "string" + }, + { + "internalType": "uint8", + "name": "decimalsInput", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "maxWalletSizeInput", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxTxAmountInput", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "DepositorUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "MaxTxUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "MaxWalletUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [], + "name": "TaxesPermanentlyRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_treasury", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "TransferTax", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "TreasuryUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "Unpaused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_state", + "type": "bool" + } + ], + "name": "UpdatedAuthorizedWallets", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "VestingUpdated", + "type": "event" + }, + { + "inputs": [], + "name": "UNISWAP_V2_PAIR", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "UNIV2_ROUTER", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "_taxType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "_bpt", + "type": "uint256" + } + ], + "name": "adjustBasisPointsTax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "authorized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "name": "basisPointsTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "blacklist", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "depositor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "distributeRoyaltiesToTreasury", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getContractTokenBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + } + ], + "name": "getIndustryTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "numTokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numIndustryTokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numDifference", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lifetime", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "industryBurn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "industryMint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "industryTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "lifetimeIndustryTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "lock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "maxContractTokenBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxTxAmount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxWalletSize", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "bool", + "name": "_blacklist", + "type": "bool" + } + ], + "name": "modifyBlacklist", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "bool", + "name": "_whitelisted", + "type": "bool" + } + ], + "name": "modifyWhitelist", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pause", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_key", + "type": "uint256" + } + ], + "name": "permanentlyRemoveTaxes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "receiverTaxType", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "senderTaxType", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_depositor", + "type": "address" + } + ], + "name": "setDepositor", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_treasury", + "type": "address" + } + ], + "name": "setTreasury", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_vesting", + "type": "address" + } + ], + "name": "setVesting", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "name": "taxesAccrued", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "taxesRemoved", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "treasury", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unpause", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "bool", + "name": "_state", + "type": "bool" + } + ], + "name": "updateAuthorizedList", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "updateMaxContractTokenBalance", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_maxTxAmount", + "type": "uint256" + } + ], + "name": "updateMaxTxAmount", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_maxWalletSize", + "type": "uint256" + } + ], + "name": "updateMaxWalletSize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "uint8", + "name": "_taxType", + "type": "uint8" + } + ], + "name": "updateReceiverTaxType", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "internalType": "uint8", + "name": "_taxType", + "type": "uint8" + } + ], + "name": "updateSenderTaxType", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "vesting", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "whitelist", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x60a06040526011805460ff191690553480156200001b57600080fd5b5060405162004499380380620044998339810160408190526200003e91620005fc565b848460036200004e83826200072c565b5060046200005d82826200072c565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a6200090b565b6200011190876200091c565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200093e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200093e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200093e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a6200090b565b620002f190836200091c565b600e5560055460ff166200030790600a6200090b565b6200031390826200091c565b600f5560055460ff166200032990600a6200090b565b620003369060016200091c565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a6200090b565b6200040290896200091c565b62000414565b5050505050506200098b565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000970565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b83821115620005f25760008385830101525b9695505050505050565b60008060008060008060c087890312156200061657600080fd5b865160208801519096506001600160401b03808211156200063657600080fd5b620006448a838b0162000545565b965060408901519150808211156200065b57600080fd5b506200066a89828a0162000545565b945050606087015160ff811681146200068257600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006b357607f821691505b602082108103620006d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620007035750805b601f850160051c820191505b8181101562000724578281556001016200070f565b505050505050565b81516001600160401b038111156200074857620007486200052f565b62000760816200075984546200069e565b84620006da565b602080601f8311600181146200079857600084156200077f5750858301515b600019600386901b1c1916600185901b17855562000724565b600085815260208120601f198616915b82811015620007c957888601518255948401946001909101908401620007a8565b5085821015620007e85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200084f578160001904821115620008335762000833620007f8565b808516156200084157918102915b93841c939080029062000813565b509250929050565b600082620008685750600162000529565b81620008775750600062000529565b81600181146200089057600281146200089b57620008bb565b600191505062000529565b60ff841115620008af57620008af620007f8565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008e0575081810a62000529565b620008ec83836200080e565b8060001904821115620009035762000903620007f8565b029392505050565b60006200052660ff84168362000857565b6000816000190483118215151615620009395762000939620007f8565b500290565b6000602082840312156200095157600080fd5b81516001600160a01b03811681146200096957600080fd5b9392505050565b60008219821115620009865762000986620007f8565b500190565b608051613aeb620009ae600039600081816107e20152611c890152613aeb6000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f0033", + "sourceMap": "828:24476:16:-:0;;;1628:19;;;-1:-1:-1;;1628:19:16;;;3746:1101;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3978:9;3989:11;8463:5:21;:13;3978:9:16;8463:5:21;:13;:::i;:::-;-1:-1:-1;8487:7:21;:17;8497:7;8487;:17;:::i;:::-;-1:-1:-1;;8515:9:21;:14;;-1:-1:-1;;8515:14:21;8527:2;8515:14;;;-1:-1:-1;8515:9:21;975:12:20;699:10:19;;603:115;975:12:20;998:6;:18;;-1:-1:-1;;;;;;998:18:20;;-1:-1:-1;;;;;998:18:20;;;;;;;;;;;;1032:43;;998:18;;-1:-1:-1;998:18:20;-1:-1:-1;;1032:43:20;;-1:-1:-1;;1032:43:20;-1:-1:-1;4013:7:16::1;:15:::0;;-1:-1:-1;;4013:15:16::1;::::0;;4039:29:::1;4054:13:::0;16759:9:21;:21;;-1:-1:-1;;16759:21:21;;;;;;;;;;;;16690:98;4039:29:16::1;9624:9:21::0;;;;4114:16:16::1;::::0;:2:::1;:16;:::i;:::-;4094:37;::::0;:16;:37:::1;:::i;:::-;4079:12;:52;;;;1289:42;-1:-1:-1::0;;;;;4248:40:16::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4216:96:16::1;;4321:4;1289:42;-1:-1:-1::0;;;;;4328:37:16::1;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4216:152;::::0;-1:-1:-1;;;;;;4216:152:16::1;::::0;;;;;;-1:-1:-1;;;;;6741:15:32;;;4216:152:16::1;::::0;::::1;6723:34:32::0;6793:15;;6773:18;;;6766:43;6658:18;;4216:152:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4198:170:16::1;;::::0;;;4382:30:::1;::::0;;;:13:::1;:30;::::0;;;;;;;:34;;-1:-1:-1;;4382:34:16;;::::1;4415:1;4382:34;::::0;;;4427:15:::1;:32:::0;;;;;;:36;;;;::::1;4462:1;4427:36;::::0;;4520:10:::1;9624:9:21::0;;;;;9550:91;4520:10:16::1;4514:16;::::0;:2:::1;:16;:::i;:::-;4492:39;::::0;:18;:39:::1;:::i;:::-;4476:13;:55:::0;9624:9:21;;;;4576:16:16::1;::::0;:2:::1;:16;:::i;:::-;4556:37;::::0;:16;:37:::1;:::i;:::-;4542:11;:51:::0;9624:9:21;;;;4637:16:16::1;::::0;:2:::1;:16;:::i;:::-;4632:22;::::0;:1:::1;:22;:::i;:::-;4606:23;:48:::0;4685:4:::1;4667:24;::::0;;;:9:::1;:24;::::0;;;;;;:31;;4694:4:::1;-1:-1:-1::0;;4667:31:16;;::::1;::::0;::::1;::::0;;;4709:21;;;;:28;;;;::::1;::::0;::::1;::::0;;4694:4;4758:7:::1;1237:6:20::0;;;;;-1:-1:-1;;;;;1237:6:20;;1164:87;4758:7:16::1;-1:-1:-1::0;;;;;4748:18:16::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;4748:18:16;:25;;-1:-1:-1;;4748:25:16::1;::::0;::::1;;::::0;;;::::1;::::0;;4786:53:::1;4792:7;1237:6:20::0;;;;;-1:-1:-1;;;;;1237:6:20;;1164:87;4792:7:16::1;9624:9:21::0;;;;4821:16:16::1;::::0;:2:::1;:16;:::i;:::-;4801:37;::::0;:16;:37:::1;:::i;:::-;4786:5;:53::i;:::-;3746:1101:::0;;;;;;828:24476;;14445:378:21;-1:-1:-1;;;;;14529:21:21;;14521:65;;;;-1:-1:-1;;;14521:65:21;;7022:2:32;14521:65:21;;;7004:21:32;7061:2;7041:18;;;7034:30;7100:33;7080:18;;;7073:61;7151:18;;14521:65:21;;;;;;;;14676:24;14693:6;14676:12;;:16;;;;;;:24;;;;:::i;:::-;14661:12;:39;-1:-1:-1;;;;;14732:18:21;;:9;:18;;;;;;;;;;;;:30;;14755:6;;14732:22;;;;;:30;;:::i;:::-;-1:-1:-1;;;;;14711:18:21;;:9;:18;;;;;;;;;;;:51;;;;14778:37;;7326:25:32;;;14711:18:21;;:9;;14778:37;;7299:18:32;14778:37:21;;;;;;;14445:378;;:::o;17391:92::-;;;;:::o;2486:98::-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;;2486:98;;;;;:::o;14:127:32:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:885;200:5;253:3;246:4;238:6;234:17;230:27;220:55;;271:1;268;261:12;220:55;294:13;;-1:-1:-1;;;;;356:10:32;;;353:36;;;369:18;;:::i;:::-;444:2;438:9;412:2;498:13;;-1:-1:-1;;494:22:32;;;518:2;490:31;486:40;474:53;;;542:18;;;562:22;;;539:46;536:72;;;588:18;;:::i;:::-;628:10;624:2;617:22;663:2;655:6;648:18;685:4;675:14;;730:3;725:2;720;712:6;708:15;704:24;701:33;698:53;;;747:1;744;737:12;698:53;769:1;760:10;;779:133;793:2;790:1;787:9;779:133;;;881:14;;;877:23;;871:30;850:14;;;846:23;;839:63;804:10;;;;779:133;;;930:2;927:1;924:9;921:80;;;989:1;984:2;979;971:6;967:15;963:24;956:35;921:80;1019:6;146:885;-1:-1:-1;;;;;;146:885:32:o;1036:898::-;1169:6;1177;1185;1193;1201;1209;1262:3;1250:9;1241:7;1237:23;1233:33;1230:53;;;1279:1;1276;1269:12;1230:53;1302:16;;1362:2;1347:18;;1341:25;1302:16;;-1:-1:-1;;;;;;1415:14:32;;;1412:34;;;1442:1;1439;1432:12;1412:34;1465:61;1518:7;1509:6;1498:9;1494:22;1465:61;:::i;:::-;1455:71;;1572:2;1561:9;1557:18;1551:25;1535:41;;1601:2;1591:8;1588:16;1585:36;;;1617:1;1614;1607:12;1585:36;;1640:63;1695:7;1684:8;1673:9;1669:24;1640:63;:::i;:::-;1630:73;;;1746:2;1735:9;1731:18;1725:25;1790:4;1783:5;1779:16;1772:5;1769:27;1759:55;;1810:1;1807;1800:12;1759:55;1833:5;1823:15;;;1878:3;1867:9;1863:19;1857:26;1847:36;;1923:3;1912:9;1908:19;1902:26;1892:36;;1036:898;;;;;;;;:::o;1939:380::-;2018:1;2014:12;;;;2061;;;2082:61;;2136:4;2128:6;2124:17;2114:27;;2082:61;2189:2;2181:6;2178:14;2158:18;2155:38;2152:161;;2235:10;2230:3;2226:20;2223:1;2216:31;2270:4;2267:1;2260:15;2298:4;2295:1;2288:15;2152:161;;1939:380;;;:::o;2450:545::-;2552:2;2547:3;2544:11;2541:448;;;2588:1;2613:5;2609:2;2602:17;2658:4;2654:2;2644:19;2728:2;2716:10;2712:19;2709:1;2705:27;2699:4;2695:38;2764:4;2752:10;2749:20;2746:47;;;-1:-1:-1;2787:4:32;2746:47;2842:2;2837:3;2833:12;2830:1;2826:20;2820:4;2816:31;2806:41;;2897:82;2915:2;2908:5;2905:13;2897:82;;;2960:17;;;2941:1;2930:13;2897:82;;;2901:3;;;2450:545;;;:::o;3171:1352::-;3291:10;;-1:-1:-1;;;;;3313:30:32;;3310:56;;;3346:18;;:::i;:::-;3375:97;3465:6;3425:38;3457:4;3451:11;3425:38;:::i;:::-;3419:4;3375:97;:::i;:::-;3527:4;;3591:2;3580:14;;3608:1;3603:663;;;;4310:1;4327:6;4324:89;;;-1:-1:-1;4379:19:32;;;4373:26;4324:89;-1:-1:-1;;3128:1:32;3124:11;;;3120:24;3116:29;3106:40;3152:1;3148:11;;;3103:57;4426:81;;3573:944;;3603:663;2397:1;2390:14;;;2434:4;2421:18;;-1:-1:-1;;3639:20:32;;;3757:236;3771:7;3768:1;3765:14;3757:236;;;3860:19;;;3854:26;3839:42;;3952:27;;;;3920:1;3908:14;;;;3787:19;;3757:236;;;3761:3;4021:6;4012:7;4009:19;4006:201;;;4082:19;;;4076:26;-1:-1:-1;;4165:1:32;4161:14;;;4177:3;4157:24;4153:37;4149:42;4134:58;4119:74;;4006:201;-1:-1:-1;;;;;4253:1:32;4237:14;;;4233:22;4220:36;;-1:-1:-1;3171:1352:32:o;4528:127::-;4589:10;4584:3;4580:20;4577:1;4570:31;4620:4;4617:1;4610:15;4644:4;4641:1;4634:15;4660:422;4749:1;4792:5;4749:1;4806:270;4827:7;4817:8;4814:21;4806:270;;;4886:4;4882:1;4878:6;4874:17;4868:4;4865:27;4862:53;;;4895:18;;:::i;:::-;4945:7;4935:8;4931:22;4928:55;;;4965:16;;;;4928:55;5044:22;;;;5004:15;;;;4806:270;;;4810:3;4660:422;;;;;:::o;5087:806::-;5136:5;5166:8;5156:80;;-1:-1:-1;5207:1:32;5221:5;;5156:80;5255:4;5245:76;;-1:-1:-1;5292:1:32;5306:5;;5245:76;5337:4;5355:1;5350:59;;;;5423:1;5418:130;;;;5330:218;;5350:59;5380:1;5371:10;;5394:5;;;5418:130;5455:3;5445:8;5442:17;5439:43;;;5462:18;;:::i;:::-;-1:-1:-1;;5518:1:32;5504:16;;5533:5;;5330:218;;5632:2;5622:8;5619:16;5613:3;5607:4;5604:13;5600:36;5594:2;5584:8;5581:16;5576:2;5570:4;5567:12;5563:35;5560:77;5557:159;;;-1:-1:-1;5669:19:32;;;5701:5;;5557:159;5748:34;5773:8;5767:4;5748:34;:::i;:::-;5818:6;5814:1;5810:6;5806:19;5797:7;5794:32;5791:58;;;5829:18;;:::i;:::-;5867:20;;5087:806;-1:-1:-1;;;5087:806:32:o;5898:140::-;5956:5;5985:47;6026:4;6016:8;6012:19;6006:4;5985:47;:::i;6043:168::-;6083:7;6149:1;6145;6141:6;6137:14;6134:1;6131:21;6126:1;6119:9;6112:17;6108:45;6105:71;;;6156:18;;:::i;:::-;-1:-1:-1;6196:9:32;;6043:168::o;6216:290::-;6286:6;6339:2;6327:9;6318:7;6314:23;6310:32;6307:52;;;6355:1;6352;6345:12;6307:52;6381:16;;-1:-1:-1;;;;;6426:31:32;;6416:42;;6406:70;;6472:1;6469;6462:12;6406:70;6495:5;6216:290;-1:-1:-1;;;6216:290:32:o;7362:128::-;7402:3;7433:1;7429:6;7426:1;7423:13;7420:39;;;7439:18;;:::i;:::-;-1:-1:-1;7475:9:32;;7362:128::o;:::-;828:24476:16;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f0033", + "sourceMap": "828:24476:16:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19574:130;;;;;;:::i;:::-;;:::i;:::-;;8607:91:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1583:38:16;;;;;;;;;1319:25:32;;;1307:2;1292:18;1583:38:16;1173:177:32;10753:169:21;;;;;;:::i;:::-;;:::i;:::-;;;1840:14:32;;1833:22;1815:41;;1803:2;1788:18;10753:169:21;1675:187:32;2496:45:16;;;;;;:::i;:::-;;;;;;;;;;;;;;9706:108:21;9794:12;;9706:108;;11404:321;;;;;;:::i;:::-;;:::i;18883:298:16:-;;;;;;:::i;:::-;;:::i;9550:91:21:-;9624:9;;;;9550:91;;;3033:4:32;3021:17;;;3003:36;;2991:2;2976:18;9550:91:21;2861:184:32;24030:115:16;24131:4;24086:7;9978:18:21;;;;;;;;;;;24030:115:16;;12134:218:21;;;;;;:::i;:::-;;:::i;14792:263:16:-;;;:::i;11590:119::-;;;:::i;21508:114::-;;;;;;:::i;:::-;;:::i;1188:22::-;;;;;-1:-1:-1;;;;;1188:22:16;;;;;;-1:-1:-1;;;;;3214:32:32;;;3196:51;;3184:2;3169:18;1188:22:16;3050:203:32;13577:319:16;;;;;;:::i;:::-;;:::i;11813:86::-;11884:7;;;;11813:86;;1158:23;;;;;;;;-1:-1:-1;;;;;1158:23:16;;;18347:278;;;;;;:::i;:::-;;:::i;1250:81::-;;1289:42;1250:81;;15366:408;;;;;;:::i;:::-;;:::i;16555:492::-;;;;;;:::i;:::-;;:::i;12344:231::-;;;;;;:::i;:::-;;:::i;9877:127:21:-;;;;;;:::i;:::-;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;1815:148:20;;;:::i;11332:132:16:-;;;:::i;1548:26::-;;;;;;1164:87:20;1237:6;;;;;-1:-1:-1;;;;;1237:6:20;1164:87;;22672:222:16;;;;;;:::i;:::-;;:::i;1513:28::-;;;;;;8817:95:21;;;:::i;2231:44:16:-;;;;;;:::i;:::-;;;;;;;;;;;;;;2109:48;;;;;;:::i;:::-;;;;;;;;;;;;;;;;1834:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;21935:114;;;;;;:::i;:::-;;:::i;1980:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;12855:269:21;;;;;;:::i;:::-;;:::i;10217:175::-;;;;;;:::i;:::-;;:::i;17916:148:16:-;;;;;;:::i;:::-;;:::i;24759:542::-;;;;;;:::i;:::-;;:::i;:::-;;;;4318:25:32;;;4374:2;4359:18;;4352:34;;;;4402:18;;;4395:34;4460:2;4445:18;;4438:34;4305:3;4290:19;24759:542:16;4087:391:32;2354:42:16;;;;;;:::i;:::-;;;;;;;;;;;;;;;;14165:429;;;;;;:::i;:::-;;:::i;1217:24::-;;;;;-1:-1:-1;;;;;1217:24:16;;;20148:952;;;;;;:::i;:::-;;:::i;2444:226:20:-;;;;;;:::i;:::-;;:::i;10455:151:21:-;;;;;;:::i;:::-;-1:-1:-1;;;;;10571:18:21;;;10544:7;10571:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10455:151;15965:404:16;;;;;;:::i;:::-;;:::i;1387:24::-;;;;;-1:-1:-1;;;1387:24:16;;;;;;17224:464;;;;;;:::i;:::-;;:::i;14624:160::-;;;;;;:::i;:::-;;:::i;1338:40::-;;;;;23211:562;;;;;;:::i;:::-;;:::i;12975:241::-;;;;;;:::i;:::-;;:::i;2550:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;1680:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2700:54;;;;;;:::i;:::-;;;;;;;;;;;;;;19574:130;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;19663:18:16;;;::::1;;::::0;;;:9:::1;:18;::::0;;;;:33;;-1:-1:-1;;19663:33:16::1;::::0;::::1;;::::0;;;::::1;::::0;;19574:130::o;8607:91:21:-;8652:13;8685:5;8678:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;:::o;10753:169::-;10836:4;10853:39;699:10:19;10876:7:21;10885:6;10853:8;:39::i;:::-;-1:-1:-1;10910:4:21;10753:169;;;;;:::o;11404:321::-;11510:4;11527:36;11537:6;11545:9;11556:6;11527:9;:36::i;:::-;11574:121;11583:6;699:10:19;11605:89:21;11643:6;11605:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11605:19:21;;;;;;:11;:19;;;;;;;;699:10:19;11605:33:21;;;;;;;;;;:37;:89::i;:::-;11574:8;:121::i;:::-;-1:-1:-1;11713:4:21;11404:321;;;;;:::o;18883:298:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;18991:1:16::1;18974:14;:18;18966:94;;;::::0;-1:-1:-1;;;18966:94:16;;5824:2:32;18966:94:16::1;::::0;::::1;5806:21:32::0;5863:2;5843:18;;;5836:30;5902:34;5882:18;;;5875:62;5973:33;5953:18;;;5946:61;6024:19;;18966:94:16::1;5622:427:32::0;18966:94:16::1;9624:9:21::0;;;;19107:16:16::1;::::0;:2:::1;:16;:::i;:::-;19090:33;::::0;:14;:33:::1;:::i;:::-;19073:13;:51:::0;;;19142:31:::1;::::0;1319:25:32;;;19142:31:16::1;::::0;1307:2:32;1292:18;19142:31:16::1;;;;;;;;18883:298:::0;:::o;12134:218:21:-;699:10:19;12222:4:21;12271:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12271:34:21;;;;;;;;;;12222:4;;12239:83;;12262:7;;12271:50;;12310:10;12271:38;:50::i;14792:263:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;14908:6:16::1;::::0;::::1;;14903:82;;14931:42;14947:25;24131:4:::0;24086:7;9978:18:21;;;;;;;;;;;;24030:115:16;14947:25:::1;14931:15;:42::i;:::-;14792:263::o:0;11590:119::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;11884:7:16;;;;5934:82:::1;;;::::0;-1:-1:-1;;;5934:82:16;;7944:2:32;5934:82:16::1;::::0;::::1;7926:21:32::0;7983:2;7963:18;;;7956:30;8022:34;8002:18;;;7995:62;8093:31;8073:18;;;8066:59;8142:19;;5934:82:16::1;7742:425:32::0;5934:82:16::1;11650:7:::2;:15:::0;;-1:-1:-1;;11650:15:16::2;::::0;;11681:20:::2;::::0;11690:10:::2;3196:51:32::0;;11681:20:16::2;::::0;3184:2:32;3169:18;11681:20:16::2;;;;;;;11590:119::o:0;21508:114::-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;21591:23:::1;21597:7;21606;21591:5;:23::i;:::-;21508:114:::0;;:::o;13577:319::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;13680:4:16::1;13672;:12;;13664:81;;;::::0;-1:-1:-1;;;13664:81:16;;8804:2:32;13664:81:16::1;::::0;::::1;8786:21:32::0;8843:2;8823:18;;;8816:30;8882:34;8862:18;;;8855:62;8953:26;8933:18;;;8926:54;8997:19;;13664:81:16::1;8602:420:32::0;13664:81:16::1;13765:12;::::0;-1:-1:-1;;;13765:12:16;::::1;;;13764:13;13756:90;;;::::0;;-1:-1:-1;;;13756:90:16;;9229:2:32;13756:90:16::1;::::0;::::1;9211:21:32::0;9248:18;;;9241:30;;;;9307:34;9287:18;;;9280:62;9378:34;9358:18;;;9351:62;9430:19;;13756:90:16::1;9027:428:32::0;13756:90:16::1;13857:24;::::0;;::::1;;::::0;;;:14:::1;:24;::::0;;;;:31;13577:319::o;18347:278::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;18449:1:16::1;18434:12;:16;18426:88;;;::::0;-1:-1:-1;;;18426:88:16;;9662:2:32;18426:88:16::1;::::0;::::1;9644:21:32::0;9701:2;9681:18;;;9674:30;9740:34;9720:18;;;9713:62;9811:29;9791:18;;;9784:57;9858:19;;18426:88:16::1;9460:423:32::0;18426:88:16::1;9624:9:21::0;;;;18557:16:16::1;::::0;:2:::1;:16;:::i;:::-;18542:31;::::0;:12;:31:::1;:::i;:::-;18527:11;:47:::0;;;18592:25:::1;::::0;1319::32;;;18592::16::1;::::0;1307:2:32;1292:18;18592:25:16::1;1173:177:32::0;15366:408:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;15465:22:16;::::1;15457:83;;;::::0;-1:-1:-1;;;15457:83:16;;10090:2:32;15457:83:16::1;::::0;::::1;10072:21:32::0;10129:2;10109:18;;;10102:30;10168:34;10148:18;;;10141:62;-1:-1:-1;;;10219:18:32;;;10212:46;10275:19;;15457:83:16::1;9888:412:32::0;15457:83:16::1;-1:-1:-1::0;;;;;15559:20:16;::::1;;::::0;;;:10:::1;:20;::::0;;;;;::::1;;:30;;::::0;::::1;;;15551:113;;;::::0;-1:-1:-1;;;15551:113:16;;10507:2:32;15551:113:16::1;::::0;::::1;10489:21:32::0;10546:2;10526:18;;;10519:30;10585:34;10565:18;;;10558:62;10656:34;10636:18;;;10629:62;-1:-1:-1;;;10707:19:32;;;10700:37;10754:19;;15551:113:16::1;10305:474:32::0;15551:113:16::1;-1:-1:-1::0;;;;;15677:20:16;::::1;;::::0;;;:10:::1;:20;::::0;;;;;;;;:29;;-1:-1:-1;;15677:29:16::1;::::0;::::1;;::::0;;::::1;::::0;;;15724:42;;1815:41:32;;;15724:42:16::1;::::0;1788:18:32;15724:42:16::1;;;;;;;15366:408:::0;;:::o;16555:492::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;16643:7:16::1;::::0;-1:-1:-1;;;;;16643:7:16;;::::1;16631:19:::0;;::::1;::::0;16623:90:::1;;;::::0;-1:-1:-1;;;16623:90:16;;10986:2:32;16623:90:16::1;::::0;::::1;10968:21:32::0;11025:2;11005:18;;;10998:30;11064:34;11044:18;;;11037:62;11135:28;11115:18;;;11108:56;11181:19;;16623:90:16::1;10784:422:32::0;16623:90:16::1;-1:-1:-1::0;;;;;16732:22:16;::::1;16724:91;;;::::0;-1:-1:-1;;;16724:91:16;;11413:2:32;16724:91:16::1;::::0;::::1;11395:21:32::0;11452:2;11432:18;;;11425:30;11491:34;11471:18;;;11464:62;11562:26;11542:18;;;11535:54;11606:19;;16724:91:16::1;11211:420:32::0;16724:91:16::1;16828:7;:18:::0;;-1:-1:-1;;;;;;16828:18:16::1;-1:-1:-1::0;;;;;16828:18:16;::::1;::::0;;::::1;::::0;;;16857:30:::1;::::0;-1:-1:-1;16857:15:16::1;:30::i;:::-;16926:7;::::0;16917:38:::1;::::0;;-1:-1:-1;;;16917:38:16;;;;16900:14:::1;::::0;-1:-1:-1;;;;;16926:7:16::1;::::0;16917:36:::1;::::0;:38:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;16926:7;16917:38:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16972:7;::::0;16900:55;;-1:-1:-1;16966:22:16::1;::::0;-1:-1:-1;;;;;16972:7:16::1;16900:55:::0;16966:5:::1;:22::i;:::-;17021:7;::::0;17006:33:::1;::::0;;-1:-1:-1;;;;;17021:7:16;;::::1;12037:34:32::0;;12107:15;;;12102:2;12087:18;;12080:43;17006:33:16::1;::::0;11972:18:32;17006:33:16::1;;;;;;;16612:435;16555:492:::0;:::o;12344:231::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;12455:1:16::1;12444:8;:12;;;12436:87;;;::::0;-1:-1:-1;;;12436:87:16;;12336:2:32;12436:87:16::1;::::0;::::1;12318:21:32::0;12375:2;12355:18;;;12348:30;12414:34;12394:18;;;12387:62;12485:32;12465:18;;;12458:60;12535:19;;12436:87:16::1;12134:426:32::0;12436:87:16::1;-1:-1:-1::0;;;;;12534:22:16;;;::::1;;::::0;;;:13:::1;:22;::::0;;;;:33;;-1:-1:-1;;12534:33:16::1;;::::0;;::::1;::::0;;;::::1;::::0;;12344:231::o;1815:148:20:-;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;1906:6:::1;::::0;1885:40:::1;::::0;1922:1:::1;::::0;1906:6:::1;::::0;::::1;-1:-1:-1::0;;;;;1906:6:20::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1936:6;:19:::0;;-1:-1:-1;;;;;;1936:19:20::1;::::0;;1815:148::o;11332:132:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;11385:10:16::1;5055:8;11884:7:::0;;;;;11813:86;5055:8:::1;5054:9;:25;;;-1:-1:-1::0;;;;;;5067:12:16;::::1;;::::0;;;:9:::1;:12;::::0;;;;;::::1;;5054:25;5046:101;;;::::0;-1:-1:-1;;;5046:101:16;;12767:2:32;5046:101:16::1;::::0;::::1;12749:21:32::0;12806:2;12786:18;;;12779:30;12845:34;12825:18;;;12818:62;12916:33;12896:18;;;12889:61;12967:19;;5046:101:16::1;12565:427:32::0;5046:101:16::1;11408:7:::2;:14:::0;;-1:-1:-1;;11408:14:16::2;11418:4;11408:14;::::0;;11438:18:::2;::::0;11445:10:::2;3196:51:32::0;;11438:18:16::2;::::0;3184:2:32;3169:18;11438::16::2;3050:203:32::0;22672:222:16;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;22763:23:::1;22769:7;22778;22763:5;:23::i;:::-;-1:-1:-1::0;;;;;22799:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;:34;;22826:7;;22799:23;:34:::1;::::0;22826:7;;22799:34:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;22844:31:16;::::1;;::::0;;;:22:::1;:31;::::0;;;;:42;;22879:7;;22844:31;:42:::1;::::0;22879:7;;22844:42:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;22672:222:16:o;8817:95:21:-;8864:13;8897:7;8890:14;;;;;:::i;21935:114:16:-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;22018:23:::1;22024:7;22033;22018:5;:23::i;12855:269:21:-:0;12948:4;12965:129;699:10:19;12988:7:21;12997:96;13036:15;12997:96;;;;;;;;;;;;;;;;;699:10:19;12997:25:21;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12997:34:21;;;;;;;;;;;;:38;:96::i;10217:175::-;10303:4;10320:42;699:10:19;10344:9:21;10355:6;10320:9;:42::i;17916:148:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;9624:9:21;;;;18039:16:16::1;::::0;:2:::1;:16;:::i;:::-;18029:26;::::0;:7;:26:::1;:::i;:::-;18002:23;:54:::0;-1:-1:-1;17916:148:16:o;24759:542::-;24931:40;;-1:-1:-1;;;24931:40:16;;-1:-1:-1;;;;;3214:32:32;;24931:40:16;;;3196:51:32;24826:14:16;;;;;;;;;;24946:4;;24931:31;;3169:18:32;;24931:40:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;25005:23:16;;24982:20;25005:23;;;:14;:23;;;;;;24912:59;;-1:-1:-1;25057:29:16;25005:23;24912:59;25057:29;:::i;:::-;-1:-1:-1;;;;;25261:31:16;;;;;;;;:22;:31;;;;;;25219:11;;25232:15;;;-1:-1:-1;25261:31:16;;-1:-1:-1;24759:542:16;-1:-1:-1;;;24759:542:16:o;14165:429::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;14246:4:16::1;14254:2;14246:10;14238:70;;;::::0;-1:-1:-1;;;14238:70:16;;13462:2:32;14238:70:16::1;::::0;::::1;13444:21:32::0;13501:2;13481:18;;;13474:30;13540:34;13520:18;;;13513:62;-1:-1:-1;;;13591:18:32;;;13584:45;13646:19;;14238:70:16::1;13260:411:32::0;14238:70:16::1;14328:12;::::0;-1:-1:-1;;;14328:12:16;::::1;;;14327:13;14319:98;;;::::0;-1:-1:-1;;;14319:98:16;;13878:2:32;14319:98:16::1;::::0;::::1;13860:21:32::0;13917:2;13897:18;;;13890:30;13956:34;13936:18;;;13929:62;14027:34;14007:18;;;14000:62;-1:-1:-1;;;14078:19:32;;;14071:39;14127:19;;14319:98:16::1;13676:476:32::0;14319:98:16::1;14428:14;:17;::::0;14448:1:::1;14428:17:::0;:21;;;14460:17;:21;;;14507:1:::1;14492:17:::0;;;:21;;;14524:12:::1;:19:::0;;-1:-1:-1;;;;14524:19:16::1;-1:-1:-1::0;;;14524:19:16::1;::::0;;14428:17;14561:25;::::1;::::0;14448:1;14561:25:::1;14165:429:::0;:::o;20148:952::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;20241:10:16::1;20237:814;;;-1:-1:-1::0;;;;;20277:18:16;::::1;;::::0;;;:9:::1;:18;::::0;;;;;::::1;;20276:19;20268:102;;;::::0;-1:-1:-1;;;20268:102:16;;14359:2:32;20268:102:16::1;::::0;::::1;14341:21:32::0;14398:2;14378:18;;;14371:30;-1:-1:-1;;;;;;;;;;;14417:18:32;;;14410:62;14508:34;14488:18;;;14481:62;-1:-1:-1;;;14559:19:32;;;14552:37;14606:19;;20268:102:16::1;14157:474:32::0;20268:102:16::1;20404:8;::::0;-1:-1:-1;;;;;20404:8:16::1;::::0;;::::1;::::0;::::1;20393:19:::0;;::::1;::::0;20385:90:::1;;;::::0;-1:-1:-1;;;20385:90:16;;14838:2:32;20385:90:16::1;::::0;::::1;14820:21:32::0;14877:2;14857:18;;;14850:30;-1:-1:-1;;;;;;;;;;;14896:18:32;;;14889:62;14987:28;14967:18;;;14960:56;15033:19;;20385:90:16::1;14636:422:32::0;20385:90:16::1;20509:9;::::0;-1:-1:-1;;;;;20509:9:16;;::::1;20498:20:::0;;::::1;::::0;20490:92:::1;;;::::0;-1:-1:-1;;;20490:92:16;;15265:2:32;20490:92:16::1;::::0;::::1;15247:21:32::0;15304:2;15284:18;;;15277:30;-1:-1:-1;;;;;;;;;;;15323:18:32;;;15316:62;15414:29;15394:18;;;15387:57;15461:19;;20490:92:16::1;15063:423:32::0;20490:92:16::1;20616:7;::::0;-1:-1:-1;;;;;20616:7:16;;::::1;20605:18:::0;;::::1;::::0;20597:88:::1;;;::::0;-1:-1:-1;;;20597:88:16;;15693:2:32;20597:88:16::1;::::0;::::1;15675:21:32::0;15732:2;15712:18;;;15705:30;-1:-1:-1;;;;;;;;;;;15751:18:32;;;15744:62;15842:27;15822:18;;;15815:55;15887:19;;20597:88:16::1;15491:421:32::0;20597:88:16::1;-1:-1:-1::0;;;;;;;20708:23:16;::::1;::::0;20700:104:::1;;;::::0;-1:-1:-1;;;20700:104:16;;16119:2:32;20700:104:16::1;::::0;::::1;16101:21:32::0;16158:2;16138:18;;;16131:30;;;-1:-1:-1;;;;;;;;;;;16177:18:32;;;16170:62;16268:34;16248:18;;;16241:62;-1:-1:-1;;;16319:19:32;;;16312:35;16364:19;;20700:104:16::1;15917:472:32::0;20700:104:16::1;20838:15;-1:-1:-1::0;;;;;20827:26:16::1;:7;-1:-1:-1::0;;;;;20827:26:16::1;::::0;20819:105:::1;;;::::0;-1:-1:-1;;;20819:105:16;;16596:2:32;20819:105:16::1;::::0;::::1;16578:21:32::0;16635:2;16615:18;;;16608:30;-1:-1:-1;;;;;;;;;;;16654:18:32;;;16647:62;16745:34;16725:18;;;16718:62;-1:-1:-1;;;16796:19:32;;;16789:33;16839:19;;20819:105:16::1;16394:470:32::0;20819:105:16::1;20966:4;-1:-1:-1::0;;;;;20947:24:16;::::1;::::0;20939:100:::1;;;::::0;-1:-1:-1;;;20939:100:16;;17071:2:32;20939:100:16::1;::::0;::::1;17053:21:32::0;17110:2;17090:18;;;17083:30;-1:-1:-1;;;;;;;;;;;17129:18:32;;;17122:62;17220:33;17200:18;;;17193:61;17271:19;;20939:100:16::1;16869:427:32::0;20939:100:16::1;-1:-1:-1::0;;;;;21061:18:16;;;::::1;;::::0;;;:9:::1;:18;::::0;;;;:31;;-1:-1:-1;;21061:31:16::1;::::0;::::1;;::::0;;;::::1;::::0;;20148:952::o;2444:226:20:-;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;2525:6:::1;::::0;;2508:14:::1;:23:::0;;-1:-1:-1;;;;;;2508:23:20::1;-1:-1:-1::0;;;;;2525:6:20::1;::::0;::::1;;2508:23;::::0;;-1:-1:-1;;;;;;2542:19:20::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2643:6:::1;::::0;2622:40:::1;::::0;2659:1:::1;::::0;2643:6:::1;::::0;::::1;-1:-1:-1::0;;;;;2643:6:20::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;15965:404:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;16056:8:16::1;::::0;-1:-1:-1;;;;;16056:8:16::1;::::0;;::::1;::::0;::::1;16043:21:::0;;::::1;::::0;16035:93:::1;;;::::0;-1:-1:-1;;;16035:93:16;;17503:2:32;16035:93:16::1;::::0;::::1;17485:21:32::0;17542:2;17522:18;;;17515:30;17581:34;17561:18;;;17554:62;17652:29;17632:18;;;17625:57;17699:19;;16035:93:16::1;17301:423:32::0;16035:93:16::1;-1:-1:-1::0;;;;;16147:23:16;::::1;16139:93;;;::::0;-1:-1:-1;;;16139:93:16;;17931:2:32;16139:93:16::1;::::0;::::1;17913:21:32::0;17970:2;17950:18;;;17943:30;18009:34;17989:18;;;17982:62;18080:27;18060:18;;;18053:55;18125:19;;16139:93:16::1;17729:421:32::0;16139:93:16::1;16245:8;:20:::0;;-1:-1:-1;;;;;;16245:20:16::1;;-1:-1:-1::0;;;;;16245:20:16;;::::1;::::0;::::1;::::0;;;::::1;::::0;;;;16276:31:::1;::::0;16292:8:::1;;-1:-1:-1::0;16276:15:16::1;:31::i;:::-;16341:8;::::0;16325:36:::1;::::0;;-1:-1:-1;;;;;16341:8:16::1;::::0;;::::1;::::0;::::1;12037:34:32::0;;12107:15;;;12102:2;12087:18;;12080:43;16325:36:16::1;::::0;11972:18:32;16325:36:16::1;11825:304:32::0;17224:464:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;17318:9:16::1;::::0;-1:-1:-1;;;;;17318:9:16;;::::1;17304:23:::0;;::::1;::::0;17296:96:::1;;;::::0;-1:-1:-1;;;17296:96:16;;18357:2:32;17296:96:16::1;::::0;::::1;18339:21:32::0;18396:2;18376:18;;;18369:30;18435:34;18415:18;;;18408:62;18506:30;18486:18;;;18479:58;18554:19;;17296:96:16::1;18155:424:32::0;17296:96:16::1;-1:-1:-1::0;;;;;17411:24:16;::::1;17403:95;;;::::0;-1:-1:-1;;;17403:95:16;;18786:2:32;17403:95:16::1;::::0;::::1;18768:21:32::0;18825:2;18805:18;;;18798:30;18864:34;18844:18;;;18837:62;18935:28;18915:18;;;18908:56;18981:19;;17403:95:16::1;18584:422:32::0;17403:95:16::1;17511:9;:22:::0;;-1:-1:-1;;;;;;17511:22:16::1;-1:-1:-1::0;;;;;17511:22:16;::::1;::::0;;::::1;::::0;;;17544:33:::1;::::0;-1:-1:-1;17544:15:16::1;:33::i;:::-;17658:9;::::0;17641:39:::1;::::0;;-1:-1:-1;;;;;17658:9:16;;::::1;12037:34:32::0;;12107:15;;;12102:2;12087:18;;12080:43;17641:39:16::1;::::0;11972:18:32;17641:39:16::1;11825:304:32::0;14624:160:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;14706:19:16;::::1;;::::0;;;:9:::1;:19;::::0;;;;:26;;-1:-1:-1;;14706:26:16::1;14728:4;14706:26;::::0;;14743:33:::1;14716:8:::0;14743:23:::1;:33::i;:::-;14624:160:::0;:::o;23211:562::-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;-1:-1:-1;;;;;23310:21:16;::::1;23302:92;;;::::0;-1:-1:-1;;;23302:92:16;;19213:2:32;23302:92:16::1;::::0;::::1;19195:21:32::0;19252:2;19232:18;;;19225:30;19291:34;19271:18;;;19264:62;19362:28;19342:18;;;19335:56;19408:19;;23302:92:16::1;19011:422:32::0;23302:92:16::1;23435:7;23413:18;23423:7;-1:-1:-1::0;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;23413:18:16::1;:29;;23405:111;;;::::0;-1:-1:-1;;;23405:111:16;;19640:2:32;23405:111:16::1;::::0;::::1;19622:21:32::0;19679:2;19659:18;;;19652:30;19718:34;19698:18;;;19691:62;19789:34;19769:18;;;19762:62;-1:-1:-1;;;19840:19:32;;;19833:36;19886:19;;23405:111:16::1;19438:473:32::0;23405:111:16::1;-1:-1:-1::0;;;;;23533:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;;:34;-1:-1:-1;23529:237:16::1;;23584:23;23590:7;23599;23584:5;:23::i;:::-;-1:-1:-1::0;;;;;23622:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;:34;;23649:7;;23622:23;:34:::1;::::0;23649:7;;23622:34:::1;:::i;:::-;::::0;;;-1:-1:-1;23529:237:16::1;::::0;-1:-1:-1;23529:237:16::1;;23689:23;23695:7;23704;23689:5;:23::i;:::-;-1:-1:-1::0;;;;;;23727:23:16::1;23753:1;23727:23:::0;;;:14:::1;:23;::::0;;;;:27;23211:562::o;12975:241::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;13090:1:16::1;13079:8;:12;;;13071:89;;;::::0;;-1:-1:-1;;;13071:89:16;;20118:2:32;13071:89:16::1;::::0;::::1;20100:21:32::0;20137:18;;;20130:30;;;;20196:34;20176:18;;;20169:62;20267:34;20247:18;;;20240:62;20319:19;;13071:89:16::1;19916:428:32::0;13071:89:16::1;-1:-1:-1::0;;;;;13171:26:16;;;::::1;;::::0;;;:15:::1;:26;::::0;;;;:37;;-1:-1:-1;;13171:37:16::1;;::::0;;::::1;::::0;;;::::1;::::0;;12975:241::o;2486:98:21:-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;2486:98;-1:-1:-1;;;2486:98:21:o;16012:346::-;-1:-1:-1;;;;;16114:19:21;;16106:68;;;;-1:-1:-1;;;16106:68:21;;20551:2:32;16106:68:21;;;20533:21:32;20590:2;20570:18;;;20563:30;20629:34;20609:18;;;20602:62;-1:-1:-1;;;20680:18:32;;;20673:34;20724:19;;16106:68:21;20349:400:32;16106:68:21;-1:-1:-1;;;;;16193:21:21;;16185:68;;;;-1:-1:-1;;;16185:68:21;;20956:2:32;16185:68:21;;;20938:21:32;20995:2;20975:18;;;20968:30;21034:34;21014:18;;;21007:62;-1:-1:-1;;;21085:18:32;;;21078:32;21127:19;;16185:68:21;20754:398:32;16185:68:21;-1:-1:-1;;;;;16266:18:21;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16318:32;;1319:25:32;;;16318:32:21;;1292:18:32;16318:32:21;;;;;;;;16012:346;;;:::o;7300:2624:16:-;7496:14;7532:8;11884:7;;;;;11813:86;7532:8;7531:9;:29;;;-1:-1:-1;;;;;;7544:16:16;;;;;;:9;:16;;;;;;;;7531:29;:47;;;-1:-1:-1;;;;;;7564:14:16;;;;;;:9;:14;;;;;;;;7531:47;:72;;;-1:-1:-1;7592:10:16;7582:21;;;;:9;:21;;;;;;;;7531:72;7523:140;;;;-1:-1:-1;;;7523:140:16;;21359:2:32;7523:140:16;;;21341:21:32;21398:2;21378:18;;;21371:30;21437:34;21417:18;;;21410:62;21508:25;21488:18;;;21481:53;21551:19;;7523:140:16;21157:419:32;7523:140:16;7702:7;7682:16;7692:5;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;7682:16:16;:27;;7674:82;;;;-1:-1:-1;;;7674:82:16;;21783:2:32;7674:82:16;;;21765:21:32;21822:2;21802:18;;;21795:30;21861:34;21841:18;;;21834:62;-1:-1:-1;;;21912:18:32;;;21905:40;21962:19;;7674:82:16;21581:406:32;7674:82:16;7785:1;7775:7;:11;7767:75;;;;-1:-1:-1;;;7767:75:16;;22194:2:32;7767:75:16;;;22176:21:32;22233:2;22213:18;;;22206:30;22272:34;22252:18;;;22245:62;-1:-1:-1;;;22323:18:32;;;22316:49;22382:19;;7767:75:16;21992:415:32;7767:75:16;-1:-1:-1;;;;;7926:14:16;;;;;;:9;:14;;;;;;;;7925:15;:36;;;;-1:-1:-1;;;;;;7945:16:16;;;;;;:9;:16;;;;;;;;7944:17;7925:36;:62;;;;-1:-1:-1;7976:10:16;7966:21;;;;:9;:21;;;;;;;;7965:22;7925:62;:88;;;;-1:-1:-1;;;;;;7991:22:16;;8008:4;7991:22;;7925:88;7921:1996;;;8056:7;8041:11;;:22;;8032:84;;;;-1:-1:-1;;;8032:84:16;;22614:2:32;8032:84:16;;;22596:21:32;22653:2;22633:18;;;22626:30;22692:34;22672:18;;;22665:62;-1:-1:-1;;;22743:18:32;;;22736:46;22799:19;;8032:84:16;22412:412:32;8032:84:16;-1:-1:-1;;;;;8141:16:16;;;;;;:9;:16;;;;;;;;8140:17;8131:74;;;;-1:-1:-1;;;8131:74:16;;23031:2:32;8131:74:16;;;23013:21:32;23070:2;23050:18;;;23043:30;23109:34;23089:18;;;23082:62;-1:-1:-1;;;23160:18:32;;;23153:41;23211:19;;8131:74:16;22829:407:32;8131:74:16;-1:-1:-1;;;;;8230:14:16;;;;;;:9;:14;;;;;;;;8229:15;8220:74;;;;-1:-1:-1;;;8220:74:16;;23443:2:32;8220:74:16;;;23425:21:32;23482:2;23462:18;;;23455:30;23521:34;23501:18;;;23494:62;-1:-1:-1;;;23572:18:32;;;23565:43;23625:19;;8220:74:16;23241:409:32;8220:74:16;-1:-1:-1;;;;;8386:20:16;;;;;;:13;:20;;;;;;;;:25;8382:109;;-1:-1:-1;;;;;;8443:20:16;;;;;;:13;:20;;;;;;;;8382:109;-1:-1:-1;;;;;8511:20:16;;;;;;:15;:20;;;;;;;;:25;8507:110;;-1:-1:-1;;;;;;8568:20:16;;;;;;:15;:20;;;;;;;;8507:110;8658:24;;;8633:12;8658:24;;;:14;:24;;;;;;8685:5;;8648:34;;:7;:34;:::i;:::-;:42;;;;:::i;:::-;8633:57;-1:-1:-1;8705:13:16;8721:17;8633:57;8721:7;:17;:::i;:::-;8705:33;-1:-1:-1;8785:7:16;8763:18;8705:33;8763:7;:18;:::i;:::-;:29;8755:83;;;;-1:-1:-1;;;8755:83:16;;24079:2:32;8755:83:16;;;24061:21:32;24118:2;24098:18;;;24091:30;24157:34;24137:18;;;24130:62;-1:-1:-1;;;24208:18:32;;;24201:39;24257:19;;8755:83:16;23877:405:32;8755:83:16;8985:8;:13;;8997:1;8985:13;;:33;;;;-1:-1:-1;9009:9:16;;-1:-1:-1;;;;;9002:16:16;;;9009:9;;9002:16;;8985:33;8981:181;;;9076:13;;9064:8;9047:14;9057:3;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;9047:14:16;:25;;;;:::i;:::-;:42;;9039:107;;;;-1:-1:-1;;;9039:107:16;;24489:2:32;9039:107:16;;;24471:21:32;24528:2;24508:18;;;24501:30;24567:34;24547:18;;;24540:62;-1:-1:-1;;;24618:18:32;;;24611:50;24678:19;;9039:107:16;24287:416:32;9039:107:16;9182:8;:13;;9194:1;9182:13;:24;;;;-1:-1:-1;9200:6:16;;;;9199:7;9182:24;9178:410;;;24131:4;9227:28;9978:18:21;;;;;;;;;;;9330:11:16;;9307:34;;9304:116;;;-1:-1:-1;9389:11:16;;9304:116;9468:23;;9444:20;:47;9440:133;;9516:37;9532:20;9516:15;:37::i;:::-;9208:380;9178:410;9604:37;9620:5;9627:3;9632:8;9604:15;:37::i;:::-;9708:46;9724:5;9739:4;9746:7;9708:15;:46::i;:::-;8015:1751;;7921:1996;;;9869:36;9885:5;9892:3;9897:7;9869:15;:36::i;:::-;7382:2542;7300:2624;;;:::o;4765:206:21:-;4851:7;4912:12;4904:6;;;;4896:29;;;;-1:-1:-1;;;4896:29:21;;;;;;;;:::i;:::-;-1:-1:-1;;;4947:5:21;;;4765:206::o;9932:362:16:-;6376:6;:13;;-1:-1:-1;;6376:13:16;6385:4;6376:13;;;:6;10041:40:::1;10059:21:::0;10041:17:::1;:40::i;:::-;10020:61:::0;-1:-1:-1;10098:14:16;;10094:193:::1;;10182:8;::::0;10172:50:::1;::::0;-1:-1:-1;;;10172:50:16;;::::1;::::0;::::1;1319:25:32::0;;;10182:8:16::1;::::0;;::::1;-1:-1:-1::0;;;;;10182:8:16::1;::::0;10172:38:::1;::::0;1292:18:32;;10172:50:16::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;10254:8:16::1;::::0;10242:33:::1;::::0;1319:25:32;;;10254:8:16::1;::::0;;::::1;-1:-1:-1::0;;;;;10254:8:16::1;::::0;-1:-1:-1;10242:33:16::1;::::0;-1:-1:-1;1307:2:32;1292:18;10242:33:16::1;;;;;;;10094:193;-1:-1:-1::0;;6412:6:16;:14;;-1:-1:-1;;6412:14:16;;;9932:362::o;14445:378:21:-;-1:-1:-1;;;;;14529:21:21;;14521:65;;;;-1:-1:-1;;;14521:65:21;;24910:2:32;14521:65:21;;;24892:21:32;24949:2;24929:18;;;24922:30;24988:33;24968:18;;;24961:61;25039:18;;14521:65:21;24708:355:32;14521:65:21;14676:12;;:24;;14693:6;14676:16;:24::i;:::-;14661:12;:39;-1:-1:-1;;;;;14732:18:21;;:9;:18;;;;;;;;;;;:30;;14755:6;14732:22;:30::i;:::-;-1:-1:-1;;;;;14711:18:21;;:9;:18;;;;;;;;;;;:51;;;;14778:37;;1319:25:32;;;14711:18:21;;:9;;14778:37;;1292:18:32;14778:37:21;;;;;;;;14445:378;;:::o;15156:418::-;-1:-1:-1;;;;;15240:21:21;;15232:67;;;;-1:-1:-1;;;15232:67:21;;25270:2:32;15232:67:21;;;25252:21:32;25309:2;25289:18;;;25282:30;25348:34;25328:18;;;25321:62;-1:-1:-1;;;25399:18:32;;;25392:31;25440:19;;15232:67:21;25068:397:32;15232:67:21;15395:68;15418:6;15395:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15395:18:21;;:9;:18;;;;;;;;;;;;:68;:22;:68::i;:::-;-1:-1:-1;;;;;15374:18:21;;:9;:18;;;;;;;;;;:89;15489:12;;:24;;15506:6;15489:16;:24::i;:::-;15474:12;:39;15529:37;;1319:25:32;;;15555:1:21;;-1:-1:-1;;;;;15529:37:21;;;;;1307:2:32;1292:18;15529:37:21;1173:177:32;2118:244:20;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;25672:2:32;2199:73:20::1;::::0;::::1;25654:21:32::0;25711:2;25691:18;;;25684:30;25750:34;25730:18;;;25723:62;-1:-1:-1;;;25801:18:32;;;25794:36;25847:19;;2199:73:20::1;25470:402:32::0;2199:73:20::1;2309:6;::::0;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6:::1;::::0;::::1;;::::0;2288:38:::1;::::0;;;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;2337:17:20;;::::1;;;-1:-1:-1::0;;;;;;2337:17:20;;::::1;::::0;;;::::1;::::0;;2118:244::o;13614:549:21:-;-1:-1:-1;;;;;13720:20:21;;13712:70;;;;-1:-1:-1;;;13712:70:21;;26079:2:32;13712:70:21;;;26061:21:32;26118:2;26098:18;;;26091:30;26157:34;26137:18;;;26130:62;-1:-1:-1;;;26208:18:32;;;26201:35;26253:19;;13712:70:21;25877:401:32;13712:70:21;-1:-1:-1;;;;;13801:23:21;;13793:71;;;;-1:-1:-1;;;13793:71:21;;26485:2:32;13793:71:21;;;26467:21:32;26524:2;26504:18;;;26497:30;26563:34;26543:18;;;26536:62;-1:-1:-1;;;26614:18:32;;;26607:33;26657:19;;13793:71:21;26283:399:32;13793:71:21;13967;13989:6;13967:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13967:17:21;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;13947:17:21;;;:9;:17;;;;;;;;;;;:91;;;;14072:20;;;;;;;:32;;14097:6;14072:24;:32::i;:::-;-1:-1:-1;;;;;14049:20:21;;;:9;:20;;;;;;;;;;;;:55;;;;14120:35;1319:25:32;;;14049:20:21;;14120:35;;;;;;1292:18:32;14120:35:21;1173:177:32;10302:833:16;10480:16;;;10494:1;10480:16;;;;;;;;10377:7;;;;10480:16;10494:1;10480:16;;;;;;;;;;-1:-1:-1;10480:16:16;10456:40;;10525:4;10507;10512:1;10507:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;10507:23:16;;;-1:-1:-1;;;;;10507:23:16;;;;;1289:42;-1:-1:-1;;;;;10551:37:16;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10541:4;10546:1;10541:7;;;;;;;;:::i;:::-;;;;;;:49;-1:-1:-1;;;;;10541:49:16;;;-1:-1:-1;;;;;10541:49:16;;;;;10603:68;10620:4;1289:42;10650:20;10603:8;:68::i;:::-;10711:112;;-1:-1:-1;;;10711:112:16;;10684:24;;1289:42;;10711:46;;:112;;10772:20;;10808:4;;10711:112;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10711:112:16;;;;;;;;;;;;:::i;:::-;11041:8;;10684:139;;-1:-1:-1;1289:42:16;;10862:86;;10963:20;;10998:1;;11014:4;;11041:8;;;-1:-1:-1;;;;;11041:8:16;11065:21;:15;11083:3;11065:21;:::i;:::-;10862:235;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11117:7;11125:1;11117:10;;;;;;;;:::i;:::-;;;;;;;11110:17;;;;10302:833;;;:::o;2867:98:21:-;2925:7;2952:5;2956:1;2952;:5;:::i;14:131:32:-;-1:-1:-1;;;;;89:31:32;;79:42;;69:70;;135:1;132;125:12;150:416;215:6;223;276:2;264:9;255:7;251:23;247:32;244:52;;;292:1;289;282:12;244:52;331:9;318:23;350:31;375:5;350:31;:::i;:::-;400:5;-1:-1:-1;457:2:32;442:18;;429:32;499:15;;492:23;480:36;;470:64;;530:1;527;520:12;470:64;553:7;543:17;;;150:416;;;;;:::o;571:597::-;683:4;712:2;741;730:9;723:21;773:6;767:13;816:6;811:2;800:9;796:18;789:34;841:1;851:140;865:6;862:1;859:13;851:140;;;960:14;;;956:23;;950:30;926:17;;;945:2;922:26;915:66;880:10;;851:140;;;1009:6;1006:1;1003:13;1000:91;;;1079:1;1074:2;1065:6;1054:9;1050:22;1046:31;1039:42;1000:91;-1:-1:-1;1152:2:32;1131:15;-1:-1:-1;;1127:29:32;1112:45;;;;1159:2;1108:54;;571:597;-1:-1:-1;;;571:597:32:o;1355:315::-;1423:6;1431;1484:2;1472:9;1463:7;1459:23;1455:32;1452:52;;;1500:1;1497;1490:12;1452:52;1539:9;1526:23;1558:31;1583:5;1558:31;:::i;:::-;1608:5;1660:2;1645:18;;;;1632:32;;-1:-1:-1;;;1355:315:32:o;1867:156::-;1933:20;;1993:4;1982:16;;1972:27;;1962:55;;2013:1;2010;2003:12;1962:55;1867:156;;;:::o;2028:182::-;2085:6;2138:2;2126:9;2117:7;2113:23;2109:32;2106:52;;;2154:1;2151;2144:12;2106:52;2177:27;2194:9;2177:27;:::i;2215:456::-;2292:6;2300;2308;2361:2;2349:9;2340:7;2336:23;2332:32;2329:52;;;2377:1;2374;2367:12;2329:52;2416:9;2403:23;2435:31;2460:5;2435:31;:::i;:::-;2485:5;-1:-1:-1;2542:2:32;2527:18;;2514:32;2555:33;2514:32;2555:33;:::i;:::-;2215:456;;2607:7;;-1:-1:-1;;;2661:2:32;2646:18;;;;2633:32;;2215:456::o;2676:180::-;2735:6;2788:2;2776:9;2767:7;2763:23;2759:32;2756:52;;;2804:1;2801;2794:12;2756:52;-1:-1:-1;2827:23:32;;2676:180;-1:-1:-1;2676:180:32:o;3258:250::-;3324:6;3332;3385:2;3373:9;3364:7;3360:23;3356:32;3353:52;;;3401:1;3398;3391:12;3353:52;3424:27;3441:9;3424:27;:::i;3513:247::-;3572:6;3625:2;3613:9;3604:7;3600:23;3596:32;3593:52;;;3641:1;3638;3631:12;3593:52;3680:9;3667:23;3699:31;3724:5;3699:31;:::i;3765:317::-;3831:6;3839;3892:2;3880:9;3871:7;3867:23;3863:32;3860:52;;;3908:1;3905;3898:12;3860:52;3947:9;3934:23;3966:31;3991:5;3966:31;:::i;:::-;4016:5;-1:-1:-1;4040:36:32;4072:2;4057:18;;4040:36;:::i;:::-;4030:46;;3765:317;;;;;:::o;4483:388::-;4551:6;4559;4612:2;4600:9;4591:7;4587:23;4583:32;4580:52;;;4628:1;4625;4618:12;4580:52;4667:9;4654:23;4686:31;4711:5;4686:31;:::i;:::-;4736:5;-1:-1:-1;4793:2:32;4778:18;;4765:32;4806:33;4765:32;4806:33;:::i;4876:356::-;5078:2;5060:21;;;5097:18;;;5090:30;5156:34;5151:2;5136:18;;5129:62;5223:2;5208:18;;4876:356::o;5237:380::-;5316:1;5312:12;;;;5359;;;5380:61;;5434:4;5426:6;5422:17;5412:27;;5380:61;5487:2;5479:6;5476:14;5456:18;5453:38;5450:161;;5533:10;5528:3;5524:20;5521:1;5514:31;5568:4;5565:1;5558:15;5596:4;5593:1;5586:15;5450:161;;5237:380;;;:::o;6054:127::-;6115:10;6110:3;6106:20;6103:1;6096:31;6146:4;6143:1;6136:15;6170:4;6167:1;6160:15;6186:422;6275:1;6318:5;6275:1;6332:270;6353:7;6343:8;6340:21;6332:270;;;6412:4;6408:1;6404:6;6400:17;6394:4;6391:27;6388:53;;;6421:18;;:::i;:::-;6471:7;6461:8;6457:22;6454:55;;;6491:16;;;;6454:55;6570:22;;;;6530:15;;;;6332:270;;;6336:3;6186:422;;;;;:::o;6613:806::-;6662:5;6692:8;6682:80;;-1:-1:-1;6733:1:32;6747:5;;6682:80;6781:4;6771:76;;-1:-1:-1;6818:1:32;6832:5;;6771:76;6863:4;6881:1;6876:59;;;;6949:1;6944:130;;;;6856:218;;6876:59;6906:1;6897:10;;6920:5;;;6944:130;6981:3;6971:8;6968:17;6965:43;;;6988:18;;:::i;:::-;-1:-1:-1;;7044:1:32;7030:16;;7059:5;;6856:218;;7158:2;7148:8;7145:16;7139:3;7133:4;7130:13;7126:36;7120:2;7110:8;7107:16;7102:2;7096:4;7093:12;7089:35;7086:77;7083:159;;;-1:-1:-1;7195:19:32;;;7227:5;;7083:159;7274:34;7299:8;7293:4;7274:34;:::i;:::-;7344:6;7340:1;7336:6;7332:19;7323:7;7320:32;7317:58;;;7355:18;;:::i;:::-;7393:20;;6613:806;-1:-1:-1;;;6613:806:32:o;7424:140::-;7482:5;7511:47;7552:4;7542:8;7538:19;7532:4;7511:47;:::i;7569:168::-;7609:7;7675:1;7671;7667:6;7663:14;7660:1;7657:21;7652:1;7645:9;7638:17;7634:45;7631:71;;;7682:18;;:::i;:::-;-1:-1:-1;7722:9:32;;7569:168::o;8172:425::-;8374:2;8356:21;;;8413:2;8393:18;;;8386:30;8452:34;8447:2;8432:18;;8425:62;8523:31;8518:2;8503:18;;8496:59;8587:3;8572:19;;8172:425::o;11636:184::-;11706:6;11759:2;11747:9;11738:7;11734:23;11730:32;11727:52;;;11775:1;11772;11765:12;11727:52;-1:-1:-1;11798:16:32;;11636:184;-1:-1:-1;11636:184:32:o;12997:128::-;13037:3;13068:1;13064:6;13061:1;13058:13;13055:39;;;13074:18;;:::i;:::-;-1:-1:-1;13110:9:32;;12997:128::o;13130:125::-;13170:4;13198:1;13195;13192:8;13189:34;;;13203:18;;:::i;:::-;-1:-1:-1;13240:9:32;;13130:125::o;23655:217::-;23695:1;23721;23711:132;;23765:10;23760:3;23756:20;23753:1;23746:31;23800:4;23797:1;23790:15;23828:4;23825:1;23818:15;23711:132;-1:-1:-1;23857:9:32;;23655:217::o;26687:127::-;26748:10;26743:3;26739:20;26736:1;26729:31;26779:4;26776:1;26769:15;26803:4;26800:1;26793:15;26819:127;26880:10;26875:3;26871:20;26868:1;26861:31;26911:4;26908:1;26901:15;26935:4;26932:1;26925:15;26951:251;27021:6;27074:2;27062:9;27053:7;27049:23;27045:32;27042:52;;;27090:1;27087;27080:12;27042:52;27122:9;27116:16;27141:31;27166:5;27141:31;:::i;27207:461::-;27260:3;27298:5;27292:12;27325:6;27320:3;27313:19;27351:4;27380:2;27375:3;27371:12;27364:19;;27417:2;27410:5;27406:14;27438:1;27448:195;27462:6;27459:1;27456:13;27448:195;;;27527:13;;-1:-1:-1;;;;;27523:39:32;27511:52;;27583:12;;;;27618:15;;;;27559:1;27477:9;27448:195;;;-1:-1:-1;27659:3:32;;27207:461;-1:-1:-1;;;;;27207:461:32:o;27673:332::-;27880:6;27869:9;27862:25;27923:2;27918;27907:9;27903:18;27896:30;27843:4;27943:56;27995:2;27984:9;27980:18;27972:6;27943:56;:::i;:::-;27935:64;27673:332;-1:-1:-1;;;;27673:332:32:o;28010:1105::-;28105:6;28136:2;28179;28167:9;28158:7;28154:23;28150:32;28147:52;;;28195:1;28192;28185:12;28147:52;28228:9;28222:16;28257:18;28298:2;28290:6;28287:14;28284:34;;;28314:1;28311;28304:12;28284:34;28352:6;28341:9;28337:22;28327:32;;28397:7;28390:4;28386:2;28382:13;28378:27;28368:55;;28419:1;28416;28409:12;28368:55;28448:2;28442:9;28470:2;28466;28463:10;28460:36;;;28476:18;;:::i;:::-;28522:2;28519:1;28515:10;28554:2;28548:9;28617:2;28613:7;28608:2;28604;28600:11;28596:25;28588:6;28584:38;28672:6;28660:10;28657:22;28652:2;28640:10;28637:18;28634:46;28631:72;;;28683:18;;:::i;:::-;28719:2;28712:22;28769:18;;;28803:15;;;;-1:-1:-1;28845:11:32;;;28841:20;;;28873:19;;;28870:39;;;28905:1;28902;28895:12;28870:39;28929:11;;;;28949:135;28965:6;28960:3;28957:15;28949:135;;;29031:10;;29019:23;;28982:12;;;;29062;;;;28949:135;;;29103:6;28010:1105;-1:-1:-1;;;;;;;;28010:1105:32:o;29120:582::-;29419:6;29408:9;29401:25;29462:6;29457:2;29446:9;29442:18;29435:34;29505:3;29500:2;29489:9;29485:18;29478:31;29382:4;29526:57;29578:3;29567:9;29563:19;29555:6;29526:57;:::i;:::-;-1:-1:-1;;;;;29619:32:32;;;;29614:2;29599:18;;29592:60;-1:-1:-1;29683:3:32;29668:19;29661:35;29518:65;29120:582;-1:-1:-1;;;29120:582:32:o", + "linkReferences": {}, + "immutableReferences": { + "25569": [ + { + "start": 2018, + "length": 32 + }, + { + "start": 7305, + "length": 32 + } + ] + } + }, + "methodIdentifiers": { + "UNISWAP_V2_PAIR()": "f40acc3d", + "UNIV2_ROUTER()": "676d3563", + "adjustBasisPointsTax(uint8,uint256)": "5376b092", + "allowance(address,address)": "dd62ed3e", + "approve(address,uint256)": "095ea7b3", + "authorized(address)": "b9181611", + "balanceOf(address)": "70a08231", + "basisPointsTax(uint8)": "97a84f85", + "blacklist(address)": "f9f92be4", + "burn(address,uint256)": "9dc29fac", + "decimals()": "313ce567", + "decreaseAllowance(address,uint256)": "a457c2d7", + "depositor()": "c7c4ff46", + "distributeRoyaltiesToTreasury()": "3b6c0334", + "getContractTokenBalance()": "317d9453", + "getIndustryTokens(address)": "b5b44106", + "increaseAllowance(address,uint256)": "39509351", + "industryBurn(address,uint256)": "f5423c89", + "industryMint(address,uint256)": "8f3f5254", + "industryTokens(address)": "f9079b73", + "lifetimeIndustryTokens(address)": "fb8f3cc8", + "lock(uint256)": "dd467064", + "maxContractTokenBalance()": "090f215c", + "maxTxAmount()": "8c0b5e22", + "maxWalletSize()": "8f3fa860", + "mint(address,uint256)": "40c10f19", + "modifyBlacklist(address,bool)": "cc6df138", + "modifyWhitelist(address,bool)": "060d206e", + "name()": "06fdde03", + "owner()": "8da5cb5b", + "pause()": "8456cb59", + "paused()": "5c975abb", + "permanentlyRemoveTaxes(uint256)": "c4bb8cbe", + "receiverTaxType(address)": "9af98541", + "renounceOwnership()": "715018a6", + "senderTaxType(address)": "a3504e7c", + "setDepositor(address)": "f2c098b7", + "setTreasury(address)": "f0f44260", + "setVesting(address)": "6f6ff3bc", + "symbol()": "95d89b41", + "taxesAccrued(uint8)": "166cc492", + "taxesRemoved()": "f2b6b501", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd", + "transferOwnership(address)": "f2fde38b", + "treasury()": "61d027b3", + "unpause()": "3f4ba83a", + "updateAuthorizedList(address,bool)": "6ef8834a", + "updateMaxContractTokenBalance(uint256)": "a97ed4d2", + "updateMaxTxAmount(uint256)": "6256d181", + "updateMaxWalletSize(uint256)": "24887e80", + "updateReceiverTaxType(address,uint8)": "f7808060", + "updateSenderTaxType(address,uint8)": "7097f793", + "vesting()": "44c63eec", + "whitelist(address)": "9b19251a" + }, + "ast": { + "absolutePath": "src/TaxToken.sol", + "id": 27007, + "exportedSymbols": { + "Context": [ + 28107 + ], + "ERC20": [ + 29066 + ], + "IERC20": [ + 29143 + ], + "ITreasury": [ + 29867 + ], + "IUniswapV2Factory": [ + 29214 + ], + "IUniswapV2Router02": [ + 29849 + ], + "IVesting": [ + 29873 + ], + "Ownable": [ + 28255 + ], + "TaxToken": [ + 27006 + ] + }, + "nodeType": "SourceUnit", + "src": "32:25272:16", + "nodes": [ + { + "id": 25533, + "nodeType": "PragmaDirective", + "src": "32:23:16", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 25535, + "nodeType": "ImportDirective", + "src": "59:49:16", + "absolutePath": "src/interfaces/IERC20.sol", + "file": "./interfaces/IERC20.sol", + "nameLocation": "-1:-1:-1", + "scope": 27007, + "sourceUnit": 29152, + "symbolAliases": [ + { + "foreign": { + "id": 25534, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "68:6:16", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 25538, + "nodeType": "ImportDirective", + "src": "110:76:16", + "absolutePath": "src/interfaces/InterfacesAggregated.sol", + "file": "./interfaces/InterfacesAggregated.sol", + "nameLocation": "-1:-1:-1", + "scope": 27007, + "sourceUnit": 29874, + "symbolAliases": [ + { + "foreign": { + "id": 25536, + "name": "ITreasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29867, + "src": "119:9:16", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 25537, + "name": "IVesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29873, + "src": "130:8:16", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 25540, + "nodeType": "ImportDirective", + "src": "188:71:16", + "absolutePath": "src/interfaces/IUniswapV2Factory.sol", + "file": "./interfaces/IUniswapV2Factory.sol", + "nameLocation": "-1:-1:-1", + "scope": 27007, + "sourceUnit": 29215, + "symbolAliases": [ + { + "foreign": { + "id": 25539, + "name": "IUniswapV2Factory", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29214, + "src": "197:17:16", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 25542, + "nodeType": "ImportDirective", + "src": "261:71:16", + "absolutePath": "src/interfaces/IUniswapV2Router.sol", + "file": "./interfaces/IUniswapV2Router.sol", + "nameLocation": "-1:-1:-1", + "scope": 27007, + "sourceUnit": 29850, + "symbolAliases": [ + { + "foreign": { + "id": 25541, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "270:18:16", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 25544, + "nodeType": "ImportDirective", + "src": "334:47:16", + "absolutePath": "src/interfaces/ERC20.sol", + "file": "./interfaces/ERC20.sol", + "nameLocation": "-1:-1:-1", + "scope": 27007, + "sourceUnit": 29067, + "symbolAliases": [ + { + "foreign": { + "id": 25543, + "name": "ERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29066, + "src": "343:5:16", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 25545, + "nodeType": "ImportDirective", + "src": "383:34:16", + "absolutePath": "src/extensions/Ownable.sol", + "file": "./extensions/Ownable.sol", + "nameLocation": "-1:-1:-1", + "scope": 27007, + "sourceUnit": 28256, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 27006, + "nodeType": "ContractDefinition", + "src": "828:24476:16", + "nodes": [ + { + "id": 25552, + "nodeType": "VariableDeclaration", + "src": "968:20:16", + "constant": false, + "mutability": "mutable", + "name": "_totalSupply", + "nameLocation": "976:12:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25551, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "968:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "id": 25554, + "nodeType": "VariableDeclaration", + "src": "1027:20:16", + "constant": false, + "mutability": "mutable", + "name": "_name", + "nameLocation": "1042:5:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 25553, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1027:6:16", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "id": 25556, + "nodeType": "VariableDeclaration", + "src": "1054:22:16", + "constant": false, + "mutability": "mutable", + "name": "_symbol", + "nameLocation": "1069:7:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 25555, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1054:6:16", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "id": 25558, + "nodeType": "VariableDeclaration", + "src": "1114:20:16", + "constant": false, + "mutability": "mutable", + "name": "_paused", + "nameLocation": "1127:7:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 25557, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1114:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "private" + }, + { + "id": 25560, + "nodeType": "VariableDeclaration", + "src": "1158:23:16", + "constant": false, + "functionSelector": "61d027b3", + "mutability": "mutable", + "name": "treasury", + "nameLocation": "1173:8:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25559, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1158:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 25562, + "nodeType": "VariableDeclaration", + "src": "1188:22:16", + "constant": false, + "functionSelector": "44c63eec", + "mutability": "mutable", + "name": "vesting", + "nameLocation": "1203:7:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25561, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1188:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 25564, + "nodeType": "VariableDeclaration", + "src": "1217:24:16", + "constant": false, + "functionSelector": "c7c4ff46", + "mutability": "mutable", + "name": "depositor", + "nameLocation": "1232:9:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25563, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1217:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 25567, + "nodeType": "VariableDeclaration", + "src": "1250:81:16", + "constant": true, + "functionSelector": "676d3563", + "mutability": "constant", + "name": "UNIV2_ROUTER", + "nameLocation": "1274:12:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25565, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1250:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", + "id": 25566, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1289:42:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D" + }, + "visibility": "public" + }, + { + "id": 25569, + "nodeType": "VariableDeclaration", + "src": "1338:40:16", + "constant": false, + "functionSelector": "f40acc3d", + "mutability": "immutable", + "name": "UNISWAP_V2_PAIR", + "nameLocation": "1363:15:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25568, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1338:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 25571, + "nodeType": "VariableDeclaration", + "src": "1387:24:16", + "constant": false, + "functionSelector": "f2b6b501", + "mutability": "mutable", + "name": "taxesRemoved", + "nameLocation": "1399:12:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 25570, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1387:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "public" + }, + { + "id": 25574, + "nodeType": "VariableDeclaration", + "src": "1513:28:16", + "constant": false, + "documentation": { + "id": 25572, + "nodeType": "StructuredDocumentation", + "src": "1415:92:16", + "text": "@dev Once true, taxes are permanently set to 0 and CAN NOT be increased in the future." + }, + "functionSelector": "8f3fa860", + "mutability": "mutable", + "name": "maxWalletSize", + "nameLocation": "1528:13:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25573, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1513:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "id": 25576, + "nodeType": "VariableDeclaration", + "src": "1548:26:16", + "constant": false, + "functionSelector": "8c0b5e22", + "mutability": "mutable", + "name": "maxTxAmount", + "nameLocation": "1563:11:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25575, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1548:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "id": 25578, + "nodeType": "VariableDeclaration", + "src": "1583:38:16", + "constant": false, + "functionSelector": "090f215c", + "mutability": "mutable", + "name": "maxContractTokenBalance", + "nameLocation": "1598:23:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25577, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1583:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "id": 25581, + "nodeType": "VariableDeclaration", + "src": "1628:19:16", + "constant": false, + "mutability": "mutable", + "name": "inSwap", + "nameLocation": "1633:6:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 25579, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1628:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": { + "hexValue": "66616c7365", + "id": 25580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1642:5:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "visibility": "internal" + }, + { + "id": 25585, + "nodeType": "VariableDeclaration", + "src": "1680:41:16", + "constant": false, + "functionSelector": "f9f92be4", + "mutability": "mutable", + "name": "blacklist", + "nameLocation": "1712:9:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 25584, + "keyType": { + "id": 25582, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1688:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1680:24:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueType": { + "id": 25583, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1699:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "public" + }, + { + "id": 25590, + "nodeType": "VariableDeclaration", + "src": "1834:41:16", + "constant": false, + "documentation": { + "id": 25586, + "nodeType": "StructuredDocumentation", + "src": "1740:88:16", + "text": "@dev If an address is blacklisted, they cannot perform transfer() or transferFrom()." + }, + "functionSelector": "9b19251a", + "mutability": "mutable", + "name": "whitelist", + "nameLocation": "1866:9:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 25589, + "keyType": { + "id": 25587, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1842:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1834:24:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueType": { + "id": 25588, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1853:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "public" + }, + { + "id": 25595, + "nodeType": "VariableDeclaration", + "src": "1980:46:16", + "constant": false, + "documentation": { + "id": 25591, + "nodeType": "StructuredDocumentation", + "src": "1894:80:16", + "text": "@dev Any transfer that involves a whitelisted address, will not incur a tax." + }, + "functionSelector": "a3504e7c", + "mutability": "mutable", + "name": "senderTaxType", + "nameLocation": "2013:13:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + }, + "typeName": { + "id": 25594, + "keyType": { + "id": 25592, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1988:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1980:25:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + }, + "valueType": { + "id": 25593, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1999:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + }, + "visibility": "public" + }, + { + "id": 25600, + "nodeType": "VariableDeclaration", + "src": "2109:48:16", + "constant": false, + "documentation": { + "id": 25596, + "nodeType": "StructuredDocumentation", + "src": "2040:63:16", + "text": "@dev Identifies tax type for msg.sender of transfer() call." + }, + "functionSelector": "9af98541", + "mutability": "mutable", + "name": "receiverTaxType", + "nameLocation": "2142:15:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + }, + "typeName": { + "id": 25599, + "keyType": { + "id": 25597, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2117:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "2109:25:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + }, + "valueType": { + "id": 25598, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "2128:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + }, + "visibility": "public" + }, + { + "id": 25605, + "nodeType": "VariableDeclaration", + "src": "2231:44:16", + "constant": false, + "documentation": { + "id": 25601, + "nodeType": "StructuredDocumentation", + "src": "2169:56:16", + "text": "@dev Identifies tax type for _to of transfer() call." + }, + "functionSelector": "97a84f85", + "mutability": "mutable", + "name": "basisPointsTax", + "nameLocation": "2261:14:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + }, + "typeName": { + "id": 25604, + "keyType": { + "id": 25602, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "2239:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Mapping", + "src": "2231:22:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + }, + "valueType": { + "id": 25603, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2248:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "id": 25610, + "nodeType": "VariableDeclaration", + "src": "2354:42:16", + "constant": false, + "documentation": { + "id": 25606, + "nodeType": "StructuredDocumentation", + "src": "2291:57:16", + "text": "@dev Mapping between taxType and basisPoints (taxed)." + }, + "functionSelector": "b9181611", + "mutability": "mutable", + "name": "authorized", + "nameLocation": "2386:10:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 25609, + "keyType": { + "id": 25607, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2362:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "2354:24:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueType": { + "id": 25608, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2373:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "public" + }, + { + "id": 25615, + "nodeType": "VariableDeclaration", + "src": "2496:45:16", + "constant": false, + "documentation": { + "id": 25611, + "nodeType": "StructuredDocumentation", + "src": "2414:76:16", + "text": "@dev Mapping of which wallets are authorized to call specific functions." + }, + "functionSelector": "166cc492", + "mutability": "mutable", + "name": "taxesAccrued", + "nameLocation": "2529:12:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + }, + "typeName": { + "id": 25614, + "keyType": { + "id": 25612, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "2504:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Mapping", + "src": "2496:25:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + }, + "valueType": { + "id": 25613, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2513:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "id": 25619, + "nodeType": "VariableDeclaration", + "src": "2550:46:16", + "constant": false, + "functionSelector": "f9079b73", + "mutability": "mutable", + "name": "industryTokens", + "nameLocation": "2582:14:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 25618, + "keyType": { + "id": 25616, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2558:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "2550:24:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 25617, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2569:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "id": 25624, + "nodeType": "VariableDeclaration", + "src": "2700:54:16", + "constant": false, + "documentation": { + "id": 25620, + "nodeType": "StructuredDocumentation", + "src": "2610:84:16", + "text": "@dev Mapping of how many locked tokens exist in a wallet (In 18 decimal format)." + }, + "functionSelector": "fb8f3cc8", + "mutability": "mutable", + "name": "lifetimeIndustryTokens", + "nameLocation": "2732:22:16", + "scope": 27006, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 25623, + "keyType": { + "id": 25621, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2708:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "2700:24:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 25622, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2719:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "id": 25763, + "nodeType": "FunctionDefinition", + "src": "3746:1101:16", + "body": { + "id": 25762, + "nodeType": "Block", + "src": "4002:845:16", + "statements": [ + { + "expression": { + "id": 25646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25644, + "name": "_paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25558, + "src": "4013:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 25645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4023:5:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "4013:15:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 25647, + "nodeType": "ExpressionStatement", + "src": "4013:15:16" + }, + { + "expression": { + "arguments": [ + { + "id": 25649, + "name": "decimalsInput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25633, + "src": "4054:13:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 25648, + "name": "_setupDecimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29054, + "src": "4039:14:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint8_$returns$__$", + "typeString": "function (uint8)" + } + }, + "id": 25650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4039:29:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25651, + "nodeType": "ExpressionStatement", + "src": "4039:29:16" + }, + { + "expression": { + "id": 25660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25652, + "name": "_totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25552, + "src": "4079:12:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25653, + "name": "totalSupplyInput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25627, + "src": "4094:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 25654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4114:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25655, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "4120:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 25656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4120:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "4114:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 25658, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4113:18:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4094:37:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4079:52:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 25661, + "nodeType": "ExpressionStatement", + "src": "4079:52:16" + }, + { + "expression": { + "id": 25681, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25662, + "name": "UNISWAP_V2_PAIR", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25569, + "src": "4198:15:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 25673, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "4321:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 25672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4313:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 25671, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4313:7:16", + "typeDescriptions": {} + } + }, + "id": 25674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4313:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 25676, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25567, + "src": "4347:12:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 25675, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "4328:18:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 25677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4328:32:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 25678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "WETH", + "nodeType": "MemberAccess", + "referencedDeclaration": 29468, + "src": "4328:37:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", + "typeString": "function () pure external returns (address)" + } + }, + "id": 25679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4328:39:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 25665, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25567, + "src": "4267:12:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 25664, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "4248:18:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 25666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4248:32:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 25667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "factory", + "nodeType": "MemberAccess", + "referencedDeclaration": 29463, + "src": "4248:40:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", + "typeString": "function () pure external returns (address)" + } + }, + "id": 25668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4248:42:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 25663, + "name": "IUniswapV2Factory", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29214, + "src": "4216:17:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Factory_$29214_$", + "typeString": "type(contract IUniswapV2Factory)" + } + }, + "id": 25669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4216:85:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Factory_$29214", + "typeString": "contract IUniswapV2Factory" + } + }, + "id": 25670, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "createPair", + "nodeType": "MemberAccess", + "referencedDeclaration": 29203, + "src": "4216:96:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_address_$", + "typeString": "function (address,address) external returns (address)" + } + }, + "id": 25680, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4216:152:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4198:170:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 25682, + "nodeType": "ExpressionStatement", + "src": "4198:170:16" + }, + { + "expression": { + "id": 25687, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 25683, + "name": "senderTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25595, + "src": "4382:13:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 25685, + "indexExpression": { + "id": 25684, + "name": "UNISWAP_V2_PAIR", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25569, + "src": "4396:15:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4382:30:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "31", + "id": 25686, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4415:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "4382:34:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 25688, + "nodeType": "ExpressionStatement", + "src": "4382:34:16" + }, + { + "expression": { + "id": 25693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 25689, + "name": "receiverTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25600, + "src": "4427:15:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 25691, + "indexExpression": { + "id": 25690, + "name": "UNISWAP_V2_PAIR", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25569, + "src": "4443:15:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4427:32:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "32", + "id": 25692, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4462:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "4427:36:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 25694, + "nodeType": "ExpressionStatement", + "src": "4427:36:16" + }, + { + "expression": { + "id": 25703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25695, + "name": "maxWalletSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25574, + "src": "4476:13:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25702, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25696, + "name": "maxWalletSizeInput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25635, + "src": "4492:18:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 25697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4514:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25698, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "4520:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 25699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4520:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "4514:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 25701, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4513:18:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4492:39:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4476:55:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 25704, + "nodeType": "ExpressionStatement", + "src": "4476:55:16" + }, + { + "expression": { + "id": 25713, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25705, + "name": "maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25576, + "src": "4542:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25706, + "name": "maxTxAmountInput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25637, + "src": "4556:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 25707, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4576:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25708, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "4582:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 25709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4582:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "4576:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 25711, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4575:18:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4556:37:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4542:51:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 25714, + "nodeType": "ExpressionStatement", + "src": "4542:51:16" + }, + { + "expression": { + "id": 25723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25715, + "name": "maxContractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25578, + "src": "4606:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 25716, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4632:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 25717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4637:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25718, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "4643:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 25719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4643:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "4637:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 25721, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4636:18:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4632:22:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4606:48:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 25724, + "nodeType": "ExpressionStatement", + "src": "4606:48:16" + }, + { + "expression": { + "id": 25732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 25725, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "4667:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25730, + "indexExpression": { + "arguments": [ + { + "id": 25728, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "4685:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 25727, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4677:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 25726, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4677:7:16", + "typeDescriptions": {} + } + }, + "id": 25729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4677:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4667:24:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 25731, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4694:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4667:31:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 25733, + "nodeType": "ExpressionStatement", + "src": "4667:31:16" + }, + { + "expression": { + "id": 25741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 25734, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "4709:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25739, + "indexExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 25737, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4727:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 25736, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4719:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 25735, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4719:7:16", + "typeDescriptions": {} + } + }, + "id": 25738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4719:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4709:21:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 25740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4733:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4709:28:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 25742, + "nodeType": "ExpressionStatement", + "src": "4709:28:16" + }, + { + "expression": { + "id": 25748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 25743, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "4748:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25746, + "indexExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25744, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28156, + "src": "4758:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 25745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4758:7:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4748:18:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 25747, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4769:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4748:25:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 25749, + "nodeType": "ExpressionStatement", + "src": "4748:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25751, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28156, + "src": "4792:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 25752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4792:7:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25753, + "name": "totalSupplyInput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25627, + "src": "4801:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 25754, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4821:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25755, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "4827:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 25756, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4827:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "4821:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 25758, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4820:18:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4801:37:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 25750, + "name": "_mint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28942, + "src": "4786:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 25760, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4786:53:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25761, + "nodeType": "ExpressionStatement", + "src": "4786:53:16" + } + ] + }, + "documentation": { + "id": 25625, + "nodeType": "StructuredDocumentation", + "src": "2918:822:16", + "text": "@notice Initializes the TaxToken.\n @dev _paused - ERC20 Pausable global state variable, initial state is not paused (\"unpaused\").\n @dev The \"owner\" is the \"admin\" of this contract.\n @dev Initial liquidity, allocated entirely to \"owner\".\n @param totalSupplyInput The total supply of this token (this value is multipled by 10**decimals in constructor).\n @param nameInput The name of this token.\n @param symbolInput The symbol of this token.\n @param decimalsInput The decimal precision of this token.\n @param maxWalletSizeInput The maximum wallet size (this value is multipled by 10**decimals in constructor).\n @param maxTxAmountInput The maximum tx size (this value is multipled by 10**decimals in constructor)." + }, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "id": 25640, + "name": "nameInput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25629, + "src": "3978:9:16", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 25641, + "name": "symbolInput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25631, + "src": "3989:11:16", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "id": 25642, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 25639, + "name": "ERC20", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29066, + "src": "3972:5:16" + }, + "nodeType": "ModifierInvocation", + "src": "3972:29:16" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "parameters": { + "id": 25638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25627, + "mutability": "mutable", + "name": "totalSupplyInput", + "nameLocation": "3773:16:16", + "nodeType": "VariableDeclaration", + "scope": 25763, + "src": "3768:21:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25626, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3768:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25629, + "mutability": "mutable", + "name": "nameInput", + "nameLocation": "3815:9:16", + "nodeType": "VariableDeclaration", + "scope": 25763, + "src": "3801:23:16", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 25628, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3801:6:16", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25631, + "mutability": "mutable", + "name": "symbolInput", + "nameLocation": "3850:11:16", + "nodeType": "VariableDeclaration", + "scope": 25763, + "src": "3836:25:16", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 25630, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3836:6:16", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25633, + "mutability": "mutable", + "name": "decimalsInput", + "nameLocation": "3879:13:16", + "nodeType": "VariableDeclaration", + "scope": 25763, + "src": "3873:19:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 25632, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "3873:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25635, + "mutability": "mutable", + "name": "maxWalletSizeInput", + "nameLocation": "3911:18:16", + "nodeType": "VariableDeclaration", + "scope": 25763, + "src": "3903:26:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25634, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3903:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25637, + "mutability": "mutable", + "name": "maxTxAmountInput", + "nameLocation": "3948:16:16", + "nodeType": "VariableDeclaration", + "scope": 25763, + "src": "3940:24:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25636, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3940:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3757:214:16" + }, + "returnParameters": { + "id": 25643, + "nodeType": "ParameterList", + "parameters": [], + "src": "4002:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 25781, + "nodeType": "ModifierDefinition", + "src": "4998:169:16", + "body": { + "id": 25780, + "nodeType": "Block", + "src": "5035:132:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "5054:9:16", + "subExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25769, + "name": "paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26320, + "src": "5055:6:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 25770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5055:8:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25772, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "5067:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25774, + "indexExpression": { + "id": 25773, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25766, + "src": "5077:1:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5067:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5054:25:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e6928292c20436f6e74726163742069732063757272656e746c79207061757365642e", + "id": 25776, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5081:65:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3c39f80439265a6a4f74c8fe1ccfd8d66c6c16f1d625996d7c17857436eb4e95", + "typeString": "literal_string \"TaxToken.sol::whenNotPausedUni(), Contract is currently paused.\"" + }, + "value": "TaxToken.sol::whenNotPausedUni(), Contract is currently paused." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3c39f80439265a6a4f74c8fe1ccfd8d66c6c16f1d625996d7c17857436eb4e95", + "typeString": "literal_string \"TaxToken.sol::whenNotPausedUni(), Contract is currently paused.\"" + } + ], + "id": 25768, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5046:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5046:101:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25778, + "nodeType": "ExpressionStatement", + "src": "5046:101:16" + }, + { + "id": 25779, + "nodeType": "PlaceholderStatement", + "src": "5158:1:16" + } + ] + }, + "documentation": { + "id": 25764, + "nodeType": "StructuredDocumentation", + "src": "4914:78:16", + "text": "@dev whenNotPausedUni() is used if the contract MUST be paused (\"paused\")." + }, + "name": "whenNotPausedUni", + "nameLocation": "5007:16:16", + "parameters": { + "id": 25767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25766, + "mutability": "mutable", + "name": "a", + "nameLocation": "5032:1:16", + "nodeType": "VariableDeclaration", + "scope": 25781, + "src": "5024:9:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25765, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5024:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5023:11:16" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 25805, + "nodeType": "ModifierDefinition", + "src": "5260:210:16", + "body": { + "id": 25804, + "nodeType": "Block", + "src": "5315:155:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25795, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "5334:9:16", + "subExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25789, + "name": "paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26320, + "src": "5335:6:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 25790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5335:8:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25792, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "5347:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25794, + "indexExpression": { + "id": 25793, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25784, + "src": "5357:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5347:16:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5334:29:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25796, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "5367:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25798, + "indexExpression": { + "id": 25797, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25786, + "src": "5377:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5367:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5334:47:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7768656e4e6f745061757365644475616c28292c20436f6e74726163742069732063757272656e746c79207061757365642e", + "id": 25800, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5383:66:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_26ec85c254c666ec3821fb11094247ffe6f0691ec482f3d625effe3bdc37a566", + "typeString": "literal_string \"TaxToken.sol::whenNotPausedDual(), Contract is currently paused.\"" + }, + "value": "TaxToken.sol::whenNotPausedDual(), Contract is currently paused." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_26ec85c254c666ec3821fb11094247ffe6f0691ec482f3d625effe3bdc37a566", + "typeString": "literal_string \"TaxToken.sol::whenNotPausedDual(), Contract is currently paused.\"" + } + ], + "id": 25788, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5326:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5326:124:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25802, + "nodeType": "ExpressionStatement", + "src": "5326:124:16" + }, + { + "id": 25803, + "nodeType": "PlaceholderStatement", + "src": "5461:1:16" + } + ] + }, + "documentation": { + "id": 25782, + "nodeType": "StructuredDocumentation", + "src": "5175:79:16", + "text": "@dev whenNotPausedDual() is used if the contract MUST be paused (\"paused\")." + }, + "name": "whenNotPausedDual", + "nameLocation": "5269:17:16", + "parameters": { + "id": 25787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25784, + "mutability": "mutable", + "name": "_from", + "nameLocation": "5295:5:16", + "nodeType": "VariableDeclaration", + "scope": 25805, + "src": "5287:13:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25783, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5287:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25786, + "mutability": "mutable", + "name": "_to", + "nameLocation": "5310:3:16", + "nodeType": "VariableDeclaration", + "scope": 25805, + "src": "5302:11:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25785, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5302:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5286:28:16" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 25835, + "nodeType": "ModifierDefinition", + "src": "5562:247:16", + "body": { + "id": 25834, + "nodeType": "Block", + "src": "5633:176:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "5652:9:16", + "subExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25815, + "name": "paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26320, + "src": "5653:6:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 25816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5653:8:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25818, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "5665:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25820, + "indexExpression": { + "id": 25819, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25808, + "src": "5675:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5665:16:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5652:29:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25822, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "5685:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25824, + "indexExpression": { + "id": 25823, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25810, + "src": "5695:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5685:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5652:47:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25826, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "5703:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25828, + "indexExpression": { + "id": 25827, + "name": "_sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25812, + "src": "5713:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5703:18:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5652:69:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7768656e4e6f7450617573656454726928292c20436f6e74726163742069732063757272656e746c79207061757365642e", + "id": 25830, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5723:65:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_49a3da921f76f046784d4619ff95268c0b806d5171b8d2eedc3cc9f3d46db45d", + "typeString": "literal_string \"TaxToken.sol::whenNotPausedTri(), Contract is currently paused.\"" + }, + "value": "TaxToken.sol::whenNotPausedTri(), Contract is currently paused." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_49a3da921f76f046784d4619ff95268c0b806d5171b8d2eedc3cc9f3d46db45d", + "typeString": "literal_string \"TaxToken.sol::whenNotPausedTri(), Contract is currently paused.\"" + } + ], + "id": 25814, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5644:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5644:145:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25832, + "nodeType": "ExpressionStatement", + "src": "5644:145:16" + }, + { + "id": 25833, + "nodeType": "PlaceholderStatement", + "src": "5800:1:16" + } + ] + }, + "documentation": { + "id": 25806, + "nodeType": "StructuredDocumentation", + "src": "5478:78:16", + "text": "@dev whenNotPausedTri() is used if the contract MUST be paused (\"paused\")." + }, + "name": "whenNotPausedTri", + "nameLocation": "5571:16:16", + "parameters": { + "id": 25813, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25808, + "mutability": "mutable", + "name": "_from", + "nameLocation": "5596:5:16", + "nodeType": "VariableDeclaration", + "scope": 25835, + "src": "5588:13:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25807, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5588:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25810, + "mutability": "mutable", + "name": "_to", + "nameLocation": "5611:3:16", + "nodeType": "VariableDeclaration", + "scope": 25835, + "src": "5603:11:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25809, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5603:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25812, + "mutability": "mutable", + "name": "_sender", + "nameLocation": "5624:7:16", + "nodeType": "VariableDeclaration", + "scope": 25835, + "src": "5616:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25811, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5616:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5587:45:16" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 25846, + "nodeType": "ModifierDefinition", + "src": "5901:135:16", + "body": { + "id": 25845, + "nodeType": "Block", + "src": "5923:113:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25839, + "name": "paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26320, + "src": "5942:6:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 25840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5942:8:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7472616374206973206e6f742063757272656e746c79207061757365642e", + "id": 25841, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5952:63:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8ac840634c330912833cdd22f32d9ca77c1c228a2e001cb6530799ae376d63d7", + "typeString": "literal_string \"TaxToken.sol::whenPaused(), Contract is not currently paused.\"" + }, + "value": "TaxToken.sol::whenPaused(), Contract is not currently paused." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8ac840634c330912833cdd22f32d9ca77c1c228a2e001cb6530799ae376d63d7", + "typeString": "literal_string \"TaxToken.sol::whenPaused(), Contract is not currently paused.\"" + } + ], + "id": 25838, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5934:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25842, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5934:82:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25843, + "nodeType": "ExpressionStatement", + "src": "5934:82:16" + }, + { + "id": 25844, + "nodeType": "PlaceholderStatement", + "src": "6027:1:16" + } + ] + }, + "documentation": { + "id": 25836, + "nodeType": "StructuredDocumentation", + "src": "5817:78:16", + "text": "@dev whenPaused() is used if the contract MUST NOT be paused (\"unpaused\")." + }, + "name": "whenPaused", + "nameLocation": "5910:10:16", + "parameters": { + "id": 25837, + "nodeType": "ParameterList", + "parameters": [], + "src": "5920:2:16" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 25867, + "nodeType": "ModifierDefinition", + "src": "6153:183:16", + "body": { + "id": 25866, + "nodeType": "Block", + "src": "6177:159:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 25854, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 25850, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6195:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 25851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6195:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25852, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28156, + "src": "6209:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 25853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6209:7:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6195:21:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 25855, + "name": "authorized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25610, + "src": "6220:10:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25858, + "indexExpression": { + "expression": { + "id": 25856, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "6231:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 25857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "6231:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6220:22:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "74727565", + "id": 25859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6246:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "6220:30:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6195:55:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c206d73672e73656e646572206973206e6f7420617574686f72697a65642e", + "id": 25862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6252:63:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_59a7da7020ad7d16462a1cbe6e9b45e526105c8aa0fd9c13842d4b80d14052f4", + "typeString": "literal_string \"TaxToken.sol::onlyAuthorized(), msg.sender is not authorized.\"" + }, + "value": "TaxToken.sol::onlyAuthorized(), msg.sender is not authorized." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_59a7da7020ad7d16462a1cbe6e9b45e526105c8aa0fd9c13842d4b80d14052f4", + "typeString": "literal_string \"TaxToken.sol::onlyAuthorized(), msg.sender is not authorized.\"" + } + ], + "id": 25849, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6187:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6187:129:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25864, + "nodeType": "ExpressionStatement", + "src": "6187:129:16" + }, + { + "id": 25865, + "nodeType": "PlaceholderStatement", + "src": "6327:1:16" + } + ] + }, + "documentation": { + "id": 25847, + "nodeType": "StructuredDocumentation", + "src": "6044:103:16", + "text": "@dev isAuthorized() is used if msg.sender MUST be either the owner, or an authorized user/contract." + }, + "name": "onlyAuthorized", + "nameLocation": "6162:14:16", + "parameters": { + "id": 25848, + "nodeType": "ParameterList", + "parameters": [], + "src": "6177:0:16" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 25879, + "nodeType": "ModifierDefinition", + "src": "6344:90:16", + "body": { + "id": 25878, + "nodeType": "Block", + "src": "6365:69:16", + "statements": [ + { + "expression": { + "id": 25871, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25869, + "name": "inSwap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25581, + "src": "6376:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 25870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6385:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "6376:13:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 25872, + "nodeType": "ExpressionStatement", + "src": "6376:13:16" + }, + { + "id": 25873, + "nodeType": "PlaceholderStatement", + "src": "6400:1:16" + }, + { + "expression": { + "id": 25876, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25874, + "name": "inSwap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25581, + "src": "6412:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 25875, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6421:5:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "6412:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 25877, + "nodeType": "ExpressionStatement", + "src": "6412:14:16" + } + ] + }, + "name": "lockTheSwap", + "nameLocation": "6353:11:16", + "parameters": { + "id": 25868, + "nodeType": "ParameterList", + "parameters": [], + "src": "6365:0:16" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 25884, + "nodeType": "EventDefinition", + "src": "6555:22:16", + "anonymous": false, + "documentation": { + "id": 25880, + "nodeType": "StructuredDocumentation", + "src": "6491:58:16", + "text": "@dev Emitted when the pause is triggered by `account`." + }, + "eventSelector": "62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258", + "name": "Paused", + "nameLocation": "6561:6:16", + "parameters": { + "id": 25883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25882, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25884, + "src": "6568:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25881, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6568:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6567:9:16" + } + }, + { + "id": 25889, + "nodeType": "EventDefinition", + "src": "6646:24:16", + "anonymous": false, + "documentation": { + "id": 25885, + "nodeType": "StructuredDocumentation", + "src": "6585:55:16", + "text": "@dev Emitted when the pause is lifted by `account`." + }, + "eventSelector": "5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa", + "name": "Unpaused", + "nameLocation": "6652:8:16", + "parameters": { + "id": 25888, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25887, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25889, + "src": "6661:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25886, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6661:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6660:9:16" + } + }, + { + "id": 25896, + "nodeType": "EventDefinition", + "src": "6723:61:16", + "anonymous": false, + "documentation": { + "id": 25890, + "nodeType": "StructuredDocumentation", + "src": "6678:39:16", + "text": "@dev Emitted during transferFrom()." + }, + "eventSelector": "831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b", + "name": "TransferTax", + "nameLocation": "6729:11:16", + "parameters": { + "id": 25895, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25892, + "indexed": true, + "mutability": "mutable", + "name": "_treasury", + "nameLocation": "6757:9:16", + "nodeType": "VariableDeclaration", + "scope": 25896, + "src": "6741:25:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25891, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6741:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25894, + "indexed": false, + "mutability": "mutable", + "name": "_value", + "nameLocation": "6776:6:16", + "nodeType": "VariableDeclaration", + "scope": 25896, + "src": "6768:14:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25893, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6768:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6740:43:16" + } + }, + { + "id": 25903, + "nodeType": "EventDefinition", + "src": "6871:70:16", + "anonymous": false, + "documentation": { + "id": 25897, + "nodeType": "StructuredDocumentation", + "src": "6792:73:16", + "text": "@dev Emitted when updating authorized addresses (users or contracts)." + }, + "eventSelector": "351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd", + "name": "UpdatedAuthorizedWallets", + "nameLocation": "6877:24:16", + "parameters": { + "id": 25902, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25899, + "indexed": true, + "mutability": "mutable", + "name": "_account", + "nameLocation": "6918:8:16", + "nodeType": "VariableDeclaration", + "scope": 25903, + "src": "6902:24:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25898, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6902:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25901, + "indexed": false, + "mutability": "mutable", + "name": "_state", + "nameLocation": "6933:6:16", + "nodeType": "VariableDeclaration", + "scope": 25903, + "src": "6928:11:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 25900, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6928:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6901:39:16" + } + }, + { + "id": 25909, + "nodeType": "EventDefinition", + "src": "6949:40:16", + "anonymous": false, + "eventSelector": "4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a", + "name": "TreasuryUpdated", + "nameLocation": "6955:15:16", + "parameters": { + "id": 25908, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25905, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25909, + "src": "6971:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25904, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6971:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25907, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25909, + "src": "6980:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25906, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6980:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6970:18:16" + } + }, + { + "id": 25915, + "nodeType": "EventDefinition", + "src": "6997:39:16", + "anonymous": false, + "eventSelector": "a596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e", + "name": "VestingUpdated", + "nameLocation": "7003:14:16", + "parameters": { + "id": 25914, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25911, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25915, + "src": "7018:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25910, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7018:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25913, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25915, + "src": "7027:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25912, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7027:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7017:18:16" + } + }, + { + "id": 25921, + "nodeType": "EventDefinition", + "src": "7044:41:16", + "anonymous": false, + "eventSelector": "830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a34976344", + "name": "DepositorUpdated", + "nameLocation": "7050:16:16", + "parameters": { + "id": 25920, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25917, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25921, + "src": "7067:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25916, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7067:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25919, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25921, + "src": "7076:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25918, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7076:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7066:18:16" + } + }, + { + "id": 25923, + "nodeType": "EventDefinition", + "src": "7093:32:16", + "anonymous": false, + "eventSelector": "c75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b9", + "name": "TaxesPermanentlyRemoved", + "nameLocation": "7099:23:16", + "parameters": { + "id": 25922, + "nodeType": "ParameterList", + "parameters": [], + "src": "7122:2:16" + } + }, + { + "id": 25927, + "nodeType": "EventDefinition", + "src": "7133:28:16", + "anonymous": false, + "eventSelector": "ff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a", + "name": "MaxTxUpdated", + "nameLocation": "7139:12:16", + "parameters": { + "id": 25926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25925, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25927, + "src": "7152:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7152:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7151:9:16" + } + }, + { + "id": 25931, + "nodeType": "EventDefinition", + "src": "7169:32:16", + "anonymous": false, + "eventSelector": "12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace", + "name": "MaxWalletUpdated", + "nameLocation": "7175:16:16", + "parameters": { + "id": 25930, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25929, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25931, + "src": "7192:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25928, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7192:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7191:9:16" + } + }, + { + "id": 26158, + "nodeType": "FunctionDefinition", + "src": "7300:2624:16", + "body": { + "id": 26157, + "nodeType": "Block", + "src": "7382:2542:16", + "statements": [ + { + "assignments": [ + 25942 + ], + "declarations": [ + { + "constant": false, + "id": 25942, + "mutability": "mutable", + "name": "_taxType", + "nameLocation": "7502:8:16", + "nodeType": "VariableDeclaration", + "scope": 26157, + "src": "7496:14:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 25941, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7496:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 25943, + "nodeType": "VariableDeclarationStatement", + "src": "7496:14:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7531:9:16", + "subExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 25945, + "name": "paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26320, + "src": "7532:6:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 25946, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7532:8:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25948, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "7544:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25950, + "indexExpression": { + "id": 25949, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "7554:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7544:16:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7531:29:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25952, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "7564:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25954, + "indexExpression": { + "id": 25953, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "7574:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7564:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7531:47:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "baseExpression": { + "id": 25956, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "7582:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25959, + "indexExpression": { + "expression": { + "id": 25957, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "7592:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 25958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7592:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7582:21:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7531:72:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726163742069732063757272656e746c79207061757365642e", + "id": 25961, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7605:57:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1f97acfbe23cf0c20077215b21972e8e6675ee38bd995f2390638e00f2e6475c", + "typeString": "literal_string \"TaxToken.sol::_transfer() contract is currently paused.\"" + }, + "value": "TaxToken.sol::_transfer() contract is currently paused." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1f97acfbe23cf0c20077215b21972e8e6675ee38bd995f2390638e00f2e6475c", + "typeString": "literal_string \"TaxToken.sol::_transfer() contract is currently paused.\"" + } + ], + "id": 25944, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "7523:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7523:140:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25963, + "nodeType": "ExpressionStatement", + "src": "7523:140:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25969, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 25966, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "7692:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 25965, + "name": "balanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28666, + "src": "7682:9:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view returns (uint256)" + } + }, + "id": 25967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7682:16:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 25968, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25937, + "src": "7702:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7682:27:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656e742062616c616e6365", + "id": 25970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7711:44:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9c6308228f090142c97cb3251bd915c367e4d125ae0a38f7da2b302a8cf74a3d", + "typeString": "literal_string \"TaxToken::_transfer() insufficient balance\"" + }, + "value": "TaxToken::_transfer() insufficient balance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_9c6308228f090142c97cb3251bd915c367e4d125ae0a38f7da2b302a8cf74a3d", + "typeString": "literal_string \"TaxToken::_transfer() insufficient balance\"" + } + ], + "id": 25964, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "7674:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7674:82:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25972, + "nodeType": "ExpressionStatement", + "src": "7674:82:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 25976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25974, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25937, + "src": "7775:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 25975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7785:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7775:11:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d7573742062652067726561746572207468616e2030", + "id": 25977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7788:53:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_22391b90c69eaa69c2206694b07b965ca7c6b8c59542f069ec42098689bb0eac", + "typeString": "literal_string \"TaxToken::_transfer() amount must be greater than 0\"" + }, + "value": "TaxToken::_transfer() amount must be greater than 0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_22391b90c69eaa69c2206694b07b965ca7c6b8c59542f069ec42098689bb0eac", + "typeString": "literal_string \"TaxToken::_transfer() amount must be greater than 0\"" + } + ], + "id": 25973, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "7767:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 25978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7767:75:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 25979, + "nodeType": "ExpressionStatement", + "src": "7767:75:16" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 26001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 25988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7925:15:16", + "subExpression": { + "baseExpression": { + "id": 25980, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "7926:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25982, + "indexExpression": { + "id": 25981, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "7936:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7926:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 25987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7944:17:16", + "subExpression": { + "baseExpression": { + "id": 25984, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "7945:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25986, + "indexExpression": { + "id": 25985, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "7955:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7945:16:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7925:36:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 25993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7965:22:16", + "subExpression": { + "baseExpression": { + "id": 25989, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "7966:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 25992, + "indexExpression": { + "expression": { + "id": 25990, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "7976:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 25991, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7976:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7966:21:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7925:62:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 25995, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "7991:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 25998, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "8008:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 25997, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8000:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 25996, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8000:7:16", + "typeDescriptions": {} + } + }, + "id": 25999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8000:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "7991:22:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7925:88:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 26155, + "nodeType": "Block", + "src": "9854:63:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26150, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "9885:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26151, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "9892:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26152, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25937, + "src": "9897:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 26147, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "9869:5:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_TaxToken_$27006_$", + "typeString": "type(contract super TaxToken)" + } + }, + "id": 26149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "_transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28887, + "src": "9869:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 26153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9869:36:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26154, + "nodeType": "ExpressionStatement", + "src": "9869:36:16" + } + ] + }, + "id": 26156, + "nodeType": "IfStatement", + "src": "7921:1996:16", + "trueBody": { + "id": 26146, + "nodeType": "Block", + "src": "8015:1751:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26003, + "name": "maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25576, + "src": "8041:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 26004, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25937, + "src": "8056:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8041:22:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786365656473206d61785478416d6f756e74", + "id": 26006, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8065:50:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_58e58133d829aa45faf10f84da3b968456a2746e61f0a1d30d61326126b7c5e7", + "typeString": "literal_string \"TaxToken::_transfer() amount exceeds maxTxAmount\"" + }, + "value": "TaxToken::_transfer() amount exceeds maxTxAmount" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_58e58133d829aa45faf10f84da3b968456a2746e61f0a1d30d61326126b7c5e7", + "typeString": "literal_string \"TaxToken::_transfer() amount exceeds maxTxAmount\"" + } + ], + "id": 26002, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8032:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8032:84:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26008, + "nodeType": "ExpressionStatement", + "src": "8032:84:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "8140:17:16", + "subExpression": { + "baseExpression": { + "id": 26010, + "name": "blacklist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25585, + "src": "8141:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26012, + "indexExpression": { + "id": 26011, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "8151:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8141:16:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a5f7472616e7366657228292073656e64657220697320626c61636b6c6973746564", + "id": 26014, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8159:45:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0d8bf9351068fcb515d6d1ee943d579826aa4a104064510300fb3ca80b5a6dd9", + "typeString": "literal_string \"TaxToken::_transfer() sender is blacklisted\"" + }, + "value": "TaxToken::_transfer() sender is blacklisted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_0d8bf9351068fcb515d6d1ee943d579826aa4a104064510300fb3ca80b5a6dd9", + "typeString": "literal_string \"TaxToken::_transfer() sender is blacklisted\"" + } + ], + "id": 26009, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8131:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8131:74:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26016, + "nodeType": "ExpressionStatement", + "src": "8131:74:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "8229:15:16", + "subExpression": { + "baseExpression": { + "id": 26018, + "name": "blacklist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25585, + "src": "8230:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26020, + "indexExpression": { + "id": 26019, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "8240:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8230:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a5f7472616e73666572282920726563656976657220697320626c61636b6c6973746564", + "id": 26022, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8246:47:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a8e5055e3010354d92dc1e3e25e9cba8ed127aa5bd9556b2bce5a7097d204555", + "typeString": "literal_string \"TaxToken::_transfer() receiver is blacklisted\"" + }, + "value": "TaxToken::_transfer() receiver is blacklisted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_a8e5055e3010354d92dc1e3e25e9cba8ed127aa5bd9556b2bce5a7097d204555", + "typeString": "literal_string \"TaxToken::_transfer() receiver is blacklisted\"" + } + ], + "id": 26017, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8220:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8220:74:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26024, + "nodeType": "ExpressionStatement", + "src": "8220:74:16" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 26029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 26025, + "name": "senderTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25595, + "src": "8386:13:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 26027, + "indexExpression": { + "id": 26026, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "8400:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8386:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 26028, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8410:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8386:25:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26037, + "nodeType": "IfStatement", + "src": "8382:109:16", + "trueBody": { + "id": 26036, + "nodeType": "Block", + "src": "8413:78:16", + "statements": [ + { + "expression": { + "id": 26034, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26030, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25942, + "src": "8432:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 26031, + "name": "senderTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25595, + "src": "8443:13:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 26033, + "indexExpression": { + "id": 26032, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "8457:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8443:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "8432:31:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 26035, + "nodeType": "ExpressionStatement", + "src": "8432:31:16" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 26042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 26038, + "name": "receiverTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25600, + "src": "8511:15:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 26040, + "indexExpression": { + "id": 26039, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "8527:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8511:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 26041, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8535:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "8511:25:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26050, + "nodeType": "IfStatement", + "src": "8507:110:16", + "trueBody": { + "id": 26049, + "nodeType": "Block", + "src": "8538:79:16", + "statements": [ + { + "expression": { + "id": 26047, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26043, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25942, + "src": "8557:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 26044, + "name": "receiverTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25600, + "src": "8568:15:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 26046, + "indexExpression": { + "id": 26045, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "8584:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8568:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "8557:31:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 26048, + "nodeType": "ExpressionStatement", + "src": "8557:31:16" + } + ] + } + }, + { + "assignments": [ + 26052 + ], + "declarations": [ + { + "constant": false, + "id": 26052, + "mutability": "mutable", + "name": "_taxAmt", + "nameLocation": "8638:7:16", + "nodeType": "VariableDeclaration", + "scope": 26146, + "src": "8633:12:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26051, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8633:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26060, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26059, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26053, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25937, + "src": "8648:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "baseExpression": { + "id": 26054, + "name": "basisPointsTax", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25605, + "src": "8658:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + } + }, + "id": 26056, + "indexExpression": { + "id": 26055, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25942, + "src": "8673:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8658:24:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8648:34:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "3130303030", + "id": 26058, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8685:5:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000_by_1", + "typeString": "int_const 10000" + }, + "value": "10000" + }, + "src": "8648:42:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8633:57:16" + }, + { + "assignments": [ + 26062 + ], + "declarations": [ + { + "constant": false, + "id": 26062, + "mutability": "mutable", + "name": "_sendAmt", + "nameLocation": "8710:8:16", + "nodeType": "VariableDeclaration", + "scope": 26146, + "src": "8705:13:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26061, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8705:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26066, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26063, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25937, + "src": "8721:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 26064, + "name": "_taxAmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26052, + "src": "8731:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8721:17:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8705:33:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26068, + "name": "_taxAmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26052, + "src": "8763:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 26069, + "name": "_sendAmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26062, + "src": "8773:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8763:18:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 26071, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25937, + "src": "8785:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8763:29:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d617468206572726f72", + "id": 26073, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8794:43:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d5993207527714d67992f620917867413b9451523a1940531ce29ec7f82b116", + "typeString": "literal_string \"TaxToken::_transfer() critical math error\"" + }, + "value": "TaxToken::_transfer() critical math error" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5d5993207527714d67992f620917867413b9451523a1940531ce29ec7f82b116", + "typeString": "literal_string \"TaxToken::_transfer() critical math error\"" + } + ], + "id": 26067, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8755:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8755:83:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26075, + "nodeType": "ExpressionStatement", + "src": "8755:83:16" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 26082, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 26078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26076, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25942, + "src": "8985:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "32", + "id": 26077, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8997:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "8985:13:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26081, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26079, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "9002:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26080, + "name": "depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25564, + "src": "9009:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "9002:16:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8985:33:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "documentation": "@dev if it's a sell (_taxType == 2), _to will be pair address thus we don't want to check for maxWalletSize.", + "id": 26095, + "nodeType": "IfStatement", + "src": "8981:181:16", + "trueBody": { + "id": 26094, + "nodeType": "Block", + "src": "9020:142:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 26085, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "9057:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26084, + "name": "balanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28666, + "src": "9047:9:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view returns (uint256)" + } + }, + "id": 26086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9047:14:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 26087, + "name": "_sendAmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26062, + "src": "9064:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9047:25:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 26089, + "name": "maxWalletSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25574, + "src": "9076:13:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9047:42:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786365656473206d617857616c6c6574416d6f756e74", + "id": 26091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9091:54:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8f2f2feb3ec1cee4cd60bb8dce59fff92c79c008972de4ab1248b7f5fdf42546", + "typeString": "literal_string \"TaxToken::_transfer() amount exceeds maxWalletAmount\"" + }, + "value": "TaxToken::_transfer() amount exceeds maxWalletAmount" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8f2f2feb3ec1cee4cd60bb8dce59fff92c79c008972de4ab1248b7f5fdf42546", + "typeString": "literal_string \"TaxToken::_transfer() amount exceeds maxWalletAmount\"" + } + ], + "id": 26083, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "9039:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26092, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9039:107:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26093, + "nodeType": "ExpressionStatement", + "src": "9039:107:16" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 26101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 26098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26096, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25942, + "src": "9182:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "32", + "id": 26097, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9194:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "9182:13:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 26100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "9199:7:16", + "subExpression": { + "id": 26099, + "name": "inSwap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25581, + "src": "9200:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9182:24:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26126, + "nodeType": "IfStatement", + "src": "9178:410:16", + "trueBody": { + "id": 26125, + "nodeType": "Block", + "src": "9208:380:16", + "statements": [ + { + "assignments": [ + 26103 + ], + "declarations": [ + { + "constant": false, + "id": 26103, + "mutability": "mutable", + "name": "contractTokenBalance", + "nameLocation": "9235:20:16", + "nodeType": "VariableDeclaration", + "scope": 26125, + "src": "9227:28:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26102, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9227:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26106, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 26104, + "name": "getContractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26958, + "src": "9258:23:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 26105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9258:25:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9227:56:16" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26107, + "name": "contractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26103, + "src": "9307:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 26108, + "name": "maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25576, + "src": "9330:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9307:34:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26115, + "nodeType": "IfStatement", + "src": "9304:116:16", + "trueBody": { + "id": 26114, + "nodeType": "Block", + "src": "9343:77:16", + "statements": [ + { + "expression": { + "id": 26112, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26110, + "name": "contractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26103, + "src": "9366:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26111, + "name": "maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25576, + "src": "9389:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9366:34:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26113, + "nodeType": "ExpressionStatement", + "src": "9366:34:16" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26118, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26116, + "name": "contractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26103, + "src": "9444:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 26117, + "name": "maxContractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25578, + "src": "9468:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9444:47:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26124, + "nodeType": "IfStatement", + "src": "9440:133:16", + "trueBody": { + "id": 26123, + "nodeType": "Block", + "src": "9493:80:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26120, + "name": "contractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26103, + "src": "9532:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26119, + "name": "handleRoyalties", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26189, + "src": "9516:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 26121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9516:37:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26122, + "nodeType": "ExpressionStatement", + "src": "9516:37:16" + } + ] + } + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 26130, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "9620:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26131, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25935, + "src": "9627:3:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26132, + "name": "_sendAmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26062, + "src": "9632:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 26127, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "9604:5:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_TaxToken_$27006_$", + "typeString": "type(contract super TaxToken)" + } + }, + "id": 26129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "_transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28887, + "src": "9604:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 26133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9604:37:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26134, + "nodeType": "ExpressionStatement", + "src": "9604:37:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26138, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25933, + "src": "9724:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 26141, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "9739:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 26140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9731:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26139, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9731:7:16", + "typeDescriptions": {} + } + }, + "id": 26142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9731:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26143, + "name": "_taxAmt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26052, + "src": "9746:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 26135, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "9708:5:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_TaxToken_$27006_$", + "typeString": "type(contract super TaxToken)" + } + }, + "id": 26137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "_transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28887, + "src": "9708:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 26144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9708:46:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26145, + "nodeType": "ExpressionStatement", + "src": "9708:46:16" + } + ] + } + } + ] + }, + "baseFunctions": [ + 28887 + ], + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transfer", + "nameLocation": "7309:9:16", + "overrides": { + "id": 25939, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "7373:8:16" + }, + "parameters": { + "id": 25938, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25933, + "mutability": "mutable", + "name": "_from", + "nameLocation": "7327:5:16", + "nodeType": "VariableDeclaration", + "scope": 26158, + "src": "7319:13:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25932, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7319:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25935, + "mutability": "mutable", + "name": "_to", + "nameLocation": "7342:3:16", + "nodeType": "VariableDeclaration", + "scope": 26158, + "src": "7334:11:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 25934, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7334:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25937, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "7355:7:16", + "nodeType": "VariableDeclaration", + "scope": 26158, + "src": "7347:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 25936, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7347:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7318:45:16" + }, + "returnParameters": { + "id": 25940, + "nodeType": "ParameterList", + "parameters": [], + "src": "7382:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 26189, + "nodeType": "FunctionDefinition", + "src": "9932:362:16", + "body": { + "id": 26188, + "nodeType": "Block", + "src": "10009:285:16", + "statements": [ + { + "assignments": [ + 26166 + ], + "declarations": [ + { + "constant": false, + "id": 26166, + "mutability": "mutable", + "name": "amountWeth", + "nameLocation": "10028:10:16", + "nodeType": "VariableDeclaration", + "scope": 26188, + "src": "10020:18:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26165, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10020:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26170, + "initialValue": { + "arguments": [ + { + "id": 26168, + "name": "_contractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26160, + "src": "10059:21:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26167, + "name": "swapTokensForWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26273, + "src": "10041:17:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) returns (uint256)" + } + }, + "id": 26169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10041:40:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10020:61:16" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26171, + "name": "amountWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26166, + "src": "10098:10:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 26172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10111:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "10098:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26187, + "nodeType": "IfStatement", + "src": "10094:193:16", + "trueBody": { + "id": 26186, + "nodeType": "Block", + "src": "10114:173:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26178, + "name": "amountWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26166, + "src": "10211:10:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 26175, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "10182:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26174, + "name": "ITreasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29867, + "src": "10172:9:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ITreasury_$29867_$", + "typeString": "type(contract ITreasury)" + } + }, + "id": 26176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10172:19:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ITreasury_$29867", + "typeString": "contract ITreasury" + } + }, + "id": 26177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "updateTaxesAccrued", + "nodeType": "MemberAccess", + "referencedDeclaration": 29866, + "src": "10172:38:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 26179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10172:50:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26180, + "nodeType": "ExpressionStatement", + "src": "10172:50:16" + }, + { + "eventCall": { + "arguments": [ + { + "id": 26182, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "10254:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26183, + "name": "amountWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26166, + "src": "10264:10:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26181, + "name": "TransferTax", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25896, + "src": "10242:11:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 26184, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10242:33:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26185, + "nodeType": "EmitStatement", + "src": "10237:38:16" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26163, + "kind": "modifierInvocation", + "modifierName": { + "id": 26162, + "name": "lockTheSwap", + "nodeType": "IdentifierPath", + "referencedDeclaration": 25879, + "src": "9997:11:16" + }, + "nodeType": "ModifierInvocation", + "src": "9997:11:16" + } + ], + "name": "handleRoyalties", + "nameLocation": "9941:15:16", + "parameters": { + "id": 26161, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26160, + "mutability": "mutable", + "name": "_contractTokenBalance", + "nameLocation": "9965:21:16", + "nodeType": "VariableDeclaration", + "scope": 26189, + "src": "9957:29:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26159, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9957:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9956:31:16" + }, + "returnParameters": { + "id": 26164, + "nodeType": "ParameterList", + "parameters": [], + "src": "10009:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 26273, + "nodeType": "FunctionDefinition", + "src": "10302:833:16", + "body": { + "id": 26272, + "nodeType": "Block", + "src": "10385:750:16", + "statements": [ + { + "assignments": [ + 26200 + ], + "declarations": [ + { + "constant": false, + "id": 26200, + "mutability": "mutable", + "name": "path", + "nameLocation": "10473:4:16", + "nodeType": "VariableDeclaration", + "scope": 26272, + "src": "10456:21:16", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 26198, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10456:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 26199, + "nodeType": "ArrayTypeName", + "src": "10456:9:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "id": 26206, + "initialValue": { + "arguments": [ + { + "hexValue": "32", + "id": 26204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10494:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + } + ], + "id": 26203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "10480:13:16", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (address[] memory)" + }, + "typeName": { + "baseType": { + "id": 26201, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10484:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 26202, + "nodeType": "ArrayTypeName", + "src": "10484:9:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + } + }, + "id": 26205, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10480:16:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10456:40:16" + }, + { + "expression": { + "id": 26214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26207, + "name": "path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26200, + "src": "10507:4:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 26209, + "indexExpression": { + "hexValue": "30", + "id": 26208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10512:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "10507:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 26212, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "10525:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 26211, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10517:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26210, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10517:7:16", + "typeDescriptions": {} + } + }, + "id": 26213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10517:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10507:23:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 26215, + "nodeType": "ExpressionStatement", + "src": "10507:23:16" + }, + { + "expression": { + "id": 26224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26216, + "name": "path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26200, + "src": "10541:4:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 26218, + "indexExpression": { + "hexValue": "31", + "id": 26217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10546:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "10541:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 26220, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25567, + "src": "10570:12:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26219, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "10551:18:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 26221, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10551:32:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 26222, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "WETH", + "nodeType": "MemberAccess", + "referencedDeclaration": 29468, + "src": "10551:37:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", + "typeString": "function () pure external returns (address)" + } + }, + "id": 26223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10551:39:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10541:49:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 26225, + "nodeType": "ExpressionStatement", + "src": "10541:49:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 26229, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "10620:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 26228, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10612:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10612:7:16", + "typeDescriptions": {} + } + }, + "id": 26230, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10612:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 26233, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25567, + "src": "10635:12:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26232, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10627:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10627:7:16", + "typeDescriptions": {} + } + }, + "id": 26234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10627:21:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26235, + "name": "_amountTokensForSwap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26191, + "src": "10650:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26226, + "name": "_approve", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29043, + "src": "10603:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 26236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10603:68:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26237, + "nodeType": "ExpressionStatement", + "src": "10603:68:16" + }, + { + "assignments": [ + 26242 + ], + "declarations": [ + { + "constant": false, + "id": 26242, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "10701:7:16", + "nodeType": "VariableDeclaration", + "scope": 26272, + "src": "10684:24:16", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 26240, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10684:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26241, + "nodeType": "ArrayTypeName", + "src": "10684:9:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "id": 26250, + "initialValue": { + "arguments": [ + { + "id": 26247, + "name": "_amountTokensForSwap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26191, + "src": "10772:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 26248, + "name": "path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26200, + "src": "10808:4:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "arguments": [ + { + "id": 26244, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25567, + "src": "10730:12:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26243, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "10711:18:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 26245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10711:32:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 26246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAmountsOut", + "nodeType": "MemberAccess", + "referencedDeclaration": 29752, + "src": "10711:46:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function (uint256,address[] memory) view external returns (uint256[] memory)" + } + }, + "id": 26249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10711:112:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10684:139:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26255, + "name": "_amountTokensForSwap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26191, + "src": "10963:20:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 26256, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10998:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "id": 26257, + "name": "path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26200, + "src": "11014:4:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + { + "arguments": [ + { + "id": 26260, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "11041:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26259, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "11033:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26258, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11033:7:16", + "typeDescriptions": {} + } + }, + "id": 26261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11033:17:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 26262, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "11065:5:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 26263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "11065:15:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "333030", + "id": 26264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11083:3:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_300_by_1", + "typeString": "int_const 300" + }, + "value": "300" + }, + "src": "11065:21:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 26252, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25567, + "src": "10881:12:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26251, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "10862:18:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 26253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10862:32:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 26254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "swapExactTokensForTokensSupportingFeeOnTransferTokens", + "nodeType": "MemberAccess", + "referencedDeclaration": 29822, + "src": "10862:86:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,address[] memory,address,uint256) external" + } + }, + "id": 26266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10862:235:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26267, + "nodeType": "ExpressionStatement", + "src": "10862:235:16" + }, + { + "expression": { + "baseExpression": { + "id": 26268, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26242, + "src": "11117:7:16", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 26270, + "indexExpression": { + "hexValue": "31", + "id": 26269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11125:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11117:10:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 26195, + "id": 26271, + "nodeType": "Return", + "src": "11110:17:16" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "swapTokensForWeth", + "nameLocation": "10311:17:16", + "parameters": { + "id": 26192, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26191, + "mutability": "mutable", + "name": "_amountTokensForSwap", + "nameLocation": "10337:20:16", + "nodeType": "VariableDeclaration", + "scope": 26273, + "src": "10329:28:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26190, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10329:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10328:30:16" + }, + "returnParameters": { + "id": 26195, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26194, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 26273, + "src": "10377:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26193, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10377:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10376:9:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 26293, + "nodeType": "FunctionDefinition", + "src": "11332:132:16", + "body": { + "id": 26292, + "nodeType": "Block", + "src": "11397:67:16", + "statements": [ + { + "expression": { + "id": 26285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26283, + "name": "_paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25558, + "src": "11408:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 26284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11418:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "11408:14:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26286, + "nodeType": "ExpressionStatement", + "src": "11408:14:16" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 26288, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "11445:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 26289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11445:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26287, + "name": "Paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25884, + "src": "11438:6:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 26290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11438:18:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26291, + "nodeType": "EmitStatement", + "src": "11433:23:16" + } + ] + }, + "documentation": { + "id": 26274, + "nodeType": "StructuredDocumentation", + "src": "11174:152:16", + "text": "@notice Pause the contract, blocks transfer() and transferFrom().\n @dev Contract MUST NOT be paused to call this, caller must be \"owner\"." + }, + "functionSelector": "8456cb59", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26277, + "kind": "modifierInvocation", + "modifierName": { + "id": 26276, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "11358:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "11358:9:16" + }, + { + "arguments": [ + { + "expression": { + "id": 26279, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "11385:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 26280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11385:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 26281, + "kind": "modifierInvocation", + "modifierName": { + "id": 26278, + "name": "whenNotPausedUni", + "nodeType": "IdentifierPath", + "referencedDeclaration": 25781, + "src": "11368:16:16" + }, + "nodeType": "ModifierInvocation", + "src": "11368:28:16" + } + ], + "name": "pause", + "nameLocation": "11341:5:16", + "parameters": { + "id": 26275, + "nodeType": "ParameterList", + "parameters": [], + "src": "11346:2:16" + }, + "returnParameters": { + "id": 26282, + "nodeType": "ParameterList", + "parameters": [], + "src": "11397:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26311, + "nodeType": "FunctionDefinition", + "src": "11590:119:16", + "body": { + "id": 26310, + "nodeType": "Block", + "src": "11639:70:16", + "statements": [ + { + "expression": { + "id": 26303, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26301, + "name": "_paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25558, + "src": "11650:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 26302, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11660:5:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "11650:15:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26304, + "nodeType": "ExpressionStatement", + "src": "11650:15:16" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 26306, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "11690:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 26307, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11690:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26305, + "name": "Unpaused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25889, + "src": "11681:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 26308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11681:20:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26309, + "nodeType": "EmitStatement", + "src": "11676:25:16" + } + ] + }, + "documentation": { + "id": 26294, + "nodeType": "StructuredDocumentation", + "src": "11472:112:16", + "text": "@notice Unpause the contract.\n @dev Contract MUST be paused to call this, caller must be \"owner\"." + }, + "functionSelector": "3f4ba83a", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26297, + "kind": "modifierInvocation", + "modifierName": { + "id": 26296, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "11618:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "11618:9:16" + }, + { + "id": 26299, + "kind": "modifierInvocation", + "modifierName": { + "id": 26298, + "name": "whenPaused", + "nodeType": "IdentifierPath", + "referencedDeclaration": 25846, + "src": "11628:10:16" + }, + "nodeType": "ModifierInvocation", + "src": "11628:10:16" + } + ], + "name": "unpause", + "nameLocation": "11599:7:16", + "parameters": { + "id": 26295, + "nodeType": "ParameterList", + "parameters": [], + "src": "11606:2:16" + }, + "returnParameters": { + "id": 26300, + "nodeType": "ParameterList", + "parameters": [], + "src": "11639:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26320, + "nodeType": "FunctionDefinition", + "src": "11813:86:16", + "body": { + "id": 26319, + "nodeType": "Block", + "src": "11866:33:16", + "statements": [ + { + "expression": { + "id": 26317, + "name": "_paused", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25558, + "src": "11884:7:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 26316, + "id": 26318, + "nodeType": "Return", + "src": "11877:14:16" + } + ] + }, + "documentation": { + "id": 26312, + "nodeType": "StructuredDocumentation", + "src": "11717:90:16", + "text": "@return _paused Indicates whether the contract is paused (true) or not paused (false)." + }, + "functionSelector": "5c975abb", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "paused", + "nameLocation": "11822:6:16", + "parameters": { + "id": 26313, + "nodeType": "ParameterList", + "parameters": [], + "src": "11828:2:16" + }, + "returnParameters": { + "id": 26316, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26315, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 26320, + "src": "11860:4:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 26314, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11860:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11859:6:16" + }, + "scope": 27006, + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "id": 26344, + "nodeType": "FunctionDefinition", + "src": "12344:231:16", + "body": { + "id": 26343, + "nodeType": "Block", + "src": "12425:150:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 26333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26331, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26325, + "src": "12444:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "33", + "id": 26332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12455:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "12444:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a75706461746553656e6465725461785479706528292c205f74617854797065206d757374206265206c657373207468616e20332e", + "id": 26334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12458:64:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b701be9022e869570c5cad86941cec1a72f0cbb59f8f0cfeb5b9062867682a7d", + "typeString": "literal_string \"TaxToken::updateSenderTaxType(), _taxType must be less than 3.\"" + }, + "value": "TaxToken::updateSenderTaxType(), _taxType must be less than 3." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b701be9022e869570c5cad86941cec1a72f0cbb59f8f0cfeb5b9062867682a7d", + "typeString": "literal_string \"TaxToken::updateSenderTaxType(), _taxType must be less than 3.\"" + } + ], + "id": 26330, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "12436:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12436:87:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26336, + "nodeType": "ExpressionStatement", + "src": "12436:87:16" + }, + { + "expression": { + "id": 26341, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26337, + "name": "senderTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25595, + "src": "12534:13:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 26339, + "indexExpression": { + "id": 26338, + "name": "_sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26323, + "src": "12548:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12534:22:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26340, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26325, + "src": "12559:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "12534:33:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 26342, + "nodeType": "ExpressionStatement", + "src": "12534:33:16" + } + ] + }, + "documentation": { + "id": 26321, + "nodeType": "StructuredDocumentation", + "src": "11956:382:16", + "text": "@notice Used to store the LP Pair to differ type of transaction. Will be used to mark a BUY.\n @dev _taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send.\n @param _sender This value is the PAIR address.\n @param _taxType This value must be be 0, 1, or 2. Best to correspond value with the BUY tax type." + }, + "functionSelector": "7097f793", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26328, + "kind": "modifierInvocation", + "modifierName": { + "id": 26327, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "12415:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "12415:9:16" + } + ], + "name": "updateSenderTaxType", + "nameLocation": "12353:19:16", + "parameters": { + "id": 26326, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26323, + "mutability": "mutable", + "name": "_sender", + "nameLocation": "12381:7:16", + "nodeType": "VariableDeclaration", + "scope": 26344, + "src": "12373:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26322, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12373:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26325, + "mutability": "mutable", + "name": "_taxType", + "nameLocation": "12396:8:16", + "nodeType": "VariableDeclaration", + "scope": 26344, + "src": "12390:14:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 26324, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "12390:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "12372:33:16" + }, + "returnParameters": { + "id": 26329, + "nodeType": "ParameterList", + "parameters": [], + "src": "12425:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26368, + "nodeType": "FunctionDefinition", + "src": "12975:241:16", + "body": { + "id": 26367, + "nodeType": "Block", + "src": "13060:156:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 26357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26355, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26349, + "src": "13079:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "33", + "id": 26356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13090:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "13079:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a75706461746552656365697665725461785479706528292c205f74617854797065206d757374206265206c657373207468616e20332e", + "id": 26358, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13093:66:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_948cb65bdc15b8e2ed4360296b005e7af9e946ecd7d37b2c0e9cb3ed9e170f48", + "typeString": "literal_string \"TaxToken::updateReceiverTaxType(), _taxType must be less than 3.\"" + }, + "value": "TaxToken::updateReceiverTaxType(), _taxType must be less than 3." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_948cb65bdc15b8e2ed4360296b005e7af9e946ecd7d37b2c0e9cb3ed9e170f48", + "typeString": "literal_string \"TaxToken::updateReceiverTaxType(), _taxType must be less than 3.\"" + } + ], + "id": 26354, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13071:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26359, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13071:89:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26360, + "nodeType": "ExpressionStatement", + "src": "13071:89:16" + }, + { + "expression": { + "id": 26365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26361, + "name": "receiverTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25600, + "src": "13171:15:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 26363, + "indexExpression": { + "id": 26362, + "name": "_receiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26347, + "src": "13187:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13171:26:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26364, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26349, + "src": "13200:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "13171:37:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 26366, + "nodeType": "ExpressionStatement", + "src": "13171:37:16" + } + ] + }, + "documentation": { + "id": 26345, + "nodeType": "StructuredDocumentation", + "src": "12583:386:16", + "text": "@notice Used to store the LP Pair to differ type of transaction. Will be used to mark a SELL.\n @dev _taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send.\n @param _receiver This value is the PAIR address.\n @param _taxType This value must be be 0, 1, or 2. Best to correspond value with the SELL tax type." + }, + "functionSelector": "f7808060", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26352, + "kind": "modifierInvocation", + "modifierName": { + "id": 26351, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "13050:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "13050:9:16" + } + ], + "name": "updateReceiverTaxType", + "nameLocation": "12984:21:16", + "parameters": { + "id": 26350, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26347, + "mutability": "mutable", + "name": "_receiver", + "nameLocation": "13014:9:16", + "nodeType": "VariableDeclaration", + "scope": 26368, + "src": "13006:17:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26346, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13006:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26349, + "mutability": "mutable", + "name": "_taxType", + "nameLocation": "13031:8:16", + "nodeType": "VariableDeclaration", + "scope": 26368, + "src": "13025:14:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 26348, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "13025:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "13005:35:16" + }, + "returnParameters": { + "id": 26353, + "nodeType": "ParameterList", + "parameters": [], + "src": "13060:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26398, + "nodeType": "FunctionDefinition", + "src": "13577:319:16", + "body": { + "id": 26397, + "nodeType": "Block", + "src": "13653:243:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26379, + "name": "_bpt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26373, + "src": "13672:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "32303030", + "id": 26380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13680:4:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_2000_by_1", + "typeString": "int_const 2000" + }, + "value": "2000" + }, + "src": "13672:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e747354617828292c205f627074203e20323030302028323025292e", + "id": 26382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13686:58:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b83bf284ccd7848e7f1eda55b29712a9a17c749369d4b07dc6486d7f85fb35ce", + "typeString": "literal_string \"TaxToken.sol::adjustBasisPointsTax(), _bpt > 2000 (20%).\"" + }, + "value": "TaxToken.sol::adjustBasisPointsTax(), _bpt > 2000 (20%)." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b83bf284ccd7848e7f1eda55b29712a9a17c749369d4b07dc6486d7f85fb35ce", + "typeString": "literal_string \"TaxToken.sol::adjustBasisPointsTax(), _bpt > 2000 (20%).\"" + } + ], + "id": 26378, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13664:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13664:81:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26384, + "nodeType": "ExpressionStatement", + "src": "13664:81:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "13764:13:16", + "subExpression": { + "id": 26386, + "name": "taxesRemoved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25571, + "src": "13765:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e747354617828292c205461786174696f6e20686173206265656e2072656d6f7665642e", + "id": 26388, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13779:66:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4522019c16cba782fb2b9c46e864e0c9121e1ff865b0dae94be967d1347c7fc5", + "typeString": "literal_string \"TaxToken.sol::adjustBasisPointsTax(), Taxation has been removed.\"" + }, + "value": "TaxToken.sol::adjustBasisPointsTax(), Taxation has been removed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4522019c16cba782fb2b9c46e864e0c9121e1ff865b0dae94be967d1347c7fc5", + "typeString": "literal_string \"TaxToken.sol::adjustBasisPointsTax(), Taxation has been removed.\"" + } + ], + "id": 26385, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13756:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13756:90:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26390, + "nodeType": "ExpressionStatement", + "src": "13756:90:16" + }, + { + "expression": { + "id": 26395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26391, + "name": "basisPointsTax", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25605, + "src": "13857:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + } + }, + "id": 26393, + "indexExpression": { + "id": 26392, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26371, + "src": "13872:8:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13857:24:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26394, + "name": "_bpt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26373, + "src": "13884:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13857:31:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26396, + "nodeType": "ExpressionStatement", + "src": "13857:31:16" + } + ] + }, + "documentation": { + "id": 26369, + "nodeType": "StructuredDocumentation", + "src": "13224:347:16", + "text": "@notice Used to map the tax type 0, 1 or 2 with it's corresponding tax percentage.\n @dev Must be lower than 2000 which is equivalent to 20%.\n @param _taxType This value is the tax type. Has to be 0, 1, or 2.\n @param _bpt This is the corresponding percentage that is taken for royalties. 1200 = 12%." + }, + "functionSelector": "5376b092", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26376, + "kind": "modifierInvocation", + "modifierName": { + "id": 26375, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "13643:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "13643:9:16" + } + ], + "name": "adjustBasisPointsTax", + "nameLocation": "13586:20:16", + "parameters": { + "id": 26374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26371, + "mutability": "mutable", + "name": "_taxType", + "nameLocation": "13613:8:16", + "nodeType": "VariableDeclaration", + "scope": 26398, + "src": "13607:14:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 26370, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "13607:5:16", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26373, + "mutability": "mutable", + "name": "_bpt", + "nameLocation": "13628:4:16", + "nodeType": "VariableDeclaration", + "scope": 26398, + "src": "13623:9:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26372, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "13623:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13606:27:16" + }, + "returnParameters": { + "id": 26377, + "nodeType": "ParameterList", + "parameters": [], + "src": "13653:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26445, + "nodeType": "FunctionDefinition", + "src": "14165:429:16", + "body": { + "id": 26444, + "nodeType": "Block", + "src": "14227:367:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26407, + "name": "_key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26401, + "src": "14246:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "3432", + "id": 26408, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14254:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_42_by_1", + "typeString": "int_const 42" + }, + "value": "42" + }, + "src": "14246:10:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657328292c205f6b657920213d2034322e", + "id": 26410, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14258:49:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b604e0b8f1c14dde97866393f5bb2fc3a957dc6f7007aff85e3499c25a8be7b3", + "typeString": "literal_string \"TaxToken::permanentlyRemoveTaxes(), _key != 42.\"" + }, + "value": "TaxToken::permanentlyRemoveTaxes(), _key != 42." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b604e0b8f1c14dde97866393f5bb2fc3a957dc6f7007aff85e3499c25a8be7b3", + "typeString": "literal_string \"TaxToken::permanentlyRemoveTaxes(), _key != 42.\"" + } + ], + "id": 26406, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "14238:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14238:70:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26412, + "nodeType": "ExpressionStatement", + "src": "14238:70:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "14327:13:16", + "subExpression": { + "id": 26414, + "name": "taxesRemoved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25571, + "src": "14328:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e747354617828292c205461786174696f6e2068617320616c7265616479206265656e2072656d6f7665642e", + "id": 26416, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14342:74:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5462b54f26ec619e8c571a2fb70d9fccfd8746f3aa042e2e43eecb471c0c9571", + "typeString": "literal_string \"TaxToken.sol::adjustBasisPointsTax(), Taxation has already been removed.\"" + }, + "value": "TaxToken.sol::adjustBasisPointsTax(), Taxation has already been removed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5462b54f26ec619e8c571a2fb70d9fccfd8746f3aa042e2e43eecb471c0c9571", + "typeString": "literal_string \"TaxToken.sol::adjustBasisPointsTax(), Taxation has already been removed.\"" + } + ], + "id": 26413, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "14319:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14319:98:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26418, + "nodeType": "ExpressionStatement", + "src": "14319:98:16" + }, + { + "expression": { + "id": 26423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26419, + "name": "basisPointsTax", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25605, + "src": "14428:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + } + }, + "id": 26421, + "indexExpression": { + "hexValue": "30", + "id": 26420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14443:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14428:17:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 26422, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14448:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "14428:21:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26424, + "nodeType": "ExpressionStatement", + "src": "14428:21:16" + }, + { + "expression": { + "id": 26429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26425, + "name": "basisPointsTax", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25605, + "src": "14460:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + } + }, + "id": 26427, + "indexExpression": { + "hexValue": "31", + "id": 26426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14475:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14460:17:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 26428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14480:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "14460:21:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26430, + "nodeType": "ExpressionStatement", + "src": "14460:21:16" + }, + { + "expression": { + "id": 26435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26431, + "name": "basisPointsTax", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25605, + "src": "14492:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint8_$_t_uint256_$", + "typeString": "mapping(uint8 => uint256)" + } + }, + "id": 26433, + "indexExpression": { + "hexValue": "32", + "id": 26432, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14507:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14492:17:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 26434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14512:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "14492:21:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26436, + "nodeType": "ExpressionStatement", + "src": "14492:21:16" + }, + { + "expression": { + "id": 26439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26437, + "name": "taxesRemoved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25571, + "src": "14524:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 26438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14539:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "14524:19:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26440, + "nodeType": "ExpressionStatement", + "src": "14524:19:16" + }, + { + "eventCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 26441, + "name": "TaxesPermanentlyRemoved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25923, + "src": "14561:23:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 26442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14561:25:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26443, + "nodeType": "EmitStatement", + "src": "14556:30:16" + } + ] + }, + "documentation": { + "id": 26399, + "nodeType": "StructuredDocumentation", + "src": "13904:255:16", + "text": "@notice Permanently remove taxes from this contract.\n @dev An input is required here for sanity-check, given importance of this function call (and irreversible nature).\n @param _key This value MUST equal 42 for function to execute." + }, + "functionSelector": "c4bb8cbe", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26404, + "kind": "modifierInvocation", + "modifierName": { + "id": 26403, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "14217:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "14217:9:16" + } + ], + "name": "permanentlyRemoveTaxes", + "nameLocation": "14174:22:16", + "parameters": { + "id": 26402, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26401, + "mutability": "mutable", + "name": "_key", + "nameLocation": "14202:4:16", + "nodeType": "VariableDeclaration", + "scope": 26445, + "src": "14197:9:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26400, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14197:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14196:11:16" + }, + "returnParameters": { + "id": 26405, + "nodeType": "ParameterList", + "parameters": [], + "src": "14227:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26466, + "nodeType": "FunctionDefinition", + "src": "14624:160:16", + "body": { + "id": 26465, + "nodeType": "Block", + "src": "14695:89:16", + "statements": [ + { + "expression": { + "id": 26457, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26453, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "14706:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26455, + "indexExpression": { + "id": 26454, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26447, + "src": "14716:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "14706:19:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 26456, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14728:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "14706:26:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26458, + "nodeType": "ExpressionStatement", + "src": "14706:26:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26462, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26447, + "src": "14767:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 26459, + "name": "super", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -25, + "src": "14743:5:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_super$_TaxToken_$27006_$", + "typeString": "type(contract super TaxToken)" + } + }, + "id": 26461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferOwnership", + "nodeType": "MemberAccess", + "referencedDeclaration": 28220, + "src": "14743:23:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 26463, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14743:33:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26464, + "nodeType": "ExpressionStatement", + "src": "14743:33:16" + } + ] + }, + "baseFunctions": [ + 28220 + ], + "functionSelector": "f2fde38b", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26451, + "kind": "modifierInvocation", + "modifierName": { + "id": 26450, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "14685:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "14685:9:16" + } + ], + "name": "transferOwnership", + "nameLocation": "14633:17:16", + "overrides": { + "id": 26449, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "14676:8:16" + }, + "parameters": { + "id": 26448, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26447, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "14659:8:16", + "nodeType": "VariableDeclaration", + "scope": 26466, + "src": "14651:16:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26446, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14651:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14650:18:16" + }, + "returnParameters": { + "id": 26452, + "nodeType": "ParameterList", + "parameters": [], + "src": "14695:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 26481, + "nodeType": "FunctionDefinition", + "src": "14792:263:16", + "body": { + "id": 26480, + "nodeType": "Block", + "src": "14852:203:16", + "statements": [ + { + "condition": { + "id": 26472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "14907:7:16", + "subExpression": { + "id": 26471, + "name": "inSwap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25581, + "src": "14908:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26479, + "nodeType": "IfStatement", + "src": "14903:82:16", + "trueBody": { + "id": 26478, + "nodeType": "Block", + "src": "14916:69:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 26474, + "name": "getContractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26958, + "src": "14947:23:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 26475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14947:25:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26473, + "name": "handleRoyalties", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26189, + "src": "14931:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 26476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14931:42:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26477, + "nodeType": "ExpressionStatement", + "src": "14931:42:16" + } + ] + } + } + ] + }, + "functionSelector": "3b6c0334", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26469, + "kind": "modifierInvocation", + "modifierName": { + "id": 26468, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "14842:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "14842:9:16" + } + ], + "name": "distributeRoyaltiesToTreasury", + "nameLocation": "14801:29:16", + "parameters": { + "id": 26467, + "nodeType": "ParameterList", + "parameters": [], + "src": "14830:2:16" + }, + "returnParameters": { + "id": 26470, + "nodeType": "ParameterList", + "parameters": [], + "src": "14852:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26522, + "nodeType": "FunctionDefinition", + "src": "15366:408:16", + "body": { + "id": 26521, + "nodeType": "Block", + "src": "15446:328:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26492, + "name": "_account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26484, + "src": "15465:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 26495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15485:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 26494, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15477:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26493, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15477:7:16", + "typeDescriptions": {} + } + }, + "id": 26496, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15477:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "15465:22:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6973742829205f6f776e6572203d3d2030", + "id": 26498, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15489:50:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4136aeccae2e6b70c22c517173f2e7f09b4771a7730ea0abacb1e3d6e29f81a5", + "typeString": "literal_string \"TaxToken.sol::updateAuthorizedList() _owner == 0\"" + }, + "value": "TaxToken.sol::updateAuthorizedList() _owner == 0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4136aeccae2e6b70c22c517173f2e7f09b4771a7730ea0abacb1e3d6e29f81a5", + "typeString": "literal_string \"TaxToken.sol::updateAuthorizedList() _owner == 0\"" + } + ], + "id": 26491, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "15457:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15457:83:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26500, + "nodeType": "ExpressionStatement", + "src": "15457:83:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 26506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 26502, + "name": "authorized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25610, + "src": "15559:10:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26504, + "indexExpression": { + "id": 26503, + "name": "_account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26484, + "src": "15570:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "15559:20:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 26505, + "name": "_state", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26486, + "src": "15583:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "15559:30:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6973742829205f6163636f756e7420697320616c72656164792073657420746f205f7374617465", + "id": 26507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15591:72:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ade5b3ed780073685288591a61562f208a6d826896de22437c79d4e3112d1317", + "typeString": "literal_string \"TaxToken.sol::updateAuthorizedList() _account is already set to _state\"" + }, + "value": "TaxToken.sol::updateAuthorizedList() _account is already set to _state" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_ade5b3ed780073685288591a61562f208a6d826896de22437c79d4e3112d1317", + "typeString": "literal_string \"TaxToken.sol::updateAuthorizedList() _account is already set to _state\"" + } + ], + "id": 26501, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "15551:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15551:113:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26509, + "nodeType": "ExpressionStatement", + "src": "15551:113:16" + }, + { + "expression": { + "id": 26514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26510, + "name": "authorized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25610, + "src": "15677:10:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26512, + "indexExpression": { + "id": 26511, + "name": "_account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26484, + "src": "15688:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "15677:20:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26513, + "name": "_state", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26486, + "src": "15700:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "15677:29:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26515, + "nodeType": "ExpressionStatement", + "src": "15677:29:16" + }, + { + "eventCall": { + "arguments": [ + { + "id": 26517, + "name": "_account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26484, + "src": "15749:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26518, + "name": "_state", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26486, + "src": "15759:6:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 26516, + "name": "UpdatedAuthorizedWallets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25903, + "src": "15724:24:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool)" + } + }, + "id": 26519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15724:42:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26520, + "nodeType": "EmitStatement", + "src": "15719:47:16" + } + ] + }, + "documentation": { + "id": 26482, + "nodeType": "StructuredDocumentation", + "src": "15063:297:16", + "text": "@notice This is used to change the owner's wallet address. Used to give ownership to another wallet.\n @param _account is the address that will change from authorized or not.\n @param _state (True or False) If true, _account is authorized, if false, _account is not authorized." + }, + "functionSelector": "6ef8834a", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26489, + "kind": "modifierInvocation", + "modifierName": { + "id": 26488, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "15436:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "15436:9:16" + } + ], + "name": "updateAuthorizedList", + "nameLocation": "15375:20:16", + "parameters": { + "id": 26487, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26484, + "mutability": "mutable", + "name": "_account", + "nameLocation": "15404:8:16", + "nodeType": "VariableDeclaration", + "scope": 26522, + "src": "15396:16:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26483, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15396:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26486, + "mutability": "mutable", + "name": "_state", + "nameLocation": "15419:6:16", + "nodeType": "VariableDeclaration", + "scope": 26522, + "src": "15414:11:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 26485, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15414:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15395:31:16" + }, + "returnParameters": { + "id": 26490, + "nodeType": "ParameterList", + "parameters": [], + "src": "15446:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26562, + "nodeType": "FunctionDefinition", + "src": "15965:404:16", + "body": { + "id": 26561, + "nodeType": "Block", + "src": "16024:345:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26531, + "name": "_treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26525, + "src": "16043:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26532, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "16056:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16043:21:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c72656164792073657420746f2074726561737572792061646472657373", + "id": 26534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16066:61:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d8fd2b334ffdaff85e960e68902f1cd8f72ed7a9de0364dd29403a89a8f6a623", + "typeString": "literal_string \"TaxToken.sol::setTreasury() already set to treasury address\"" + }, + "value": "TaxToken.sol::setTreasury() already set to treasury address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d8fd2b334ffdaff85e960e68902f1cd8f72ed7a9de0364dd29403a89a8f6a623", + "typeString": "literal_string \"TaxToken.sol::setTreasury() already set to treasury address\"" + } + ], + "id": 26530, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16035:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16035:93:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26536, + "nodeType": "ExpressionStatement", + "src": "16035:93:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26538, + "name": "_treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26525, + "src": "16147:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 26541, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16168:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 26540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16160:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26539, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16160:7:16", + "typeDescriptions": {} + } + }, + "id": 26542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16160:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16147:23:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a736574547265617375727928292074726561737572792063616e6e6f742062652061646472657373283029", + "id": 26544, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16172:59:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3c66fcb98bfd6265dfb328654c191eefaf229c51395ca7d784723bad25c2fb01", + "typeString": "literal_string \"TaxToken.sol::setTreasury() treasury cannot be address(0)\"" + }, + "value": "TaxToken.sol::setTreasury() treasury cannot be address(0)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3c66fcb98bfd6265dfb328654c191eefaf229c51395ca7d784723bad25c2fb01", + "typeString": "literal_string \"TaxToken.sol::setTreasury() treasury cannot be address(0)\"" + } + ], + "id": 26537, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16139:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16139:93:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26546, + "nodeType": "ExpressionStatement", + "src": "16139:93:16" + }, + { + "expression": { + "id": 26549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26547, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "16245:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26548, + "name": "_treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26525, + "src": "16256:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16245:20:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 26550, + "nodeType": "ExpressionStatement", + "src": "16245:20:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26552, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "16292:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "74727565", + "id": 26553, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16302:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 26551, + "name": "modifyWhitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26751, + "src": "16276:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool)" + } + }, + "id": 26554, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16276:31:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26555, + "nodeType": "ExpressionStatement", + "src": "16276:31:16" + }, + { + "eventCall": { + "arguments": [ + { + "id": 26557, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "16341:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26558, + "name": "_treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26525, + "src": "16351:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26556, + "name": "TreasuryUpdated", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25909, + "src": "16325:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 26559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16325:36:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26560, + "nodeType": "EmitStatement", + "src": "16320:41:16" + } + ] + }, + "documentation": { + "id": 26523, + "nodeType": "StructuredDocumentation", + "src": "15782:177:16", + "text": "@notice Set the treasury (contract) which receives taxes generated through transfer() and transferFrom().\n @param _treasury is the contract address of the treasury." + }, + "functionSelector": "f0f44260", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26528, + "kind": "modifierInvocation", + "modifierName": { + "id": 26527, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "16014:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "16014:9:16" + } + ], + "name": "setTreasury", + "nameLocation": "15974:11:16", + "parameters": { + "id": 26526, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26525, + "mutability": "mutable", + "name": "_treasury", + "nameLocation": "15994:9:16", + "nodeType": "VariableDeclaration", + "scope": 26562, + "src": "15986:17:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26524, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15986:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "15985:19:16" + }, + "returnParameters": { + "id": 26529, + "nodeType": "ParameterList", + "parameters": [], + "src": "16024:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26615, + "nodeType": "FunctionDefinition", + "src": "16555:492:16", + "body": { + "id": 26614, + "nodeType": "Block", + "src": "16612:435:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26571, + "name": "_vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26565, + "src": "16631:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26572, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25562, + "src": "16643:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16631:19:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656164792073657420746f2074726561737572792061646472657373", + "id": 26574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16652:60:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d9dd20fc9c8f119d4fa3c3125b60c04c689ea63ef75ee062b42c6836c27891f9", + "typeString": "literal_string \"TaxToken.sol::setVesting() already set to treasury address\"" + }, + "value": "TaxToken.sol::setVesting() already set to treasury address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d9dd20fc9c8f119d4fa3c3125b60c04c689ea63ef75ee062b42c6836c27891f9", + "typeString": "literal_string \"TaxToken.sol::setVesting() already set to treasury address\"" + } + ], + "id": 26570, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16623:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16623:90:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26576, + "nodeType": "ExpressionStatement", + "src": "16623:90:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26578, + "name": "_vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26565, + "src": "16732:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 26581, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16752:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 26580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16744:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26579, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16744:7:16", + "typeDescriptions": {} + } + }, + "id": 26582, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16744:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16732:22:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a73657456657374696e6728292074726561737572792063616e6e6f742062652061646472657373283029", + "id": 26584, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16756:58:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6a56bd5b1f0853ef269686d0914724903c5e918d8e0caa011b1200b6e4323cdd", + "typeString": "literal_string \"TaxToken.sol::setVesting() treasury cannot be address(0)\"" + }, + "value": "TaxToken.sol::setVesting() treasury cannot be address(0)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_6a56bd5b1f0853ef269686d0914724903c5e918d8e0caa011b1200b6e4323cdd", + "typeString": "literal_string \"TaxToken.sol::setVesting() treasury cannot be address(0)\"" + } + ], + "id": 26577, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "16724:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16724:91:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26586, + "nodeType": "ExpressionStatement", + "src": "16724:91:16" + }, + { + "expression": { + "id": 26589, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26587, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25562, + "src": "16828:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26588, + "name": "_vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26565, + "src": "16838:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "16828:18:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 26590, + "nodeType": "ExpressionStatement", + "src": "16828:18:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26592, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25562, + "src": "16873:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "74727565", + "id": 26593, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16882:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 26591, + "name": "modifyWhitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26751, + "src": "16857:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool)" + } + }, + "id": 26594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16857:30:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26595, + "nodeType": "ExpressionStatement", + "src": "16857:30:16" + }, + { + "assignments": [ + 26597 + ], + "declarations": [ + { + "constant": false, + "id": 26597, + "mutability": "mutable", + "name": "amount", + "nameLocation": "16908:6:16", + "nodeType": "VariableDeclaration", + "scope": 26614, + "src": "16900:14:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26596, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16900:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26603, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 26599, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25562, + "src": "16926:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26598, + "name": "IVesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29873, + "src": "16917:8:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IVesting_$29873_$", + "typeString": "type(contract IVesting)" + } + }, + "id": 26600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16917:17:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IVesting_$29873", + "typeString": "contract IVesting" + } + }, + "id": 26601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAllVestedTokens", + "nodeType": "MemberAccess", + "referencedDeclaration": 29872, + "src": "16917:36:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", + "typeString": "function () view external returns (uint256)" + } + }, + "id": 26602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16917:38:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16900:55:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26605, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25562, + "src": "16972:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26606, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26597, + "src": "16981:6:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26604, + "name": "_mint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28942, + "src": "16966:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 26607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16966:22:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26608, + "nodeType": "ExpressionStatement", + "src": "16966:22:16" + }, + { + "eventCall": { + "arguments": [ + { + "id": 26610, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25562, + "src": "17021:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26611, + "name": "_vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26565, + "src": "17030:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26609, + "name": "VestingUpdated", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25915, + "src": "17006:14:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 26612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17006:33:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26613, + "nodeType": "EmitStatement", + "src": "17001:38:16" + } + ] + }, + "documentation": { + "id": 26563, + "nodeType": "StructuredDocumentation", + "src": "16377:172:16", + "text": "@notice Set the vesting (contract) which is then whitelisted and minted the amount needed for vesting.\n @param _vesting is the contract address of the vesting." + }, + "functionSelector": "6f6ff3bc", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26568, + "kind": "modifierInvocation", + "modifierName": { + "id": 26567, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "16602:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "16602:9:16" + } + ], + "name": "setVesting", + "nameLocation": "16564:10:16", + "parameters": { + "id": 26566, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26565, + "mutability": "mutable", + "name": "_vesting", + "nameLocation": "16583:8:16", + "nodeType": "VariableDeclaration", + "scope": 26615, + "src": "16575:16:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26564, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16575:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "16574:18:16" + }, + "returnParameters": { + "id": 26569, + "nodeType": "ParameterList", + "parameters": [], + "src": "16612:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26655, + "nodeType": "FunctionDefinition", + "src": "17224:464:16", + "body": { + "id": 26654, + "nodeType": "Block", + "src": "17285:403:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26624, + "name": "_depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26618, + "src": "17304:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26625, + "name": "depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25564, + "src": "17318:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "17304:23:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c72656164792073657420746f2074726561737572792061646472657373", + "id": 26627, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17329:62:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_75cceb53eb413a21e857fc1e54c79f8cd613921189af153b3f15bd7759a28d20", + "typeString": "literal_string \"TaxToken.sol::setdepositor() already set to treasury address\"" + }, + "value": "TaxToken.sol::setdepositor() already set to treasury address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_75cceb53eb413a21e857fc1e54c79f8cd613921189af153b3f15bd7759a28d20", + "typeString": "literal_string \"TaxToken.sol::setdepositor() already set to treasury address\"" + } + ], + "id": 26623, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17296:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17296:96:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26629, + "nodeType": "ExpressionStatement", + "src": "17296:96:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26631, + "name": "_depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26618, + "src": "17411:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 26634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17433:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 26633, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17425:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26632, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17425:7:16", + "typeDescriptions": {} + } + }, + "id": 26635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17425:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "17411:24:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726561737572792063616e6e6f742062652061646472657373283029", + "id": 26637, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17437:60:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_456af4f56327e7253fbf66ccc25dd808ec2d6097ced7191be6b8928dae164565", + "typeString": "literal_string \"TaxToken.sol::setdepositor() treasury cannot be address(0)\"" + }, + "value": "TaxToken.sol::setdepositor() treasury cannot be address(0)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_456af4f56327e7253fbf66ccc25dd808ec2d6097ced7191be6b8928dae164565", + "typeString": "literal_string \"TaxToken.sol::setdepositor() treasury cannot be address(0)\"" + } + ], + "id": 26630, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17403:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17403:95:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26639, + "nodeType": "ExpressionStatement", + "src": "17403:95:16" + }, + { + "expression": { + "id": 26642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26640, + "name": "depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25564, + "src": "17511:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26641, + "name": "_depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26618, + "src": "17523:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "17511:22:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 26643, + "nodeType": "ExpressionStatement", + "src": "17511:22:16" + }, + { + "expression": { + "arguments": [ + { + "id": 26645, + "name": "depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25564, + "src": "17560:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "66616c7365", + "id": 26646, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17571:5:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 26644, + "name": "modifyWhitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26751, + "src": "17544:15:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,bool)" + } + }, + "id": 26647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17544:33:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26648, + "nodeType": "ExpressionStatement", + "src": "17544:33:16" + }, + { + "documentation": "@dev Depositor should not be whitelisted.", + "eventCall": { + "arguments": [ + { + "id": 26650, + "name": "depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25564, + "src": "17658:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26651, + "name": "_depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26618, + "src": "17669:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26649, + "name": "DepositorUpdated", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25921, + "src": "17641:16:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 26652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17641:39:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26653, + "nodeType": "EmitStatement", + "src": "17636:44:16" + } + ] + }, + "documentation": { + "id": 26616, + "nodeType": "StructuredDocumentation", + "src": "17055:163:16", + "text": "@notice Set the depositor (contract) which is the backend contract for the dapp.\n @param _depositor is the contract address of the depositor contract." + }, + "functionSelector": "f2c098b7", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26621, + "kind": "modifierInvocation", + "modifierName": { + "id": 26620, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "17275:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "17275:9:16" + } + ], + "name": "setDepositor", + "nameLocation": "17233:12:16", + "parameters": { + "id": 26619, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26618, + "mutability": "mutable", + "name": "_depositor", + "nameLocation": "17254:10:16", + "nodeType": "VariableDeclaration", + "scope": 26655, + "src": "17246:18:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26617, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17246:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "17245:20:16" + }, + "returnParameters": { + "id": 26622, + "nodeType": "ParameterList", + "parameters": [], + "src": "17285:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26674, + "nodeType": "FunctionDefinition", + "src": "17916:148:16", + "body": { + "id": 26673, + "nodeType": "Block", + "src": "17991:73:16", + "statements": [ + { + "expression": { + "id": 26671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26663, + "name": "maxContractTokenBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25578, + "src": "18002:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26664, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26658, + "src": "18029:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 26665, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18039:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 26666, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "18045:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 26667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18045:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "18039:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18029:26:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 26670, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18028:28:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18002:54:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26672, + "nodeType": "ExpressionStatement", + "src": "18002:54:16" + } + ] + }, + "documentation": { + "id": 26656, + "nodeType": "StructuredDocumentation", + "src": "17696:214:16", + "text": "@notice Updates the maxContractTokebBalance var which is used to set the distribution threshhold of royalties to the Treasury.\n @param _amount is the amount of tokens that need to be hit to distribute." + }, + "functionSelector": "a97ed4d2", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26661, + "kind": "modifierInvocation", + "modifierName": { + "id": 26660, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "17981:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "17981:9:16" + } + ], + "name": "updateMaxContractTokenBalance", + "nameLocation": "17925:29:16", + "parameters": { + "id": 26659, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26658, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "17963:7:16", + "nodeType": "VariableDeclaration", + "scope": 26674, + "src": "17955:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26657, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17955:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "17954:17:16" + }, + "returnParameters": { + "id": 26662, + "nodeType": "ParameterList", + "parameters": [], + "src": "17991:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26704, + "nodeType": "FunctionDefinition", + "src": "18347:278:16", + "body": { + "id": 26703, + "nodeType": "Block", + "src": "18415:210:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26683, + "name": "_maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26677, + "src": "18434:12:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 26684, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18449:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18434:16:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742829205f6d61785478416d6f756e74206d7573742062652067742030", + "id": 26686, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18452:61:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_25c420d42d41366d2ad1ff9d7834da230d8ff2c0c2cb66ef6d56d8bb56039760", + "typeString": "literal_string \"TaxToken.sol::updateMaxTxAmount() _maxTxAmount must be gt 0\"" + }, + "value": "TaxToken.sol::updateMaxTxAmount() _maxTxAmount must be gt 0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_25c420d42d41366d2ad1ff9d7834da230d8ff2c0c2cb66ef6d56d8bb56039760", + "typeString": "literal_string \"TaxToken.sol::updateMaxTxAmount() _maxTxAmount must be gt 0\"" + } + ], + "id": 26682, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "18426:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26687, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18426:88:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26688, + "nodeType": "ExpressionStatement", + "src": "18426:88:16" + }, + { + "expression": { + "id": 26697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26689, + "name": "maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25576, + "src": "18527:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26690, + "name": "_maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26677, + "src": "18542:12:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 26691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18557:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 26692, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "18563:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 26693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18563:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "18557:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18542:31:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 26696, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18541:33:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18527:47:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26698, + "nodeType": "ExpressionStatement", + "src": "18527:47:16" + }, + { + "eventCall": { + "arguments": [ + { + "id": 26700, + "name": "maxTxAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25576, + "src": "18605:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26699, + "name": "MaxTxUpdated", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25927, + "src": "18592:12:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 26701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18592:25:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26702, + "nodeType": "EmitStatement", + "src": "18587:30:16" + } + ] + }, + "documentation": { + "id": 26675, + "nodeType": "StructuredDocumentation", + "src": "18072:269:16", + "text": "@notice Adjust maxTxAmount value (maximum amount transferrable in a single transaction).\n @dev Does not affect whitelisted wallets.\n @param _maxTxAmount is the max amount of tokens that can be transacted at one time for a non-whitelisted wallet." + }, + "functionSelector": "6256d181", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26680, + "kind": "modifierInvocation", + "modifierName": { + "id": 26679, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "18405:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "18405:9:16" + } + ], + "name": "updateMaxTxAmount", + "nameLocation": "18356:17:16", + "parameters": { + "id": 26678, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26677, + "mutability": "mutable", + "name": "_maxTxAmount", + "nameLocation": "18382:12:16", + "nodeType": "VariableDeclaration", + "scope": 26704, + "src": "18374:20:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26676, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18374:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18373:22:16" + }, + "returnParameters": { + "id": 26681, + "nodeType": "ParameterList", + "parameters": [], + "src": "18415:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26734, + "nodeType": "FunctionDefinition", + "src": "18883:298:16", + "body": { + "id": 26733, + "nodeType": "Block", + "src": "18955:226:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26713, + "name": "_maxWalletSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26707, + "src": "18974:14:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 26714, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18991:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18974:18:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a652829205f6d617857616c6c657453697a65206d7573742062652067742030", + "id": 26716, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18994:65:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cb5e43ec07cb462f298e1014d3eb3b86e7fc50adcddedb4b8adadac38afa3308", + "typeString": "literal_string \"TaxToken.sol::updateMaxWalletSize() _maxWalletSize must be gt 0\"" + }, + "value": "TaxToken.sol::updateMaxWalletSize() _maxWalletSize must be gt 0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_cb5e43ec07cb462f298e1014d3eb3b86e7fc50adcddedb4b8adadac38afa3308", + "typeString": "literal_string \"TaxToken.sol::updateMaxWalletSize() _maxWalletSize must be gt 0\"" + } + ], + "id": 26712, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "18966:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18966:94:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26718, + "nodeType": "ExpressionStatement", + "src": "18966:94:16" + }, + { + "expression": { + "id": 26727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 26719, + "name": "maxWalletSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25574, + "src": "19073:13:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26725, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26720, + "name": "_maxWalletSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26707, + "src": "19090:14:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26724, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 26721, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19107:2:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 26722, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28642, + "src": "19113:8:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", + "typeString": "function () view returns (uint8)" + } + }, + "id": 26723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19113:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "19107:16:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "19090:33:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 26726, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "19089:35:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "19073:51:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26728, + "nodeType": "ExpressionStatement", + "src": "19073:51:16" + }, + { + "eventCall": { + "arguments": [ + { + "id": 26730, + "name": "maxWalletSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25574, + "src": "19159:13:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26729, + "name": "MaxWalletUpdated", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25931, + "src": "19142:16:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 26731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19142:31:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26732, + "nodeType": "EmitStatement", + "src": "19137:36:16" + } + ] + }, + "documentation": { + "id": 26705, + "nodeType": "StructuredDocumentation", + "src": "18633:244:16", + "text": "@notice This function is used to set the max amount of tokens a wallet can hold.\n @dev Does not affect whitelisted wallets.\n @param _maxWalletSize is the max amount of tokens that can be held on a non-whitelisted wallet." + }, + "functionSelector": "24887e80", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26710, + "kind": "modifierInvocation", + "modifierName": { + "id": 26709, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "18945:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "18945:9:16" + } + ], + "name": "updateMaxWalletSize", + "nameLocation": "18892:19:16", + "parameters": { + "id": 26708, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26707, + "mutability": "mutable", + "name": "_maxWalletSize", + "nameLocation": "18920:14:16", + "nodeType": "VariableDeclaration", + "scope": 26734, + "src": "18912:22:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26706, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18912:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18911:24:16" + }, + "returnParameters": { + "id": 26711, + "nodeType": "ParameterList", + "parameters": [], + "src": "18955:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26751, + "nodeType": "FunctionDefinition", + "src": "19574:130:16", + "body": { + "id": 26750, + "nodeType": "Block", + "src": "19652:52:16", + "statements": [ + { + "expression": { + "id": 26748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26744, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "19663:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26746, + "indexExpression": { + "id": 26745, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26737, + "src": "19673:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "19663:18:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26747, + "name": "_whitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26739, + "src": "19684:12:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "19663:33:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26749, + "nodeType": "ExpressionStatement", + "src": "19663:33:16" + } + ] + }, + "documentation": { + "id": 26735, + "nodeType": "StructuredDocumentation", + "src": "19189:379:16", + "text": "@notice This function is used to add wallets to the whitelist mapping.\n @dev Whitelisted wallets are not affected by maxWalletSize, maxTxAmount, or taxes.\n @param _wallet is the wallet address that will have their whitelist status modified.\n @param _whitelisted use True to whitelist a wallet, otherwise use False to remove wallet from whitelist." + }, + "functionSelector": "060d206e", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26742, + "kind": "modifierInvocation", + "modifierName": { + "id": 26741, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "19642:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "19642:9:16" + } + ], + "name": "modifyWhitelist", + "nameLocation": "19583:15:16", + "parameters": { + "id": 26740, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26737, + "mutability": "mutable", + "name": "_wallet", + "nameLocation": "19607:7:16", + "nodeType": "VariableDeclaration", + "scope": 26751, + "src": "19599:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26736, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19599:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26739, + "mutability": "mutable", + "name": "_whitelisted", + "nameLocation": "19621:12:16", + "nodeType": "VariableDeclaration", + "scope": 26751, + "src": "19616:17:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 26738, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19616:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19598:36:16" + }, + "returnParameters": { + "id": 26743, + "nodeType": "ParameterList", + "parameters": [], + "src": "19652:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 26824, + "nodeType": "FunctionDefinition", + "src": "20148:952:16", + "body": { + "id": 26823, + "nodeType": "Block", + "src": "20226:874:16", + "statements": [ + { + "condition": { + "id": 26761, + "name": "_blacklist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26756, + "src": "20241:10:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26816, + "nodeType": "IfStatement", + "src": "20237:814:16", + "trueBody": { + "id": 26815, + "nodeType": "Block", + "src": "20253:798:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "20276:19:16", + "subExpression": { + "baseExpression": { + "id": 26763, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25590, + "src": "20277:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26765, + "indexExpression": { + "id": 26764, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "20287:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20277:18:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c2063616e6e6f7420626c61636b6c69737420612077686974656c69737465642077616c6c6574", + "id": 26767, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20297:72:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8dbb99e6e299a3c2cdb65b7c997d84d2ebc2e24a5baf2c2f482146a011f03d4b", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist a whitelisted wallet\"" + }, + "value": "TaxToken.sol::modifyBlacklist(), cannot blacklist a whitelisted wallet" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_8dbb99e6e299a3c2cdb65b7c997d84d2ebc2e24a5baf2c2f482146a011f03d4b", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist a whitelisted wallet\"" + } + ], + "id": 26762, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "20268:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26768, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20268:102:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26769, + "nodeType": "ExpressionStatement", + "src": "20268:102:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26771, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "20393:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26772, + "name": "treasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25560, + "src": "20404:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "20393:19:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c2063616e6e6f7420626c61636b6c697374207472656173757279", + "id": 26774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20414:60:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_92d050abdf5757221f3960df74755de3d8440cdf5378bc13f440afc685d0e3cc", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist treasury\"" + }, + "value": "TaxToken.sol::modifyBlacklist(), cannot blacklist treasury" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_92d050abdf5757221f3960df74755de3d8440cdf5378bc13f440afc685d0e3cc", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist treasury\"" + } + ], + "id": 26770, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "20385:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20385:90:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26776, + "nodeType": "ExpressionStatement", + "src": "20385:90:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26778, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "20498:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26779, + "name": "depositor", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25564, + "src": "20509:9:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "20498:20:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c2063616e6e6f7420626c61636b6c697374206465706f7369746f72", + "id": 26781, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20520:61:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dfd0cc814aa8b6e45262c939b051624a45cfc8b29ef09b3273c5fffc3e9f5eaf", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist depositor\"" + }, + "value": "TaxToken.sol::modifyBlacklist(), cannot blacklist depositor" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_dfd0cc814aa8b6e45262c939b051624a45cfc8b29ef09b3273c5fffc3e9f5eaf", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist depositor\"" + } + ], + "id": 26777, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "20490:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20490:92:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26783, + "nodeType": "ExpressionStatement", + "src": "20490:92:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26785, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "20605:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26786, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25562, + "src": "20616:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "20605:18:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c2063616e6e6f7420626c61636b6c6973742076657374696e67", + "id": 26788, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20625:59:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7f43d7a0cec6393584cf0585879269fa24666da125167b7fb66c36fceaa118be", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist vesting\"" + }, + "value": "TaxToken.sol::modifyBlacklist(), cannot blacklist vesting" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_7f43d7a0cec6393584cf0585879269fa24666da125167b7fb66c36fceaa118be", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist vesting\"" + } + ], + "id": 26784, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "20597:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20597:88:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26790, + "nodeType": "ExpressionStatement", + "src": "20597:88:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26792, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "20708:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26793, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25567, + "src": "20719:12:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "20708:23:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f55544552", + "id": 26795, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20733:70:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a2a857c7dd8587af331a70c1a6b99adbebd68437cadeaa4e3fb29afbcf05e58f", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap ROUTER\"" + }, + "value": "TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap ROUTER" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_a2a857c7dd8587af331a70c1a6b99adbebd68437cadeaa4e3fb29afbcf05e58f", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap ROUTER\"" + } + ], + "id": 26791, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "20700:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26796, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20700:104:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26797, + "nodeType": "ExpressionStatement", + "src": "20700:104:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26799, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "20827:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 26800, + "name": "UNISWAP_V2_PAIR", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25569, + "src": "20838:15:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "20827:26:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c2063616e6e6f7420626c61636b6c6973742074686520556e69737761702050414952", + "id": 26802, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20855:68:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b9fb5646cb9700dab7835a52b080cfb811f3af7a9dfccedbc61066b559c2280c", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap PAIR\"" + }, + "value": "TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap PAIR" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b9fb5646cb9700dab7835a52b080cfb811f3af7a9dfccedbc61066b559c2280c", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist the Uniswap PAIR\"" + } + ], + "id": 26798, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "20819:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20819:105:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26804, + "nodeType": "ExpressionStatement", + "src": "20819:105:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26806, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "20947:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 26809, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "20966:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 26808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20958:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26807, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20958:7:16", + "typeDescriptions": {} + } + }, + "id": 26810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20958:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "20947:24:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c2063616e6e6f7420626c61636b6c697374207468697320636f6e7472616374", + "id": 26812, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20973:65:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e473275cb95f323c0e004c3332c144dfb5b0dd4ab0c0c8b5828551e5933c9532", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist this contract\"" + }, + "value": "TaxToken.sol::modifyBlacklist(), cannot blacklist this contract" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_e473275cb95f323c0e004c3332c144dfb5b0dd4ab0c0c8b5828551e5933c9532", + "typeString": "literal_string \"TaxToken.sol::modifyBlacklist(), cannot blacklist this contract\"" + } + ], + "id": 26805, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "20939:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26813, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20939:100:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26814, + "nodeType": "ExpressionStatement", + "src": "20939:100:16" + } + ] + } + }, + { + "expression": { + "id": 26821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26817, + "name": "blacklist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25585, + "src": "21061:9:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 26819, + "indexExpression": { + "id": 26818, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26754, + "src": "21071:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "21061:18:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 26820, + "name": "_blacklist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26756, + "src": "21082:10:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "21061:31:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 26822, + "nodeType": "ExpressionStatement", + "src": "21061:31:16" + } + ] + }, + "documentation": { + "id": 26752, + "nodeType": "StructuredDocumentation", + "src": "19712:430:16", + "text": "@notice This function is used to add or remove wallets from the blacklist.\n @dev Blacklisted wallets cannot perform transfer() or transferFrom().\n unless it's to or from a whitelisted wallet.\n @param _wallet is the wallet address that will have their blacklist status modified.\n @param _blacklist use True to blacklist a wallet, otherwise use False to remove wallet from blacklist." + }, + "functionSelector": "cc6df138", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26759, + "kind": "modifierInvocation", + "modifierName": { + "id": 26758, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "20216:9:16" + }, + "nodeType": "ModifierInvocation", + "src": "20216:9:16" + } + ], + "name": "modifyBlacklist", + "nameLocation": "20157:15:16", + "parameters": { + "id": 26757, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26754, + "mutability": "mutable", + "name": "_wallet", + "nameLocation": "20181:7:16", + "nodeType": "VariableDeclaration", + "scope": 26824, + "src": "20173:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26753, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20173:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26756, + "mutability": "mutable", + "name": "_blacklist", + "nameLocation": "20195:10:16", + "nodeType": "VariableDeclaration", + "scope": 26824, + "src": "20190:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 26755, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20190:4:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20172:34:16" + }, + "returnParameters": { + "id": 26760, + "nodeType": "ParameterList", + "parameters": [], + "src": "20226:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26840, + "nodeType": "FunctionDefinition", + "src": "21508:114:16", + "body": { + "id": 26839, + "nodeType": "Block", + "src": "21580:42:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26835, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26827, + "src": "21597:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26836, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26829, + "src": "21606:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26834, + "name": "_mint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28942, + "src": "21591:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 26837, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21591:23:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26838, + "nodeType": "ExpressionStatement", + "src": "21591:23:16" + } + ] + }, + "documentation": { + "id": 26825, + "nodeType": "StructuredDocumentation", + "src": "21112:390:16", + "text": "@notice This function will create new tokens and adding them to total supply.\n @dev Does not truncate so amount needs to include the 18 decimal points.\n Needed too add new tokens to supply if we want to get listed on multiple exchanges.\n @param _wallet the account we're minting tokens to.\n @param _amount the amount of tokens we're minting." + }, + "functionSelector": "40c10f19", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [], + "id": 26832, + "kind": "modifierInvocation", + "modifierName": { + "id": 26831, + "name": "onlyAuthorized", + "nodeType": "IdentifierPath", + "referencedDeclaration": 25867, + "src": "21563:14:16" + }, + "nodeType": "ModifierInvocation", + "src": "21563:16:16" + } + ], + "name": "mint", + "nameLocation": "21517:4:16", + "parameters": { + "id": 26830, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26827, + "mutability": "mutable", + "name": "_wallet", + "nameLocation": "21530:7:16", + "nodeType": "VariableDeclaration", + "scope": 26840, + "src": "21522:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26826, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21522:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26829, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "21547:7:16", + "nodeType": "VariableDeclaration", + "scope": 26840, + "src": "21539:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26828, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21539:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "21521:34:16" + }, + "returnParameters": { + "id": 26833, + "nodeType": "ParameterList", + "parameters": [], + "src": "21580:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 26856, + "nodeType": "FunctionDefinition", + "src": "21935:114:16", + "body": { + "id": 26855, + "nodeType": "Block", + "src": "22007:42:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26851, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26843, + "src": "22024:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26852, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26845, + "src": "22033:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26850, + "name": "_burn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28998, + "src": "22018:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 26853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22018:23:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26854, + "nodeType": "ExpressionStatement", + "src": "22018:23:16" + } + ] + }, + "documentation": { + "id": 26841, + "nodeType": "StructuredDocumentation", + "src": "21630:299:16", + "text": "@notice This function will destroy existing tokens and deduct them from total supply.\n @dev Does not truncate so amount needs to include the 18 decimal points.\n @param _wallet the account we're burning tokens from.\n @param _amount the amount of tokens we're burning." + }, + "functionSelector": "9dc29fac", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [], + "id": 26848, + "kind": "modifierInvocation", + "modifierName": { + "id": 26847, + "name": "onlyAuthorized", + "nodeType": "IdentifierPath", + "referencedDeclaration": 25867, + "src": "21990:14:16" + }, + "nodeType": "ModifierInvocation", + "src": "21990:16:16" + } + ], + "name": "burn", + "nameLocation": "21944:4:16", + "parameters": { + "id": 26846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26843, + "mutability": "mutable", + "name": "_wallet", + "nameLocation": "21957:7:16", + "nodeType": "VariableDeclaration", + "scope": 26856, + "src": "21949:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26842, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21949:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26845, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "21974:7:16", + "nodeType": "VariableDeclaration", + "scope": 26856, + "src": "21966:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26844, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21966:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "21948:34:16" + }, + "returnParameters": { + "id": 26849, + "nodeType": "ParameterList", + "parameters": [], + "src": "22007:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 26884, + "nodeType": "FunctionDefinition", + "src": "22672:222:16", + "body": { + "id": 26883, + "nodeType": "Block", + "src": "22752:142:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26867, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26859, + "src": "22769:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26868, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26861, + "src": "22778:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26866, + "name": "_mint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28942, + "src": "22763:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 26869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22763:23:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26870, + "nodeType": "ExpressionStatement", + "src": "22763:23:16" + }, + { + "expression": { + "id": 26875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26871, + "name": "industryTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25619, + "src": "22799:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 26873, + "indexExpression": { + "id": 26872, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26859, + "src": "22814:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "22799:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 26874, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26861, + "src": "22826:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "22799:34:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26876, + "nodeType": "ExpressionStatement", + "src": "22799:34:16" + }, + { + "expression": { + "id": 26881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26877, + "name": "lifetimeIndustryTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25624, + "src": "22844:22:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 26879, + "indexExpression": { + "id": 26878, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26859, + "src": "22867:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "22844:31:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 26880, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26861, + "src": "22879:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "22844:42:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26882, + "nodeType": "ExpressionStatement", + "src": "22844:42:16" + } + ] + }, + "documentation": { + "id": 26857, + "nodeType": "StructuredDocumentation", + "src": "22057:609:16", + "text": "@notice This function is used to mint tokens and log their creation to the industry wallet mappings.\n @dev Any tokens minted through this process can only be used inside of the NFT marketplace to mint new NFTS (can only be burned).\n @dev Users may still buy and sell new or prior existing non-minted tokens but these will be soulbound. \n @dev Does not truncate so amount needs to include the 18 decimal points.\n @param _wallet is the wallet address that will recieve these minted tokens.\n @param _amount is the amount of tokens to be minted into _wallet." + }, + "functionSelector": "8f3f5254", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26864, + "kind": "modifierInvocation", + "modifierName": { + "id": 26863, + "name": "onlyAuthorized", + "nodeType": "IdentifierPath", + "referencedDeclaration": 25867, + "src": "22737:14:16" + }, + "nodeType": "ModifierInvocation", + "src": "22737:14:16" + } + ], + "name": "industryMint", + "nameLocation": "22681:12:16", + "parameters": { + "id": 26862, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26859, + "mutability": "mutable", + "name": "_wallet", + "nameLocation": "22702:7:16", + "nodeType": "VariableDeclaration", + "scope": 26884, + "src": "22694:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26858, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22694:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26861, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "22719:7:16", + "nodeType": "VariableDeclaration", + "scope": 26884, + "src": "22711:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26860, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22711:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22693:34:16" + }, + "returnParameters": { + "id": 26865, + "nodeType": "ParameterList", + "parameters": [], + "src": "22752:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26944, + "nodeType": "FunctionDefinition", + "src": "23211:562:16", + "body": { + "id": 26943, + "nodeType": "Block", + "src": "23291:482:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 26900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26895, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26887, + "src": "23310:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 26898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23329:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 26897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23321:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26896, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23321:7:16", + "typeDescriptions": {} + } + }, + "id": 26899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23321:10:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "23310:21:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c2043616e6e6f74206275726e20746f207a65726f20616464726573732e", + "id": 26901, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23333:60:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f231facb1cc5ea0d8e9835d93612e0e56c924e634d7fa7167dd1a834d96471ca", + "typeString": "literal_string \"TaxToken.sol::industryBurn(), Cannot burn to zero address.\"" + }, + "value": "TaxToken.sol::industryBurn(), Cannot burn to zero address." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f231facb1cc5ea0d8e9835d93612e0e56c924e634d7fa7167dd1a834d96471ca", + "typeString": "literal_string \"TaxToken.sol::industryBurn(), Cannot burn to zero address.\"" + } + ], + "id": 26894, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "23302:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23302:92:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26903, + "nodeType": "ExpressionStatement", + "src": "23302:92:16" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 26906, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26887, + "src": "23423:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26905, + "name": "balanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28666, + "src": "23413:9:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view returns (uint256)" + } + }, + "id": 26907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23413:18:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 26908, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26889, + "src": "23435:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23413:29:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e73756666696369656e742062616c616e6365206f66202450524f564520746f206275726e2e", + "id": 26910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23444:71:16", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ebdcc7ad8632b6a53f4f7c5cb04e205990a96d1451e0a0ba18b456da8544235", + "typeString": "literal_string \"TaxToken.sol::industryBurn(), Insufficient balance of $PROVE to burn.\"" + }, + "value": "TaxToken.sol::industryBurn(), Insufficient balance of $PROVE to burn." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_2ebdcc7ad8632b6a53f4f7c5cb04e205990a96d1451e0a0ba18b456da8544235", + "typeString": "literal_string \"TaxToken.sol::industryBurn(), Insufficient balance of $PROVE to burn.\"" + } + ], + "id": 26904, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "23405:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 26911, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23405:111:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26912, + "nodeType": "ExpressionStatement", + "src": "23405:111:16" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 26913, + "name": "industryTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25619, + "src": "23533:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 26915, + "indexExpression": { + "id": 26914, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26887, + "src": "23548:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23533:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 26916, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26889, + "src": "23560:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23533:34:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 26941, + "nodeType": "Block", + "src": "23674:92:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26931, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26887, + "src": "23695:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26932, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26889, + "src": "23704:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26930, + "name": "_burn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28998, + "src": "23689:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 26933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23689:23:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26934, + "nodeType": "ExpressionStatement", + "src": "23689:23:16" + }, + { + "expression": { + "id": 26939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26935, + "name": "industryTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25619, + "src": "23727:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 26937, + "indexExpression": { + "id": 26936, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26887, + "src": "23742:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "23727:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 26938, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23753:1:16", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "23727:27:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26940, + "nodeType": "ExpressionStatement", + "src": "23727:27:16" + } + ] + }, + "id": 26942, + "nodeType": "IfStatement", + "src": "23529:237:16", + "trueBody": { + "id": 26929, + "nodeType": "Block", + "src": "23569:99:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 26919, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26887, + "src": "23590:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 26920, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26889, + "src": "23599:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 26918, + "name": "_burn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28998, + "src": "23584:5:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 26921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23584:23:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 26922, + "nodeType": "ExpressionStatement", + "src": "23584:23:16" + }, + { + "expression": { + "id": 26927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 26923, + "name": "industryTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25619, + "src": "23622:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 26925, + "indexExpression": { + "id": 26924, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26887, + "src": "23637:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "23622:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "id": 26926, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26889, + "src": "23649:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23622:34:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 26928, + "nodeType": "ExpressionStatement", + "src": "23622:34:16" + } + ] + } + } + ] + }, + "documentation": { + "id": 26885, + "nodeType": "StructuredDocumentation", + "src": "22902:303:16", + "text": "@notice This function will destroy existing tokens and deduct them from total supply.\n @dev Does not truncate so amount needs to include the 18 decimal points. \n @param _wallet the account we're burning tokens from.\n @param _amount the amount of tokens we're burning." + }, + "functionSelector": "f5423c89", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 26892, + "kind": "modifierInvocation", + "modifierName": { + "id": 26891, + "name": "onlyAuthorized", + "nodeType": "IdentifierPath", + "referencedDeclaration": 25867, + "src": "23276:14:16" + }, + "nodeType": "ModifierInvocation", + "src": "23276:14:16" + } + ], + "name": "industryBurn", + "nameLocation": "23220:12:16", + "parameters": { + "id": 26890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26887, + "mutability": "mutable", + "name": "_wallet", + "nameLocation": "23241:7:16", + "nodeType": "VariableDeclaration", + "scope": 26944, + "src": "23233:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26886, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23233:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26889, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "23258:7:16", + "nodeType": "VariableDeclaration", + "scope": 26944, + "src": "23250:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23250:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23232:34:16" + }, + "returnParameters": { + "id": 26893, + "nodeType": "ParameterList", + "parameters": [], + "src": "23291:0:16" + }, + "scope": 27006, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 26958, + "nodeType": "FunctionDefinition", + "src": "24030:115:16", + "body": { + "id": 26957, + "nodeType": "Block", + "src": "24095:50:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 26953, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "24131:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 26952, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24123:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26951, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24123:7:16", + "typeDescriptions": {} + } + }, + "id": 26954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24123:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26950, + "name": "balanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28666, + "src": "24113:9:16", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view returns (uint256)" + } + }, + "id": 26955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24113:24:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 26949, + "id": 26956, + "nodeType": "Return", + "src": "24106:31:16" + } + ] + }, + "documentation": { + "id": 26945, + "nodeType": "StructuredDocumentation", + "src": "23802:222:16", + "text": "@notice This functions returns the number of taxToken are inside the contract.\n NOTE: These tokens have most likely been accrued from taxes.\n @return uint256 the num of tokens stored in this contract." + }, + "functionSelector": "317d9453", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getContractTokenBalance", + "nameLocation": "24039:23:16", + "parameters": { + "id": 26946, + "nodeType": "ParameterList", + "parameters": [], + "src": "24062:2:16" + }, + "returnParameters": { + "id": 26949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26948, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 26958, + "src": "24086:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26947, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24086:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24085:9:16" + }, + "scope": 27006, + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "id": 27005, + "nodeType": "FunctionDefinition", + "src": "24759:542:16", + "body": { + "id": 27004, + "nodeType": "Block", + "src": "24901:400:16", + "statements": [ + { + "assignments": [ + 26973 + ], + "declarations": [ + { + "constant": false, + "id": 26973, + "mutability": "mutable", + "name": "fullBalance", + "nameLocation": "24917:11:16", + "nodeType": "VariableDeclaration", + "scope": 27004, + "src": "24912:16:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26972, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24912:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26983, + "initialValue": { + "arguments": [ + { + "id": 26981, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26961, + "src": "24963:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 26977, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "24946:4:16", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_TaxToken_$27006", + "typeString": "contract TaxToken" + } + ], + "id": 26976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24938:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 26975, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24938:7:16", + "typeDescriptions": {} + } + }, + "id": 26978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24938:13:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26974, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "24931:6:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeString": "type(contract IERC20)" + } + }, + "id": 26979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24931:21:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC20_$29143", + "typeString": "contract IERC20" + } + }, + "id": 26980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 29082, + "src": "24931:31:16", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 26982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24931:40:16", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24912:59:16" + }, + { + "assignments": [ + 26985 + ], + "declarations": [ + { + "constant": false, + "id": 26985, + "mutability": "mutable", + "name": "industryBalance", + "nameLocation": "24987:15:16", + "nodeType": "VariableDeclaration", + "scope": 27004, + "src": "24982:20:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26984, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24982:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26989, + "initialValue": { + "baseExpression": { + "id": 26986, + "name": "industryTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25619, + "src": "25005:14:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 26988, + "indexExpression": { + "id": 26987, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26961, + "src": "25020:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "25005:23:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24982:46:16" + }, + { + "assignments": [ + 26991 + ], + "declarations": [ + { + "constant": false, + "id": 26991, + "mutability": "mutable", + "name": "difference", + "nameLocation": "25044:10:16", + "nodeType": "VariableDeclaration", + "scope": 27004, + "src": "25039:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26990, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25039:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 26995, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 26994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 26992, + "name": "fullBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26973, + "src": "25057:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 26993, + "name": "industryBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26985, + "src": "25071:15:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25057:29:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25039:47:16" + }, + { + "expression": { + "components": [ + { + "id": 26996, + "name": "fullBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26973, + "src": "25219:11:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 26997, + "name": "industryBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26985, + "src": "25232:15:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 26998, + "name": "difference", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26991, + "src": "25249:10:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "baseExpression": { + "id": 26999, + "name": "lifetimeIndustryTokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25624, + "src": "25261:22:16", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 27001, + "indexExpression": { + "id": 27000, + "name": "_wallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26961, + "src": "25284:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "25261:31:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 27002, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "25218:75:16", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "tuple(uint256,uint256,uint256,uint256)" + } + }, + "functionReturnParameters": 26971, + "id": 27003, + "nodeType": "Return", + "src": "25211:82:16" + } + ] + }, + "documentation": { + "id": 26959, + "nodeType": "StructuredDocumentation", + "src": "24153:600:16", + "text": "@notice This function is a VIEW function that returns the amount of industry tokens,\n full balance, and normal tokens a wallet has.\n @dev This function is for the front end to pull industry data for a specific wallet.\n @return numTokens the amount of taxTokens the _wallet holds.\n @return numIndustryTokens the amount of tokens they hold that is industry tokens.\n @return numDifference the amount of tokens they have that are NOT industry tokens.\n @return lifetime the amount of industry tokens that have been minted to _wallet in total." + }, + "functionSelector": "b5b44106", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getIndustryTokens", + "nameLocation": "24768:17:16", + "parameters": { + "id": 26962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26961, + "mutability": "mutable", + "name": "_wallet", + "nameLocation": "24794:7:16", + "nodeType": "VariableDeclaration", + "scope": 27005, + "src": "24786:15:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 26960, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24786:7:16", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "24785:17:16" + }, + "returnParameters": { + "id": 26971, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 26964, + "mutability": "mutable", + "name": "numTokens", + "nameLocation": "24831:9:16", + "nodeType": "VariableDeclaration", + "scope": 27005, + "src": "24826:14:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26963, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24826:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26966, + "mutability": "mutable", + "name": "numIndustryTokens", + "nameLocation": "24847:17:16", + "nodeType": "VariableDeclaration", + "scope": 27005, + "src": "24842:22:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26965, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24842:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26968, + "mutability": "mutable", + "name": "numDifference", + "nameLocation": "24871:13:16", + "nodeType": "VariableDeclaration", + "scope": 27005, + "src": "24866:18:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26967, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24866:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 26970, + "mutability": "mutable", + "name": "lifetime", + "nameLocation": "24891:8:16", + "nodeType": "VariableDeclaration", + "scope": 27005, + "src": "24886:13:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26969, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24886:4:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24825:75:16" + }, + "scope": 27006, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 25547, + "name": "ERC20", + "nodeType": "IdentifierPath", + "referencedDeclaration": 29066, + "src": "849:5:16" + }, + "id": 25548, + "nodeType": "InheritanceSpecifier", + "src": "849:5:16" + }, + { + "baseName": { + "id": 25549, + "name": "Ownable", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28255, + "src": "856:7:16" + }, + "id": 25550, + "nodeType": "InheritanceSpecifier", + "src": "856:7:16" + } + ], + "canonicalName": "TaxToken", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 25546, + "nodeType": "StructuredDocumentation", + "src": "421:407:16", + "text": "@dev The TaxToken is responsible for supporting generic ERC20 functionality including ERC20Pausable functionality.\n The TaxToken will generate taxes on transfer() and transferFrom() calls for non-whitelisted addresses.\n The Admin can specify the tax fee in basis points for buys, sells, and transfers.\n The TaxToken will forward all taxes generated to a Treasury" + }, + "fullyImplemented": true, + "linearizedBaseContracts": [ + 27006, + 28255, + 29066, + 29143, + 28107 + ], + "name": "TaxToken", + "nameLocation": "837:8:16", + "scope": 27007, + "usedErrors": [] + } + ], + "license": "MIT" + }, + "id": 16 +} \ No newline at end of file diff --git a/out/Treasury.sol/Treasury.json b/out/Treasury.sol/Treasury.json new file mode 100644 index 0000000..0a90292 --- /dev/null +++ b/out/Treasury.sol/Treasury.json @@ -0,0 +1,6625 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_admin", + "type": "address" + }, + { + "internalType": "address", + "name": "_taxToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_stable", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "asset", + "type": "address" + } + ], + "name": "RoyaltiesDistributed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "amountReceived", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "newTotal", + "type": "uint256" + } + ], + "name": "RoyaltiesReceived", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "currentStable", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newStable", + "type": "address" + } + ], + "name": "StableUpdated", + "type": "event" + }, + { + "inputs": [], + "name": "UNIV2_ROUTER", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "WETH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "WethAccruedForTaxType", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "amountRoyaltiesWeth", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "distributeTaxes", + "outputs": [ + { + "internalType": "uint256", + "name": "_amountToDistribute", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "distributionsStable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_path", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "_taxType", + "type": "uint256" + } + ], + "name": "exchangeRateForTaxType", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_path", + "type": "address[]" + } + ], + "name": "exchangeRateForWethToStable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "lock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + } + ], + "name": "safeWithdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_walletCount", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "_wallets", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_percentDistribution", + "type": "uint256[]" + } + ], + "name": "setTaxDistribution", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "stable", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "taxSettings", + "outputs": [ + { + "internalType": "uint256", + "name": "walletCount", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "taxToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "taxTokenAccruedForTaxType", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_stable", + "type": "address" + } + ], + "name": "updateStable", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amt", + "type": "uint256" + } + ], + "name": "updateTaxesAccrued", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "viewTaxSettings", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "viewTaxesAccrued", + "outputs": [ + { + "internalType": "uint256", + "name": "_amountAccrued", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x60806040523480156200001157600080fd5b5060405162001a1f38038062001a1f833981016040819052620000349162000270565b600080546001600160a01b03191633908117825560405190918291600080516020620019ff833981519152908290a350600380546001600160a01b038085166001600160a01b03199283161790925560048054928416929091169190911790556200009f8362000142565b737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001189190620002ba565b600780546001600160a01b0319166001600160a01b039290921691909117905550620002df915050565b6000546001600160a01b03163314620001a25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b038116620002095760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000199565b600080546040516001600160a01b0380851693921691600080516020620019ff83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b03811681146200026b57600080fd5b919050565b6000806000606084860312156200028657600080fd5b620002918462000253565b9250620002a16020850162000253565b9150620002b16040850162000253565b90509250925092565b600060208284031215620002cd57600080fd5b620002d88262000253565b9392505050565b61171080620002ef6000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c8063838a4107116100c3578063cdb6ee381161007c578063cdb6ee38146102c3578063dd467064146102d6578063ed0ce006146102e9578063f2fde38b146102fc578063f66ed0141461030f578063f851a4401461032257600080fd5b8063838a4107146102435780638da5cb5b1461025657806395e4a6b314610267578063ad5c464814610287578063ba13f4c51461029a578063bf66dc6e146102a357600080fd5b8063676d356311610115578063676d3563146101db57806368a61804146101f6578063715018a6146101fe57806371fc737c14610208578063755965b814610210578063813db8f31461022357600080fd5b80631f72028d146101525780631fc928ae1461017257806322be3de11461019d57806331392fcb146101b057806331e912a8146101c8575b600080fd5b61015a610335565b604051610169939291906111e2565b60405180910390f35b600354610185906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b600454610185906001600160a01b031681565b600b546101ba9081565b604051908152602001610169565b6101ba6101d6366004611336565b610403565b610185737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6006546101ba565b6102066104b2565b005b6101ba61052f565b61020661021e366004611373565b610939565b6101ba610231366004611373565b60096020526000908152604090205481565b61020661025136600461138c565b6109a7565b6000546001600160a01b0316610185565b6101ba61027536600461138c565b600a6020526000908152604090205481565b600754610185906001600160a01b031681565b6101ba60065481565b6101ba6102b1366004611373565b60086020526000908152604090205481565b6102066102d136600461138c565b610add565b6102066102e4366004611373565b610be5565b6101ba6102f73660046113ae565b610c7c565b61020661030a36600461138c565b610d36565b61020661031d36600461143f565b610e20565b600554610185906001600160a01b031681565b6000606080600b60000154600b600101600b6002018180548060200260200160405190810160405280929190818152602001828054801561039f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610381575b50505050509150808054806020026020016040519081016040528092919081815260200182805480156103f157602002820191906000526020600020905b8154815260200190600101908083116103dd575b50505050509050925092509250909192565b60065460405163d06ca61f60e01b8152600091737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f916104409186906004016114b9565b600060405180830381865afa15801561045d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261048591908101906114d2565b600183516104939190611579565b815181106104a3576104a3611590565b60200260200101519050919050565b6000546001600160a01b031633146104e55760405162461bcd60e51b81526004016104dc906115a6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600654801561093657600060065560075460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d6004820152602481018390526001600160a01b039091169063095ea7b3906044016020604051808303816000875af11580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906115db565b6105d2576105d26115fd565b604080516002808252606082018352600092602083019080368337505060075482519293506001600160a01b03169183915060009061061357610613611590565b6001600160a01b03928316602091820292909201015260045482519116908290600190811061064457610644611590565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d6338ed1739836000843061068742617530611613565b6040518663ffffffff1660e01b81526004016106a795949392919061162b565b6000604051808303816000875af11580156106c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ee91908101906114d2565b50600480546040516370a0823160e01b815230928101929092526000916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107619190611667565b905060005b600c548110156109325760006064600b600201838154811061078a5761078a611590565b9060005260206000200154846107a09190611680565b6107aa919061169f565b600454600c80549293506001600160a01b039091169163a9059cbb9190859081106107d7576107d7611590565b60009182526020909120015460405160e083901b6001600160e01b03191681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085491906115db565b610860576108606115fd565b80600a6000600b600101858154811061087b5761087b611590565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906108af908490611613565b9091555050600c8054839081106108c8576108c8611590565b60009182526020918290200154600454604080518581526001600160a01b03928316948101949094529116917f9feb579bbc7ffef3037d91ecb8e45b70c8049afa8741cd4cb398926bd98f6922910160405180910390a2508061092a816116c1565b915050610766565b5050505b90565b6003546001600160a01b0316331461095057600080fd5b80600660008282546109629190611613565b90915550506006546040805183815260208101929092527fe8f58c2c4663d8d9bab1fcd91c3bef339c90e81754e2d0ec7e888c5c0b56b08d910160405180910390a150565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016104dc906115a6565b6007546001600160a01b03908116908216036109ed5760006006555b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610a3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5f9190611667565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906115db565b610ada57610ada6115fd565b50565b6000546001600160a01b03163314610b075760405162461bcd60e51b81526004016104dc906115a6565b6004546001600160a01b0390811690821603610b7c5760405162461bcd60e51b815260206004820152602e60248201527f54726561737572792e736f6c3a3a757064617465537461626c6528292076616c60448201526d1d5948185b1c9958591e481cd95d60921b60648201526084016104dc565b600454604080516001600160a01b03928316815291831660208301527fbe67eb17c76f052c9025267eaab09f6b7c384a42bb6830eb5f36665113cadf70910160405180910390a1600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c0f5760405162461bcd60e51b81526004016104dc906115a6565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c3e8142611613565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60008181526008602052604080822054905163d06ca61f60e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f91610cc3919087906004016114b9565b600060405180830381865afa158015610ce0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d0891908101906114d2565b60018451610d169190611579565b81518110610d2657610d26611590565b6020026020010151905092915050565b6000546001600160a01b03163314610d605760405162461bcd60e51b81526004016104dc906115a6565b6001600160a01b038116610dc55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104dc565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e4a5760405162461bcd60e51b81526004016104dc906115a6565b848314610ed05760405162461bcd60e51b815260206004820152604860248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2077616c6c65746064820152670e65cd8cadccee8d60c31b608482015260a4016104dc565b848114610f625760405162461bcd60e51b815260206004820152605460248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2070657263656e6064820152730e888d2e6e8e4d2c4eae8d2dedc5cd8cadccee8d60631b608482015260a4016104dc565b6000805b86811015610fa657838382818110610f8057610f80611590565b9050602002013582610f929190611613565b915080610f9e816116c1565b915050610f66565b50806064146110275760405162461bcd60e51b815260206004820152604160248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2073756d50657263656e74446973747269627574696f6e20213d2031306064820152600360fc1b608482015260a4016104dc565b6040518060600160405280878152602001868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505090825250604080516020868102828101820190935286825292830192909187918791829185019084908082843760009201919091525050509152508051600b90815560208083015180516110c292600c9201906110e9565b50604082015180516110de91600284019160209091019061114e565b505050505050505050565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611109565b5061114a929150611189565b5090565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182559160200191906001019061116e565b5b8082111561114a576000815560010161118a565b600081518084526020808501945080840160005b838110156111d75781516001600160a01b0316875295820195908201906001016111b2565b509495945050505050565b838152600060206060818401526111fc606084018661119e565b838103604085015284518082528286019183019060005b8181101561122f57835183529284019291840191600101611213565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561127c5761127c61123d565b604052919050565b600067ffffffffffffffff82111561129e5761129e61123d565b5060051b60200190565b80356001600160a01b03811681146112bf57600080fd5b919050565b600082601f8301126112d557600080fd5b813560206112ea6112e583611284565b611253565b82815260059290921b8401810191818101908684111561130957600080fd5b8286015b8481101561132b5761131e816112a8565b835291830191830161130d565b509695505050505050565b60006020828403121561134857600080fd5b813567ffffffffffffffff81111561135f57600080fd5b61136b848285016112c4565b949350505050565b60006020828403121561138557600080fd5b5035919050565b60006020828403121561139e57600080fd5b6113a7826112a8565b9392505050565b600080604083850312156113c157600080fd5b823567ffffffffffffffff8111156113d857600080fd5b6113e4858286016112c4565b95602094909401359450505050565b60008083601f84011261140557600080fd5b50813567ffffffffffffffff81111561141d57600080fd5b6020830191508360208260051b850101111561143857600080fd5b9250929050565b60008060008060006060868803121561145757600080fd5b85359450602086013567ffffffffffffffff8082111561147657600080fd5b61148289838a016113f3565b9096509450604088013591508082111561149b57600080fd5b506114a8888289016113f3565b969995985093965092949392505050565b82815260406020820152600061136b604083018461119e565b600060208083850312156114e557600080fd5b825167ffffffffffffffff8111156114fc57600080fd5b8301601f8101851361150d57600080fd5b805161151b6112e582611284565b81815260059190911b8201830190838101908783111561153a57600080fd5b928401925b828410156115585783518252928401929084019061153f565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561158b5761158b611563565b500390565b634e487b7160e01b600052603260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156115ed57600080fd5b815180151581146113a757600080fd5b634e487b7160e01b600052600160045260246000fd5b6000821982111561162657611626611563565b500190565b85815284602082015260a06040820152600061164a60a083018661119e565b6001600160a01b0394909416606083015250608001529392505050565b60006020828403121561167957600080fd5b5051919050565b600081600019048311821515161561169a5761169a611563565b500290565b6000826116bc57634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016116d3576116d3611563565b506001019056fea264697066735822122083afb4b6a1839860c5778cef5a7f10d1bb5def6021564255a58262f59ca3802464736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "sourceMap": "560:8820:17:-:0;;;2805:227;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;955:17:20;998:18;;-1:-1:-1;;;;;;998:18:20;699:10:19;998:18:20;;;;;1032:43;;699:10:19;;;;-1:-1:-1;;;;;;;;;;;1032:43:20;955:17;;1032:43;-1:-1:-1;2880:8:17;:20;;-1:-1:-1;;;;;2880:20:17;;;-1:-1:-1;;;;;;2880:20:17;;;;;;;2911:6;:16;;;;;;;;;;;;;;;2940:25;2958:6;2940:17;:25::i;:::-;1070:42;-1:-1:-1;;;;;2985:37:17;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2978:4;:46;;-1:-1:-1;;;;;;2978:46:17;-1:-1:-1;;;;;2978:46:17;;;;;;;;;;-1:-1:-1;560:8820:17;;-1:-1:-1;;560:8820:17;2118:244:20;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;994:2:32;1376:68:20;;;976:21:32;;;1013:18;;;1006:30;1072:34;1052:18;;;1045:62;1124:18;;1376:68:20;;;;;;;;;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;1355:2:32;2199:73:20::1;::::0;::::1;1337:21:32::0;1394:2;1374:18;;;1367:30;1433:34;1413:18;;;1406:62;-1:-1:-1;;;1484:18:32;;;1477:36;1530:19;;2199:73:20::1;1153:402:32::0;2199:73:20::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;2288:38:20;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:20::1;-1:-1:-1::0;;;;;2337:17:20;;;::::1;::::0;;;::::1;::::0;;2118:244::o;14:177:32:-;93:13;;-1:-1:-1;;;;;135:31:32;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:378::-;284:6;292;300;353:2;341:9;332:7;328:23;324:32;321:52;;;369:1;366;359:12;321:52;392:40;422:9;392:40;:::i;:::-;382:50;;451:49;496:2;485:9;481:18;451:49;:::i;:::-;441:59;;519:49;564:2;553:9;549:18;519:49;:::i;:::-;509:59;;196:378;;;;;:::o;579:208::-;649:6;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;741:40;771:9;741:40;:::i;:::-;731:50;579:208;-1:-1:-1;;;579:208:32:o;1153:402::-;560:8820:17;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b506004361061014d5760003560e01c8063838a4107116100c3578063cdb6ee381161007c578063cdb6ee38146102c3578063dd467064146102d6578063ed0ce006146102e9578063f2fde38b146102fc578063f66ed0141461030f578063f851a4401461032257600080fd5b8063838a4107146102435780638da5cb5b1461025657806395e4a6b314610267578063ad5c464814610287578063ba13f4c51461029a578063bf66dc6e146102a357600080fd5b8063676d356311610115578063676d3563146101db57806368a61804146101f6578063715018a6146101fe57806371fc737c14610208578063755965b814610210578063813db8f31461022357600080fd5b80631f72028d146101525780631fc928ae1461017257806322be3de11461019d57806331392fcb146101b057806331e912a8146101c8575b600080fd5b61015a610335565b604051610169939291906111e2565b60405180910390f35b600354610185906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b600454610185906001600160a01b031681565b600b546101ba9081565b604051908152602001610169565b6101ba6101d6366004611336565b610403565b610185737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6006546101ba565b6102066104b2565b005b6101ba61052f565b61020661021e366004611373565b610939565b6101ba610231366004611373565b60096020526000908152604090205481565b61020661025136600461138c565b6109a7565b6000546001600160a01b0316610185565b6101ba61027536600461138c565b600a6020526000908152604090205481565b600754610185906001600160a01b031681565b6101ba60065481565b6101ba6102b1366004611373565b60086020526000908152604090205481565b6102066102d136600461138c565b610add565b6102066102e4366004611373565b610be5565b6101ba6102f73660046113ae565b610c7c565b61020661030a36600461138c565b610d36565b61020661031d36600461143f565b610e20565b600554610185906001600160a01b031681565b6000606080600b60000154600b600101600b6002018180548060200260200160405190810160405280929190818152602001828054801561039f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610381575b50505050509150808054806020026020016040519081016040528092919081815260200182805480156103f157602002820191906000526020600020905b8154815260200190600101908083116103dd575b50505050509050925092509250909192565b60065460405163d06ca61f60e01b8152600091737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f916104409186906004016114b9565b600060405180830381865afa15801561045d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261048591908101906114d2565b600183516104939190611579565b815181106104a3576104a3611590565b60200260200101519050919050565b6000546001600160a01b031633146104e55760405162461bcd60e51b81526004016104dc906115a6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600654801561093657600060065560075460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d6004820152602481018390526001600160a01b039091169063095ea7b3906044016020604051808303816000875af11580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906115db565b6105d2576105d26115fd565b604080516002808252606082018352600092602083019080368337505060075482519293506001600160a01b03169183915060009061061357610613611590565b6001600160a01b03928316602091820292909201015260045482519116908290600190811061064457610644611590565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d6338ed1739836000843061068742617530611613565b6040518663ffffffff1660e01b81526004016106a795949392919061162b565b6000604051808303816000875af11580156106c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ee91908101906114d2565b50600480546040516370a0823160e01b815230928101929092526000916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107619190611667565b905060005b600c548110156109325760006064600b600201838154811061078a5761078a611590565b9060005260206000200154846107a09190611680565b6107aa919061169f565b600454600c80549293506001600160a01b039091169163a9059cbb9190859081106107d7576107d7611590565b60009182526020909120015460405160e083901b6001600160e01b03191681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085491906115db565b610860576108606115fd565b80600a6000600b600101858154811061087b5761087b611590565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906108af908490611613565b9091555050600c8054839081106108c8576108c8611590565b60009182526020918290200154600454604080518581526001600160a01b03928316948101949094529116917f9feb579bbc7ffef3037d91ecb8e45b70c8049afa8741cd4cb398926bd98f6922910160405180910390a2508061092a816116c1565b915050610766565b5050505b90565b6003546001600160a01b0316331461095057600080fd5b80600660008282546109629190611613565b90915550506006546040805183815260208101929092527fe8f58c2c4663d8d9bab1fcd91c3bef339c90e81754e2d0ec7e888c5c0b56b08d910160405180910390a150565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016104dc906115a6565b6007546001600160a01b03908116908216036109ed5760006006555b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610a3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5f9190611667565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906115db565b610ada57610ada6115fd565b50565b6000546001600160a01b03163314610b075760405162461bcd60e51b81526004016104dc906115a6565b6004546001600160a01b0390811690821603610b7c5760405162461bcd60e51b815260206004820152602e60248201527f54726561737572792e736f6c3a3a757064617465537461626c6528292076616c60448201526d1d5948185b1c9958591e481cd95d60921b60648201526084016104dc565b600454604080516001600160a01b03928316815291831660208301527fbe67eb17c76f052c9025267eaab09f6b7c384a42bb6830eb5f36665113cadf70910160405180910390a1600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c0f5760405162461bcd60e51b81526004016104dc906115a6565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c3e8142611613565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60008181526008602052604080822054905163d06ca61f60e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f91610cc3919087906004016114b9565b600060405180830381865afa158015610ce0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d0891908101906114d2565b60018451610d169190611579565b81518110610d2657610d26611590565b6020026020010151905092915050565b6000546001600160a01b03163314610d605760405162461bcd60e51b81526004016104dc906115a6565b6001600160a01b038116610dc55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104dc565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e4a5760405162461bcd60e51b81526004016104dc906115a6565b848314610ed05760405162461bcd60e51b815260206004820152604860248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2077616c6c65746064820152670e65cd8cadccee8d60c31b608482015260a4016104dc565b848114610f625760405162461bcd60e51b815260206004820152605460248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2070657263656e6064820152730e888d2e6e8e4d2c4eae8d2dedc5cd8cadccee8d60631b608482015260a4016104dc565b6000805b86811015610fa657838382818110610f8057610f80611590565b9050602002013582610f929190611613565b915080610f9e816116c1565b915050610f66565b50806064146110275760405162461bcd60e51b815260206004820152604160248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2073756d50657263656e74446973747269627574696f6e20213d2031306064820152600360fc1b608482015260a4016104dc565b6040518060600160405280878152602001868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505090825250604080516020868102828101820190935286825292830192909187918791829185019084908082843760009201919091525050509152508051600b90815560208083015180516110c292600c9201906110e9565b50604082015180516110de91600284019160209091019061114e565b505050505050505050565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611109565b5061114a929150611189565b5090565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182559160200191906001019061116e565b5b8082111561114a576000815560010161118a565b600081518084526020808501945080840160005b838110156111d75781516001600160a01b0316875295820195908201906001016111b2565b509495945050505050565b838152600060206060818401526111fc606084018661119e565b838103604085015284518082528286019183019060005b8181101561122f57835183529284019291840191600101611213565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561127c5761127c61123d565b604052919050565b600067ffffffffffffffff82111561129e5761129e61123d565b5060051b60200190565b80356001600160a01b03811681146112bf57600080fd5b919050565b600082601f8301126112d557600080fd5b813560206112ea6112e583611284565b611253565b82815260059290921b8401810191818101908684111561130957600080fd5b8286015b8481101561132b5761131e816112a8565b835291830191830161130d565b509695505050505050565b60006020828403121561134857600080fd5b813567ffffffffffffffff81111561135f57600080fd5b61136b848285016112c4565b949350505050565b60006020828403121561138557600080fd5b5035919050565b60006020828403121561139e57600080fd5b6113a7826112a8565b9392505050565b600080604083850312156113c157600080fd5b823567ffffffffffffffff8111156113d857600080fd5b6113e4858286016112c4565b95602094909401359450505050565b60008083601f84011261140557600080fd5b50813567ffffffffffffffff81111561141d57600080fd5b6020830191508360208260051b850101111561143857600080fd5b9250929050565b60008060008060006060868803121561145757600080fd5b85359450602086013567ffffffffffffffff8082111561147657600080fd5b61148289838a016113f3565b9096509450604088013591508082111561149b57600080fd5b506114a8888289016113f3565b969995985093965092949392505050565b82815260406020820152600061136b604083018461119e565b600060208083850312156114e557600080fd5b825167ffffffffffffffff8111156114fc57600080fd5b8301601f8101851361150d57600080fd5b805161151b6112e582611284565b81815260059190911b8201830190838101908783111561153a57600080fd5b928401925b828410156115585783518252928401929084019061153f565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561158b5761158b611563565b500390565b634e487b7160e01b600052603260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156115ed57600080fd5b815180151581146113a757600080fd5b634e487b7160e01b600052600160045260246000fd5b6000821982111561162657611626611563565b500190565b85815284602082015260a06040820152600061164a60a083018661119e565b6001600160a01b0394909416606083015250608001529392505050565b60006020828403121561167957600080fd5b5051919050565b600081600019048311821515161561169a5761169a611563565b500290565b6000826116bc57634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016116d3576116d3611563565b506001019056fea264697066735822122083afb4b6a1839860c5778cef5a7f10d1bb5def6021564255a58262f59ca3802464736f6c634300080f0033", + "sourceMap": "560:8820:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:246;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;756:23;;;;;-1:-1:-1;;;;;756:23:17;;;;;;-1:-1:-1;;;;;1524:32:32;;;1506:51;;1494:2;1479:18;756:23:17;1360:203:32;852:21:17;;;;;-1:-1:-1;;;;;852:21:17;;;1773:34;;;;;;;;;;1714:25:32;;;1702:2;1687:18;1773:34:17;1568:177:32;9129:248:17;;;;;;:::i;:::-;;:::i;1031:81::-;;1070:42;1031:81;;4196:117;4286:19;;4196:117;;1815:148:20;;;:::i;:::-;;5797:1248:17;;;:::i;3967:221::-;;;;;;:::i;:::-;;:::i;1552:50::-;;;;;;:::i;:::-;;;;;;;;;;;;;;7778:218;;;;;;:::i;:::-;;:::i;1164:87:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;1164:87;;1683:54:17;;;;;;:::i;:::-;;;;;;;;;;;;;;1121:19;;;;;-1:-1:-1;;;;;1121:19:17;;;984:34;;;;;;1486:54;;;;;;:::i;:::-;;;;;;;;;;;;;;8166:226;;;;;;:::i;:::-;;:::i;2444::20:-;;;;;;:::i;:::-;;:::i;8653:274:17:-;;;;;;:::i;:::-;;:::i;2118:244:20:-;;;;;;:::i;:::-;;:::i;4734:1001:17:-;;;;;;:::i;:::-;;:::i;955:20::-;;;;;-1:-1:-1;;;;;955:20:17;;;7311:246;7360:7;7369:16;7387:13;7435:11;:23;;;7473:11;:19;;7507:11;:31;;7413:136;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7413:136:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:246;;;:::o;9129:248::-;9300:19;;9239:112;;-1:-1:-1;;;9239:112:17;;9212:7;;1070:42;;9239:46;;:112;;9335:5;;9239:112;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9239:112:17;;;;;;;;;;;;:::i;:::-;9367:1;9352:5;:12;:16;;;;:::i;:::-;9239:130;;;;;;;;:::i;:::-;;;;;;;9232:137;;9129:248;;;:::o;1815:148:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;;;;;;;;;1922:1:::1;1906:6:::0;;1885:40:::1;::::0;-1:-1:-1;;;;;1906:6:20;;::::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1953:1;1936:19:::0;;-1:-1:-1;;;;;;1936:19:20::1;::::0;;1815:148::o;5797:1248:17:-;5905:19;;5949:23;;5945:1054;;6013:1;5991:19;:23;6045:4;;6038:64;;-1:-1:-1;;;6038:64:17;;1070:42;6038:64;;;7721:51:32;7788:18;;;7781:34;;;-1:-1:-1;;;;;6045:4:17;;;;6038:20;;7694:18:32;;6038:64:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6031:72;;;;:::i;:::-;6151:16;;;6165:1;6151:16;;;;;;;;6120:28;;6151:16;;;;;;;;-1:-1:-1;;6201:4:17;;6184:14;;;;-1:-1:-1;;;;;;6201:4:17;;6184:14;;-1:-1:-1;6201:4:17;;6184:14;;;;:::i;:::-;-1:-1:-1;;;;;6184:21:17;;;:14;;;;;;;;;:21;6237:6;;6220:14;;6237:6;;;6220:11;;6237:6;;6220:14;;;;;;:::i;:::-;-1:-1:-1;;;;;6220:23:17;;;:14;;;;;;;;;;;:23;1070:42;6260:57;6336:19;6385:1;6405:11;6443:4;6467:23;:15;6485:5;6467:23;:::i;:::-;6260:245;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6260:245:17;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6550:6:17;;;6543:39;;-1:-1:-1;;;6543:39:17;;6576:4;6543:39;;;1506:51:32;;;;6522:18:17;;-1:-1:-1;;;;;6550:6:17;;;;6543:24;;1479:18:32;;6543:39:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6522:60;;6604:6;6599:389;6620:19;:26;6616:30;;6599:389;;;6672:8;6736:3;6699:11;:31;;6731:1;6699:34;;;;;;;;:::i;:::-;;;;;;;;;6683:13;:50;;;;:::i;:::-;:56;;;;:::i;:::-;6774:6;;6791:19;:22;;6672:67;;-1:-1:-1;;;;;;6774:6:17;;;;6767:23;;6791:19;6811:1;;6791:22;;;;;;:::i;:::-;;;;;;;;;;;6767:52;;;;;;-1:-1:-1;;;;;;6767:52:17;;;-1:-1:-1;;;;;6791:22:17;;;6767:52;;;7721:51:32;7788:18;;;7781:34;;;7694:18;;6767:52:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6760:60;;;;:::i;:::-;6888:3;6841:19;:43;6861:11;:19;;6881:1;6861:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;6861:22:17;6841:43;;;;;;;;;;;;:50;;:43;;6861:22;6841:50;;;;;:::i;:::-;;;;-1:-1:-1;;6936:19:17;:22;;6956:1;;6936:22;;;;;;:::i;:::-;;;;;;;;;;;;6965:6;;6915:57;;;9718:25:32;;;-1:-1:-1;;;;;6965:6:17;;;9759:18:32;;;9752:60;;;;6936:22:17;;;6915:57;;9691:18:32;6915:57:17;;;;;;;-1:-1:-1;6648:3:17;;;;:::i;:::-;;;;6599:389;;;;5974:1025;;5945:1054;5797:1248;:::o;3967:221::-;3198:8;;-1:-1:-1;;;;;3198:8:17;3184:10;:22;3176:31;;;;;;4060:4:::1;4037:19;;:27;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4104:19:17::1;::::0;4080:44:::1;::::0;;10137:25:32;;;10193:2;10178:18;;10171:34;;;;4080:44:17::1;::::0;10110:18:32;4080:44:17::1;;;;;;;3967:221:::0;:::o;7778:218::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;7860:4:17::1;::::0;-1:-1:-1;;;;;7860:4:17;;::::1;7850:14:::0;;::::1;::::0;7846:48:::1;;7890:1;7868:19;:23:::0;7846:48:::1;7947:39;::::0;-1:-1:-1;;;7947:39:17;;7980:4:::1;7947:39;::::0;::::1;1506:51:32::0;-1:-1:-1;;;;;7911:23:17;::::1;::::0;::::1;::::0;7935:10:::1;::::0;7911:23;;7947:24:::1;::::0;1479:18:32;;7947:39:17::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7911:76;::::0;-1:-1:-1;;;;;;7911:76:17::1;::::0;;;;;;-1:-1:-1;;;;;7739:32:32;;;7911:76:17::1;::::0;::::1;7721:51:32::0;7788:18;;;7781:34;7694:18;;7911:76:17::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7904:84;;;;:::i;:::-;7778:218:::0;:::o;8166:226::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;8254:6:17::1;::::0;-1:-1:-1;;;;;8254:6:17;;::::1;8243:17:::0;;::::1;::::0;8235:76:::1;;;::::0;-1:-1:-1;;;8235:76:17;;10418:2:32;8235:76:17::1;::::0;::::1;10400:21:32::0;10457:2;10437:18;;;10430:30;10496:34;10476:18;;;10469:62;-1:-1:-1;;;10547:18:32;;;10540:44;10601:19;;8235:76:17::1;10216:410:32::0;8235:76:17::1;8341:6;::::0;8327:30:::1;::::0;;-1:-1:-1;;;;;8341:6:17;;::::1;10843:34:32::0;;10913:15;;;10908:2;10893:18;;10886:43;8327:30:17::1;::::0;10778:18:32;8327:30:17::1;;;;;;;8368:6;:16:::0;;-1:-1:-1;;;;;;8368:16:17::1;-1:-1:-1::0;;;;;8368:16:17;;;::::1;::::0;;;::::1;::::0;;8166:226::o;2444::20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;2525:6:::1;::::0;;;2508:23;;-1:-1:-1;;;;;;2508:23:20;;::::1;-1:-1:-1::0;;;;;2525:6:20;::::1;2508:23;::::0;;;2542:19:::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2659:1:::1;2643:6:::0;;2622:40:::1;::::0;-1:-1:-1;;;;;2643:6:20;;::::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;8653:274:17:-;8746:7;8834:35;;;:25;:35;;;;;;;8773:128;;-1:-1:-1;;;8773:128:17;;1070:42;;8773:46;;:128;;8834:35;8885:5;;8773:128;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8773:128:17;;;;;;;;;;;;:::i;:::-;8917:1;8902:5;:12;:16;;;;:::i;:::-;8773:146;;;;;;;;:::i;:::-;;;;;;;8766:153;;8653:274;;;;:::o;2118:244:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;11142:2:32;2199:73:20::1;::::0;::::1;11124:21:32::0;11181:2;11161:18;;;11154:30;11220:34;11200:18;;;11193:62;-1:-1:-1;;;11271:18:32;;;11264:36;11317:19;;2199:73:20::1;10940:402:32::0;2199:73:20::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6;::::1;::::0;2288:38:::1;::::0;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:20::1;-1:-1:-1::0;;;;;2337:17:20;;;::::1;::::0;;;::::1;::::0;;2118:244::o;4734:1001:17:-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;4951:31:17;;::::1;4943:116;;;::::0;-1:-1:-1;;;4943:116:17;;11549:2:32;4943:116:17::1;::::0;::::1;11531:21:32::0;11588:2;11568:18;;;11561:30;11627:34;11607:18;;;11600:62;11698:34;11678:18;;;11671:62;-1:-1:-1;;;11749:19:32;;;11742:39;11798:19;;4943:116:17::1;11347:476:32::0;4943:116:17::1;5078:43:::0;;::::1;5070:140;;;::::0;-1:-1:-1;;;5070:140:17;;12030:2:32;5070:140:17::1;::::0;::::1;12012:21:32::0;12069:2;12049:18;;;12042:30;12108:34;12088:18;;;12081:62;12179:34;12159:18;;;12152:62;-1:-1:-1;;;12230:19:32;;;12223:51;12291:19;;5070:140:17::1;11828:488:32::0;5070:140:17::1;5275:27;::::0;5313:115:::1;5333:12;5329:1;:16;5313:115;;;5393:20;;5414:1;5393:23;;;;;;;:::i;:::-;;;;;;;5367:49;;;;;:::i;:::-;::::0;-1:-1:-1;5347:3:17;::::1;::::0;::::1;:::i;:::-;;;;5313:115;;;;5446:22;5472:3;5446:29;5438:107;;;::::0;-1:-1:-1;;;5438:107:17;;12523:2:32;5438:107:17::1;::::0;::::1;12505:21:32::0;12562:2;12542:18;;;12535:30;12601:34;12581:18;;;12574:62;12672:34;12652:18;;;12645:62;-1:-1:-1;;;12723:19:32;;;12716:32;12765:19;;5438:107:17::1;12321:469:32::0;5438:107:17::1;5616:111;;;;;;;;5646:12;5616:111;;;;5673:8;;5616:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;;5616:111:17;;;-1:-1:-1;5616:111:17::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;;;;;;::::1;::::0;;;5696:20;;;;;;5616:111;::::1;::::0;5696:20;;5616:111;5696:20;5616:111;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;;;5616:111:17;;-1:-1:-1;5602:125:17;;:11:::1;:125:::0;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;5602:125:17::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;;;;;4734:1001:17:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:461:32;67:3;105:5;99:12;132:6;127:3;120:19;158:4;187:2;182:3;178:12;171:19;;224:2;217:5;213:14;245:1;255:195;269:6;266:1;263:13;255:195;;;334:13;;-1:-1:-1;;;;;330:39:32;318:52;;390:12;;;;425:15;;;;366:1;284:9;255:195;;;-1:-1:-1;466:3:32;;14:461;-1:-1:-1;;;;;14:461:32:o;480:875::-;765:6;754:9;747:25;728:4;791:2;829;824;813:9;809:18;802:30;855:56;907:2;896:9;892:18;884:6;855:56;:::i;:::-;947:22;;;942:2;927:18;;920:50;1019:13;;1041:22;;;1117:15;;;;1079;;;1150:1;1160:169;1174:6;1171:1;1168:13;1160:169;;;1235:13;;1223:26;;1304:15;;;;1269:12;;;;1196:1;1189:9;1160:169;;;-1:-1:-1;1346:3:32;;480:875;-1:-1:-1;;;;;;;;480:875:32:o;1750:127::-;1811:10;1806:3;1802:20;1799:1;1792:31;1842:4;1839:1;1832:15;1866:4;1863:1;1856:15;1882:275;1953:2;1947:9;2018:2;1999:13;;-1:-1:-1;;1995:27:32;1983:40;;2053:18;2038:34;;2074:22;;;2035:62;2032:88;;;2100:18;;:::i;:::-;2136:2;2129:22;1882:275;;-1:-1:-1;1882:275:32:o;2162:183::-;2222:4;2255:18;2247:6;2244:30;2241:56;;;2277:18;;:::i;:::-;-1:-1:-1;2322:1:32;2318:14;2334:4;2314:25;;2162:183::o;2350:173::-;2418:20;;-1:-1:-1;;;;;2467:31:32;;2457:42;;2447:70;;2513:1;2510;2503:12;2447:70;2350:173;;;:::o;2528:668::-;2582:5;2635:3;2628:4;2620:6;2616:17;2612:27;2602:55;;2653:1;2650;2643:12;2602:55;2689:6;2676:20;2715:4;2739:60;2755:43;2795:2;2755:43;:::i;:::-;2739:60;:::i;:::-;2833:15;;;2919:1;2915:10;;;;2903:23;;2899:32;;;2864:12;;;;2943:15;;;2940:35;;;2971:1;2968;2961:12;2940:35;3007:2;2999:6;2995:15;3019:148;3035:6;3030:3;3027:15;3019:148;;;3101:23;3120:3;3101:23;:::i;:::-;3089:36;;3145:12;;;;3052;;3019:148;;;-1:-1:-1;3185:5:32;2528:668;-1:-1:-1;;;;;;2528:668:32:o;3201:348::-;3285:6;3338:2;3326:9;3317:7;3313:23;3309:32;3306:52;;;3354:1;3351;3344:12;3306:52;3394:9;3381:23;3427:18;3419:6;3416:30;3413:50;;;3459:1;3456;3449:12;3413:50;3482:61;3535:7;3526:6;3515:9;3511:22;3482:61;:::i;:::-;3472:71;3201:348;-1:-1:-1;;;;3201:348:32:o;3554:180::-;3613:6;3666:2;3654:9;3645:7;3641:23;3637:32;3634:52;;;3682:1;3679;3672:12;3634:52;-1:-1:-1;3705:23:32;;3554:180;-1:-1:-1;3554:180:32:o;3739:186::-;3798:6;3851:2;3839:9;3830:7;3826:23;3822:32;3819:52;;;3867:1;3864;3857:12;3819:52;3890:29;3909:9;3890:29;:::i;:::-;3880:39;3739:186;-1:-1:-1;;;3739:186:32:o;3930:416::-;4023:6;4031;4084:2;4072:9;4063:7;4059:23;4055:32;4052:52;;;4100:1;4097;4090:12;4052:52;4140:9;4127:23;4173:18;4165:6;4162:30;4159:50;;;4205:1;4202;4195:12;4159:50;4228:61;4281:7;4272:6;4261:9;4257:22;4228:61;:::i;:::-;4218:71;4336:2;4321:18;;;;4308:32;;-1:-1:-1;;;;3930:416:32:o;4351:367::-;4414:8;4424:6;4478:3;4471:4;4463:6;4459:17;4455:27;4445:55;;4496:1;4493;4486:12;4445:55;-1:-1:-1;4519:20:32;;4562:18;4551:30;;4548:50;;;4594:1;4591;4584:12;4548:50;4631:4;4623:6;4619:17;4607:29;;4691:3;4684:4;4674:6;4671:1;4667:14;4659:6;4655:27;4651:38;4648:47;4645:67;;;4708:1;4705;4698:12;4645:67;4351:367;;;;;:::o;4723:841::-;4854:6;4862;4870;4878;4886;4939:2;4927:9;4918:7;4914:23;4910:32;4907:52;;;4955:1;4952;4945:12;4907:52;4991:9;4978:23;4968:33;;5052:2;5041:9;5037:18;5024:32;5075:18;5116:2;5108:6;5105:14;5102:34;;;5132:1;5129;5122:12;5102:34;5171:70;5233:7;5224:6;5213:9;5209:22;5171:70;:::i;:::-;5260:8;;-1:-1:-1;5145:96:32;-1:-1:-1;5348:2:32;5333:18;;5320:32;;-1:-1:-1;5364:16:32;;;5361:36;;;5393:1;5390;5383:12;5361:36;;5432:72;5496:7;5485:8;5474:9;5470:24;5432:72;:::i;:::-;4723:841;;;;-1:-1:-1;4723:841:32;;-1:-1:-1;5523:8:32;;5406:98;4723:841;-1:-1:-1;;;4723:841:32:o;5569:332::-;5776:6;5765:9;5758:25;5819:2;5814;5803:9;5799:18;5792:30;5739:4;5839:56;5891:2;5880:9;5876:18;5868:6;5839:56;:::i;5906:881::-;6001:6;6032:2;6075;6063:9;6054:7;6050:23;6046:32;6043:52;;;6091:1;6088;6081:12;6043:52;6124:9;6118:16;6157:18;6149:6;6146:30;6143:50;;;6189:1;6186;6179:12;6143:50;6212:22;;6265:4;6257:13;;6253:27;-1:-1:-1;6243:55:32;;6294:1;6291;6284:12;6243:55;6323:2;6317:9;6346:60;6362:43;6402:2;6362:43;:::i;6346:60::-;6440:15;;;6522:1;6518:10;;;;6510:19;;6506:28;;;6471:12;;;;6546:19;;;6543:39;;;6578:1;6575;6568:12;6543:39;6602:11;;;;6622:135;6638:6;6633:3;6630:15;6622:135;;;6704:10;;6692:23;;6655:12;;;;6735;;;;6622:135;;;6776:5;5906:881;-1:-1:-1;;;;;;;5906:881:32:o;6792:127::-;6853:10;6848:3;6844:20;6841:1;6834:31;6884:4;6881:1;6874:15;6908:4;6905:1;6898:15;6924:125;6964:4;6992:1;6989;6986:8;6983:34;;;6997:18;;:::i;:::-;-1:-1:-1;7034:9:32;;6924:125::o;7054:127::-;7115:10;7110:3;7106:20;7103:1;7096:31;7146:4;7143:1;7136:15;7170:4;7167:1;7160:15;7186:356;7388:2;7370:21;;;7407:18;;;7400:30;7466:34;7461:2;7446:18;;7439:62;7533:2;7518:18;;7186:356::o;7826:277::-;7893:6;7946:2;7934:9;7925:7;7921:23;7917:32;7914:52;;;7962:1;7959;7952:12;7914:52;7994:9;7988:16;8047:5;8040:13;8033:21;8026:5;8023:32;8013:60;;8069:1;8066;8059:12;8108:127;8169:10;8164:3;8160:20;8157:1;8150:31;8200:4;8197:1;8190:15;8224:4;8221:1;8214:15;8240:128;8280:3;8311:1;8307:6;8304:1;8301:13;8298:39;;;8317:18;;:::i;:::-;-1:-1:-1;8353:9:32;;8240:128::o;8373:582::-;8672:6;8661:9;8654:25;8715:6;8710:2;8699:9;8695:18;8688:34;8758:3;8753:2;8742:9;8738:18;8731:31;8635:4;8779:57;8831:3;8820:9;8816:19;8808:6;8779:57;:::i;:::-;-1:-1:-1;;;;;8872:32:32;;;;8867:2;8852:18;;8845:60;-1:-1:-1;8936:3:32;8921:19;8914:35;8771:65;8373:582;-1:-1:-1;;;8373:582:32:o;8960:184::-;9030:6;9083:2;9071:9;9062:7;9058:23;9054:32;9051:52;;;9099:1;9096;9089:12;9051:52;-1:-1:-1;9122:16:32;;8960:184;-1:-1:-1;8960:184:32:o;9149:168::-;9189:7;9255:1;9251;9247:6;9243:14;9240:1;9237:21;9232:1;9225:9;9218:17;9214:45;9211:71;;;9262:18;;:::i;:::-;-1:-1:-1;9302:9:32;;9149:168::o;9322:217::-;9362:1;9388;9378:132;;9432:10;9427:3;9423:20;9420:1;9413:31;9467:4;9464:1;9457:15;9495:4;9492:1;9485:15;9378:132;-1:-1:-1;9524:9:32;;9322:217::o;9823:135::-;9862:3;9883:17;;;9880:43;;9903:18;;:::i;:::-;-1:-1:-1;9950:1:32;9939:13;;9823:135::o", + "linkReferences": {} + }, + "methodIdentifiers": { + "UNIV2_ROUTER()": "676d3563", + "WETH()": "ad5c4648", + "WethAccruedForTaxType(uint256)": "813db8f3", + "admin()": "f851a440", + "amountRoyaltiesWeth()": "ba13f4c5", + "distributeTaxes()": "71fc737c", + "distributionsStable(address)": "95e4a6b3", + "exchangeRateForTaxType(address[],uint256)": "ed0ce006", + "exchangeRateForWethToStable(address[])": "31e912a8", + "lock(uint256)": "dd467064", + "owner()": "8da5cb5b", + "renounceOwnership()": "715018a6", + "safeWithdraw(address)": "838a4107", + "setTaxDistribution(uint256,address[],uint256[])": "f66ed014", + "stable()": "22be3de1", + "taxSettings()": "31392fcb", + "taxToken()": "1fc928ae", + "taxTokenAccruedForTaxType(uint256)": "bf66dc6e", + "transferOwnership(address)": "f2fde38b", + "updateStable(address)": "cdb6ee38", + "updateTaxesAccrued(uint256)": "755965b8", + "viewTaxSettings()": "1f72028d", + "viewTaxesAccrued()": "68a61804" + }, + "ast": { + "absolutePath": "src/Treasury.sol", + "id": 27496, + "exportedSymbols": { + "Context": [ + 28107 + ], + "IERC20": [ + 29143 + ], + "IUniswapV2Router02": [ + 29849 + ], + "Ownable": [ + 28255 + ], + "Treasury": [ + 27495 + ] + }, + "nodeType": "SourceUnit", + "src": "32:9348:17", + "nodes": [ + { + "id": 27008, + "nodeType": "PragmaDirective", + "src": "32:23:17", + "literals": [ + "solidity", + "^", + "0.8", + ".6" + ] + }, + { + "id": 27010, + "nodeType": "ImportDirective", + "src": "59:49:17", + "absolutePath": "src/interfaces/IERC20.sol", + "file": "./interfaces/IERC20.sol", + "nameLocation": "-1:-1:-1", + "scope": 27496, + "sourceUnit": 29152, + "symbolAliases": [ + { + "foreign": { + "id": 27009, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "68:6:17", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 27012, + "nodeType": "ImportDirective", + "src": "110:71:17", + "absolutePath": "src/interfaces/IUniswapV2Router.sol", + "file": "./interfaces/IUniswapV2Router.sol", + "nameLocation": "-1:-1:-1", + "scope": 27496, + "sourceUnit": 29850, + "symbolAliases": [ + { + "foreign": { + "id": 27011, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "119:18:17", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 27013, + "nodeType": "ImportDirective", + "src": "183:34:17", + "absolutePath": "src/extensions/Ownable.sol", + "file": "./extensions/Ownable.sol", + "nameLocation": "-1:-1:-1", + "scope": 27496, + "sourceUnit": 28256, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 27495, + "nodeType": "ContractDefinition", + "src": "560:8820:17", + "nodes": [ + { + "id": 27019, + "nodeType": "VariableDeclaration", + "src": "756:23:17", + "constant": false, + "documentation": { + "id": 27017, + "nodeType": "StructuredDocumentation", + "src": "673:77:17", + "text": "@dev The token that fees are taken from, and what is held in escrow here." + }, + "functionSelector": "1fc928ae", + "mutability": "mutable", + "name": "taxToken", + "nameLocation": "771:8:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27018, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "756:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 27022, + "nodeType": "VariableDeclaration", + "src": "852:21:17", + "constant": false, + "documentation": { + "id": 27020, + "nodeType": "StructuredDocumentation", + "src": "788:58:17", + "text": "@dev The stablecoin that is distributed via royalties." + }, + "functionSelector": "22be3de1", + "mutability": "mutable", + "name": "stable", + "nameLocation": "867:6:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27021, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "852:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 27025, + "nodeType": "VariableDeclaration", + "src": "955:20:17", + "constant": false, + "documentation": { + "id": 27023, + "nodeType": "StructuredDocumentation", + "src": "882:67:17", + "text": "@dev The administrator of accounting and distribution settings." + }, + "functionSelector": "f851a440", + "mutability": "mutable", + "name": "admin", + "nameLocation": "970:5:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27024, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "955:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 27027, + "nodeType": "VariableDeclaration", + "src": "984:34:17", + "constant": false, + "functionSelector": "ba13f4c5", + "mutability": "mutable", + "name": "amountRoyaltiesWeth", + "nameLocation": "999:19:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27026, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "984:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "id": 27030, + "nodeType": "VariableDeclaration", + "src": "1031:81:17", + "constant": true, + "functionSelector": "676d3563", + "mutability": "constant", + "name": "UNIV2_ROUTER", + "nameLocation": "1055:12:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27028, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1031:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", + "id": 27029, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1070:42:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D" + }, + "visibility": "public" + }, + { + "id": 27032, + "nodeType": "VariableDeclaration", + "src": "1121:19:17", + "constant": false, + "functionSelector": "ad5c4648", + "mutability": "mutable", + "name": "WETH", + "nameLocation": "1136:4:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27031, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1121:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "id": 27037, + "nodeType": "VariableDeclaration", + "src": "1486:54:17", + "constant": false, + "documentation": { + "id": 27033, + "nodeType": "StructuredDocumentation", + "src": "1168:312:17", + "text": "@notice Handles the internal accounting for how much taxToken is owed to each taxType.\n @dev e.g. 10,000 taxToken owed to taxType 0 => taxTokenAccruedForTaxType[0] = 10000 * 10**18.\n taxType 0 => Xfer Tax\n taxType 1 => Buy Tax\n taxType 2 => Sell Tax" + }, + "functionSelector": "bf66dc6e", + "mutability": "mutable", + "name": "taxTokenAccruedForTaxType", + "nameLocation": "1515:25:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "typeName": { + "id": 27036, + "keyType": { + "id": 27034, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1494:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "1486:21:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "valueType": { + "id": 27035, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1502:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "id": 27041, + "nodeType": "VariableDeclaration", + "src": "1552:50:17", + "constant": false, + "functionSelector": "813db8f3", + "mutability": "mutable", + "name": "WethAccruedForTaxType", + "nameLocation": "1581:21:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "typeName": { + "id": 27040, + "keyType": { + "id": 27038, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1560:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Mapping", + "src": "1552:21:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + }, + "valueType": { + "id": 27039, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1568:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "id": 27046, + "nodeType": "VariableDeclaration", + "src": "1683:54:17", + "constant": false, + "documentation": { + "id": 27042, + "nodeType": "StructuredDocumentation", + "src": "1614:63:17", + "text": "@dev Tracks amount of stablecoin distributed to recipients." + }, + "functionSelector": "95e4a6b3", + "mutability": "mutable", + "name": "distributionsStable", + "nameLocation": "1718:19:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 27045, + "keyType": { + "id": 27043, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1691:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1683:27:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 27044, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1702:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "public" + }, + { + "id": 27050, + "nodeType": "VariableDeclaration", + "src": "1773:34:17", + "constant": false, + "documentation": { + "id": 27047, + "nodeType": "StructuredDocumentation", + "src": "1746:21:17", + "text": "@dev taxSettings." + }, + "functionSelector": "31392fcb", + "mutability": "mutable", + "name": "taxSettings", + "nameLocation": "1796:11:17", + "scope": 27495, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution" + }, + "typeName": { + "id": 27049, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 27048, + "name": "TaxDistribution", + "nodeType": "IdentifierPath", + "referencedDeclaration": 27059, + "src": "1773:15:17" + }, + "referencedDeclaration": 27059, + "src": "1773:15:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage_ptr", + "typeString": "struct Treasury.TaxDistribution" + } + }, + "visibility": "public" + }, + { + "id": 27059, + "nodeType": "StructDefinition", + "src": "2410:123:17", + "canonicalName": "Treasury.TaxDistribution", + "members": [ + { + "constant": false, + "id": 27052, + "mutability": "mutable", + "name": "walletCount", + "nameLocation": "2449:11:17", + "nodeType": "VariableDeclaration", + "scope": 27059, + "src": "2444:16:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27051, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2444:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27055, + "mutability": "mutable", + "name": "wallets", + "nameLocation": "2481:7:17", + "nodeType": "VariableDeclaration", + "scope": 27059, + "src": "2471:17:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 27053, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2471:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27054, + "nodeType": "ArrayTypeName", + "src": "2471:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27058, + "mutability": "mutable", + "name": "percentDistribution", + "nameLocation": "2506:19:17", + "nodeType": "VariableDeclaration", + "scope": 27059, + "src": "2499:26:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 27056, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2499:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27057, + "nodeType": "ArrayTypeName", + "src": "2499:6:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "name": "TaxDistribution", + "nameLocation": "2417:15:17", + "scope": 27495, + "visibility": "public" + }, + { + "id": 27090, + "nodeType": "FunctionDefinition", + "src": "2805:227:17", + "body": { + "id": 27089, + "nodeType": "Block", + "src": "2869:163:17", + "statements": [ + { + "expression": { + "id": 27071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27069, + "name": "taxToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27019, + "src": "2880:8:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 27070, + "name": "_taxToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27064, + "src": "2891:9:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2880:20:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27072, + "nodeType": "ExpressionStatement", + "src": "2880:20:17" + }, + { + "expression": { + "id": 27075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27073, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "2911:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 27074, + "name": "_stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27066, + "src": "2920:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2911:16:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27076, + "nodeType": "ExpressionStatement", + "src": "2911:16:17" + }, + { + "expression": { + "arguments": [ + { + "id": 27078, + "name": "_admin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27062, + "src": "2958:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27077, + "name": "transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 28220, + "src": "2940:17:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 27079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2940:25:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27080, + "nodeType": "ExpressionStatement", + "src": "2940:25:17" + }, + { + "expression": { + "id": 27087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27081, + "name": "WETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27032, + "src": "2978:4:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 27083, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27030, + "src": "3004:12:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27082, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "2985:18:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 27084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2985:32:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 27085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "WETH", + "nodeType": "MemberAccess", + "referencedDeclaration": 29468, + "src": "2985:37:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", + "typeString": "function () pure external returns (address)" + } + }, + "id": 27086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2985:39:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2978:46:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27088, + "nodeType": "ExpressionStatement", + "src": "2978:46:17" + } + ] + }, + "documentation": { + "id": 27060, + "nodeType": "StructuredDocumentation", + "src": "2605:194:17", + "text": "@notice Initializes the Treasury.\n @param _admin The administrator of the contract.\n @param _taxToken The taxToken (ERC-20 asset) which accumulates in this Treasury." + }, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "parameters": { + "id": 27067, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27062, + "mutability": "mutable", + "name": "_admin", + "nameLocation": "2825:6:17", + "nodeType": "VariableDeclaration", + "scope": 27090, + "src": "2817:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2817:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27064, + "mutability": "mutable", + "name": "_taxToken", + "nameLocation": "2841:9:17", + "nodeType": "VariableDeclaration", + "scope": 27090, + "src": "2833:17:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27063, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2833:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27066, + "mutability": "mutable", + "name": "_stable", + "nameLocation": "2860:7:17", + "nodeType": "VariableDeclaration", + "scope": 27090, + "src": "2852:15:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27065, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2852:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2816:52:17" + }, + "returnParameters": { + "id": 27068, + "nodeType": "ParameterList", + "parameters": [], + "src": "2869:0:17" + }, + "scope": 27495, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 27102, + "nodeType": "ModifierDefinition", + "src": "3145:82:17", + "body": { + "id": 27101, + "nodeType": "Block", + "src": "3165:62:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 27097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 27094, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3184:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 27095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3184:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 27096, + "name": "taxToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27019, + "src": "3198:8:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3184:22:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 27093, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3176:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 27098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3176:31:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27099, + "nodeType": "ExpressionStatement", + "src": "3176:31:17" + }, + { + "id": 27100, + "nodeType": "PlaceholderStatement", + "src": "3218:1:17" + } + ] + }, + "documentation": { + "id": 27091, + "nodeType": "StructuredDocumentation", + "src": "3098:41:17", + "text": "@dev Enforces msg.sender is taxToken." + }, + "name": "isTaxToken", + "nameLocation": "3154:10:17", + "parameters": { + "id": 27092, + "nodeType": "ParameterList", + "parameters": [], + "src": "3165:0:17" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 27111, + "nodeType": "EventDefinition", + "src": "3359:82:17", + "anonymous": false, + "documentation": { + "id": 27103, + "nodeType": "StructuredDocumentation", + "src": "3284:69:17", + "text": "@dev Emitted when royalties are distributed via distributeTaxes()" + }, + "eventSelector": "9feb579bbc7ffef3037d91ecb8e45b70c8049afa8741cd4cb398926bd98f6922", + "name": "RoyaltiesDistributed", + "nameLocation": "3365:20:17", + "parameters": { + "id": 27110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27105, + "indexed": true, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "3402:9:17", + "nodeType": "VariableDeclaration", + "scope": 27111, + "src": "3386:25:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27104, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3386:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27107, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "3418:6:17", + "nodeType": "VariableDeclaration", + "scope": 27111, + "src": "3413:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27106, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3413:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27109, + "indexed": false, + "mutability": "mutable", + "name": "asset", + "nameLocation": "3434:5:17", + "nodeType": "VariableDeclaration", + "scope": 27111, + "src": "3426:13:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3426:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3385:55:17" + } + }, + { + "id": 27118, + "nodeType": "EventDefinition", + "src": "3532:62:17", + "anonymous": false, + "documentation": { + "id": 27112, + "nodeType": "StructuredDocumentation", + "src": "3449:77:17", + "text": "@dev Emitted when the stable state variable is updated via updateStable()" + }, + "eventSelector": "be67eb17c76f052c9025267eaab09f6b7c384a42bb6830eb5f36665113cadf70", + "name": "StableUpdated", + "nameLocation": "3538:13:17", + "parameters": { + "id": 27117, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27114, + "indexed": false, + "mutability": "mutable", + "name": "currentStable", + "nameLocation": "3560:13:17", + "nodeType": "VariableDeclaration", + "scope": 27118, + "src": "3552:21:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27113, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3552:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27116, + "indexed": false, + "mutability": "mutable", + "name": "newStable", + "nameLocation": "3583:9:17", + "nodeType": "VariableDeclaration", + "scope": 27118, + "src": "3575:17:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27115, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3575:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3551:42:17" + } + }, + { + "id": 27125, + "nodeType": "EventDefinition", + "src": "3661:66:17", + "anonymous": false, + "documentation": { + "id": 27119, + "nodeType": "StructuredDocumentation", + "src": "3602:53:17", + "text": "@dev Emitted when the treasury receives royalties" + }, + "eventSelector": "e8f58c2c4663d8d9bab1fcd91c3bef339c90e81754e2d0ec7e888c5c0b56b08d", + "name": "RoyaltiesReceived", + "nameLocation": "3667:17:17", + "parameters": { + "id": 27124, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27121, + "indexed": false, + "mutability": "mutable", + "name": "amountReceived", + "nameLocation": "3693:14:17", + "nodeType": "VariableDeclaration", + "scope": 27125, + "src": "3685:22:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27120, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3685:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27123, + "indexed": false, + "mutability": "mutable", + "name": "newTotal", + "nameLocation": "3717:8:17", + "nodeType": "VariableDeclaration", + "scope": 27125, + "src": "3709:16:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27122, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3709:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3684:42:17" + } + }, + { + "id": 27143, + "nodeType": "FunctionDefinition", + "src": "3967:221:17", + "body": { + "id": 27142, + "nodeType": "Block", + "src": "4026:162:17", + "statements": [ + { + "expression": { + "id": 27135, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27133, + "name": "amountRoyaltiesWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27027, + "src": "4037:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 27134, + "name": "_amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27128, + "src": "4060:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4037:27:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27136, + "nodeType": "ExpressionStatement", + "src": "4037:27:17" + }, + { + "eventCall": { + "arguments": [ + { + "id": 27138, + "name": "_amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27128, + "src": "4098:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 27139, + "name": "amountRoyaltiesWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27027, + "src": "4104:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 27137, + "name": "RoyaltiesReceived", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27125, + "src": "4080:17:17", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 27140, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4080:44:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27141, + "nodeType": "EmitStatement", + "src": "4075:49:17" + } + ] + }, + "documentation": { + "id": 27126, + "nodeType": "StructuredDocumentation", + "src": "3793:168:17", + "text": "@notice Increases _amt of taxToken allocated to _taxType.\n @dev Only callable by taxToken.\n @param _amt The amount of taxToken going to taxType." + }, + "functionSelector": "755965b8", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 27131, + "kind": "modifierInvocation", + "modifierName": { + "id": 27130, + "name": "isTaxToken", + "nodeType": "IdentifierPath", + "referencedDeclaration": 27102, + "src": "4006:10:17" + }, + "nodeType": "ModifierInvocation", + "src": "4006:10:17" + } + ], + "name": "updateTaxesAccrued", + "nameLocation": "3976:18:17", + "parameters": { + "id": 27129, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27128, + "mutability": "mutable", + "name": "_amt", + "nameLocation": "4000:4:17", + "nodeType": "VariableDeclaration", + "scope": 27143, + "src": "3995:9:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27127, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3995:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3994:11:17" + }, + "returnParameters": { + "id": 27132, + "nodeType": "ParameterList", + "parameters": [], + "src": "4026:0:17" + }, + "scope": 27495, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 27151, + "nodeType": "FunctionDefinition", + "src": "4196:117:17", + "body": { + "id": 27150, + "nodeType": "Block", + "src": "4268:45:17", + "statements": [ + { + "expression": { + "id": 27148, + "name": "amountRoyaltiesWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27027, + "src": "4286:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 27147, + "id": 27149, + "nodeType": "Return", + "src": "4279:26:17" + } + ] + }, + "functionSelector": "68a61804", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "viewTaxesAccrued", + "nameLocation": "4205:16:17", + "parameters": { + "id": 27144, + "nodeType": "ParameterList", + "parameters": [], + "src": "4221:2:17" + }, + "returnParameters": { + "id": 27147, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27146, + "mutability": "mutable", + "name": "_amountAccrued", + "nameLocation": "4252:14:17", + "nodeType": "VariableDeclaration", + "scope": 27151, + "src": "4247:19:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27145, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4247:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4246:21:17" + }, + "scope": 27495, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 27218, + "nodeType": "FunctionDefinition", + "src": "4734:1001:17", + "body": { + "id": 27217, + "nodeType": "Block", + "src": "4867:868:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27166, + "name": "_walletCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27154, + "src": "4951:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 27167, + "name": "_wallets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27157, + "src": "4967:8:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 27168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4967:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4951:31:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54726561737572792e736f6c3a3a736574546178446973747269627574696f6e28292c2077616c6c6574436f756e74206c656e67746820213d2077616c6c6574732e6c656e677468", + "id": 27170, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4984:74:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_52bd6076206bb3f590d172db15ceaab3de463b6afbdae55c1c74f09951599892", + "typeString": "literal_string \"Treasury.sol::setTaxDistribution(), walletCount length != wallets.length\"" + }, + "value": "Treasury.sol::setTaxDistribution(), walletCount length != wallets.length" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_52bd6076206bb3f590d172db15ceaab3de463b6afbdae55c1c74f09951599892", + "typeString": "literal_string \"Treasury.sol::setTaxDistribution(), walletCount length != wallets.length\"" + } + ], + "id": 27165, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4943:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 27171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4943:116:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27172, + "nodeType": "ExpressionStatement", + "src": "4943:116:17" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27174, + "name": "_walletCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27154, + "src": "5078:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 27175, + "name": "_percentDistribution", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27160, + "src": "5094:20:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 27176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5094:27:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5078:43:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54726561737572792e736f6c3a3a736574546178446973747269627574696f6e28292c2077616c6c6574436f756e74206c656e67746820213d2070657263656e74446973747269627574696f6e2e6c656e677468", + "id": 27178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5123:86:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_460b169a49b91854fc9bf36b397a5ce67bba711a85fa5fc1cf0d6fa38e6483a9", + "typeString": "literal_string \"Treasury.sol::setTaxDistribution(), walletCount length != percentDistribution.length\"" + }, + "value": "Treasury.sol::setTaxDistribution(), walletCount length != percentDistribution.length" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_460b169a49b91854fc9bf36b397a5ce67bba711a85fa5fc1cf0d6fa38e6483a9", + "typeString": "literal_string \"Treasury.sol::setTaxDistribution(), walletCount length != percentDistribution.length\"" + } + ], + "id": 27173, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5070:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 27179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5070:140:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27180, + "nodeType": "ExpressionStatement", + "src": "5070:140:17" + }, + { + "assignments": [ + 27182 + ], + "declarations": [ + { + "constant": false, + "id": 27182, + "mutability": "mutable", + "name": "sumPercentDistribution", + "nameLocation": "5280:22:17", + "nodeType": "VariableDeclaration", + "scope": 27217, + "src": "5275:27:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27181, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5275:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 27183, + "nodeType": "VariableDeclarationStatement", + "src": "5275:27:17" + }, + { + "body": { + "id": 27200, + "nodeType": "Block", + "src": "5352:76:17", + "statements": [ + { + "expression": { + "id": 27198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27194, + "name": "sumPercentDistribution", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27182, + "src": "5367:22:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "baseExpression": { + "id": 27195, + "name": "_percentDistribution", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27160, + "src": "5393:20:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 27197, + "indexExpression": { + "id": 27196, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27185, + "src": "5414:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5393:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5367:49:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27199, + "nodeType": "ExpressionStatement", + "src": "5367:49:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27188, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27185, + "src": "5329:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 27189, + "name": "_walletCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27154, + "src": "5333:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5329:16:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 27201, + "initializationExpression": { + "assignments": [ + 27185 + ], + "declarations": [ + { + "constant": false, + "id": 27185, + "mutability": "mutable", + "name": "i", + "nameLocation": "5322:1:17", + "nodeType": "VariableDeclaration", + "scope": 27201, + "src": "5317:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27184, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5317:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 27187, + "initialValue": { + "hexValue": "30", + "id": 27186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5326:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5317:10:17" + }, + "loopExpression": { + "expression": { + "id": 27192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5347:3:17", + "subExpression": { + "id": 27191, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27185, + "src": "5347:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27193, + "nodeType": "ExpressionStatement", + "src": "5347:3:17" + }, + "nodeType": "ForStatement", + "src": "5313:115:17" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27203, + "name": "sumPercentDistribution", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27182, + "src": "5446:22:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "313030", + "id": 27204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5472:3:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "5446:29:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54726561737572792e736f6c3a3a736574546178446973747269627574696f6e28292c2073756d50657263656e74446973747269627574696f6e20213d20313030", + "id": 27206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5477:67:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_62c400e416758c47cf34fd2c0936ac2a8739da73b1f5ee71cf4de6dd3ac2050d", + "typeString": "literal_string \"Treasury.sol::setTaxDistribution(), sumPercentDistribution != 100\"" + }, + "value": "Treasury.sol::setTaxDistribution(), sumPercentDistribution != 100" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_62c400e416758c47cf34fd2c0936ac2a8739da73b1f5ee71cf4de6dd3ac2050d", + "typeString": "literal_string \"Treasury.sol::setTaxDistribution(), sumPercentDistribution != 100\"" + } + ], + "id": 27202, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5438:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 27207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5438:107:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27208, + "nodeType": "ExpressionStatement", + "src": "5438:107:17" + }, + { + "expression": { + "id": 27215, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27209, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "5602:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 27211, + "name": "_walletCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27154, + "src": "5646:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 27212, + "name": "_wallets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27157, + "src": "5673:8:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + { + "id": 27213, + "name": "_percentDistribution", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27160, + "src": "5696:20:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + ], + "id": 27210, + "name": "TaxDistribution", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27059, + "src": "5616:15:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_TaxDistribution_$27059_storage_ptr_$", + "typeString": "type(struct Treasury.TaxDistribution storage pointer)" + } + }, + "id": 27214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5616:111:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_memory_ptr", + "typeString": "struct Treasury.TaxDistribution memory" + } + }, + "src": "5602:125:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27216, + "nodeType": "ExpressionStatement", + "src": "5602:125:17" + } + ] + }, + "documentation": { + "id": 27152, + "nodeType": "StructuredDocumentation", + "src": "4321:407:17", + "text": "@notice This function modifies the distribution settings for all taxes.\n @dev Only callable by Admin.\n @param _walletCount The number of wallets to distribute across.\n @param _wallets The address of wallets to distribute fees across.\n @param _percentDistribution The percentage (corresponding with wallets) to distribute taxes to of overall amount owed for taxType." + }, + "functionSelector": "f66ed014", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 27163, + "kind": "modifierInvocation", + "modifierName": { + "id": 27162, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "4857:9:17" + }, + "nodeType": "ModifierInvocation", + "src": "4857:9:17" + } + ], + "name": "setTaxDistribution", + "nameLocation": "4743:18:17", + "parameters": { + "id": 27161, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27154, + "mutability": "mutable", + "name": "_walletCount", + "nameLocation": "4767:12:17", + "nodeType": "VariableDeclaration", + "scope": 27218, + "src": "4762:17:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27153, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4762:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27157, + "mutability": "mutable", + "name": "_wallets", + "nameLocation": "4800:8:17", + "nodeType": "VariableDeclaration", + "scope": 27218, + "src": "4781:27:17", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 27155, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4781:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27156, + "nodeType": "ArrayTypeName", + "src": "4781:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27160, + "mutability": "mutable", + "name": "_percentDistribution", + "nameLocation": "4826:20:17", + "nodeType": "VariableDeclaration", + "scope": 27218, + "src": "4810:36:17", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 27158, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "4810:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27159, + "nodeType": "ArrayTypeName", + "src": "4810:6:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "4761:86:17" + }, + "returnParameters": { + "id": 27164, + "nodeType": "ParameterList", + "parameters": [], + "src": "4867:0:17" + }, + "scope": 27495, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 27361, + "nodeType": "FunctionDefinition", + "src": "5797:1248:17", + "body": { + "id": 27360, + "nodeType": "Block", + "src": "5870:1175:17", + "statements": [ + { + "expression": { + "id": 27226, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27224, + "name": "_amountToDistribute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27222, + "src": "5883:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 27225, + "name": "amountRoyaltiesWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27027, + "src": "5905:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5883:41:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27227, + "nodeType": "ExpressionStatement", + "src": "5883:41:17" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27230, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27228, + "name": "_amountToDistribute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27222, + "src": "5949:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 27229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5971:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5949:23:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 27357, + "nodeType": "IfStatement", + "src": "5945:1054:17", + "trueBody": { + "id": 27356, + "nodeType": "Block", + "src": "5974:1025:17", + "statements": [ + { + "expression": { + "id": 27233, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27231, + "name": "amountRoyaltiesWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27027, + "src": "5991:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 27232, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6013:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5991:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27234, + "nodeType": "ExpressionStatement", + "src": "5991:23:17" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 27242, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27030, + "src": "6067:12:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6059:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 27240, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6059:7:17", + "typeDescriptions": {} + } + }, + "id": 27243, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6059:21:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 27244, + "name": "_amountToDistribute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27222, + "src": "6082:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 27237, + "name": "WETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27032, + "src": "6045:4:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27236, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "6038:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeString": "type(contract IERC20)" + } + }, + "id": 27238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6038:12:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC20_$29143", + "typeString": "contract IERC20" + } + }, + "id": 27239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "approve", + "nodeType": "MemberAccess", + "referencedDeclaration": 29112, + "src": "6038:20:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 27245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6038:64:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 27235, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "6031:6:17", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 27246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6031:72:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27247, + "nodeType": "ExpressionStatement", + "src": "6031:72:17" + }, + { + "assignments": [ + 27252 + ], + "declarations": [ + { + "constant": false, + "id": 27252, + "mutability": "mutable", + "name": "path_uni_v2", + "nameLocation": "6137:11:17", + "nodeType": "VariableDeclaration", + "scope": 27356, + "src": "6120:28:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 27250, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6120:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27251, + "nodeType": "ArrayTypeName", + "src": "6120:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "id": 27258, + "initialValue": { + "arguments": [ + { + "hexValue": "32", + "id": 27256, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6165:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + } + ], + "id": 27255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "6151:13:17", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (address[] memory)" + }, + "typeName": { + "baseType": { + "id": 27253, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6155:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27254, + "nodeType": "ArrayTypeName", + "src": "6155:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + } + }, + "id": 27257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6151:16:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6120:47:17" + }, + { + "expression": { + "id": 27263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 27259, + "name": "path_uni_v2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27252, + "src": "6184:11:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 27261, + "indexExpression": { + "hexValue": "30", + "id": 27260, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6196:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6184:14:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 27262, + "name": "WETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27032, + "src": "6201:4:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6184:21:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27264, + "nodeType": "ExpressionStatement", + "src": "6184:21:17" + }, + { + "expression": { + "id": 27269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 27265, + "name": "path_uni_v2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27252, + "src": "6220:11:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 27267, + "indexExpression": { + "hexValue": "31", + "id": 27266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6232:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6220:14:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 27268, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "6237:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6220:23:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27270, + "nodeType": "ExpressionStatement", + "src": "6220:23:17" + }, + { + "expression": { + "arguments": [ + { + "id": 27275, + "name": "_amountToDistribute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27222, + "src": "6336:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 27276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6385:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "id": 27277, + "name": "path_uni_v2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27252, + "src": "6405:11:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + { + "arguments": [ + { + "id": 27280, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "6443:4:17", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Treasury_$27495", + "typeString": "contract Treasury" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Treasury_$27495", + "typeString": "contract Treasury" + } + ], + "id": 27279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6435:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 27278, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6435:7:17", + "typeDescriptions": {} + } + }, + "id": 27281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6435:13:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 27282, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "6467:5:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 27283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "6467:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "3330303030", + "id": 27284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6485:5:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_30000_by_1", + "typeString": "int_const 30000" + }, + "value": "30000" + }, + "src": "6467:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 27272, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27030, + "src": "6279:12:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27271, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "6260:18:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 27273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6260:32:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 27274, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "swapExactTokensForTokens", + "nodeType": "MemberAccess", + "referencedDeclaration": 29627, + "src": "6260:57:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function (uint256,uint256,address[] memory,address,uint256) external returns (uint256[] memory)" + } + }, + "id": 27286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6260:245:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 27287, + "nodeType": "ExpressionStatement", + "src": "6260:245:17" + }, + { + "assignments": [ + 27289 + ], + "declarations": [ + { + "constant": false, + "id": 27289, + "mutability": "mutable", + "name": "balanceStable", + "nameLocation": "6527:13:17", + "nodeType": "VariableDeclaration", + "scope": 27356, + "src": "6522:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27288, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6522:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 27299, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 27296, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "6576:4:17", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Treasury_$27495", + "typeString": "contract Treasury" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Treasury_$27495", + "typeString": "contract Treasury" + } + ], + "id": 27295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6568:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 27294, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6568:7:17", + "typeDescriptions": {} + } + }, + "id": 27297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6568:13:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "id": 27291, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "6550:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27290, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "6543:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeString": "type(contract IERC20)" + } + }, + "id": 27292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6543:14:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC20_$29143", + "typeString": "contract IERC20" + } + }, + "id": 27293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 29082, + "src": "6543:24:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 27298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6543:39:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6522:60:17" + }, + { + "body": { + "id": 27354, + "nodeType": "Block", + "src": "6653:335:17", + "statements": [ + { + "assignments": [ + 27313 + ], + "declarations": [ + { + "constant": false, + "id": 27313, + "mutability": "mutable", + "name": "amt", + "nameLocation": "6677:3:17", + "nodeType": "VariableDeclaration", + "scope": 27354, + "src": "6672:8:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27312, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6672:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 27322, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27314, + "name": "balanceStable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27289, + "src": "6683:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "baseExpression": { + "expression": { + "id": 27315, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "6699:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27316, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDistribution", + "nodeType": "MemberAccess", + "referencedDeclaration": 27058, + "src": "6699:31:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage", + "typeString": "uint256[] storage ref" + } + }, + "id": 27318, + "indexExpression": { + "id": 27317, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27301, + "src": "6731:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6699:34:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6683:50:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 27320, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6736:3:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "6683:56:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6672:67:17" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "baseExpression": { + "expression": { + "id": 27328, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "6791:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27329, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "wallets", + "nodeType": "MemberAccess", + "referencedDeclaration": 27055, + "src": "6791:19:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 27331, + "indexExpression": { + "id": 27330, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27301, + "src": "6811:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6791:22:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 27332, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27313, + "src": "6815:3:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 27325, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "6774:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27324, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "6767:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeString": "type(contract IERC20)" + } + }, + "id": 27326, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6767:14:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC20_$29143", + "typeString": "contract IERC20" + } + }, + "id": 27327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 29092, + "src": "6767:23:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 27333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6767:52:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 27323, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "6760:6:17", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 27334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6760:60:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27335, + "nodeType": "ExpressionStatement", + "src": "6760:60:17" + }, + { + "expression": { + "id": 27343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 27336, + "name": "distributionsStable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27046, + "src": "6841:19:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 27341, + "indexExpression": { + "baseExpression": { + "expression": { + "id": 27337, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "6861:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27338, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "wallets", + "nodeType": "MemberAccess", + "referencedDeclaration": 27055, + "src": "6861:19:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 27340, + "indexExpression": { + "id": 27339, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27301, + "src": "6881:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6861:22:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6841:43:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 27342, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27313, + "src": "6888:3:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6841:50:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27344, + "nodeType": "ExpressionStatement", + "src": "6841:50:17" + }, + { + "eventCall": { + "arguments": [ + { + "baseExpression": { + "expression": { + "id": 27346, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "6936:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27347, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "wallets", + "nodeType": "MemberAccess", + "referencedDeclaration": 27055, + "src": "6936:19:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 27349, + "indexExpression": { + "id": 27348, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27301, + "src": "6956:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6936:22:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 27350, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27313, + "src": "6960:3:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 27351, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "6965:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27345, + "name": "RoyaltiesDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27111, + "src": "6915:20:17", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$returns$__$", + "typeString": "function (address,uint256,address)" + } + }, + "id": 27352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6915:57:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27353, + "nodeType": "EmitStatement", + "src": "6910:62:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27304, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27301, + "src": "6616:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "id": 27305, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "6620:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27306, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "wallets", + "nodeType": "MemberAccess", + "referencedDeclaration": 27055, + "src": "6620:19:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 27307, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6620:26:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6616:30:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 27355, + "initializationExpression": { + "assignments": [ + 27301 + ], + "declarations": [ + { + "constant": false, + "id": 27301, + "mutability": "mutable", + "name": "i", + "nameLocation": "6609:1:17", + "nodeType": "VariableDeclaration", + "scope": 27355, + "src": "6604:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27300, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6604:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 27303, + "initialValue": { + "hexValue": "30", + "id": 27302, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6613:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6604:10:17" + }, + "loopExpression": { + "expression": { + "id": 27310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "6648:3:17", + "subExpression": { + "id": 27309, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27301, + "src": "6648:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27311, + "nodeType": "ExpressionStatement", + "src": "6648:3:17" + }, + "nodeType": "ForStatement", + "src": "6599:389:17" + } + ] + } + }, + { + "expression": { + "id": 27358, + "name": "_amountToDistribute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27222, + "src": "7018:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 27223, + "id": 27359, + "nodeType": "Return", + "src": "7011:26:17" + } + ] + }, + "documentation": { + "id": 27219, + "nodeType": "StructuredDocumentation", + "src": "5743:48:17", + "text": "@notice Distributes taxes for given taxType." + }, + "functionSelector": "71fc737c", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "distributeTaxes", + "nameLocation": "5806:15:17", + "parameters": { + "id": 27220, + "nodeType": "ParameterList", + "parameters": [], + "src": "5821:2:17" + }, + "returnParameters": { + "id": 27223, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27222, + "mutability": "mutable", + "name": "_amountToDistribute", + "nameLocation": "5849:19:17", + "nodeType": "VariableDeclaration", + "scope": 27361, + "src": "5841:27:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27221, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5841:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5840:29:17" + }, + "scope": 27495, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 27382, + "nodeType": "FunctionDefinition", + "src": "7311:246:17", + "body": { + "id": 27381, + "nodeType": "Block", + "src": "7402:155:17", + "statements": [ + { + "expression": { + "components": [ + { + "expression": { + "id": 27373, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "7435:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27374, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "walletCount", + "nodeType": "MemberAccess", + "referencedDeclaration": 27052, + "src": "7435:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 27375, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "7473:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27376, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "wallets", + "nodeType": "MemberAccess", + "referencedDeclaration": 27055, + "src": "7473:19:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + { + "expression": { + "id": 27377, + "name": "taxSettings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27050, + "src": "7507:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TaxDistribution_$27059_storage", + "typeString": "struct Treasury.TaxDistribution storage ref" + } + }, + "id": 27378, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDistribution", + "nodeType": "MemberAccess", + "referencedDeclaration": 27058, + "src": "7507:31:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage", + "typeString": "uint256[] storage ref" + } + } + ], + "id": 27379, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7420:129:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_array$_t_address_$dyn_storage_$_t_array$_t_uint256_$dyn_storage_$", + "typeString": "tuple(uint256,address[] storage ref,uint256[] storage ref)" + } + }, + "functionReturnParameters": 27372, + "id": 27380, + "nodeType": "Return", + "src": "7413:136:17" + } + ] + }, + "documentation": { + "id": 27362, + "nodeType": "StructuredDocumentation", + "src": "7053:252:17", + "text": "@notice Helper view function for taxSettings.\n @return uint256 num of wallets in distribution.\n @return address[] array of wallets in distribution.\n @return uint[] array of distribution, all uints must add up to 100." + }, + "functionSelector": "1f72028d", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "viewTaxSettings", + "nameLocation": "7320:15:17", + "parameters": { + "id": 27363, + "nodeType": "ParameterList", + "parameters": [], + "src": "7335:2:17" + }, + "returnParameters": { + "id": 27372, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27365, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 27382, + "src": "7360:7:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27364, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7360:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27368, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 27382, + "src": "7369:16:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 27366, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7369:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27367, + "nodeType": "ArrayTypeName", + "src": "7369:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27371, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 27382, + "src": "7387:13:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 27369, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "7387:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27370, + "nodeType": "ArrayTypeName", + "src": "7387:6:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7359:42:17" + }, + "scope": 27495, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 27419, + "nodeType": "FunctionDefinition", + "src": "7778:218:17", + "body": { + "id": 27418, + "nodeType": "Block", + "src": "7835:161:17", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 27392, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27390, + "name": "_token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27385, + "src": "7850:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 27391, + "name": "WETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27032, + "src": "7860:4:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "7850:14:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 27398, + "nodeType": "IfStatement", + "src": "7846:48:17", + "trueBody": { + "id": 27397, + "nodeType": "Block", + "src": "7866:28:17", + "statements": [ + { + "expression": { + "id": 27395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27393, + "name": "amountRoyaltiesWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27027, + "src": "7868:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 27394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7890:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7868:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27396, + "nodeType": "ExpressionStatement", + "src": "7868:23:17" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "expression": { + "id": 27404, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "7935:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 27405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7935:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 27412, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "7980:4:17", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Treasury_$27495", + "typeString": "contract Treasury" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Treasury_$27495", + "typeString": "contract Treasury" + } + ], + "id": 27411, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7972:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 27410, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7972:7:17", + "typeDescriptions": {} + } + }, + "id": 27413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7972:13:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "id": 27407, + "name": "_token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27385, + "src": "7954:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27406, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "7947:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeString": "type(contract IERC20)" + } + }, + "id": 27408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7947:14:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC20_$29143", + "typeString": "contract IERC20" + } + }, + "id": 27409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 29082, + "src": "7947:24:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 27414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7947:39:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 27401, + "name": "_token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27385, + "src": "7918:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27400, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29143, + "src": "7911:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeString": "type(contract IERC20)" + } + }, + "id": 27402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7911:14:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC20_$29143", + "typeString": "contract IERC20" + } + }, + "id": 27403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 29092, + "src": "7911:23:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 27415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7911:76:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 27399, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "7904:6:17", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 27416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7904:84:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27417, + "nodeType": "ExpressionStatement", + "src": "7904:84:17" + } + ] + }, + "documentation": { + "id": 27383, + "nodeType": "StructuredDocumentation", + "src": "7565:207:17", + "text": "@notice Withdraw a non-taxToken from the treasury.\n @dev Reverts if token == taxtoken.\n @dev Only callable by Admin.\n @param _token The token to withdraw from the treasury." + }, + "functionSelector": "838a4107", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 27388, + "kind": "modifierInvocation", + "modifierName": { + "id": 27387, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "7825:9:17" + }, + "nodeType": "ModifierInvocation", + "src": "7825:9:17" + } + ], + "name": "safeWithdraw", + "nameLocation": "7787:12:17", + "parameters": { + "id": 27386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27385, + "mutability": "mutable", + "name": "_token", + "nameLocation": "7808:6:17", + "nodeType": "VariableDeclaration", + "scope": 27419, + "src": "7800:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27384, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7800:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7799:16:17" + }, + "returnParameters": { + "id": 27389, + "nodeType": "ParameterList", + "parameters": [], + "src": "7835:0:17" + }, + "scope": 27495, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 27444, + "nodeType": "FunctionDefinition", + "src": "8166:226:17", + "body": { + "id": 27443, + "nodeType": "Block", + "src": "8224:168:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 27430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 27428, + "name": "_stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27422, + "src": "8243:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 27429, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "8254:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8243:17:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54726561737572792e736f6c3a3a757064617465537461626c6528292076616c756520616c726561647920736574", + "id": 27431, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8262:48:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_892e4c043f222768e189d03ac82956c372b9f7cd8d25db592af8e0657849bfd7", + "typeString": "literal_string \"Treasury.sol::updateStable() value already set\"" + }, + "value": "Treasury.sol::updateStable() value already set" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_892e4c043f222768e189d03ac82956c372b9f7cd8d25db592af8e0657849bfd7", + "typeString": "literal_string \"Treasury.sol::updateStable() value already set\"" + } + ], + "id": 27427, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8235:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 27432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8235:76:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27433, + "nodeType": "ExpressionStatement", + "src": "8235:76:17" + }, + { + "eventCall": { + "arguments": [ + { + "id": 27435, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "8341:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 27436, + "name": "_stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27422, + "src": "8349:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27434, + "name": "StableUpdated", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27118, + "src": "8327:13:17", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 27437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8327:30:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 27438, + "nodeType": "EmitStatement", + "src": "8322:35:17" + }, + { + "expression": { + "id": 27441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27439, + "name": "stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27022, + "src": "8368:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 27440, + "name": "_stable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27422, + "src": "8377:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8368:16:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27442, + "nodeType": "ExpressionStatement", + "src": "8368:16:17" + } + ] + }, + "documentation": { + "id": 27420, + "nodeType": "StructuredDocumentation", + "src": "8004:156:17", + "text": "@notice Change the stable value of the treasury distriubution.\n @dev Only callable by Admin.\n @param _stable New stablecoin address." + }, + "functionSelector": "cdb6ee38", + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 27425, + "kind": "modifierInvocation", + "modifierName": { + "id": 27424, + "name": "onlyOwner", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28170, + "src": "8214:9:17" + }, + "nodeType": "ModifierInvocation", + "src": "8214:9:17" + } + ], + "name": "updateStable", + "nameLocation": "8175:12:17", + "parameters": { + "id": 27423, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27422, + "mutability": "mutable", + "name": "_stable", + "nameLocation": "8196:7:17", + "nodeType": "VariableDeclaration", + "scope": 27444, + "src": "8188:15:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 27421, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8188:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8187:17:17" + }, + "returnParameters": { + "id": 27426, + "nodeType": "ParameterList", + "parameters": [], + "src": "8224:0:17" + }, + "scope": 27495, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 27471, + "nodeType": "FunctionDefinition", + "src": "8653:274:17", + "body": { + "id": 27470, + "nodeType": "Block", + "src": "8755:172:17", + "statements": [ + { + "expression": { + "baseExpression": { + "arguments": [ + { + "baseExpression": { + "id": 27459, + "name": "taxTokenAccruedForTaxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27037, + "src": "8834:25:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$", + "typeString": "mapping(uint256 => uint256)" + } + }, + "id": 27461, + "indexExpression": { + "id": 27460, + "name": "_taxType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27450, + "src": "8860:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8834:35:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 27462, + "name": "_path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27448, + "src": "8885:5:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "arguments": [ + { + "id": 27456, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27030, + "src": "8792:12:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27455, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "8773:18:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 27457, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8773:32:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 27458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAmountsOut", + "nodeType": "MemberAccess", + "referencedDeclaration": 29752, + "src": "8773:46:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function (uint256,address[] memory) view external returns (uint256[] memory)" + } + }, + "id": 27463, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8773:128:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 27468, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 27464, + "name": "_path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27448, + "src": "8902:5:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 27465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8902:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 27466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8917:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8902:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8773:146:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 27454, + "id": 27469, + "nodeType": "Return", + "src": "8766:153:17" + } + ] + }, + "documentation": { + "id": 27445, + "nodeType": "StructuredDocumentation", + "src": "8404:243:17", + "text": "@notice View function for exchanging fees collected for given taxType.\n @param _path The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK).\n @param _taxType The taxType to be exchanged." + }, + "functionSelector": "ed0ce006", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "exchangeRateForTaxType", + "nameLocation": "8662:22:17", + "parameters": { + "id": 27451, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27448, + "mutability": "mutable", + "name": "_path", + "nameLocation": "8702:5:17", + "nodeType": "VariableDeclaration", + "scope": 27471, + "src": "8685:22:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 27446, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8685:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27447, + "nodeType": "ArrayTypeName", + "src": "8685:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27450, + "mutability": "mutable", + "name": "_taxType", + "nameLocation": "8714:8:17", + "nodeType": "VariableDeclaration", + "scope": 27471, + "src": "8709:13:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27449, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8709:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8684:39:17" + }, + "returnParameters": { + "id": 27454, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27453, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 27471, + "src": "8746:7:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27452, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8746:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8745:9:17" + }, + "scope": 27495, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 27494, + "nodeType": "FunctionDefinition", + "src": "9129:248:17", + "body": { + "id": 27493, + "nodeType": "Block", + "src": "9221:156:17", + "statements": [ + { + "expression": { + "baseExpression": { + "arguments": [ + { + "id": 27484, + "name": "amountRoyaltiesWeth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27027, + "src": "9300:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 27485, + "name": "_path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27475, + "src": "9335:5:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "arguments": [ + { + "id": 27481, + "name": "UNIV2_ROUTER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27030, + "src": "9258:12:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27480, + "name": "IUniswapV2Router02", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29849, + "src": "9239:18:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeString": "type(contract IUniswapV2Router02)" + } + }, + "id": 27482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9239:32:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeString": "contract IUniswapV2Router02" + } + }, + "id": 27483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAmountsOut", + "nodeType": "MemberAccess", + "referencedDeclaration": 29752, + "src": "9239:46:17", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function (uint256,address[] memory) view external returns (uint256[] memory)" + } + }, + "id": 27486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9239:112:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 27491, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 27490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 27487, + "name": "_path", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27475, + "src": "9352:5:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + "id": 27488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9352:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 27489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9367:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9352:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9239:130:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 27479, + "id": 27492, + "nodeType": "Return", + "src": "9232:137:17" + } + ] + }, + "documentation": { + "id": 27472, + "nodeType": "StructuredDocumentation", + "src": "8935:188:17", + "text": "@notice View function for exchanging fees collected for given taxType.\n @param _path The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK)." + }, + "functionSelector": "31e912a8", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "exchangeRateForWethToStable", + "nameLocation": "9138:27:17", + "parameters": { + "id": 27476, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27475, + "mutability": "mutable", + "name": "_path", + "nameLocation": "9183:5:17", + "nodeType": "VariableDeclaration", + "scope": 27494, + "src": "9166:22:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 27473, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9166:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 27474, + "nodeType": "ArrayTypeName", + "src": "9166:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "9165:24:17" + }, + "returnParameters": { + "id": 27479, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27478, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 27494, + "src": "9212:7:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27477, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9212:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9211:9:17" + }, + "scope": 27495, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 27015, + "name": "Ownable", + "nodeType": "IdentifierPath", + "referencedDeclaration": 28255, + "src": "581:7:17" + }, + "id": 27016, + "nodeType": "InheritanceSpecifier", + "src": "581:7:17" + } + ], + "canonicalName": "Treasury", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 27014, + "nodeType": "StructuredDocumentation", + "src": "223:337:17", + "text": "@notice The treasury is responsible for escrow of TaxToken fee's.\n The treasury handles accounting, for what's owed to different groups.\n The treasury handles distribution of TaxToken fees to different groups.\n The admin can modify how TaxToken fees are distributed (the TaxDistribution struct)." + }, + "fullyImplemented": true, + "linearizedBaseContracts": [ + 27495, + 28255, + 28107 + ], + "name": "Treasury", + "nameLocation": "569:8:17", + "scope": 27496, + "usedErrors": [] + } + ], + "license": "MIT" + }, + "id": 17 +} \ No newline at end of file diff --git a/out/Utility.sol/Hevm.json b/out/Utility.sol/Hevm.json index 42ec3b1..4d7b131 100644 --- a/out/Utility.sol/Hevm.json +++ b/out/Utility.sol/Hevm.json @@ -51,232 +51,21 @@ "store(address,bytes32,bytes32)": "70ca10bb", "warp(uint256)": "e5d6bf02" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"store\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"warp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Utility.sol\":\"Hevm\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/interfaces/Interfaces.sol\":{\"keccak256\":\"0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7\",\"dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a\",\"dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb\"]},\"test/Utility.sol\":{\"keccak256\":\"0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775\",\"dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "store" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "warp" - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "test/Utility.sol": "Hevm" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/lib/ds-test/src/test.sol": { - "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", - "urls": [ - "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", - "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" - ], - "license": "GPL-3.0-or-later" - }, - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdAssertions.sol": { - "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", - "urls": [ - "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", - "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdError.sol": { - "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", - "urls": [ - "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", - "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Test.sol": { - "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", - "urls": [ - "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", - "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - }, - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - }, - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - }, - "src/interfaces/Interfaces.sol": { - "keccak256": "0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04", - "urls": [ - "bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7", - "dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX" - ], - "license": "GPL-3.0-or-later" - }, - "src/users/Actor.sol": { - "keccak256": "0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e", - "urls": [ - "bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a", - "dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb" - ], - "license": "AGPL-3.0-or-later" - }, - "test/Utility.sol": { - "keccak256": "0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f", - "urls": [ - "bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775", - "dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds" - ], - "license": "AGPL-3.0-or-later" - } - }, - "version": 1 - }, "ast": { "absolutePath": "test/Utility.sol", - "id": 27933, + "id": 31030, "exportedSymbols": { "Actor": [ - 27385 + 30364 ], "DSTest": [ 1786 ], "Hevm": [ - 27404 + 30498 ], "IERC20": [ - 26425 + 29143 ], "StdAssertions": [ 2708 @@ -300,10 +89,10 @@ 1843 ], "User": [ - 27412 + 30506 ], "Utility": [ - 27932 + 31029 ], "Vm": [ 9352 @@ -328,13 +117,12 @@ ] }, "nodeType": "SourceUnit", - "src": "47:6209:21", + "src": "47:6283:30", "nodes": [ { - "id": 27387, + "id": 30481, "nodeType": "PragmaDirective", - "src": "47:23:21", - "nodes": [], + "src": "47:23:30", "literals": [ "solidity", "^", @@ -343,60 +131,57 @@ ] }, { - "id": 27388, + "id": 30482, "nodeType": "ImportDirective", - "src": "74:32:21", - "nodes": [], + "src": "74:32:30", "absolutePath": "src/users/Actor.sol", "file": "../src/users/Actor.sol", "nameLocation": "-1:-1:-1", - "scope": 27933, - "sourceUnit": 27386, + "scope": 31030, + "sourceUnit": 30365, "symbolAliases": [], "unitAlias": "" }, { - "id": 27389, + "id": 30483, "nodeType": "ImportDirective", - "src": "110:39:21", - "nodes": [], + "src": "110:39:30", "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 27933, + "scope": 31030, "sourceUnit": 8196, "symbolAliases": [], "unitAlias": "" }, { - "id": 27404, + "id": 30498, "nodeType": "ContractDefinition", - "src": "153:112:21", + "src": "153:112:30", "nodes": [ { - "id": 27394, + "id": 30488, "nodeType": "FunctionDefinition", - "src": "175:32:21", - "nodes": [], + "src": "175:32:30", "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", "modifiers": [], "name": "warp", - "nameLocation": "184:4:21", + "nameLocation": "184:4:30", "parameters": { - "id": 27392, + "id": 30486, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27391, + "id": 30485, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27394, - "src": "189:7:21", + "scope": 30488, + "src": "189:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -404,10 +189,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27390, + "id": 30484, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "189:7:21", + "src": "189:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -416,43 +201,42 @@ "visibility": "internal" } ], - "src": "188:9:21" + "src": "188:9:30" }, "returnParameters": { - "id": 27393, + "id": 30487, "nodeType": "ParameterList", "parameters": [], - "src": "206:0:21" + "src": "206:0:30" }, - "scope": 27404, + "scope": 30498, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27403, + "id": 30497, "nodeType": "FunctionDefinition", - "src": "213:49:21", - "nodes": [], + "src": "213:49:30", "functionSelector": "70ca10bb", "implemented": false, "kind": "function", "modifiers": [], "name": "store", - "nameLocation": "222:5:21", + "nameLocation": "222:5:30", "parameters": { - "id": 27401, + "id": 30495, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27396, + "id": 30490, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "228:7:21", + "scope": 30497, + "src": "228:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -460,10 +244,10 @@ "typeString": "address" }, "typeName": { - "id": 27395, + "id": 30489, "name": "address", "nodeType": "ElementaryTypeName", - "src": "228:7:21", + "src": "228:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -474,13 +258,13 @@ }, { "constant": false, - "id": 27398, + "id": 30492, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "236:7:21", + "scope": 30497, + "src": "236:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -488,10 +272,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27397, + "id": 30491, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "236:7:21", + "src": "236:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -501,13 +285,13 @@ }, { "constant": false, - "id": 27400, + "id": 30494, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "244:7:21", + "scope": 30497, + "src": "244:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -515,10 +299,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27399, + "id": 30493, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "244:7:21", + "src": "244:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -527,15 +311,15 @@ "visibility": "internal" } ], - "src": "227:25:21" + "src": "227:25:30" }, "returnParameters": { - "id": 27402, + "id": 30496, "nodeType": "ParameterList", "parameters": [], - "src": "261:0:21" + "src": "261:0:30" }, - "scope": 27404, + "scope": 30498, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -548,42 +332,41 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 27404 + 30498 ], "name": "Hevm", - "nameLocation": "163:4:21", - "scope": 27933, + "nameLocation": "163:4:30", + "scope": 31030, "usedErrors": [] }, { - "id": 27412, + "id": 30506, "nodeType": "ContractDefinition", - "src": "269:69:21", + "src": "269:69:30", "nodes": [ { - "id": 27411, + "id": 30505, "nodeType": "FunctionDefinition", - "src": "291:44:21", - "nodes": [], + "src": "291:44:30", "functionSelector": "095ea7b3", "implemented": false, "kind": "function", "modifiers": [], "name": "approve", - "nameLocation": "300:7:21", + "nameLocation": "300:7:30", "parameters": { - "id": 27409, + "id": 30503, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27406, + "id": 30500, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27411, - "src": "308:7:21", + "scope": 30505, + "src": "308:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -591,10 +374,10 @@ "typeString": "address" }, "typeName": { - "id": 27405, + "id": 30499, "name": "address", "nodeType": "ElementaryTypeName", - "src": "308:7:21", + "src": "308:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -605,13 +388,13 @@ }, { "constant": false, - "id": 27408, + "id": 30502, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27411, - "src": "317:7:21", + "scope": 30505, + "src": "317:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -619,10 +402,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27407, + "id": 30501, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "317:7:21", + "src": "317:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -631,15 +414,15 @@ "visibility": "internal" } ], - "src": "307:18:21" + "src": "307:18:30" }, "returnParameters": { - "id": 27410, + "id": 30504, "nodeType": "ParameterList", "parameters": [], - "src": "334:0:21" + "src": "334:0:30" }, - "scope": 27412, + "scope": 30506, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -652,180 +435,163 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 27412 + 30506 ], "name": "User", - "nameLocation": "279:4:21", - "scope": 27933, + "nameLocation": "279:4:30", + "scope": 31030, "usedErrors": [] }, { - "id": 27932, + "id": 31029, "nodeType": "ContractDefinition", - "src": "449:5807:21", + "src": "449:5881:30", "nodes": [ { - "id": 27417, + "id": 30511, "nodeType": "VariableDeclaration", - "src": "485:9:21", - "nodes": [], + "src": "485:9:30", "constant": false, "mutability": "mutable", "name": "hevm", - "nameLocation": "490:4:21", - "scope": 27932, + "nameLocation": "490:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" }, "typeName": { - "id": 27416, + "id": 30510, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27415, + "id": 30509, "name": "Hevm", - "nameLocations": [ - "485:4:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27404, - "src": "485:4:21" + "referencedDeclaration": 30498, + "src": "485:4:30" }, - "referencedDeclaration": 27404, - "src": "485:4:21", + "referencedDeclaration": 30498, + "src": "485:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, "visibility": "internal" }, { - "id": 27420, + "id": 30514, "nodeType": "VariableDeclaration", - "src": "596:10:21", - "nodes": [], + "src": "596:10:30", "constant": false, "mutability": "mutable", "name": "joe", - "nameLocation": "603:3:21", - "scope": 27932, + "nameLocation": "603:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27419, + "id": 30513, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27418, + "id": 30512, "name": "Actor", - "nameLocations": [ - "596:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "596:5:21" + "referencedDeclaration": 30364, + "src": "596:5:30" }, - "referencedDeclaration": 27385, - "src": "596:5:21", + "referencedDeclaration": 30364, + "src": "596:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27423, + "id": 30517, "nodeType": "VariableDeclaration", - "src": "625:10:21", - "nodes": [], + "src": "625:10:30", "constant": false, "mutability": "mutable", "name": "dev", - "nameLocation": "632:3:21", - "scope": 27932, + "nameLocation": "632:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27422, + "id": 30516, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27421, + "id": 30515, "name": "Actor", - "nameLocations": [ - "625:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "625:5:21" + "referencedDeclaration": 30364, + "src": "625:5:30" }, - "referencedDeclaration": 27385, - "src": "625:5:21", + "referencedDeclaration": 30364, + "src": "625:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27426, + "id": 30520, "nodeType": "VariableDeclaration", - "src": "651:10:21", - "nodes": [], + "src": "651:10:30", "constant": false, "mutability": "mutable", "name": "jon", - "nameLocation": "658:3:21", - "scope": 27932, + "nameLocation": "658:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27425, + "id": 30519, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27424, + "id": 30518, "name": "Actor", - "nameLocations": [ - "651:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "651:5:21" + "referencedDeclaration": 30364, + "src": "651:5:30" }, - "referencedDeclaration": 27385, - "src": "651:5:21", + "referencedDeclaration": 30364, + "src": "651:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27429, + "id": 30523, "nodeType": "VariableDeclaration", - "src": "815:67:21", - "nodes": [], + "src": "815:67:30", "constant": true, "mutability": "constant", "name": "USDC", - "nameLocation": "832:4:21", - "scope": 27932, + "nameLocation": "832:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -833,10 +599,10 @@ "typeString": "address" }, "typeName": { - "id": 27427, + "id": 30521, "name": "address", "nodeType": "ElementaryTypeName", - "src": "815:7:21", + "src": "815:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -845,14 +611,14 @@ }, "value": { "hexValue": "307841306238363939316336323138623336633164313944346132653945623063453336303665423438", - "id": 27428, + "id": 30522, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "840:42:21", + "src": "840:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -862,15 +628,14 @@ "visibility": "internal" }, { - "id": 27432, + "id": 30526, "nodeType": "VariableDeclaration", - "src": "889:67:21", - "nodes": [], + "src": "889:67:30", "constant": true, "mutability": "constant", "name": "DAI", - "nameLocation": "906:3:21", - "scope": 27932, + "nameLocation": "906:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -878,10 +643,10 @@ "typeString": "address" }, "typeName": { - "id": 27430, + "id": 30524, "name": "address", "nodeType": "ElementaryTypeName", - "src": "889:7:21", + "src": "889:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -890,14 +655,14 @@ }, "value": { "hexValue": "307836423137353437344538393039344334344461393862393534456564654143343935323731643046", - "id": 27431, + "id": 30525, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "914:42:21", + "src": "914:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -907,15 +672,14 @@ "visibility": "internal" }, { - "id": 27435, + "id": 30529, "nodeType": "VariableDeclaration", - "src": "963:67:21", - "nodes": [], + "src": "963:67:30", "constant": true, "mutability": "constant", "name": "WETH", - "nameLocation": "980:4:21", - "scope": 27932, + "nameLocation": "980:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -923,10 +687,10 @@ "typeString": "address" }, "typeName": { - "id": 27433, + "id": 30527, "name": "address", "nodeType": "ElementaryTypeName", - "src": "963:7:21", + "src": "963:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -935,14 +699,14 @@ }, "value": { "hexValue": "307843303261614133396232323346453844304130653543344632376541443930383343373536436332", - "id": 27434, + "id": 30528, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "988:42:21", + "src": "988:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -952,15 +716,14 @@ "visibility": "internal" }, { - "id": 27438, + "id": 30532, "nodeType": "VariableDeclaration", - "src": "1037:67:21", - "nodes": [], + "src": "1037:67:30", "constant": true, "mutability": "constant", "name": "WBTC", - "nameLocation": "1054:4:21", - "scope": 27932, + "nameLocation": "1054:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -968,10 +731,10 @@ "typeString": "address" }, "typeName": { - "id": 27436, + "id": 30530, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1037:7:21", + "src": "1037:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -980,14 +743,14 @@ }, "value": { "hexValue": "307832323630464143354535353432613737334161343466424366654466374331393362633243353939", - "id": 27437, + "id": 30531, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1062:42:21", + "src": "1062:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -997,50 +760,90 @@ "visibility": "internal" }, { - "id": 27444, + "id": 30535, + "nodeType": "VariableDeclaration", + "src": "1111:67:30", + "constant": true, + "mutability": "constant", + "name": "FRAX", + "nameLocation": "1128:4:30", + "scope": 31029, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 30533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1111:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "hexValue": "307838353364393535614345663832324462303538656238353035393131454437374631373562393965", + "id": 30534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1136:42:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x853d955aCEf822Db058eb8505911ED77F175b99e" + }, + "visibility": "internal" + }, + { + "id": 30541, "nodeType": "VariableDeclaration", - "src": "1113:35:21", - "nodes": [], + "src": "1187:35:30", "constant": true, "mutability": "constant", "name": "usdc", - "nameLocation": "1129:4:21", - "scope": 27932, + "nameLocation": "1203:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27440, + "id": 30537, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27439, + "id": 30536, "name": "IERC20", - "nameLocations": [ - "1113:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1113:6:21" + "referencedDeclaration": 29143, + "src": "1187:6:30" }, - "referencedDeclaration": 26425, - "src": "1113:6:21", + "referencedDeclaration": 29143, + "src": "1187:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27442, + "id": 30539, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27429, - "src": "1143:4:21", + "referencedDeclaration": 30523, + "src": "1217:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1054,80 +857,75 @@ "typeString": "address" } ], - "id": 27441, + "id": 30538, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1136:6:21", + "referencedDeclaration": 29143, + "src": "1210:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27443, + "id": 30540, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1136:12:21", + "src": "1210:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27450, + "id": 30547, "nodeType": "VariableDeclaration", - "src": "1155:34:21", - "nodes": [], + "src": "1229:34:30", "constant": true, "mutability": "constant", "name": "dai", - "nameLocation": "1171:3:21", - "scope": 27932, + "nameLocation": "1245:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27446, + "id": 30543, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27445, + "id": 30542, "name": "IERC20", - "nameLocations": [ - "1155:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1155:6:21" + "referencedDeclaration": 29143, + "src": "1229:6:30" }, - "referencedDeclaration": 26425, - "src": "1155:6:21", + "referencedDeclaration": 29143, + "src": "1229:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27448, + "id": 30545, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27432, - "src": "1185:3:21", + "referencedDeclaration": 30526, + "src": "1259:3:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1141,80 +939,75 @@ "typeString": "address" } ], - "id": 27447, + "id": 30544, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1178:6:21", + "referencedDeclaration": 29143, + "src": "1252:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27449, + "id": 30546, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1178:11:21", + "src": "1252:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27456, + "id": 30553, "nodeType": "VariableDeclaration", - "src": "1196:35:21", - "nodes": [], + "src": "1270:35:30", "constant": true, "mutability": "constant", "name": "weth", - "nameLocation": "1212:4:21", - "scope": 27932, + "nameLocation": "1286:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27452, + "id": 30549, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27451, + "id": 30548, "name": "IERC20", - "nameLocations": [ - "1196:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1196:6:21" + "referencedDeclaration": 29143, + "src": "1270:6:30" }, - "referencedDeclaration": 26425, - "src": "1196:6:21", + "referencedDeclaration": 29143, + "src": "1270:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27454, + "id": 30551, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27435, - "src": "1226:4:21", + "referencedDeclaration": 30529, + "src": "1300:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1228,80 +1021,75 @@ "typeString": "address" } ], - "id": 27453, + "id": 30550, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1219:6:21", + "referencedDeclaration": 29143, + "src": "1293:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27455, + "id": 30552, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1219:12:21", + "src": "1293:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27462, + "id": 30559, "nodeType": "VariableDeclaration", - "src": "1238:35:21", - "nodes": [], + "src": "1312:35:30", "constant": true, "mutability": "constant", "name": "wbtc", - "nameLocation": "1254:4:21", - "scope": 27932, + "nameLocation": "1328:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27458, + "id": 30555, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27457, + "id": 30554, "name": "IERC20", - "nameLocations": [ - "1238:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1238:6:21" + "referencedDeclaration": 29143, + "src": "1312:6:30" }, - "referencedDeclaration": 26425, - "src": "1238:6:21", + "referencedDeclaration": 29143, + "src": "1312:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27460, + "id": 30557, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27438, - "src": "1268:4:21", + "referencedDeclaration": 30532, + "src": "1342:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1315,45 +1103,43 @@ "typeString": "address" } ], - "id": 27459, + "id": 30556, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1261:6:21", + "referencedDeclaration": 29143, + "src": "1335:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27461, + "id": 30558, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1261:12:21", + "src": "1335:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27465, + "id": 30562, "nodeType": "VariableDeclaration", - "src": "1282:82:21", - "nodes": [], + "src": "1356:82:30", "constant": true, "mutability": "constant", "name": "UNISWAP_V2_ROUTER_02", - "nameLocation": "1299:20:21", - "scope": 27932, + "nameLocation": "1373:20:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1361,10 +1147,10 @@ "typeString": "address" }, "typeName": { - "id": 27463, + "id": 30560, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1282:7:21", + "src": "1356:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1373,14 +1159,14 @@ }, "value": { "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", - "id": 27464, + "id": 30561, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1322:42:21", + "src": "1396:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1390,15 +1176,14 @@ "visibility": "internal" }, { - "id": 27468, + "id": 30565, "nodeType": "VariableDeclaration", - "src": "1392:82:21", - "nodes": [], + "src": "1466:82:30", "constant": true, "mutability": "constant", "name": "UNISWAP_V2_FACTORY", - "nameLocation": "1409:18:21", - "scope": 27932, + "nameLocation": "1483:18:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1406,10 +1191,10 @@ "typeString": "address" }, "typeName": { - "id": 27466, + "id": 30563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1392:7:21", + "src": "1466:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1418,14 +1203,14 @@ }, "value": { "hexValue": "307835433639624565373031656638313461324236613345444434423136353243423963633561413666", - "id": 27467, + "id": 30564, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1432:42:21", + "src": "1506:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1435,16 +1220,15 @@ "visibility": "internal" }, { - "id": 27471, + "id": 30568, "nodeType": "VariableDeclaration", - "src": "1581:36:21", - "nodes": [], + "src": "1655:36:30", "constant": true, "functionSelector": "e70dd6cf", "mutability": "constant", "name": "CL_FACTORY", - "nameLocation": "1603:10:21", - "scope": 27932, + "nameLocation": "1677:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1452,10 +1236,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27469, + "id": 30566, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1581:5:21", + "src": "1655:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1463,14 +1247,14 @@ }, "value": { "hexValue": "30", - "id": 27470, + "id": 30567, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1616:1:21", + "src": "1690:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1480,16 +1264,15 @@ "visibility": "public" }, { - "id": 27474, + "id": 30571, "nodeType": "VariableDeclaration", - "src": "1671:36:21", - "nodes": [], + "src": "1745:36:30", "constant": true, "functionSelector": "174a5be4", "mutability": "constant", "name": "DL_FACTORY", - "nameLocation": "1693:10:21", - "scope": 27932, + "nameLocation": "1767:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1497,10 +1280,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27472, + "id": 30569, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1671:5:21", + "src": "1745:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1508,14 +1291,14 @@ }, "value": { "hexValue": "31", - "id": 27473, + "id": 30570, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1706:1:21", + "src": "1780:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -1525,16 +1308,15 @@ "visibility": "public" }, { - "id": 27477, + "id": 30574, "nodeType": "VariableDeclaration", - "src": "1755:36:21", - "nodes": [], + "src": "1829:36:30", "constant": true, "functionSelector": "38505fb0", "mutability": "constant", "name": "FL_FACTORY", - "nameLocation": "1777:10:21", - "scope": 27932, + "nameLocation": "1851:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1542,10 +1324,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27475, + "id": 30572, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1755:5:21", + "src": "1829:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1553,14 +1335,14 @@ }, "value": { "hexValue": "32", - "id": 27476, + "id": 30573, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1790:1:21", + "src": "1864:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -1570,16 +1352,15 @@ "visibility": "public" }, { - "id": 27480, + "id": 30577, "nodeType": "VariableDeclaration", - "src": "1842:36:21", - "nodes": [], + "src": "1916:36:30", "constant": true, "functionSelector": "c5ba73ed", "mutability": "constant", "name": "LL_FACTORY", - "nameLocation": "1864:10:21", - "scope": 27932, + "nameLocation": "1938:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1587,10 +1368,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27478, + "id": 30575, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1842:5:21", + "src": "1916:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1598,14 +1379,14 @@ }, "value": { "hexValue": "33", - "id": 27479, + "id": 30576, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1877:1:21", + "src": "1951:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" @@ -1615,16 +1396,15 @@ "visibility": "public" }, { - "id": 27483, + "id": 30580, "nodeType": "VariableDeclaration", - "src": "1931:36:21", - "nodes": [], + "src": "2005:36:30", "constant": true, "functionSelector": "9f71f14a", "mutability": "constant", "name": "SL_FACTORY", - "nameLocation": "1953:10:21", - "scope": 27932, + "nameLocation": "2027:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1632,10 +1412,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27481, + "id": 30578, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1931:5:21", + "src": "2005:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1643,14 +1423,14 @@ }, "value": { "hexValue": "34", - "id": 27482, + "id": 30579, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1966:1:21", + "src": "2040:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_4_by_1", "typeString": "int_const 4" @@ -1660,16 +1440,15 @@ "visibility": "public" }, { - "id": 27486, + "id": 30583, "nodeType": "VariableDeclaration", - "src": "2018:45:21", - "nodes": [], + "src": "2092:45:30", "constant": true, "functionSelector": "8c38922f", "mutability": "constant", "name": "INTEREST_CALC_TYPE", - "nameLocation": "2040:18:21", - "scope": 27932, + "nameLocation": "2114:18:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1677,10 +1456,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27484, + "id": 30581, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2018:5:21", + "src": "2092:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1688,14 +1467,14 @@ }, "value": { "hexValue": "3130", - "id": 27485, + "id": 30582, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2061:2:21", + "src": "2135:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -1705,16 +1484,15 @@ "visibility": "public" }, { - "id": 27489, + "id": 30586, "nodeType": "VariableDeclaration", - "src": "2104:45:21", - "nodes": [], + "src": "2178:45:30", "constant": true, "functionSelector": "3493f4ca", "mutability": "constant", "name": "LATEFEE_CALC_TYPE", - "nameLocation": "2126:17:21", - "scope": 27932, + "nameLocation": "2200:17:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1722,10 +1500,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27487, + "id": 30584, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2104:5:21", + "src": "2178:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1733,14 +1511,14 @@ }, "value": { "hexValue": "3131", - "id": 27488, + "id": 30585, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2147:2:21", + "src": "2221:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_11_by_1", "typeString": "int_const 11" @@ -1750,16 +1528,15 @@ "visibility": "public" }, { - "id": 27492, + "id": 30589, "nodeType": "VariableDeclaration", - "src": "2188:45:21", - "nodes": [], + "src": "2262:45:30", "constant": true, "functionSelector": "7a8fe3c0", "mutability": "constant", "name": "PREMIUM_CALC_TYPE", - "nameLocation": "2210:17:21", - "scope": 27932, + "nameLocation": "2284:17:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1767,10 +1544,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27490, + "id": 30587, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2188:5:21", + "src": "2262:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1778,14 +1555,14 @@ }, "value": { "hexValue": "3132", - "id": 27491, + "id": 30588, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2231:2:21", + "src": "2305:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" @@ -1795,15 +1572,14 @@ "visibility": "public" }, { - "id": 27497, + "id": 30594, "nodeType": "VariableDeclaration", - "src": "2274:30:21", - "nodes": [], + "src": "2348:30:30", "constant": true, "mutability": "constant", "name": "USD", - "nameLocation": "2291:3:21", - "scope": 27932, + "nameLocation": "2365:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1811,10 +1587,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27493, + "id": 30590, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2274:7:21", + "src": "2348:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1825,21 +1601,21 @@ "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" }, - "id": 27496, + "id": 30593, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27494, + "id": 30591, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2297:2:21", + "src": "2371:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -1850,21 +1626,21 @@ "operator": "**", "rightExpression": { "hexValue": "36", - "id": 27495, + "id": 30592, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2303:1:21", + "src": "2377:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_6_by_1", "typeString": "int_const 6" }, "value": "6" }, - "src": "2297:7:21", + "src": "2371:7:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" @@ -1873,15 +1649,14 @@ "visibility": "internal" }, { - "id": 27502, + "id": 30599, "nodeType": "VariableDeclaration", - "src": "2339:30:21", - "nodes": [], + "src": "2413:30:30", "constant": true, "mutability": "constant", "name": "BTC", - "nameLocation": "2356:3:21", - "scope": 27932, + "nameLocation": "2430:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1889,10 +1664,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27498, + "id": 30595, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2339:7:21", + "src": "2413:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1903,21 +1678,21 @@ "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" }, - "id": 27501, + "id": 30598, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27499, + "id": 30596, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2362:2:21", + "src": "2436:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -1928,21 +1703,21 @@ "operator": "**", "rightExpression": { "hexValue": "38", - "id": 27500, + "id": 30597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2368:1:21", + "src": "2442:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "2362:7:21", + "src": "2436:7:30", "typeDescriptions": { "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" @@ -1951,15 +1726,14 @@ "visibility": "internal" }, { - "id": 27507, + "id": 30604, "nodeType": "VariableDeclaration", - "src": "2404:31:21", - "nodes": [], + "src": "2478:31:30", "constant": true, "mutability": "constant", "name": "WAD", - "nameLocation": "2421:3:21", - "scope": 27932, + "nameLocation": "2495:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1967,10 +1741,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27503, + "id": 30600, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2404:7:21", + "src": "2478:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1981,21 +1755,21 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 27506, + "id": 30603, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27504, + "id": 30601, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2427:2:21", + "src": "2501:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -2006,21 +1780,21 @@ "operator": "**", "rightExpression": { "hexValue": "3138", - "id": 27505, + "id": 30602, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2433:2:21", + "src": "2507:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", "typeString": "int_const 18" }, "value": "18" }, - "src": "2427:8:21", + "src": "2501:8:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" @@ -2029,15 +1803,14 @@ "visibility": "internal" }, { - "id": 27512, + "id": 30609, "nodeType": "VariableDeclaration", - "src": "2442:31:21", - "nodes": [], + "src": "2516:31:30", "constant": true, "mutability": "constant", "name": "RAY", - "nameLocation": "2459:3:21", - "scope": 27932, + "nameLocation": "2533:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2045,10 +1818,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27508, + "id": 30605, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2442:7:21", + "src": "2516:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2059,21 +1832,21 @@ "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" }, - "id": 27511, + "id": 30608, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27509, + "id": 30606, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2465:2:21", + "src": "2539:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -2084,21 +1857,21 @@ "operator": "**", "rightExpression": { "hexValue": "3237", - "id": 27510, + "id": 30607, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2471:2:21", + "src": "2545:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_27_by_1", "typeString": "int_const 27" }, "value": "27" }, - "src": "2465:8:21", + "src": "2539:8:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" @@ -2107,21 +1880,20 @@ "visibility": "internal" }, { - "id": 27519, + "id": 30616, "nodeType": "StructDefinition", - "src": "2557:167:21", - "nodes": [], + "src": "2631:167:30", "canonicalName": "Utility.Token", "members": [ { "constant": false, - "id": 27514, + "id": 30611, "mutability": "mutable", "name": "addr", - "nameLocation": "2589:4:21", + "nameLocation": "2663:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2581:12:21", + "scope": 30616, + "src": "2655:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2129,10 +1901,10 @@ "typeString": "address" }, "typeName": { - "id": 27513, + "id": 30610, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2581:7:21", + "src": "2655:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2143,13 +1915,13 @@ }, { "constant": false, - "id": 27516, + "id": 30613, "mutability": "mutable", "name": "slot", - "nameLocation": "2637:4:21", + "nameLocation": "2711:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2629:12:21", + "scope": 30616, + "src": "2703:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2157,10 +1929,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27515, + "id": 30612, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2629:7:21", + "src": "2703:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2170,13 +1942,13 @@ }, { "constant": false, - "id": 27518, + "id": 30615, "mutability": "mutable", "name": "orcl", - "nameLocation": "2684:4:21", + "nameLocation": "2758:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2676:12:21", + "scope": 30616, + "src": "2750:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2184,10 +1956,10 @@ "typeString": "address" }, "typeName": { - "id": 27517, + "id": 30614, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2676:7:21", + "src": "2750:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2198,61 +1970,57 @@ } ], "name": "Token", - "nameLocation": "2564:5:21", - "scope": 27932, + "nameLocation": "2638:5:30", + "scope": 31029, "visibility": "public" }, { - "id": 27524, + "id": 30621, "nodeType": "VariableDeclaration", - "src": "2733:33:21", - "nodes": [], + "src": "2807:33:30", "constant": false, "mutability": "mutable", "name": "tokens", - "nameLocation": "2760:6:21", - "scope": 27932, + "nameLocation": "2834:6:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "typeName": { - "id": 27523, + "id": 30620, "keyType": { - "id": 27520, + "id": 30617, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2742:7:21", + "src": "2816:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "2733:26:21", + "src": "2807:26:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "valueType": { - "id": 27522, + "id": 30619, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27521, + "id": 30618, "name": "Token", - "nameLocations": [ - "2753:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27519, - "src": "2753:5:21" + "referencedDeclaration": 30616, + "src": "2827:5:30" }, - "referencedDeclaration": 27519, - "src": "2753:5:21", + "referencedDeclaration": 30616, + "src": "2827:5:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage_ptr", + "typeIdentifier": "t_struct$_Token_$30616_storage_ptr", "typeString": "struct Utility.Token" } } @@ -2260,21 +2028,20 @@ "visibility": "internal" }, { - "id": 27529, + "id": 30626, "nodeType": "StructDefinition", - "src": "2775:68:21", - "nodes": [], + "src": "2849:68:30", "canonicalName": "Utility.TestObj", "members": [ { "constant": false, - "id": 27526, + "id": 30623, "mutability": "mutable", "name": "pre", - "nameLocation": "2809:3:21", + "nameLocation": "2883:3:30", "nodeType": "VariableDeclaration", - "scope": 27529, - "src": "2801:11:21", + "scope": 30626, + "src": "2875:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2282,10 +2049,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27525, + "id": 30622, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2801:7:21", + "src": "2875:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2295,13 +2062,13 @@ }, { "constant": false, - "id": 27528, + "id": 30625, "mutability": "mutable", "name": "post", - "nameLocation": "2831:4:21", + "nameLocation": "2905:4:30", "nodeType": "VariableDeclaration", - "scope": 27529, - "src": "2823:12:21", + "scope": 30626, + "src": "2897:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2309,10 +2076,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27527, + "id": 30624, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2823:7:21", + "src": "2897:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2322,33 +2089,32 @@ } ], "name": "TestObj", - "nameLocation": "2782:7:21", - "scope": 27932, + "nameLocation": "2856:7:30", + "scope": 31029, "visibility": "public" }, { - "id": 27535, + "id": 30632, "nodeType": "EventDefinition", - "src": "2851:29:21", - "nodes": [], + "src": "2925:29:30", "anonymous": false, "eventSelector": "3c5ad147104e56be34a9176a6692f7df8d2f4b29a5af06bc6b98970d329d6577", "name": "Debug", - "nameLocation": "2857:5:21", + "nameLocation": "2931:5:30", "parameters": { - "id": 27534, + "id": 30631, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27531, + "id": 30628, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27535, - "src": "2863:6:21", + "scope": 30632, + "src": "2937:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2356,10 +2122,10 @@ "typeString": "string" }, "typeName": { - "id": 27530, + "id": 30627, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2863:6:21", + "src": "2937:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2369,14 +2135,14 @@ }, { "constant": false, - "id": 27533, + "id": 30630, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27535, - "src": "2871:7:21", + "scope": 30632, + "src": "2945:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2384,10 +2150,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27532, + "id": 30629, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2871:7:21", + "src": "2945:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2396,32 +2162,31 @@ "visibility": "internal" } ], - "src": "2862:17:21" + "src": "2936:17:30" } }, { - "id": 27541, + "id": 30638, "nodeType": "EventDefinition", - "src": "2886:29:21", - "nodes": [], + "src": "2960:29:30", "anonymous": false, "eventSelector": "14186b8ac9c91f14b0f16f9e886356157442bb899be26513dfe1d4d5929a5bac", "name": "Debug", - "nameLocation": "2892:5:21", + "nameLocation": "2966:5:30", "parameters": { - "id": 27540, + "id": 30637, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27537, + "id": 30634, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27541, - "src": "2898:6:21", + "scope": 30638, + "src": "2972:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2429,10 +2194,10 @@ "typeString": "string" }, "typeName": { - "id": 27536, + "id": 30633, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2898:6:21", + "src": "2972:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2442,14 +2207,14 @@ }, { "constant": false, - "id": 27539, + "id": 30636, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27541, - "src": "2906:7:21", + "scope": 30638, + "src": "2980:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2457,10 +2222,10 @@ "typeString": "address" }, "typeName": { - "id": 27538, + "id": 30635, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2906:7:21", + "src": "2980:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2470,32 +2235,31 @@ "visibility": "internal" } ], - "src": "2897:17:21" + "src": "2971:17:30" } }, { - "id": 27547, + "id": 30644, "nodeType": "EventDefinition", - "src": "2921:26:21", - "nodes": [], + "src": "2995:26:30", "anonymous": false, "eventSelector": "d1401e4d321999a7547f3d989953912043b0f4ab8471cc7307695072f6ee9d83", "name": "Debug", - "nameLocation": "2927:5:21", + "nameLocation": "3001:5:30", "parameters": { - "id": 27546, + "id": 30643, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27543, + "id": 30640, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27547, - "src": "2933:6:21", + "scope": 30644, + "src": "3007:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2503,10 +2267,10 @@ "typeString": "string" }, "typeName": { - "id": 27542, + "id": 30639, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2933:6:21", + "src": "3007:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2516,14 +2280,14 @@ }, { "constant": false, - "id": 27545, + "id": 30642, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27547, - "src": "2941:4:21", + "scope": 30644, + "src": "3015:4:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2531,10 +2295,10 @@ "typeString": "bool" }, "typeName": { - "id": 27544, + "id": 30641, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2941:4:21", + "src": "3015:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2543,32 +2307,31 @@ "visibility": "internal" } ], - "src": "2932:14:21" + "src": "3006:14:30" } }, { - "id": 27553, + "id": 30650, "nodeType": "EventDefinition", - "src": "2953:28:21", - "nodes": [], + "src": "3027:28:30", "anonymous": false, "eventSelector": "747eaa98d4c6787fb9ebfa7ba00179a57433dbd57fd28208b7a240d949164a09", "name": "Debug", - "nameLocation": "2959:5:21", + "nameLocation": "3033:5:30", "parameters": { - "id": 27552, + "id": 30649, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27549, + "id": 30646, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27553, - "src": "2965:6:21", + "scope": 30650, + "src": "3039:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2576,10 +2339,10 @@ "typeString": "string" }, "typeName": { - "id": 27548, + "id": 30645, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2965:6:21", + "src": "3039:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2589,14 +2352,14 @@ }, { "constant": false, - "id": 27551, + "id": 30648, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27553, - "src": "2973:6:21", + "scope": 30650, + "src": "3047:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2604,10 +2367,10 @@ "typeString": "string" }, "typeName": { - "id": 27550, + "id": 30647, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2973:6:21", + "src": "3047:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2616,36 +2379,34 @@ "visibility": "internal" } ], - "src": "2964:16:21" + "src": "3038:16:30" } }, { - "id": 27577, + "id": 30674, "nodeType": "FunctionDefinition", - "src": "2989:103:21", - "nodes": [], + "src": "3063:103:30", "body": { - "id": 27576, + "id": 30673, "nodeType": "Block", - "src": "3010:82:21", - "nodes": [], + "src": "3084:82:30", "statements": [ { "expression": { - "id": 27574, + "id": 30671, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27556, + "id": 30653, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27417, - "src": "3012:4:21", + "referencedDeclaration": 30511, + "src": "3086:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, @@ -2665,14 +2426,14 @@ "arguments": [ { "hexValue": "6865766d20636865617420636f6465", - "id": 27567, + "id": 30664, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3066:17:21", + "src": "3140:17:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", "typeString": "literal_string \"hevm cheat code\"" @@ -2687,27 +2448,26 @@ "typeString": "literal_string \"hevm cheat code\"" } ], - "id": 27566, + "id": 30663, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "3056:9:21", + "src": "3130:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 27568, + "id": 30665, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3056:28:21", + "src": "3130:28:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -2722,35 +2482,34 @@ "typeString": "bytes32" } ], - "id": 27565, + "id": 30662, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3048:7:21", + "src": "3122:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 27564, + "id": 30661, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3048:7:21", + "src": "3122:7:30", "typeDescriptions": {} } }, - "id": 27569, + "id": 30666, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3048:37:21", + "src": "3122:37:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2765,35 +2524,34 @@ "typeString": "uint256" } ], - "id": 27563, + "id": 30660, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3040:7:21", + "src": "3114:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint160_$", "typeString": "type(uint160)" }, "typeName": { - "id": 27562, + "id": 30659, "name": "uint160", "nodeType": "ElementaryTypeName", - "src": "3040:7:21", + "src": "3114:7:30", "typeDescriptions": {} } }, - "id": 27570, + "id": 30667, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3040:46:21", + "src": "3114:46:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint160", @@ -2808,35 +2566,34 @@ "typeString": "uint160" } ], - "id": 27561, + "id": 30658, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3032:7:21", + "src": "3106:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes20_$", "typeString": "type(bytes20)" }, "typeName": { - "id": 27560, + "id": 30657, "name": "bytes20", "nodeType": "ElementaryTypeName", - "src": "3032:7:21", + "src": "3106:7:30", "typeDescriptions": {} } }, - "id": 27571, + "id": 30668, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3032:55:21", + "src": "3106:55:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes20", @@ -2851,35 +2608,34 @@ "typeString": "bytes20" } ], - "id": 27559, + "id": 30656, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3024:7:21", + "src": "3098:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27558, + "id": 30655, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3024:7:21", + "src": "3098:7:30", "typeDescriptions": {} } }, - "id": 27572, + "id": 30669, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3024:64:21", + "src": "3098:64:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -2894,42 +2650,41 @@ "typeString": "address" } ], - "id": 27557, + "id": 30654, "name": "Hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27404, - "src": "3019:4:21", + "referencedDeclaration": 30498, + "src": "3093:4:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Hevm_$27404_$", + "typeIdentifier": "t_type$_t_contract$_Hevm_$30498_$", "typeString": "type(contract Hevm)" } }, - "id": 27573, + "id": 30670, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3019:70:21", + "src": "3093:70:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "src": "3012:77:21", + "src": "3086:77:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "id": 27575, + "id": 30672, "nodeType": "ExpressionStatement", - "src": "3012:77:21" + "src": "3086:77:30" } ] }, @@ -2939,49 +2694,47 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 27554, + "id": 30651, "nodeType": "ParameterList", "parameters": [], - "src": "3000:2:21" + "src": "3074:2:30" }, "returnParameters": { - "id": 27555, + "id": 30652, "nodeType": "ParameterList", "parameters": [], - "src": "3010:0:21" + "src": "3084:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27602, + "id": 30699, "nodeType": "FunctionDefinition", - "src": "3238:184:21", - "nodes": [], + "src": "3312:184:30", "body": { - "id": 27601, + "id": 30698, "nodeType": "Block", - "src": "3269:153:21", - "nodes": [], + "src": "3343:153:30", "statements": [ { "expression": { - "id": 27585, + "id": 30682, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27580, + "id": 30677, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27426, - "src": "3280:3:21", + "referencedDeclaration": 30520, + "src": "3354:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -2991,80 +2744,76 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27583, + "id": 30680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3286:9:21", + "src": "3360:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27582, + "id": 30679, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27581, + "id": 30678, "name": "Actor", - "nameLocations": [ - "3290:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3290:5:21" + "referencedDeclaration": 30364, + "src": "3364:5:30" }, - "referencedDeclaration": 27385, - "src": "3290:5:21", + "referencedDeclaration": 30364, + "src": "3364:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27584, + "id": 30681, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3286:11:21", + "src": "3360:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3280:17:21", + "src": "3354:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27586, + "id": 30683, "nodeType": "ExpressionStatement", - "src": "3280:17:21" + "src": "3354:17:30" }, { "expression": { - "id": 27592, + "id": 30689, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27587, + "id": 30684, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27420, - "src": "3321:3:21", + "referencedDeclaration": 30514, + "src": "3395:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -3074,80 +2823,76 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27590, + "id": 30687, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3327:9:21", + "src": "3401:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27589, + "id": 30686, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27588, + "id": 30685, "name": "Actor", - "nameLocations": [ - "3331:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3331:5:21" + "referencedDeclaration": 30364, + "src": "3405:5:30" }, - "referencedDeclaration": 27385, - "src": "3331:5:21", + "referencedDeclaration": 30364, + "src": "3405:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27591, + "id": 30688, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3327:11:21", + "src": "3401:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3321:17:21", + "src": "3395:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27593, + "id": 30690, "nodeType": "ExpressionStatement", - "src": "3321:17:21" + "src": "3395:17:30" }, { "expression": { - "id": 27599, + "id": 30696, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27594, + "id": 30691, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27423, - "src": "3388:3:21", + "referencedDeclaration": 30517, + "src": "3462:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -3157,63 +2902,59 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27597, + "id": 30694, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3394:9:21", + "src": "3468:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27596, + "id": 30693, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27595, + "id": 30692, "name": "Actor", - "nameLocations": [ - "3398:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3398:5:21" + "referencedDeclaration": 30364, + "src": "3472:5:30" }, - "referencedDeclaration": 27385, - "src": "3398:5:21", + "referencedDeclaration": 30364, + "src": "3472:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27598, + "id": 30695, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3394:11:21", + "src": "3468:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3388:17:21", + "src": "3462:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27600, + "id": 30697, "nodeType": "ExpressionStatement", - "src": "3388:17:21" + "src": "3462:17:30" } ] }, @@ -3222,38 +2963,36 @@ "kind": "function", "modifiers": [], "name": "createActors", - "nameLocation": "3247:12:21", + "nameLocation": "3321:12:30", "parameters": { - "id": 27578, + "id": 30675, "nodeType": "ParameterList", "parameters": [], - "src": "3259:2:21" + "src": "3333:2:30" }, "returnParameters": { - "id": 27579, + "id": 30676, "nodeType": "ParameterList", "parameters": [], - "src": "3269:0:21" + "src": "3343:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27683, + "id": 30780, "nodeType": "FunctionDefinition", - "src": "3546:551:21", - "nodes": [], + "src": "3620:551:30", "body": { - "id": 27682, + "id": 30779, "nodeType": "Block", - "src": "3576:521:21", - "nodes": [], + "src": "3650:521:30", "statements": [ { "expression": { - "id": 27610, + "id": 30707, "isConstant": false, "isLValue": false, "isPure": false, @@ -3261,28 +3000,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27605, + "id": 30702, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3589:6:21", + "referencedDeclaration": 30621, + "src": "3663:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27607, + "id": 30704, "indexExpression": { "hexValue": "55534443", - "id": 27606, + "id": 30703, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3596:6:21", + "src": "3670:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa", "typeString": "literal_string \"USDC\"" @@ -3294,22 +3033,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3589:14:21", + "src": "3663:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27608, + "id": 30705, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3604:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3589:19:21", + "referencedDeclaration": 30611, + "src": "3663:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3318,30 +3056,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27609, + "id": 30706, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27429, - "src": "3611:4:21", + "referencedDeclaration": 30523, + "src": "3685:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3589:26:21", + "src": "3663:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27611, + "id": 30708, "nodeType": "ExpressionStatement", - "src": "3589:26:21" + "src": "3663:26:30" }, { "expression": { - "id": 27617, + "id": 30714, "isConstant": false, "isLValue": false, "isPure": false, @@ -3349,28 +3087,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27612, + "id": 30709, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3626:6:21", + "referencedDeclaration": 30621, + "src": "3700:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27614, + "id": 30711, "indexExpression": { "hexValue": "55534443", - "id": 27613, + "id": 30710, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3633:6:21", + "src": "3707:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa", "typeString": "literal_string \"USDC\"" @@ -3382,22 +3120,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3626:14:21", + "src": "3700:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27615, + "id": 30712, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3641:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3626:19:21", + "referencedDeclaration": 30613, + "src": "3700:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3407,33 +3144,33 @@ "operator": "=", "rightHandSide": { "hexValue": "39", - "id": 27616, + "id": 30713, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3648:1:21", + "src": "3722:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_9_by_1", "typeString": "int_const 9" }, "value": "9" }, - "src": "3626:23:21", + "src": "3700:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27618, + "id": 30715, "nodeType": "ExpressionStatement", - "src": "3626:23:21" + "src": "3700:23:30" }, { "expression": { - "id": 27624, + "id": 30721, "isConstant": false, "isLValue": false, "isPure": false, @@ -3441,28 +3178,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27619, + "id": 30716, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3662:6:21", + "referencedDeclaration": 30621, + "src": "3736:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27621, + "id": 30718, "indexExpression": { "hexValue": "444149", - "id": 27620, + "id": 30717, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3669:5:21", + "src": "3743:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -3474,22 +3211,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3662:13:21", + "src": "3736:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27622, + "id": 30719, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3676:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3662:18:21", + "referencedDeclaration": 30611, + "src": "3736:18:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3498,30 +3234,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27623, + "id": 30720, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27432, - "src": "3683:3:21", + "referencedDeclaration": 30526, + "src": "3757:3:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3662:24:21", + "src": "3736:24:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27625, + "id": 30722, "nodeType": "ExpressionStatement", - "src": "3662:24:21" + "src": "3736:24:30" }, { "expression": { - "id": 27631, + "id": 30728, "isConstant": false, "isLValue": false, "isPure": false, @@ -3529,28 +3265,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27626, + "id": 30723, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3697:6:21", + "referencedDeclaration": 30621, + "src": "3771:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27628, + "id": 30725, "indexExpression": { "hexValue": "444149", - "id": 27627, + "id": 30724, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3704:5:21", + "src": "3778:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -3562,22 +3298,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3697:13:21", + "src": "3771:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27629, + "id": 30726, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3711:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3697:18:21", + "referencedDeclaration": 30613, + "src": "3771:18:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3587,33 +3322,33 @@ "operator": "=", "rightHandSide": { "hexValue": "32", - "id": 27630, + "id": 30727, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3718:1:21", + "src": "3792:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "3697:22:21", + "src": "3771:22:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27632, + "id": 30729, "nodeType": "ExpressionStatement", - "src": "3697:22:21" + "src": "3771:22:30" }, { "expression": { - "id": 27638, + "id": 30735, "isConstant": false, "isLValue": false, "isPure": false, @@ -3621,28 +3356,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27633, + "id": 30730, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3730:6:21", + "referencedDeclaration": 30621, + "src": "3804:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27635, + "id": 30732, "indexExpression": { "hexValue": "444149", - "id": 27634, + "id": 30731, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3737:5:21", + "src": "3811:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -3654,22 +3389,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3730:13:21", + "src": "3804:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27636, + "id": 30733, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3744:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "3730:18:21", + "referencedDeclaration": 30615, + "src": "3804:18:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3679,33 +3413,33 @@ "operator": "=", "rightHandSide": { "hexValue": "307841656430633338343032613564313964663645346330334634453244636544366532396331656539", - "id": 27637, + "id": 30734, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3751:42:21", + "src": "3825:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0xAed0c38402a5d19df6E4c03F4E2DceD6e29c1ee9" }, - "src": "3730:63:21", + "src": "3804:63:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27639, + "id": 30736, "nodeType": "ExpressionStatement", - "src": "3730:63:21" + "src": "3804:63:30" }, { "expression": { - "id": 27645, + "id": 30742, "isConstant": false, "isLValue": false, "isPure": false, @@ -3713,28 +3447,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27640, + "id": 30737, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3806:6:21", + "referencedDeclaration": 30621, + "src": "3880:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27642, + "id": 30739, "indexExpression": { "hexValue": "57455448", - "id": 27641, + "id": 30738, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3813:6:21", + "src": "3887:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -3746,22 +3480,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3806:14:21", + "src": "3880:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27643, + "id": 30740, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3821:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3806:19:21", + "referencedDeclaration": 30611, + "src": "3880:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3770,30 +3503,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27644, + "id": 30741, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27435, - "src": "3828:4:21", + "referencedDeclaration": 30529, + "src": "3902:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3806:26:21", + "src": "3880:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27646, + "id": 30743, "nodeType": "ExpressionStatement", - "src": "3806:26:21" + "src": "3880:26:30" }, { "expression": { - "id": 27652, + "id": 30749, "isConstant": false, "isLValue": false, "isPure": false, @@ -3801,28 +3534,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27647, + "id": 30744, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3843:6:21", + "referencedDeclaration": 30621, + "src": "3917:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27649, + "id": 30746, "indexExpression": { "hexValue": "57455448", - "id": 27648, + "id": 30745, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3850:6:21", + "src": "3924:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -3834,22 +3567,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3843:14:21", + "src": "3917:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27650, + "id": 30747, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3858:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3843:19:21", + "referencedDeclaration": 30613, + "src": "3917:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3859,33 +3591,33 @@ "operator": "=", "rightHandSide": { "hexValue": "33", - "id": 27651, + "id": 30748, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3865:1:21", + "src": "3939:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" }, "value": "3" }, - "src": "3843:23:21", + "src": "3917:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27653, + "id": 30750, "nodeType": "ExpressionStatement", - "src": "3843:23:21" + "src": "3917:23:30" }, { "expression": { - "id": 27659, + "id": 30756, "isConstant": false, "isLValue": false, "isPure": false, @@ -3893,28 +3625,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27654, + "id": 30751, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3877:6:21", + "referencedDeclaration": 30621, + "src": "3951:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27656, + "id": 30753, "indexExpression": { "hexValue": "57455448", - "id": 27655, + "id": 30752, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3884:6:21", + "src": "3958:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -3926,22 +3658,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3877:14:21", + "src": "3951:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27657, + "id": 30754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3892:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "3877:19:21", + "referencedDeclaration": 30615, + "src": "3951:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3951,33 +3682,33 @@ "operator": "=", "rightHandSide": { "hexValue": "307835663465433344663963626434333731344645323734306635453336313631353563356238343139", - "id": 27658, + "id": 30755, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3899:42:21", + "src": "3973:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419" }, - "src": "3877:64:21", + "src": "3951:64:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27660, + "id": 30757, "nodeType": "ExpressionStatement", - "src": "3877:64:21" + "src": "3951:64:30" }, { "expression": { - "id": 27666, + "id": 30763, "isConstant": false, "isLValue": false, "isPure": false, @@ -3985,28 +3716,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27661, + "id": 30758, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3954:6:21", + "referencedDeclaration": 30621, + "src": "4028:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27663, + "id": 30760, "indexExpression": { "hexValue": "57425443", - "id": 27662, + "id": 30759, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3961:6:21", + "src": "4035:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -4018,22 +3749,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3954:14:21", + "src": "4028:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27664, + "id": 30761, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3969:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3954:19:21", + "referencedDeclaration": 30611, + "src": "4028:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4042,30 +3772,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27665, + "id": 30762, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27438, - "src": "3976:4:21", + "referencedDeclaration": 30532, + "src": "4050:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3954:26:21", + "src": "4028:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27667, + "id": 30764, "nodeType": "ExpressionStatement", - "src": "3954:26:21" + "src": "4028:26:30" }, { "expression": { - "id": 27673, + "id": 30770, "isConstant": false, "isLValue": false, "isPure": false, @@ -4073,28 +3803,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27668, + "id": 30765, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3991:6:21", + "referencedDeclaration": 30621, + "src": "4065:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27670, + "id": 30767, "indexExpression": { "hexValue": "57425443", - "id": 27669, + "id": 30766, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3998:6:21", + "src": "4072:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -4106,22 +3836,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3991:14:21", + "src": "4065:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27671, + "id": 30768, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4006:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3991:19:21", + "referencedDeclaration": 30613, + "src": "4065:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4131,33 +3860,33 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 27672, + "id": 30769, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4013:1:21", + "src": "4087:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3991:23:21", + "src": "4065:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27674, + "id": 30771, "nodeType": "ExpressionStatement", - "src": "3991:23:21" + "src": "4065:23:30" }, { "expression": { - "id": 27680, + "id": 30777, "isConstant": false, "isLValue": false, "isPure": false, @@ -4165,28 +3894,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27675, + "id": 30772, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4025:6:21", + "referencedDeclaration": 30621, + "src": "4099:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27677, + "id": 30774, "indexExpression": { "hexValue": "57425443", - "id": 27676, + "id": 30773, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4032:6:21", + "src": "4106:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -4198,22 +3927,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4025:14:21", + "src": "4099:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27678, + "id": 30775, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4040:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "4025:19:21", + "referencedDeclaration": 30615, + "src": "4099:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4223,29 +3951,29 @@ "operator": "=", "rightHandSide": { "hexValue": "307846343033303038363532326135624545613439383846386341354233366462433937426545383863", - "id": 27679, + "id": 30776, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4047:42:21", + "src": "4121:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c" }, - "src": "4025:64:21", + "src": "4099:64:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27681, + "id": 30778, "nodeType": "ExpressionStatement", - "src": "4025:64:21" + "src": "4099:64:30" } ] }, @@ -4254,49 +3982,47 @@ "kind": "function", "modifiers": [], "name": "setUpTokens", - "nameLocation": "3555:11:21", + "nameLocation": "3629:11:30", "parameters": { - "id": 27603, + "id": 30700, "nodeType": "ParameterList", "parameters": [], - "src": "3566:2:21" + "src": "3640:2:30" }, "returnParameters": { - "id": 27604, + "id": 30701, "nodeType": "ParameterList", "parameters": [], - "src": "3576:0:21" + "src": "3650:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27747, + "id": 30844, "nodeType": "FunctionDefinition", - "src": "4147:461:21", - "nodes": [], + "src": "4221:461:30", "body": { - "id": 27746, + "id": 30843, "nodeType": "Block", - "src": "4214:394:21", - "nodes": [], + "src": "4288:394:30", "statements": [ { "assignments": [ - 27693 + 30790 ], "declarations": [ { "constant": false, - "id": 27693, + "id": 30790, "mutability": "mutable", "name": "addr", - "nameLocation": "4233:4:21", + "nameLocation": "4307:4:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4225:12:21", + "scope": 30843, + "src": "4299:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4304,10 +4030,10 @@ "typeString": "address" }, "typeName": { - "id": 27692, + "id": 30789, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4225:7:21", + "src": "4299:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4317,29 +4043,29 @@ "visibility": "internal" } ], - "id": 27698, + "id": 30795, "initialValue": { "expression": { "baseExpression": { - "id": 27694, + "id": 30791, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4240:6:21", + "referencedDeclaration": 30621, + "src": "4314:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27696, + "id": 30793, "indexExpression": { - "id": 27695, + "id": 30792, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27685, - "src": "4247:6:21", + "referencedDeclaration": 30782, + "src": "4321:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4350,44 +4076,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4240:14:21", + "src": "4314:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27697, + "id": 30794, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4255:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "4240:19:21", + "referencedDeclaration": 30611, + "src": "4314:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "4225:34:21" + "src": "4299:34:30" }, { "assignments": [ - 27700 + 30797 ], "declarations": [ { "constant": false, - "id": 27700, + "id": 30797, "mutability": "mutable", "name": "slot", - "nameLocation": "4278:4:21", + "nameLocation": "4352:4:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4270:12:21", + "scope": 30843, + "src": "4344:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4395,10 +4120,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27699, + "id": 30796, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4270:7:21", + "src": "4344:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4407,29 +4132,29 @@ "visibility": "internal" } ], - "id": 27705, + "id": 30802, "initialValue": { "expression": { "baseExpression": { - "id": 27701, + "id": 30798, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4286:6:21", + "referencedDeclaration": 30621, + "src": "4360:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27703, + "id": 30800, "indexExpression": { - "id": 27702, + "id": 30799, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27685, - "src": "4293:6:21", + "referencedDeclaration": 30782, + "src": "4367:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4440,44 +4165,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4286:14:21", + "src": "4360:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27704, + "id": 30801, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4301:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "4286:19:21", + "referencedDeclaration": 30613, + "src": "4360:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "4270:35:21" + "src": "4344:35:30" }, { "assignments": [ - 27707 + 30804 ], "declarations": [ { "constant": false, - "id": 27707, + "id": 30804, "mutability": "mutable", "name": "bal", - "nameLocation": "4324:3:21", + "nameLocation": "4398:3:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4316:11:21", + "scope": 30843, + "src": "4390:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4485,10 +4209,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27706, + "id": 30803, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4316:7:21", + "src": "4390:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4497,16 +4221,16 @@ "visibility": "internal" } ], - "id": 27714, + "id": 30811, "initialValue": { "arguments": [ { - "id": 27712, + "id": 30809, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4353:7:21", + "referencedDeclaration": 30784, + "src": "4427:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4523,12 +4247,12 @@ "expression": { "arguments": [ { - "id": 27709, + "id": 30806, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4337:4:21", + "referencedDeclaration": 30790, + "src": "4411:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4542,58 +4266,55 @@ "typeString": "address" } ], - "id": 27708, + "id": 30805, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "4330:6:21", + "referencedDeclaration": 29143, + "src": "4404:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27710, + "id": 30807, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4330:12:21", + "src": "4404:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, - "id": 27711, + "id": 30808, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4343:9:21", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26364, - "src": "4330:22:21", + "referencedDeclaration": 29082, + "src": "4404:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 27713, + "id": 30810, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4330:31:21", + "src": "4404:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4601,18 +4322,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4316:45:21" + "src": "4390:45:30" }, { "expression": { "arguments": [ { - "id": 27718, + "id": 30815, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4399:4:21", + "referencedDeclaration": 30790, + "src": "4473:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4623,24 +4344,24 @@ { "arguments": [ { - "id": 27722, + "id": 30819, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4439:7:21", + "referencedDeclaration": 30784, + "src": "4513:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27723, + "id": 30820, "name": "slot", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27700, - "src": "4448:4:21", + "referencedDeclaration": 30797, + "src": "4522:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4659,41 +4380,39 @@ } ], "expression": { - "id": 27720, + "id": 30817, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "4428:3:21", + "src": "4502:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27721, + "id": 30818, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4432:6:21", "memberName": "encode", "nodeType": "MemberAccess", - "src": "4428:10:21", + "src": "4502:10:30", "typeDescriptions": { "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 27724, + "id": 30821, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4428:25:21", + "src": "4502:25:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -4708,27 +4427,26 @@ "typeString": "bytes memory" } ], - "id": 27719, + "id": 30816, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "4418:9:21", + "src": "4492:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 27725, + "id": 30822, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4418:36:21", + "src": "4492:36:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4742,18 +4460,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27730, + "id": 30827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27728, + "id": 30825, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27707, - "src": "4492:3:21", + "referencedDeclaration": 30804, + "src": "4566:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4762,18 +4480,18 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27729, + "id": 30826, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27689, - "src": "4498:3:21", + "referencedDeclaration": 30786, + "src": "4572:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4492:9:21", + "src": "4566:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4787,35 +4505,34 @@ "typeString": "uint256" } ], - "id": 27727, + "id": 30824, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4484:7:21", + "src": "4558:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { - "id": 27726, + "id": 30823, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4484:7:21", + "src": "4558:7:30", "typeDescriptions": {} } }, - "id": 27731, + "id": 30828, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4484:18:21", + "src": "4558:18:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4839,51 +4556,49 @@ } ], "expression": { - "id": 27715, + "id": 30812, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27417, - "src": "4374:4:21", + "referencedDeclaration": 30511, + "src": "4448:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "id": 27717, + "id": 30814, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4379:5:21", "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 27403, - "src": "4374:10:21", + "referencedDeclaration": 30497, + "src": "4448:10:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (address,bytes32,bytes32) external" } }, - "id": 27732, + "id": 30829, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4374:139:21", + "src": "4448:139:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27733, + "id": 30830, "nodeType": "ExpressionStatement", - "src": "4374:139:21" + "src": "4448:139:30" }, { "expression": { @@ -4891,12 +4606,12 @@ { "arguments": [ { - "id": 27739, + "id": 30836, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4558:7:21", + "referencedDeclaration": 30784, + "src": "4632:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4913,12 +4628,12 @@ "expression": { "arguments": [ { - "id": 27736, + "id": 30833, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4542:4:21", + "referencedDeclaration": 30790, + "src": "4616:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4932,58 +4647,55 @@ "typeString": "address" } ], - "id": 27735, + "id": 30832, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "4535:6:21", + "referencedDeclaration": 29143, + "src": "4609:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27737, + "id": 30834, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4535:12:21", + "src": "4609:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, - "id": 27738, + "id": 30835, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4548:9:21", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26364, - "src": "4535:22:21", + "referencedDeclaration": 29082, + "src": "4609:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 27740, + "id": 30837, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4535:31:21", + "src": "4609:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4995,18 +4707,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27743, + "id": 30840, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27741, + "id": 30838, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27707, - "src": "4568:3:21", + "referencedDeclaration": 30804, + "src": "4642:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5015,18 +4727,18 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27742, + "id": 30839, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27689, - "src": "4574:3:21", + "referencedDeclaration": 30786, + "src": "4648:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4568:9:21", + "src": "4642:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5044,7 +4756,7 @@ "typeString": "uint256" } ], - "id": 27734, + "id": 30831, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5060,31 +4772,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "4526:8:21", + "src": "4600:8:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 27744, + "id": 30841, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4526:52:21", + "src": "4600:52:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27745, + "id": 30842, "nodeType": "ExpressionStatement", - "src": "4526:52:21" + "src": "4600:52:30" } ] }, @@ -5093,20 +4804,20 @@ "kind": "function", "modifiers": [], "name": "mint", - "nameLocation": "4156:4:21", + "nameLocation": "4230:4:30", "parameters": { - "id": 27690, + "id": 30787, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27685, + "id": 30782, "mutability": "mutable", "name": "symbol", - "nameLocation": "4169:6:21", + "nameLocation": "4243:6:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4161:14:21", + "scope": 30844, + "src": "4235:14:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5114,10 +4825,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27684, + "id": 30781, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4161:7:21", + "src": "4235:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5127,13 +4838,13 @@ }, { "constant": false, - "id": 27687, + "id": 30784, "mutability": "mutable", "name": "account", - "nameLocation": "4185:7:21", + "nameLocation": "4259:7:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4177:15:21", + "scope": 30844, + "src": "4251:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5141,10 +4852,10 @@ "typeString": "address" }, "typeName": { - "id": 27686, + "id": 30783, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4177:7:21", + "src": "4251:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5155,13 +4866,13 @@ }, { "constant": false, - "id": 27689, + "id": 30786, "mutability": "mutable", "name": "amt", - "nameLocation": "4202:3:21", + "nameLocation": "4276:3:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4194:11:21", + "scope": 30844, + "src": "4268:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5169,10 +4880,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27688, + "id": 30785, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4194:7:21", + "src": "4268:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5181,44 +4892,42 @@ "visibility": "internal" } ], - "src": "4160:46:21" + "src": "4234:46:30" }, "returnParameters": { - "id": 27691, + "id": 30788, "nodeType": "ParameterList", "parameters": [], - "src": "4214:0:21" + "src": "4288:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27823, + "id": 30920, "nodeType": "FunctionDefinition", - "src": "4666:583:21", - "nodes": [], + "src": "4740:583:30", "body": { - "id": 27822, + "id": 30919, "nodeType": "Block", - "src": "4744:505:21", - "nodes": [], + "src": "4818:505:30", "statements": [ { "assignments": [ - 27757 + 30854 ], "declarations": [ { "constant": false, - "id": 27757, + "id": 30854, "mutability": "mutable", "name": "diff", - "nameLocation": "4763:4:21", + "nameLocation": "4837:4:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4755:12:21", + "scope": 30919, + "src": "4829:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5226,10 +4935,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27756, + "id": 30853, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4755:7:21", + "src": "4829:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5238,25 +4947,25 @@ "visibility": "internal" } ], - "id": 27768, + "id": 30865, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27760, + "id": 30857, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27758, + "id": 30855, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4771:4:21", + "referencedDeclaration": 30846, + "src": "4845:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5265,18 +4974,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 27759, + "id": 30856, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4778:4:21", + "referencedDeclaration": 30848, + "src": "4852:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4771:11:21", + "src": "4845:11:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5287,18 +4996,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27766, + "id": 30863, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27764, + "id": 30861, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4799:4:21", + "referencedDeclaration": 30848, + "src": "4873:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5307,47 +5016,47 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27765, + "id": 30862, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4806:4:21", + "referencedDeclaration": 30846, + "src": "4880:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4799:11:21", + "src": "4873:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27767, + "id": 30864, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "4771:39:21", + "src": "4845:39:30", "trueExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27763, + "id": 30860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27761, + "id": 30858, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4785:4:21", + "referencedDeclaration": 30846, + "src": "4859:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5356,18 +5065,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27762, + "id": 30859, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4792:4:21", + "referencedDeclaration": 30848, + "src": "4866:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4785:11:21", + "src": "4859:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5379,7 +5088,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4755:55:21" + "src": "4829:55:30" }, { "condition": { @@ -5387,18 +5096,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27771, + "id": 30868, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27769, + "id": 30866, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27757, - "src": "4825:4:21", + "referencedDeclaration": 30854, + "src": "4899:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5408,50 +5117,50 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27770, + "id": 30867, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4833:1:21", + "src": "4907:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4825:9:21", + "src": "4899:9:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 27773, + "id": 30870, "nodeType": "IfStatement", - "src": "4821:22:21", + "src": "4895:22:30", "trueBody": { - "functionReturnParameters": 27755, - "id": 27772, + "functionReturnParameters": 30852, + "id": 30869, "nodeType": "Return", - "src": "4836:7:21" + "src": "4910:7:30" } }, { "assignments": [ - 27775 + 30872 ], "declarations": [ { "constant": false, - "id": 27775, + "id": 30872, "mutability": "mutable", "name": "denominator", - "nameLocation": "4863:11:21", + "nameLocation": "4937:11:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4855:19:21", + "scope": 30919, + "src": "4929:19:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5459,10 +5168,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27774, + "id": 30871, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4855:7:21", + "src": "4929:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5471,25 +5180,25 @@ "visibility": "internal" } ], - "id": 27782, + "id": 30879, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27778, + "id": 30875, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27776, + "id": 30873, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4877:4:21", + "referencedDeclaration": 30846, + "src": "4951:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5499,52 +5208,52 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27777, + "id": 30874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4885:1:21", + "src": "4959:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4877:9:21", + "src": "4951:9:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { - "id": 27780, + "id": 30877, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4896:4:21", + "referencedDeclaration": 30846, + "src": "4970:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27781, + "id": 30878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "4877:23:21", + "src": "4951:23:30", "trueExpression": { - "id": 27779, + "id": 30876, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4889:4:21", + "referencedDeclaration": 30848, + "src": "4963:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5556,22 +5265,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4855:45:21" + "src": "4929:45:30" }, { "assignments": [ - 27784 + 30881 ], "declarations": [ { "constant": false, - "id": 27784, + "id": 30881, "mutability": "mutable", "name": "check", - "nameLocation": "4916:5:21", + "nameLocation": "4990:5:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4911:10:21", + "scope": 30919, + "src": "4985:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5579,10 +5288,10 @@ "typeString": "bool" }, "typeName": { - "id": 27783, + "id": 30880, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4911:4:21", + "src": "4985:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5591,13 +5300,13 @@ "visibility": "internal" } ], - "id": 27799, + "id": 30896, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27798, + "id": 30895, "isConstant": false, "isLValue": false, "isPure": false, @@ -5609,7 +5318,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27790, + "id": 30887, "isConstant": false, "isLValue": false, "isPure": false, @@ -5621,18 +5330,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27787, + "id": 30884, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27785, + "id": 30882, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27757, - "src": "4926:4:21", + "referencedDeclaration": 30854, + "src": "5000:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5641,32 +5350,32 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 27786, + "id": 30883, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27512, - "src": "4933:3:21", + "referencedDeclaration": 30609, + "src": "5007:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4926:10:21", + "src": "5000:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27788, + "id": 30885, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4925:12:21", + "src": "4999:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5675,32 +5384,32 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 27789, + "id": 30886, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27775, - "src": "4940:11:21", + "referencedDeclaration": 30872, + "src": "5014:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4925:26:21", + "src": "4999:26:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27791, + "id": 30888, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4924:28:21", + "src": "4998:28:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5715,18 +5424,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27796, + "id": 30893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27792, + "id": 30889, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27512, - "src": "4956:3:21", + "referencedDeclaration": 30609, + "src": "5030:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5739,21 +5448,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27795, + "id": 30892, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27793, + "id": 30890, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4962:2:21", + "src": "5036:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -5763,55 +5472,55 @@ "nodeType": "BinaryOperation", "operator": "**", "rightExpression": { - "id": 27794, + "id": 30891, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27753, - "src": "4968:8:21", + "referencedDeclaration": 30850, + "src": "5042:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4962:14:21", + "src": "5036:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4956:20:21", + "src": "5030:20:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27797, + "id": 30894, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4955:22:21", + "src": "5029:22:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4924:53:21", + "src": "4998:53:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "4911:66:21" + "src": "4985:66:30" }, { "condition": { - "id": 27801, + "id": 30898, "isConstant": false, "isLValue": false, "isPure": false, @@ -5819,14 +5528,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4994:6:21", + "src": "5068:6:30", "subExpression": { - "id": 27800, + "id": 30897, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27784, - "src": "4995:5:21", + "referencedDeclaration": 30881, + "src": "5069:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5837,27 +5546,27 @@ "typeString": "bool" } }, - "id": 27821, + "id": 30918, "nodeType": "IfStatement", - "src": "4990:252:21", + "src": "5064:252:30", "trueBody": { - "id": 27820, + "id": 30917, "nodeType": "Block", - "src": "5001:241:21", + "src": "5075:241:30", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c2061636375726163792064696769747320", - "id": 27803, + "id": 30900, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5036:54:21", + "src": "5110:54:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_94772435adb9a5e16afe18480e0e25583a903de130497d52a7375f0e3b0b0ffc", "typeString": "literal_string \"Error: approx a == b not satisfied, accuracy digits \"" @@ -5865,12 +5574,12 @@ "value": "Error: approx a == b not satisfied, accuracy digits " }, { - "id": 27804, + "id": 30901, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27753, - "src": "5092:8:21", + "referencedDeclaration": 30850, + "src": "5166:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5888,50 +5597,49 @@ "typeString": "uint256" } ], - "id": 27802, + "id": 30899, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5021:14:21", + "src": "5095:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27805, + "id": 30902, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5021:80:21", + "src": "5095:80:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27806, + "id": 30903, "nodeType": "EmitStatement", - "src": "5016:85:21" + "src": "5090:85:30" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", - "id": 27808, + "id": 30905, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5136:12:21", + "src": "5210:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" @@ -5939,12 +5647,12 @@ "value": " Expected" }, { - "id": 27809, + "id": 30906, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "5150:4:21", + "referencedDeclaration": 30846, + "src": "5224:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5962,50 +5670,49 @@ "typeString": "uint256" } ], - "id": 27807, + "id": 30904, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5121:14:21", + "src": "5195:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27810, + "id": 30907, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5121:34:21", + "src": "5195:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27811, + "id": 30908, "nodeType": "EmitStatement", - "src": "5116:39:21" + "src": "5190:39:30" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", - "id": 27813, + "id": 30910, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5190:12:21", + "src": "5264:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" @@ -6013,12 +5720,12 @@ "value": " Actual" }, { - "id": 27814, + "id": 30911, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "5204:4:21", + "referencedDeclaration": 30848, + "src": "5278:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6036,72 +5743,70 @@ "typeString": "uint256" } ], - "id": 27812, + "id": 30909, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5175:14:21", + "src": "5249:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27815, + "id": 30912, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5175:34:21", + "src": "5249:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27816, + "id": 30913, "nodeType": "EmitStatement", - "src": "5170:39:21" + "src": "5244:39:30" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27817, + "id": 30914, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 216, - "src": "5224:4:21", + "src": "5298:4:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27818, + "id": 30915, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5224:6:21", + "src": "5298:6:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27819, + "id": 30916, "nodeType": "ExpressionStatement", - "src": "5224:6:21" + "src": "5298:6:30" } ] } @@ -6113,20 +5818,20 @@ "kind": "function", "modifiers": [], "name": "withinPrecision", - "nameLocation": "4675:15:21", + "nameLocation": "4749:15:30", "parameters": { - "id": 27754, + "id": 30851, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27749, + "id": 30846, "mutability": "mutable", "name": "val0", - "nameLocation": "4699:4:21", + "nameLocation": "4773:4:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4691:12:21", + "scope": 30920, + "src": "4765:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6134,10 +5839,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27748, + "id": 30845, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4691:7:21", + "src": "4765:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6147,13 +5852,13 @@ }, { "constant": false, - "id": 27751, + "id": 30848, "mutability": "mutable", "name": "val1", - "nameLocation": "4713:4:21", + "nameLocation": "4787:4:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4705:12:21", + "scope": 30920, + "src": "4779:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6161,10 +5866,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27750, + "id": 30847, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4705:7:21", + "src": "4779:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6174,13 +5879,13 @@ }, { "constant": false, - "id": 27753, + "id": 30850, "mutability": "mutable", "name": "accuracy", - "nameLocation": "4727:8:21", + "nameLocation": "4801:8:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4719:16:21", + "scope": 30920, + "src": "4793:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6188,10 +5893,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27752, + "id": 30849, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4719:7:21", + "src": "4793:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6200,44 +5905,42 @@ "visibility": "internal" } ], - "src": "4690:46:21" + "src": "4764:46:30" }, "returnParameters": { - "id": 27755, + "id": 30852, "nodeType": "ParameterList", "parameters": [], - "src": "4744:0:21" + "src": "4818:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27874, + "id": 30971, "nodeType": "FunctionDefinition", - "src": "5300:479:21", - "nodes": [], + "src": "5374:479:30", "body": { - "id": 27873, + "id": 30970, "nodeType": "Block", - "src": "5377:402:21", - "nodes": [], + "src": "5451:402:30", "statements": [ { "assignments": [ - 27833 + 30930 ], "declarations": [ { "constant": false, - "id": 27833, + "id": 30930, "mutability": "mutable", "name": "actualDiff", - "nameLocation": "5396:10:21", + "nameLocation": "5470:10:30", "nodeType": "VariableDeclaration", - "scope": 27873, - "src": "5388:18:21", + "scope": 30970, + "src": "5462:18:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6245,10 +5948,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27832, + "id": 30929, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5388:7:21", + "src": "5462:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6257,25 +5960,25 @@ "visibility": "internal" } ], - "id": 27844, + "id": 30941, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27836, + "id": 30933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27834, + "id": 30931, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5409:4:21", + "referencedDeclaration": 30922, + "src": "5483:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6284,18 +5987,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 27835, + "id": 30932, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5416:4:21", + "referencedDeclaration": 30924, + "src": "5490:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5409:11:21", + "src": "5483:11:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6306,18 +6009,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27842, + "id": 30939, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27840, + "id": 30937, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5437:4:21", + "referencedDeclaration": 30924, + "src": "5511:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6326,47 +6029,47 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27841, + "id": 30938, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5444:4:21", + "referencedDeclaration": 30922, + "src": "5518:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5437:11:21", + "src": "5511:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27843, + "id": 30940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "5409:39:21", + "src": "5483:39:30", "trueExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27839, + "id": 30936, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27837, + "id": 30934, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5423:4:21", + "referencedDeclaration": 30922, + "src": "5497:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6375,18 +6078,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27838, + "id": 30935, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5430:4:21", + "referencedDeclaration": 30924, + "src": "5504:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5423:11:21", + "src": "5497:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6398,22 +6101,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "5388:60:21" + "src": "5462:60:30" }, { "assignments": [ - 27846 + 30943 ], "declarations": [ { "constant": false, - "id": 27846, + "id": 30943, "mutability": "mutable", "name": "check", - "nameLocation": "5464:5:21", + "nameLocation": "5538:5:30", "nodeType": "VariableDeclaration", - "scope": 27873, - "src": "5459:10:21", + "scope": 30970, + "src": "5533:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6421,10 +6124,10 @@ "typeString": "bool" }, "typeName": { - "id": 27845, + "id": 30942, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5459:4:21", + "src": "5533:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6433,24 +6136,24 @@ "visibility": "internal" } ], - "id": 27850, + "id": 30947, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27849, + "id": 30946, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27847, + "id": 30944, "name": "actualDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27833, - "src": "5472:10:21", + "referencedDeclaration": 30930, + "src": "5546:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6459,29 +6162,29 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 27848, + "id": 30945, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27829, - "src": "5486:12:21", + "referencedDeclaration": 30926, + "src": "5560:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5472:26:21", + "src": "5546:26:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "5459:39:21" + "src": "5533:39:30" }, { "condition": { - "id": 27852, + "id": 30949, "isConstant": false, "isLValue": false, "isPure": false, @@ -6489,14 +6192,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5515:6:21", + "src": "5589:6:30", "subExpression": { - "id": 27851, + "id": 30948, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27846, - "src": "5516:5:21", + "referencedDeclaration": 30943, + "src": "5590:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6507,27 +6210,27 @@ "typeString": "bool" } }, - "id": 27872, + "id": 30969, "nodeType": "IfStatement", - "src": "5511:261:21", + "src": "5585:261:30", "trueBody": { - "id": 27871, + "id": 30968, "nodeType": "Block", - "src": "5523:249:21", + "src": "5597:249:30", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c20616363757261637920646966666572656e636520", - "id": 27854, + "id": 30951, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5558:58:21", + "src": "5632:58:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_96172d3974b4dd800f0469c3a6568537958d8450292a90b9e1d84055f2a54229", "typeString": "literal_string \"Error: approx a == b not satisfied, accuracy difference \"" @@ -6535,12 +6238,12 @@ "value": "Error: approx a == b not satisfied, accuracy difference " }, { - "id": 27855, + "id": 30952, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27829, - "src": "5618:12:21", + "referencedDeclaration": 30926, + "src": "5692:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6558,50 +6261,49 @@ "typeString": "uint256" } ], - "id": 27853, + "id": 30950, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5543:14:21", + "src": "5617:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27856, + "id": 30953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5543:88:21", + "src": "5617:88:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27857, + "id": 30954, "nodeType": "EmitStatement", - "src": "5538:93:21" + "src": "5612:93:30" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", - "id": 27859, + "id": 30956, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5666:12:21", + "src": "5740:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" @@ -6609,12 +6311,12 @@ "value": " Expected" }, { - "id": 27860, + "id": 30957, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5680:4:21", + "referencedDeclaration": 30922, + "src": "5754:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6632,50 +6334,49 @@ "typeString": "uint256" } ], - "id": 27858, + "id": 30955, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5651:14:21", + "src": "5725:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27861, + "id": 30958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5651:34:21", + "src": "5725:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27862, + "id": 30959, "nodeType": "EmitStatement", - "src": "5646:39:21" + "src": "5720:39:30" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", - "id": 27864, + "id": 30961, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5720:12:21", + "src": "5794:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" @@ -6683,12 +6384,12 @@ "value": " Actual" }, { - "id": 27865, + "id": 30962, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5734:4:21", + "referencedDeclaration": 30924, + "src": "5808:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6706,72 +6407,70 @@ "typeString": "uint256" } ], - "id": 27863, + "id": 30960, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5705:14:21", + "src": "5779:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27866, + "id": 30963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5705:34:21", + "src": "5779:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27867, + "id": 30964, "nodeType": "EmitStatement", - "src": "5700:39:21" + "src": "5774:39:30" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27868, + "id": 30965, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 216, - "src": "5754:4:21", + "src": "5828:4:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27869, + "id": 30966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5754:6:21", + "src": "5828:6:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27870, + "id": 30967, "nodeType": "ExpressionStatement", - "src": "5754:6:21" + "src": "5828:6:30" } ] } @@ -6783,20 +6482,20 @@ "kind": "function", "modifiers": [], "name": "withinDiff", - "nameLocation": "5309:10:21", + "nameLocation": "5383:10:30", "parameters": { - "id": 27830, + "id": 30927, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27825, + "id": 30922, "mutability": "mutable", "name": "val0", - "nameLocation": "5328:4:21", + "nameLocation": "5402:4:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5320:12:21", + "scope": 30971, + "src": "5394:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6804,10 +6503,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27824, + "id": 30921, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5320:7:21", + "src": "5394:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6817,13 +6516,13 @@ }, { "constant": false, - "id": 27827, + "id": 30924, "mutability": "mutable", "name": "val1", - "nameLocation": "5342:4:21", + "nameLocation": "5416:4:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5334:12:21", + "scope": 30971, + "src": "5408:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6831,10 +6530,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27826, + "id": 30923, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5334:7:21", + "src": "5408:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6844,13 +6543,13 @@ }, { "constant": false, - "id": 27829, + "id": 30926, "mutability": "mutable", "name": "expectedDiff", - "nameLocation": "5356:12:21", + "nameLocation": "5430:12:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5348:20:21", + "scope": 30971, + "src": "5422:20:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6858,10 +6557,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27828, + "id": 30925, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5348:7:21", + "src": "5422:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6870,64 +6569,62 @@ "visibility": "internal" } ], - "src": "5319:50:21" + "src": "5393:50:30" }, "returnParameters": { - "id": 27831, + "id": 30928, "nodeType": "ParameterList", "parameters": [], - "src": "5377:0:21" + "src": "5451:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27893, + "id": 30990, "nodeType": "FunctionDefinition", - "src": "5787:159:21", - "nodes": [], + "src": "5861:159:30", "body": { - "id": 27892, + "id": 30989, "nodeType": "Block", - "src": "5882:64:21", - "nodes": [], + "src": "5956:64:30", "statements": [ { "expression": { "arguments": [ { - "id": 27886, + "id": 30983, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27876, - "src": "5917:3:21", + "referencedDeclaration": 30973, + "src": "5991:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 27887, + "id": 30984, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27878, - "src": "5922:3:21", + "referencedDeclaration": 30975, + "src": "5996:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 27888, + "id": 30985, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27880, - "src": "5927:3:21", + "referencedDeclaration": 30977, + "src": "6001:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6935,14 +6632,14 @@ }, { "hexValue": "66616c7365", - "id": 27889, + "id": 30986, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5932:5:21", + "src": "6006:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6969,40 +6666,39 @@ "typeString": "bool" } ], - "id": 27885, + "id": 30982, "name": "constrictToRange", "nodeType": "Identifier", "overloadedDeclarations": [ - 27893, - 27931 + 30990, + 31028 ], - "referencedDeclaration": 27931, - "src": "5900:16:21", + "referencedDeclaration": 31028, + "src": "5974:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_bool_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256,bool) pure returns (uint256)" } }, - "id": 27890, + "id": 30987, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5900:38:21", + "src": "5974:38:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27884, - "id": 27891, + "functionReturnParameters": 30981, + "id": 30988, "nodeType": "Return", - "src": "5893:45:21" + "src": "5967:45:30" } ] }, @@ -7011,20 +6707,20 @@ "kind": "function", "modifiers": [], "name": "constrictToRange", - "nameLocation": "5796:16:21", + "nameLocation": "5870:16:30", "parameters": { - "id": 27881, + "id": 30978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27876, + "id": 30973, "mutability": "mutable", "name": "val", - "nameLocation": "5821:3:21", + "nameLocation": "5895:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5813:11:21", + "scope": 30990, + "src": "5887:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7032,10 +6728,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27875, + "id": 30972, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5813:7:21", + "src": "5887:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7045,13 +6741,13 @@ }, { "constant": false, - "id": 27878, + "id": 30975, "mutability": "mutable", "name": "min", - "nameLocation": "5834:3:21", + "nameLocation": "5908:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5826:11:21", + "scope": 30990, + "src": "5900:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7059,10 +6755,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27877, + "id": 30974, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5826:7:21", + "src": "5900:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7072,13 +6768,13 @@ }, { "constant": false, - "id": 27880, + "id": 30977, "mutability": "mutable", "name": "max", - "nameLocation": "5847:3:21", + "nameLocation": "5921:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5839:11:21", + "scope": 30990, + "src": "5913:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7086,10 +6782,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27879, + "id": 30976, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5839:7:21", + "src": "5913:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7098,21 +6794,21 @@ "visibility": "internal" } ], - "src": "5812:39:21" + "src": "5886:39:30" }, "returnParameters": { - "id": 27884, + "id": 30981, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27883, + "id": 30980, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5873:7:21", + "scope": 30990, + "src": "5947:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7120,10 +6816,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27882, + "id": 30979, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5873:7:21", + "src": "5947:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7132,23 +6828,21 @@ "visibility": "internal" } ], - "src": "5872:9:21" + "src": "5946:9:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "pure", "virtual": false, "visibility": "public" }, { - "id": 27931, + "id": 31028, "nodeType": "FunctionDefinition", - "src": "5954:291:21", - "nodes": [], + "src": "6028:291:30", "body": { - "id": 27930, + "id": 31027, "nodeType": "Block", - "src": "6063:182:21", - "nodes": [], + "src": "6137:182:30", "statements": [ { "condition": { @@ -7156,7 +6850,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27911, + "id": 31008, "isConstant": false, "isLValue": false, "isPure": false, @@ -7166,18 +6860,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27908, + "id": 31005, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27906, + "id": 31003, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27895, - "src": "6083:3:21", + "referencedDeclaration": 30992, + "src": "6157:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7187,21 +6881,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27907, + "id": 31004, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6090:1:21", + "src": "6164:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6083:8:21", + "src": "6157:8:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7210,7 +6904,7 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 27910, + "id": 31007, "isConstant": false, "isLValue": false, "isPure": false, @@ -7218,14 +6912,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6095:8:21", + "src": "6169:8:30", "subExpression": { - "id": 27909, + "id": 31006, "name": "nonZero", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27901, - "src": "6096:7:21", + "referencedDeclaration": 30998, + "src": "6170:7:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7236,7 +6930,7 @@ "typeString": "bool" } }, - "src": "6083:20:21", + "src": "6157:20:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7248,18 +6942,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27916, + "id": 31013, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27914, + "id": 31011, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6133:3:21", + "referencedDeclaration": 30996, + "src": "6207:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7268,18 +6962,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 27915, + "id": 31012, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6140:3:21", + "referencedDeclaration": 30994, + "src": "6214:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6133:10:21", + "src": "6207:10:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7291,7 +6985,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27926, + "id": 31023, "isConstant": false, "isLValue": false, "isPure": false, @@ -7301,18 +6995,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27924, + "id": 31021, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27919, + "id": 31016, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27895, - "src": "6214:3:21", + "referencedDeclaration": 30992, + "src": "6288:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7327,18 +7021,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27922, + "id": 31019, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27920, + "id": 31017, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6221:3:21", + "referencedDeclaration": 30996, + "src": "6295:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7347,38 +7041,38 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27921, + "id": 31018, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6227:3:21", + "referencedDeclaration": 30994, + "src": "6301:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6221:9:21", + "src": "6295:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27923, + "id": 31020, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "6220:11:21", + "src": "6294:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6214:17:21", + "src": "6288:17:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7387,74 +7081,74 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27925, + "id": 31022, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6234:3:21", + "referencedDeclaration": 30994, + "src": "6308:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6214:23:21", + "src": "6288:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27905, - "id": 27927, + "functionReturnParameters": 31002, + "id": 31024, "nodeType": "Return", - "src": "6207:30:21" + "src": "6281:30:30" }, - "id": 27928, + "id": 31025, "nodeType": "IfStatement", - "src": "6129:108:21", + "src": "6203:108:30", "trueBody": { "expression": { - "id": 27917, + "id": 31014, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6162:3:21", + "referencedDeclaration": 30996, + "src": "6236:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27905, - "id": 27918, + "functionReturnParameters": 31002, + "id": 31015, "nodeType": "Return", - "src": "6155:10:21" + "src": "6229:10:30" } }, - "id": 27929, + "id": 31026, "nodeType": "IfStatement", - "src": "6074:163:21", + "src": "6148:163:30", "trueBody": { "expression": { "hexValue": "30", - "id": 27912, + "id": 31009, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6112:1:21", + "src": "6186:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 27905, - "id": 27913, + "functionReturnParameters": 31002, + "id": 31010, "nodeType": "Return", - "src": "6105:8:21" + "src": "6179:8:30" } } ] @@ -7464,20 +7158,20 @@ "kind": "function", "modifiers": [], "name": "constrictToRange", - "nameLocation": "5963:16:21", + "nameLocation": "6037:16:30", "parameters": { - "id": 27902, + "id": 30999, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27895, + "id": 30992, "mutability": "mutable", "name": "val", - "nameLocation": "5988:3:21", + "nameLocation": "6062:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "5980:11:21", + "scope": 31028, + "src": "6054:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7485,10 +7179,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27894, + "id": 30991, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5980:7:21", + "src": "6054:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7498,13 +7192,13 @@ }, { "constant": false, - "id": 27897, + "id": 30994, "mutability": "mutable", "name": "min", - "nameLocation": "6001:3:21", + "nameLocation": "6075:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "5993:11:21", + "scope": 31028, + "src": "6067:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7512,10 +7206,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27896, + "id": 30993, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5993:7:21", + "src": "6067:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7525,13 +7219,13 @@ }, { "constant": false, - "id": 27899, + "id": 30996, "mutability": "mutable", "name": "max", - "nameLocation": "6014:3:21", + "nameLocation": "6088:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6006:11:21", + "scope": 31028, + "src": "6080:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7539,10 +7233,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27898, + "id": 30995, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6006:7:21", + "src": "6080:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7552,13 +7246,13 @@ }, { "constant": false, - "id": 27901, + "id": 30998, "mutability": "mutable", "name": "nonZero", - "nameLocation": "6024:7:21", + "nameLocation": "6098:7:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6019:12:21", + "scope": 31028, + "src": "6093:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7566,10 +7260,10 @@ "typeString": "bool" }, "typeName": { - "id": 27900, + "id": 30997, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6019:4:21", + "src": "6093:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7578,21 +7272,21 @@ "visibility": "internal" } ], - "src": "5979:53:21" + "src": "6053:53:30" }, "returnParameters": { - "id": 27905, + "id": 31002, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27904, + "id": 31001, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6054:7:21", + "scope": 31028, + "src": "6128:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7600,10 +7294,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27903, + "id": 31000, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6054:7:21", + "src": "6128:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7612,9 +7306,9 @@ "visibility": "internal" } ], - "src": "6053:9:21" + "src": "6127:9:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "pure", "virtual": false, "visibility": "public" @@ -7624,37 +7318,34 @@ "baseContracts": [ { "baseName": { - "id": 27413, + "id": 30507, "name": "DSTest", - "nameLocations": [ - "469:6:21" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, - "src": "469:6:21" + "src": "469:6:30" }, - "id": 27414, + "id": 30508, "nodeType": "InheritanceSpecifier", - "src": "469:6:21" + "src": "469:6:30" } ], "canonicalName": "Utility", "contractDependencies": [ - 27385 + 30364 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 27932, + 31029, 1786 ], "name": "Utility", - "nameLocation": "458:7:21", - "scope": 27933, + "nameLocation": "458:7:30", + "scope": 31030, "usedErrors": [] } ], "license": "AGPL-3.0-or-later" }, - "id": 21 + "id": 30 } \ No newline at end of file diff --git a/out/Utility.sol/User.json b/out/Utility.sol/User.json index fd9c580..d712270 100644 --- a/out/Utility.sol/User.json +++ b/out/Utility.sol/User.json @@ -32,215 +32,21 @@ "methodIdentifiers": { "approve(address,uint256)": "095ea7b3" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Utility.sol\":\"User\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/interfaces/Interfaces.sol\":{\"keccak256\":\"0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7\",\"dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a\",\"dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb\"]},\"test/Utility.sol\":{\"keccak256\":\"0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775\",\"dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "approve" - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "test/Utility.sol": "User" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/lib/ds-test/src/test.sol": { - "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", - "urls": [ - "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", - "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" - ], - "license": "GPL-3.0-or-later" - }, - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdAssertions.sol": { - "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", - "urls": [ - "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", - "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdError.sol": { - "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", - "urls": [ - "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", - "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Test.sol": { - "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", - "urls": [ - "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", - "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - }, - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - }, - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - }, - "src/interfaces/Interfaces.sol": { - "keccak256": "0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04", - "urls": [ - "bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7", - "dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX" - ], - "license": "GPL-3.0-or-later" - }, - "src/users/Actor.sol": { - "keccak256": "0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e", - "urls": [ - "bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a", - "dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb" - ], - "license": "AGPL-3.0-or-later" - }, - "test/Utility.sol": { - "keccak256": "0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f", - "urls": [ - "bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775", - "dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds" - ], - "license": "AGPL-3.0-or-later" - } - }, - "version": 1 - }, "ast": { "absolutePath": "test/Utility.sol", - "id": 27933, + "id": 31030, "exportedSymbols": { "Actor": [ - 27385 + 30364 ], "DSTest": [ 1786 ], "Hevm": [ - 27404 + 30498 ], "IERC20": [ - 26425 + 29143 ], "StdAssertions": [ 2708 @@ -264,10 +70,10 @@ 1843 ], "User": [ - 27412 + 30506 ], "Utility": [ - 27932 + 31029 ], "Vm": [ 9352 @@ -292,13 +98,12 @@ ] }, "nodeType": "SourceUnit", - "src": "47:6209:21", + "src": "47:6283:30", "nodes": [ { - "id": 27387, + "id": 30481, "nodeType": "PragmaDirective", - "src": "47:23:21", - "nodes": [], + "src": "47:23:30", "literals": [ "solidity", "^", @@ -307,60 +112,57 @@ ] }, { - "id": 27388, + "id": 30482, "nodeType": "ImportDirective", - "src": "74:32:21", - "nodes": [], + "src": "74:32:30", "absolutePath": "src/users/Actor.sol", "file": "../src/users/Actor.sol", "nameLocation": "-1:-1:-1", - "scope": 27933, - "sourceUnit": 27386, + "scope": 31030, + "sourceUnit": 30365, "symbolAliases": [], "unitAlias": "" }, { - "id": 27389, + "id": 30483, "nodeType": "ImportDirective", - "src": "110:39:21", - "nodes": [], + "src": "110:39:30", "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 27933, + "scope": 31030, "sourceUnit": 8196, "symbolAliases": [], "unitAlias": "" }, { - "id": 27404, + "id": 30498, "nodeType": "ContractDefinition", - "src": "153:112:21", + "src": "153:112:30", "nodes": [ { - "id": 27394, + "id": 30488, "nodeType": "FunctionDefinition", - "src": "175:32:21", - "nodes": [], + "src": "175:32:30", "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", "modifiers": [], "name": "warp", - "nameLocation": "184:4:21", + "nameLocation": "184:4:30", "parameters": { - "id": 27392, + "id": 30486, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27391, + "id": 30485, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27394, - "src": "189:7:21", + "scope": 30488, + "src": "189:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -368,10 +170,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27390, + "id": 30484, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "189:7:21", + "src": "189:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -380,43 +182,42 @@ "visibility": "internal" } ], - "src": "188:9:21" + "src": "188:9:30" }, "returnParameters": { - "id": 27393, + "id": 30487, "nodeType": "ParameterList", "parameters": [], - "src": "206:0:21" + "src": "206:0:30" }, - "scope": 27404, + "scope": 30498, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27403, + "id": 30497, "nodeType": "FunctionDefinition", - "src": "213:49:21", - "nodes": [], + "src": "213:49:30", "functionSelector": "70ca10bb", "implemented": false, "kind": "function", "modifiers": [], "name": "store", - "nameLocation": "222:5:21", + "nameLocation": "222:5:30", "parameters": { - "id": 27401, + "id": 30495, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27396, + "id": 30490, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "228:7:21", + "scope": 30497, + "src": "228:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -424,10 +225,10 @@ "typeString": "address" }, "typeName": { - "id": 27395, + "id": 30489, "name": "address", "nodeType": "ElementaryTypeName", - "src": "228:7:21", + "src": "228:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -438,13 +239,13 @@ }, { "constant": false, - "id": 27398, + "id": 30492, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "236:7:21", + "scope": 30497, + "src": "236:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -452,10 +253,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27397, + "id": 30491, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "236:7:21", + "src": "236:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -465,13 +266,13 @@ }, { "constant": false, - "id": 27400, + "id": 30494, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "244:7:21", + "scope": 30497, + "src": "244:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -479,10 +280,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27399, + "id": 30493, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "244:7:21", + "src": "244:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -491,15 +292,15 @@ "visibility": "internal" } ], - "src": "227:25:21" + "src": "227:25:30" }, "returnParameters": { - "id": 27402, + "id": 30496, "nodeType": "ParameterList", "parameters": [], - "src": "261:0:21" + "src": "261:0:30" }, - "scope": 27404, + "scope": 30498, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -512,42 +313,41 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 27404 + 30498 ], "name": "Hevm", - "nameLocation": "163:4:21", - "scope": 27933, + "nameLocation": "163:4:30", + "scope": 31030, "usedErrors": [] }, { - "id": 27412, + "id": 30506, "nodeType": "ContractDefinition", - "src": "269:69:21", + "src": "269:69:30", "nodes": [ { - "id": 27411, + "id": 30505, "nodeType": "FunctionDefinition", - "src": "291:44:21", - "nodes": [], + "src": "291:44:30", "functionSelector": "095ea7b3", "implemented": false, "kind": "function", "modifiers": [], "name": "approve", - "nameLocation": "300:7:21", + "nameLocation": "300:7:30", "parameters": { - "id": 27409, + "id": 30503, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27406, + "id": 30500, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27411, - "src": "308:7:21", + "scope": 30505, + "src": "308:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -555,10 +355,10 @@ "typeString": "address" }, "typeName": { - "id": 27405, + "id": 30499, "name": "address", "nodeType": "ElementaryTypeName", - "src": "308:7:21", + "src": "308:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -569,13 +369,13 @@ }, { "constant": false, - "id": 27408, + "id": 30502, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27411, - "src": "317:7:21", + "scope": 30505, + "src": "317:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -583,10 +383,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27407, + "id": 30501, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "317:7:21", + "src": "317:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -595,15 +395,15 @@ "visibility": "internal" } ], - "src": "307:18:21" + "src": "307:18:30" }, "returnParameters": { - "id": 27410, + "id": 30504, "nodeType": "ParameterList", "parameters": [], - "src": "334:0:21" + "src": "334:0:30" }, - "scope": 27412, + "scope": 30506, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -616,180 +416,163 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 27412 + 30506 ], "name": "User", - "nameLocation": "279:4:21", - "scope": 27933, + "nameLocation": "279:4:30", + "scope": 31030, "usedErrors": [] }, { - "id": 27932, + "id": 31029, "nodeType": "ContractDefinition", - "src": "449:5807:21", + "src": "449:5881:30", "nodes": [ { - "id": 27417, + "id": 30511, "nodeType": "VariableDeclaration", - "src": "485:9:21", - "nodes": [], + "src": "485:9:30", "constant": false, "mutability": "mutable", "name": "hevm", - "nameLocation": "490:4:21", - "scope": 27932, + "nameLocation": "490:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" }, "typeName": { - "id": 27416, + "id": 30510, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27415, + "id": 30509, "name": "Hevm", - "nameLocations": [ - "485:4:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27404, - "src": "485:4:21" + "referencedDeclaration": 30498, + "src": "485:4:30" }, - "referencedDeclaration": 27404, - "src": "485:4:21", + "referencedDeclaration": 30498, + "src": "485:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, "visibility": "internal" }, { - "id": 27420, + "id": 30514, "nodeType": "VariableDeclaration", - "src": "596:10:21", - "nodes": [], + "src": "596:10:30", "constant": false, "mutability": "mutable", "name": "joe", - "nameLocation": "603:3:21", - "scope": 27932, + "nameLocation": "603:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27419, + "id": 30513, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27418, + "id": 30512, "name": "Actor", - "nameLocations": [ - "596:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "596:5:21" + "referencedDeclaration": 30364, + "src": "596:5:30" }, - "referencedDeclaration": 27385, - "src": "596:5:21", + "referencedDeclaration": 30364, + "src": "596:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27423, + "id": 30517, "nodeType": "VariableDeclaration", - "src": "625:10:21", - "nodes": [], + "src": "625:10:30", "constant": false, "mutability": "mutable", "name": "dev", - "nameLocation": "632:3:21", - "scope": 27932, + "nameLocation": "632:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27422, + "id": 30516, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27421, + "id": 30515, "name": "Actor", - "nameLocations": [ - "625:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "625:5:21" + "referencedDeclaration": 30364, + "src": "625:5:30" }, - "referencedDeclaration": 27385, - "src": "625:5:21", + "referencedDeclaration": 30364, + "src": "625:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27426, + "id": 30520, "nodeType": "VariableDeclaration", - "src": "651:10:21", - "nodes": [], + "src": "651:10:30", "constant": false, "mutability": "mutable", "name": "jon", - "nameLocation": "658:3:21", - "scope": 27932, + "nameLocation": "658:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27425, + "id": 30519, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27424, + "id": 30518, "name": "Actor", - "nameLocations": [ - "651:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "651:5:21" + "referencedDeclaration": 30364, + "src": "651:5:30" }, - "referencedDeclaration": 27385, - "src": "651:5:21", + "referencedDeclaration": 30364, + "src": "651:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27429, + "id": 30523, "nodeType": "VariableDeclaration", - "src": "815:67:21", - "nodes": [], + "src": "815:67:30", "constant": true, "mutability": "constant", "name": "USDC", - "nameLocation": "832:4:21", - "scope": 27932, + "nameLocation": "832:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -797,10 +580,10 @@ "typeString": "address" }, "typeName": { - "id": 27427, + "id": 30521, "name": "address", "nodeType": "ElementaryTypeName", - "src": "815:7:21", + "src": "815:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -809,14 +592,14 @@ }, "value": { "hexValue": "307841306238363939316336323138623336633164313944346132653945623063453336303665423438", - "id": 27428, + "id": 30522, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "840:42:21", + "src": "840:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -826,15 +609,14 @@ "visibility": "internal" }, { - "id": 27432, + "id": 30526, "nodeType": "VariableDeclaration", - "src": "889:67:21", - "nodes": [], + "src": "889:67:30", "constant": true, "mutability": "constant", "name": "DAI", - "nameLocation": "906:3:21", - "scope": 27932, + "nameLocation": "906:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -842,10 +624,10 @@ "typeString": "address" }, "typeName": { - "id": 27430, + "id": 30524, "name": "address", "nodeType": "ElementaryTypeName", - "src": "889:7:21", + "src": "889:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -854,14 +636,14 @@ }, "value": { "hexValue": "307836423137353437344538393039344334344461393862393534456564654143343935323731643046", - "id": 27431, + "id": 30525, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "914:42:21", + "src": "914:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -871,15 +653,14 @@ "visibility": "internal" }, { - "id": 27435, + "id": 30529, "nodeType": "VariableDeclaration", - "src": "963:67:21", - "nodes": [], + "src": "963:67:30", "constant": true, "mutability": "constant", "name": "WETH", - "nameLocation": "980:4:21", - "scope": 27932, + "nameLocation": "980:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -887,10 +668,10 @@ "typeString": "address" }, "typeName": { - "id": 27433, + "id": 30527, "name": "address", "nodeType": "ElementaryTypeName", - "src": "963:7:21", + "src": "963:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -899,14 +680,14 @@ }, "value": { "hexValue": "307843303261614133396232323346453844304130653543344632376541443930383343373536436332", - "id": 27434, + "id": 30528, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "988:42:21", + "src": "988:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -916,15 +697,14 @@ "visibility": "internal" }, { - "id": 27438, + "id": 30532, "nodeType": "VariableDeclaration", - "src": "1037:67:21", - "nodes": [], + "src": "1037:67:30", "constant": true, "mutability": "constant", "name": "WBTC", - "nameLocation": "1054:4:21", - "scope": 27932, + "nameLocation": "1054:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -932,10 +712,10 @@ "typeString": "address" }, "typeName": { - "id": 27436, + "id": 30530, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1037:7:21", + "src": "1037:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -944,14 +724,14 @@ }, "value": { "hexValue": "307832323630464143354535353432613737334161343466424366654466374331393362633243353939", - "id": 27437, + "id": 30531, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1062:42:21", + "src": "1062:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -961,50 +741,90 @@ "visibility": "internal" }, { - "id": 27444, + "id": 30535, + "nodeType": "VariableDeclaration", + "src": "1111:67:30", + "constant": true, + "mutability": "constant", + "name": "FRAX", + "nameLocation": "1128:4:30", + "scope": 31029, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 30533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1111:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "hexValue": "307838353364393535614345663832324462303538656238353035393131454437374631373562393965", + "id": 30534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1136:42:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x853d955aCEf822Db058eb8505911ED77F175b99e" + }, + "visibility": "internal" + }, + { + "id": 30541, "nodeType": "VariableDeclaration", - "src": "1113:35:21", - "nodes": [], + "src": "1187:35:30", "constant": true, "mutability": "constant", "name": "usdc", - "nameLocation": "1129:4:21", - "scope": 27932, + "nameLocation": "1203:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27440, + "id": 30537, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27439, + "id": 30536, "name": "IERC20", - "nameLocations": [ - "1113:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1113:6:21" + "referencedDeclaration": 29143, + "src": "1187:6:30" }, - "referencedDeclaration": 26425, - "src": "1113:6:21", + "referencedDeclaration": 29143, + "src": "1187:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27442, + "id": 30539, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27429, - "src": "1143:4:21", + "referencedDeclaration": 30523, + "src": "1217:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1018,80 +838,75 @@ "typeString": "address" } ], - "id": 27441, + "id": 30538, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1136:6:21", + "referencedDeclaration": 29143, + "src": "1210:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27443, + "id": 30540, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1136:12:21", + "src": "1210:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27450, + "id": 30547, "nodeType": "VariableDeclaration", - "src": "1155:34:21", - "nodes": [], + "src": "1229:34:30", "constant": true, "mutability": "constant", "name": "dai", - "nameLocation": "1171:3:21", - "scope": 27932, + "nameLocation": "1245:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27446, + "id": 30543, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27445, + "id": 30542, "name": "IERC20", - "nameLocations": [ - "1155:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1155:6:21" + "referencedDeclaration": 29143, + "src": "1229:6:30" }, - "referencedDeclaration": 26425, - "src": "1155:6:21", + "referencedDeclaration": 29143, + "src": "1229:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27448, + "id": 30545, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27432, - "src": "1185:3:21", + "referencedDeclaration": 30526, + "src": "1259:3:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1105,80 +920,75 @@ "typeString": "address" } ], - "id": 27447, + "id": 30544, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1178:6:21", + "referencedDeclaration": 29143, + "src": "1252:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27449, + "id": 30546, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1178:11:21", + "src": "1252:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27456, + "id": 30553, "nodeType": "VariableDeclaration", - "src": "1196:35:21", - "nodes": [], + "src": "1270:35:30", "constant": true, "mutability": "constant", "name": "weth", - "nameLocation": "1212:4:21", - "scope": 27932, + "nameLocation": "1286:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27452, + "id": 30549, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27451, + "id": 30548, "name": "IERC20", - "nameLocations": [ - "1196:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1196:6:21" + "referencedDeclaration": 29143, + "src": "1270:6:30" }, - "referencedDeclaration": 26425, - "src": "1196:6:21", + "referencedDeclaration": 29143, + "src": "1270:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27454, + "id": 30551, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27435, - "src": "1226:4:21", + "referencedDeclaration": 30529, + "src": "1300:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1192,80 +1002,75 @@ "typeString": "address" } ], - "id": 27453, + "id": 30550, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1219:6:21", + "referencedDeclaration": 29143, + "src": "1293:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27455, + "id": 30552, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1219:12:21", + "src": "1293:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27462, + "id": 30559, "nodeType": "VariableDeclaration", - "src": "1238:35:21", - "nodes": [], + "src": "1312:35:30", "constant": true, "mutability": "constant", "name": "wbtc", - "nameLocation": "1254:4:21", - "scope": 27932, + "nameLocation": "1328:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27458, + "id": 30555, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27457, + "id": 30554, "name": "IERC20", - "nameLocations": [ - "1238:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1238:6:21" + "referencedDeclaration": 29143, + "src": "1312:6:30" }, - "referencedDeclaration": 26425, - "src": "1238:6:21", + "referencedDeclaration": 29143, + "src": "1312:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27460, + "id": 30557, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27438, - "src": "1268:4:21", + "referencedDeclaration": 30532, + "src": "1342:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1279,45 +1084,43 @@ "typeString": "address" } ], - "id": 27459, + "id": 30556, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1261:6:21", + "referencedDeclaration": 29143, + "src": "1335:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27461, + "id": 30558, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1261:12:21", + "src": "1335:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27465, + "id": 30562, "nodeType": "VariableDeclaration", - "src": "1282:82:21", - "nodes": [], + "src": "1356:82:30", "constant": true, "mutability": "constant", "name": "UNISWAP_V2_ROUTER_02", - "nameLocation": "1299:20:21", - "scope": 27932, + "nameLocation": "1373:20:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1325,10 +1128,10 @@ "typeString": "address" }, "typeName": { - "id": 27463, + "id": 30560, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1282:7:21", + "src": "1356:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1337,14 +1140,14 @@ }, "value": { "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", - "id": 27464, + "id": 30561, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1322:42:21", + "src": "1396:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1354,15 +1157,14 @@ "visibility": "internal" }, { - "id": 27468, + "id": 30565, "nodeType": "VariableDeclaration", - "src": "1392:82:21", - "nodes": [], + "src": "1466:82:30", "constant": true, "mutability": "constant", "name": "UNISWAP_V2_FACTORY", - "nameLocation": "1409:18:21", - "scope": 27932, + "nameLocation": "1483:18:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1370,10 +1172,10 @@ "typeString": "address" }, "typeName": { - "id": 27466, + "id": 30563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1392:7:21", + "src": "1466:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1382,14 +1184,14 @@ }, "value": { "hexValue": "307835433639624565373031656638313461324236613345444434423136353243423963633561413666", - "id": 27467, + "id": 30564, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1432:42:21", + "src": "1506:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1399,16 +1201,15 @@ "visibility": "internal" }, { - "id": 27471, + "id": 30568, "nodeType": "VariableDeclaration", - "src": "1581:36:21", - "nodes": [], + "src": "1655:36:30", "constant": true, "functionSelector": "e70dd6cf", "mutability": "constant", "name": "CL_FACTORY", - "nameLocation": "1603:10:21", - "scope": 27932, + "nameLocation": "1677:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1416,10 +1217,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27469, + "id": 30566, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1581:5:21", + "src": "1655:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1427,14 +1228,14 @@ }, "value": { "hexValue": "30", - "id": 27470, + "id": 30567, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1616:1:21", + "src": "1690:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1444,16 +1245,15 @@ "visibility": "public" }, { - "id": 27474, + "id": 30571, "nodeType": "VariableDeclaration", - "src": "1671:36:21", - "nodes": [], + "src": "1745:36:30", "constant": true, "functionSelector": "174a5be4", "mutability": "constant", "name": "DL_FACTORY", - "nameLocation": "1693:10:21", - "scope": 27932, + "nameLocation": "1767:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1461,10 +1261,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27472, + "id": 30569, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1671:5:21", + "src": "1745:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1472,14 +1272,14 @@ }, "value": { "hexValue": "31", - "id": 27473, + "id": 30570, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1706:1:21", + "src": "1780:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -1489,16 +1289,15 @@ "visibility": "public" }, { - "id": 27477, + "id": 30574, "nodeType": "VariableDeclaration", - "src": "1755:36:21", - "nodes": [], + "src": "1829:36:30", "constant": true, "functionSelector": "38505fb0", "mutability": "constant", "name": "FL_FACTORY", - "nameLocation": "1777:10:21", - "scope": 27932, + "nameLocation": "1851:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1506,10 +1305,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27475, + "id": 30572, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1755:5:21", + "src": "1829:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1517,14 +1316,14 @@ }, "value": { "hexValue": "32", - "id": 27476, + "id": 30573, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1790:1:21", + "src": "1864:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -1534,16 +1333,15 @@ "visibility": "public" }, { - "id": 27480, + "id": 30577, "nodeType": "VariableDeclaration", - "src": "1842:36:21", - "nodes": [], + "src": "1916:36:30", "constant": true, "functionSelector": "c5ba73ed", "mutability": "constant", "name": "LL_FACTORY", - "nameLocation": "1864:10:21", - "scope": 27932, + "nameLocation": "1938:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1551,10 +1349,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27478, + "id": 30575, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1842:5:21", + "src": "1916:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1562,14 +1360,14 @@ }, "value": { "hexValue": "33", - "id": 27479, + "id": 30576, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1877:1:21", + "src": "1951:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" @@ -1579,16 +1377,15 @@ "visibility": "public" }, { - "id": 27483, + "id": 30580, "nodeType": "VariableDeclaration", - "src": "1931:36:21", - "nodes": [], + "src": "2005:36:30", "constant": true, "functionSelector": "9f71f14a", "mutability": "constant", "name": "SL_FACTORY", - "nameLocation": "1953:10:21", - "scope": 27932, + "nameLocation": "2027:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1596,10 +1393,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27481, + "id": 30578, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1931:5:21", + "src": "2005:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1607,14 +1404,14 @@ }, "value": { "hexValue": "34", - "id": 27482, + "id": 30579, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1966:1:21", + "src": "2040:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_4_by_1", "typeString": "int_const 4" @@ -1624,16 +1421,15 @@ "visibility": "public" }, { - "id": 27486, + "id": 30583, "nodeType": "VariableDeclaration", - "src": "2018:45:21", - "nodes": [], + "src": "2092:45:30", "constant": true, "functionSelector": "8c38922f", "mutability": "constant", "name": "INTEREST_CALC_TYPE", - "nameLocation": "2040:18:21", - "scope": 27932, + "nameLocation": "2114:18:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1641,10 +1437,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27484, + "id": 30581, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2018:5:21", + "src": "2092:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1652,14 +1448,14 @@ }, "value": { "hexValue": "3130", - "id": 27485, + "id": 30582, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2061:2:21", + "src": "2135:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -1669,16 +1465,15 @@ "visibility": "public" }, { - "id": 27489, + "id": 30586, "nodeType": "VariableDeclaration", - "src": "2104:45:21", - "nodes": [], + "src": "2178:45:30", "constant": true, "functionSelector": "3493f4ca", "mutability": "constant", "name": "LATEFEE_CALC_TYPE", - "nameLocation": "2126:17:21", - "scope": 27932, + "nameLocation": "2200:17:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1686,10 +1481,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27487, + "id": 30584, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2104:5:21", + "src": "2178:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1697,14 +1492,14 @@ }, "value": { "hexValue": "3131", - "id": 27488, + "id": 30585, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2147:2:21", + "src": "2221:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_11_by_1", "typeString": "int_const 11" @@ -1714,16 +1509,15 @@ "visibility": "public" }, { - "id": 27492, + "id": 30589, "nodeType": "VariableDeclaration", - "src": "2188:45:21", - "nodes": [], + "src": "2262:45:30", "constant": true, "functionSelector": "7a8fe3c0", "mutability": "constant", "name": "PREMIUM_CALC_TYPE", - "nameLocation": "2210:17:21", - "scope": 27932, + "nameLocation": "2284:17:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1731,10 +1525,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27490, + "id": 30587, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2188:5:21", + "src": "2262:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1742,14 +1536,14 @@ }, "value": { "hexValue": "3132", - "id": 27491, + "id": 30588, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2231:2:21", + "src": "2305:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" @@ -1759,15 +1553,14 @@ "visibility": "public" }, { - "id": 27497, + "id": 30594, "nodeType": "VariableDeclaration", - "src": "2274:30:21", - "nodes": [], + "src": "2348:30:30", "constant": true, "mutability": "constant", "name": "USD", - "nameLocation": "2291:3:21", - "scope": 27932, + "nameLocation": "2365:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1775,10 +1568,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27493, + "id": 30590, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2274:7:21", + "src": "2348:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1789,21 +1582,21 @@ "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" }, - "id": 27496, + "id": 30593, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27494, + "id": 30591, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2297:2:21", + "src": "2371:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -1814,21 +1607,21 @@ "operator": "**", "rightExpression": { "hexValue": "36", - "id": 27495, + "id": 30592, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2303:1:21", + "src": "2377:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_6_by_1", "typeString": "int_const 6" }, "value": "6" }, - "src": "2297:7:21", + "src": "2371:7:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" @@ -1837,15 +1630,14 @@ "visibility": "internal" }, { - "id": 27502, + "id": 30599, "nodeType": "VariableDeclaration", - "src": "2339:30:21", - "nodes": [], + "src": "2413:30:30", "constant": true, "mutability": "constant", "name": "BTC", - "nameLocation": "2356:3:21", - "scope": 27932, + "nameLocation": "2430:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1853,10 +1645,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27498, + "id": 30595, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2339:7:21", + "src": "2413:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1867,21 +1659,21 @@ "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" }, - "id": 27501, + "id": 30598, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27499, + "id": 30596, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2362:2:21", + "src": "2436:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -1892,21 +1684,21 @@ "operator": "**", "rightExpression": { "hexValue": "38", - "id": 27500, + "id": 30597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2368:1:21", + "src": "2442:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "2362:7:21", + "src": "2436:7:30", "typeDescriptions": { "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" @@ -1915,15 +1707,14 @@ "visibility": "internal" }, { - "id": 27507, + "id": 30604, "nodeType": "VariableDeclaration", - "src": "2404:31:21", - "nodes": [], + "src": "2478:31:30", "constant": true, "mutability": "constant", "name": "WAD", - "nameLocation": "2421:3:21", - "scope": 27932, + "nameLocation": "2495:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1931,10 +1722,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27503, + "id": 30600, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2404:7:21", + "src": "2478:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1945,21 +1736,21 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 27506, + "id": 30603, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27504, + "id": 30601, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2427:2:21", + "src": "2501:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -1970,21 +1761,21 @@ "operator": "**", "rightExpression": { "hexValue": "3138", - "id": 27505, + "id": 30602, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2433:2:21", + "src": "2507:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", "typeString": "int_const 18" }, "value": "18" }, - "src": "2427:8:21", + "src": "2501:8:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" @@ -1993,15 +1784,14 @@ "visibility": "internal" }, { - "id": 27512, + "id": 30609, "nodeType": "VariableDeclaration", - "src": "2442:31:21", - "nodes": [], + "src": "2516:31:30", "constant": true, "mutability": "constant", "name": "RAY", - "nameLocation": "2459:3:21", - "scope": 27932, + "nameLocation": "2533:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2009,10 +1799,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27508, + "id": 30605, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2442:7:21", + "src": "2516:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2023,21 +1813,21 @@ "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" }, - "id": 27511, + "id": 30608, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27509, + "id": 30606, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2465:2:21", + "src": "2539:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -2048,21 +1838,21 @@ "operator": "**", "rightExpression": { "hexValue": "3237", - "id": 27510, + "id": 30607, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2471:2:21", + "src": "2545:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_27_by_1", "typeString": "int_const 27" }, "value": "27" }, - "src": "2465:8:21", + "src": "2539:8:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" @@ -2071,21 +1861,20 @@ "visibility": "internal" }, { - "id": 27519, + "id": 30616, "nodeType": "StructDefinition", - "src": "2557:167:21", - "nodes": [], + "src": "2631:167:30", "canonicalName": "Utility.Token", "members": [ { "constant": false, - "id": 27514, + "id": 30611, "mutability": "mutable", "name": "addr", - "nameLocation": "2589:4:21", + "nameLocation": "2663:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2581:12:21", + "scope": 30616, + "src": "2655:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2093,10 +1882,10 @@ "typeString": "address" }, "typeName": { - "id": 27513, + "id": 30610, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2581:7:21", + "src": "2655:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2107,13 +1896,13 @@ }, { "constant": false, - "id": 27516, + "id": 30613, "mutability": "mutable", "name": "slot", - "nameLocation": "2637:4:21", + "nameLocation": "2711:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2629:12:21", + "scope": 30616, + "src": "2703:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2121,10 +1910,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27515, + "id": 30612, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2629:7:21", + "src": "2703:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2134,13 +1923,13 @@ }, { "constant": false, - "id": 27518, + "id": 30615, "mutability": "mutable", "name": "orcl", - "nameLocation": "2684:4:21", + "nameLocation": "2758:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2676:12:21", + "scope": 30616, + "src": "2750:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2148,10 +1937,10 @@ "typeString": "address" }, "typeName": { - "id": 27517, + "id": 30614, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2676:7:21", + "src": "2750:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2162,61 +1951,57 @@ } ], "name": "Token", - "nameLocation": "2564:5:21", - "scope": 27932, + "nameLocation": "2638:5:30", + "scope": 31029, "visibility": "public" }, { - "id": 27524, + "id": 30621, "nodeType": "VariableDeclaration", - "src": "2733:33:21", - "nodes": [], + "src": "2807:33:30", "constant": false, "mutability": "mutable", "name": "tokens", - "nameLocation": "2760:6:21", - "scope": 27932, + "nameLocation": "2834:6:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "typeName": { - "id": 27523, + "id": 30620, "keyType": { - "id": 27520, + "id": 30617, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2742:7:21", + "src": "2816:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "2733:26:21", + "src": "2807:26:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "valueType": { - "id": 27522, + "id": 30619, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27521, + "id": 30618, "name": "Token", - "nameLocations": [ - "2753:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27519, - "src": "2753:5:21" + "referencedDeclaration": 30616, + "src": "2827:5:30" }, - "referencedDeclaration": 27519, - "src": "2753:5:21", + "referencedDeclaration": 30616, + "src": "2827:5:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage_ptr", + "typeIdentifier": "t_struct$_Token_$30616_storage_ptr", "typeString": "struct Utility.Token" } } @@ -2224,21 +2009,20 @@ "visibility": "internal" }, { - "id": 27529, + "id": 30626, "nodeType": "StructDefinition", - "src": "2775:68:21", - "nodes": [], + "src": "2849:68:30", "canonicalName": "Utility.TestObj", "members": [ { "constant": false, - "id": 27526, + "id": 30623, "mutability": "mutable", "name": "pre", - "nameLocation": "2809:3:21", + "nameLocation": "2883:3:30", "nodeType": "VariableDeclaration", - "scope": 27529, - "src": "2801:11:21", + "scope": 30626, + "src": "2875:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2246,10 +2030,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27525, + "id": 30622, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2801:7:21", + "src": "2875:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2259,13 +2043,13 @@ }, { "constant": false, - "id": 27528, + "id": 30625, "mutability": "mutable", "name": "post", - "nameLocation": "2831:4:21", + "nameLocation": "2905:4:30", "nodeType": "VariableDeclaration", - "scope": 27529, - "src": "2823:12:21", + "scope": 30626, + "src": "2897:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2273,10 +2057,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27527, + "id": 30624, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2823:7:21", + "src": "2897:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2286,33 +2070,32 @@ } ], "name": "TestObj", - "nameLocation": "2782:7:21", - "scope": 27932, + "nameLocation": "2856:7:30", + "scope": 31029, "visibility": "public" }, { - "id": 27535, + "id": 30632, "nodeType": "EventDefinition", - "src": "2851:29:21", - "nodes": [], + "src": "2925:29:30", "anonymous": false, "eventSelector": "3c5ad147104e56be34a9176a6692f7df8d2f4b29a5af06bc6b98970d329d6577", "name": "Debug", - "nameLocation": "2857:5:21", + "nameLocation": "2931:5:30", "parameters": { - "id": 27534, + "id": 30631, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27531, + "id": 30628, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27535, - "src": "2863:6:21", + "scope": 30632, + "src": "2937:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2320,10 +2103,10 @@ "typeString": "string" }, "typeName": { - "id": 27530, + "id": 30627, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2863:6:21", + "src": "2937:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2333,14 +2116,14 @@ }, { "constant": false, - "id": 27533, + "id": 30630, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27535, - "src": "2871:7:21", + "scope": 30632, + "src": "2945:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2348,10 +2131,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27532, + "id": 30629, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2871:7:21", + "src": "2945:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2360,32 +2143,31 @@ "visibility": "internal" } ], - "src": "2862:17:21" + "src": "2936:17:30" } }, { - "id": 27541, + "id": 30638, "nodeType": "EventDefinition", - "src": "2886:29:21", - "nodes": [], + "src": "2960:29:30", "anonymous": false, "eventSelector": "14186b8ac9c91f14b0f16f9e886356157442bb899be26513dfe1d4d5929a5bac", "name": "Debug", - "nameLocation": "2892:5:21", + "nameLocation": "2966:5:30", "parameters": { - "id": 27540, + "id": 30637, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27537, + "id": 30634, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27541, - "src": "2898:6:21", + "scope": 30638, + "src": "2972:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2393,10 +2175,10 @@ "typeString": "string" }, "typeName": { - "id": 27536, + "id": 30633, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2898:6:21", + "src": "2972:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2406,14 +2188,14 @@ }, { "constant": false, - "id": 27539, + "id": 30636, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27541, - "src": "2906:7:21", + "scope": 30638, + "src": "2980:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2421,10 +2203,10 @@ "typeString": "address" }, "typeName": { - "id": 27538, + "id": 30635, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2906:7:21", + "src": "2980:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2434,32 +2216,31 @@ "visibility": "internal" } ], - "src": "2897:17:21" + "src": "2971:17:30" } }, { - "id": 27547, + "id": 30644, "nodeType": "EventDefinition", - "src": "2921:26:21", - "nodes": [], + "src": "2995:26:30", "anonymous": false, "eventSelector": "d1401e4d321999a7547f3d989953912043b0f4ab8471cc7307695072f6ee9d83", "name": "Debug", - "nameLocation": "2927:5:21", + "nameLocation": "3001:5:30", "parameters": { - "id": 27546, + "id": 30643, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27543, + "id": 30640, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27547, - "src": "2933:6:21", + "scope": 30644, + "src": "3007:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2467,10 +2248,10 @@ "typeString": "string" }, "typeName": { - "id": 27542, + "id": 30639, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2933:6:21", + "src": "3007:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2480,14 +2261,14 @@ }, { "constant": false, - "id": 27545, + "id": 30642, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27547, - "src": "2941:4:21", + "scope": 30644, + "src": "3015:4:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2495,10 +2276,10 @@ "typeString": "bool" }, "typeName": { - "id": 27544, + "id": 30641, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2941:4:21", + "src": "3015:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2507,32 +2288,31 @@ "visibility": "internal" } ], - "src": "2932:14:21" + "src": "3006:14:30" } }, { - "id": 27553, + "id": 30650, "nodeType": "EventDefinition", - "src": "2953:28:21", - "nodes": [], + "src": "3027:28:30", "anonymous": false, "eventSelector": "747eaa98d4c6787fb9ebfa7ba00179a57433dbd57fd28208b7a240d949164a09", "name": "Debug", - "nameLocation": "2959:5:21", + "nameLocation": "3033:5:30", "parameters": { - "id": 27552, + "id": 30649, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27549, + "id": 30646, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27553, - "src": "2965:6:21", + "scope": 30650, + "src": "3039:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2540,10 +2320,10 @@ "typeString": "string" }, "typeName": { - "id": 27548, + "id": 30645, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2965:6:21", + "src": "3039:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2553,14 +2333,14 @@ }, { "constant": false, - "id": 27551, + "id": 30648, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27553, - "src": "2973:6:21", + "scope": 30650, + "src": "3047:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2568,10 +2348,10 @@ "typeString": "string" }, "typeName": { - "id": 27550, + "id": 30647, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2973:6:21", + "src": "3047:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2580,36 +2360,34 @@ "visibility": "internal" } ], - "src": "2964:16:21" + "src": "3038:16:30" } }, { - "id": 27577, + "id": 30674, "nodeType": "FunctionDefinition", - "src": "2989:103:21", - "nodes": [], + "src": "3063:103:30", "body": { - "id": 27576, + "id": 30673, "nodeType": "Block", - "src": "3010:82:21", - "nodes": [], + "src": "3084:82:30", "statements": [ { "expression": { - "id": 27574, + "id": 30671, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27556, + "id": 30653, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27417, - "src": "3012:4:21", + "referencedDeclaration": 30511, + "src": "3086:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, @@ -2629,14 +2407,14 @@ "arguments": [ { "hexValue": "6865766d20636865617420636f6465", - "id": 27567, + "id": 30664, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3066:17:21", + "src": "3140:17:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", "typeString": "literal_string \"hevm cheat code\"" @@ -2651,27 +2429,26 @@ "typeString": "literal_string \"hevm cheat code\"" } ], - "id": 27566, + "id": 30663, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "3056:9:21", + "src": "3130:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 27568, + "id": 30665, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3056:28:21", + "src": "3130:28:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -2686,35 +2463,34 @@ "typeString": "bytes32" } ], - "id": 27565, + "id": 30662, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3048:7:21", + "src": "3122:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 27564, + "id": 30661, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3048:7:21", + "src": "3122:7:30", "typeDescriptions": {} } }, - "id": 27569, + "id": 30666, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3048:37:21", + "src": "3122:37:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2729,35 +2505,34 @@ "typeString": "uint256" } ], - "id": 27563, + "id": 30660, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3040:7:21", + "src": "3114:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint160_$", "typeString": "type(uint160)" }, "typeName": { - "id": 27562, + "id": 30659, "name": "uint160", "nodeType": "ElementaryTypeName", - "src": "3040:7:21", + "src": "3114:7:30", "typeDescriptions": {} } }, - "id": 27570, + "id": 30667, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3040:46:21", + "src": "3114:46:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint160", @@ -2772,35 +2547,34 @@ "typeString": "uint160" } ], - "id": 27561, + "id": 30658, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3032:7:21", + "src": "3106:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes20_$", "typeString": "type(bytes20)" }, "typeName": { - "id": 27560, + "id": 30657, "name": "bytes20", "nodeType": "ElementaryTypeName", - "src": "3032:7:21", + "src": "3106:7:30", "typeDescriptions": {} } }, - "id": 27571, + "id": 30668, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3032:55:21", + "src": "3106:55:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes20", @@ -2815,35 +2589,34 @@ "typeString": "bytes20" } ], - "id": 27559, + "id": 30656, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3024:7:21", + "src": "3098:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27558, + "id": 30655, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3024:7:21", + "src": "3098:7:30", "typeDescriptions": {} } }, - "id": 27572, + "id": 30669, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3024:64:21", + "src": "3098:64:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -2858,42 +2631,41 @@ "typeString": "address" } ], - "id": 27557, + "id": 30654, "name": "Hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27404, - "src": "3019:4:21", + "referencedDeclaration": 30498, + "src": "3093:4:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Hevm_$27404_$", + "typeIdentifier": "t_type$_t_contract$_Hevm_$30498_$", "typeString": "type(contract Hevm)" } }, - "id": 27573, + "id": 30670, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3019:70:21", + "src": "3093:70:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "src": "3012:77:21", + "src": "3086:77:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "id": 27575, + "id": 30672, "nodeType": "ExpressionStatement", - "src": "3012:77:21" + "src": "3086:77:30" } ] }, @@ -2903,49 +2675,47 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 27554, + "id": 30651, "nodeType": "ParameterList", "parameters": [], - "src": "3000:2:21" + "src": "3074:2:30" }, "returnParameters": { - "id": 27555, + "id": 30652, "nodeType": "ParameterList", "parameters": [], - "src": "3010:0:21" + "src": "3084:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27602, + "id": 30699, "nodeType": "FunctionDefinition", - "src": "3238:184:21", - "nodes": [], + "src": "3312:184:30", "body": { - "id": 27601, + "id": 30698, "nodeType": "Block", - "src": "3269:153:21", - "nodes": [], + "src": "3343:153:30", "statements": [ { "expression": { - "id": 27585, + "id": 30682, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27580, + "id": 30677, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27426, - "src": "3280:3:21", + "referencedDeclaration": 30520, + "src": "3354:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -2955,80 +2725,76 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27583, + "id": 30680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3286:9:21", + "src": "3360:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27582, + "id": 30679, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27581, + "id": 30678, "name": "Actor", - "nameLocations": [ - "3290:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3290:5:21" + "referencedDeclaration": 30364, + "src": "3364:5:30" }, - "referencedDeclaration": 27385, - "src": "3290:5:21", + "referencedDeclaration": 30364, + "src": "3364:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27584, + "id": 30681, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3286:11:21", + "src": "3360:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3280:17:21", + "src": "3354:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27586, + "id": 30683, "nodeType": "ExpressionStatement", - "src": "3280:17:21" + "src": "3354:17:30" }, { "expression": { - "id": 27592, + "id": 30689, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27587, + "id": 30684, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27420, - "src": "3321:3:21", + "referencedDeclaration": 30514, + "src": "3395:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -3038,80 +2804,76 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27590, + "id": 30687, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3327:9:21", + "src": "3401:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27589, + "id": 30686, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27588, + "id": 30685, "name": "Actor", - "nameLocations": [ - "3331:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3331:5:21" + "referencedDeclaration": 30364, + "src": "3405:5:30" }, - "referencedDeclaration": 27385, - "src": "3331:5:21", + "referencedDeclaration": 30364, + "src": "3405:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27591, + "id": 30688, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3327:11:21", + "src": "3401:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3321:17:21", + "src": "3395:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27593, + "id": 30690, "nodeType": "ExpressionStatement", - "src": "3321:17:21" + "src": "3395:17:30" }, { "expression": { - "id": 27599, + "id": 30696, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27594, + "id": 30691, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27423, - "src": "3388:3:21", + "referencedDeclaration": 30517, + "src": "3462:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -3121,63 +2883,59 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27597, + "id": 30694, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3394:9:21", + "src": "3468:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27596, + "id": 30693, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27595, + "id": 30692, "name": "Actor", - "nameLocations": [ - "3398:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3398:5:21" + "referencedDeclaration": 30364, + "src": "3472:5:30" }, - "referencedDeclaration": 27385, - "src": "3398:5:21", + "referencedDeclaration": 30364, + "src": "3472:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27598, + "id": 30695, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3394:11:21", + "src": "3468:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3388:17:21", + "src": "3462:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27600, + "id": 30697, "nodeType": "ExpressionStatement", - "src": "3388:17:21" + "src": "3462:17:30" } ] }, @@ -3186,38 +2944,36 @@ "kind": "function", "modifiers": [], "name": "createActors", - "nameLocation": "3247:12:21", + "nameLocation": "3321:12:30", "parameters": { - "id": 27578, + "id": 30675, "nodeType": "ParameterList", "parameters": [], - "src": "3259:2:21" + "src": "3333:2:30" }, "returnParameters": { - "id": 27579, + "id": 30676, "nodeType": "ParameterList", "parameters": [], - "src": "3269:0:21" + "src": "3343:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27683, + "id": 30780, "nodeType": "FunctionDefinition", - "src": "3546:551:21", - "nodes": [], + "src": "3620:551:30", "body": { - "id": 27682, + "id": 30779, "nodeType": "Block", - "src": "3576:521:21", - "nodes": [], + "src": "3650:521:30", "statements": [ { "expression": { - "id": 27610, + "id": 30707, "isConstant": false, "isLValue": false, "isPure": false, @@ -3225,28 +2981,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27605, + "id": 30702, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3589:6:21", + "referencedDeclaration": 30621, + "src": "3663:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27607, + "id": 30704, "indexExpression": { "hexValue": "55534443", - "id": 27606, + "id": 30703, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3596:6:21", + "src": "3670:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa", "typeString": "literal_string \"USDC\"" @@ -3258,22 +3014,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3589:14:21", + "src": "3663:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27608, + "id": 30705, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3604:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3589:19:21", + "referencedDeclaration": 30611, + "src": "3663:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3282,30 +3037,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27609, + "id": 30706, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27429, - "src": "3611:4:21", + "referencedDeclaration": 30523, + "src": "3685:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3589:26:21", + "src": "3663:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27611, + "id": 30708, "nodeType": "ExpressionStatement", - "src": "3589:26:21" + "src": "3663:26:30" }, { "expression": { - "id": 27617, + "id": 30714, "isConstant": false, "isLValue": false, "isPure": false, @@ -3313,28 +3068,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27612, + "id": 30709, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3626:6:21", + "referencedDeclaration": 30621, + "src": "3700:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27614, + "id": 30711, "indexExpression": { "hexValue": "55534443", - "id": 27613, + "id": 30710, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3633:6:21", + "src": "3707:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa", "typeString": "literal_string \"USDC\"" @@ -3346,22 +3101,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3626:14:21", + "src": "3700:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27615, + "id": 30712, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3641:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3626:19:21", + "referencedDeclaration": 30613, + "src": "3700:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3371,33 +3125,33 @@ "operator": "=", "rightHandSide": { "hexValue": "39", - "id": 27616, + "id": 30713, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3648:1:21", + "src": "3722:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_9_by_1", "typeString": "int_const 9" }, "value": "9" }, - "src": "3626:23:21", + "src": "3700:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27618, + "id": 30715, "nodeType": "ExpressionStatement", - "src": "3626:23:21" + "src": "3700:23:30" }, { "expression": { - "id": 27624, + "id": 30721, "isConstant": false, "isLValue": false, "isPure": false, @@ -3405,28 +3159,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27619, + "id": 30716, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3662:6:21", + "referencedDeclaration": 30621, + "src": "3736:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27621, + "id": 30718, "indexExpression": { "hexValue": "444149", - "id": 27620, + "id": 30717, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3669:5:21", + "src": "3743:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -3438,22 +3192,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3662:13:21", + "src": "3736:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27622, + "id": 30719, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3676:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3662:18:21", + "referencedDeclaration": 30611, + "src": "3736:18:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3462,30 +3215,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27623, + "id": 30720, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27432, - "src": "3683:3:21", + "referencedDeclaration": 30526, + "src": "3757:3:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3662:24:21", + "src": "3736:24:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27625, + "id": 30722, "nodeType": "ExpressionStatement", - "src": "3662:24:21" + "src": "3736:24:30" }, { "expression": { - "id": 27631, + "id": 30728, "isConstant": false, "isLValue": false, "isPure": false, @@ -3493,28 +3246,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27626, + "id": 30723, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3697:6:21", + "referencedDeclaration": 30621, + "src": "3771:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27628, + "id": 30725, "indexExpression": { "hexValue": "444149", - "id": 27627, + "id": 30724, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3704:5:21", + "src": "3778:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -3526,22 +3279,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3697:13:21", + "src": "3771:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27629, + "id": 30726, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3711:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3697:18:21", + "referencedDeclaration": 30613, + "src": "3771:18:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3551,33 +3303,33 @@ "operator": "=", "rightHandSide": { "hexValue": "32", - "id": 27630, + "id": 30727, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3718:1:21", + "src": "3792:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "3697:22:21", + "src": "3771:22:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27632, + "id": 30729, "nodeType": "ExpressionStatement", - "src": "3697:22:21" + "src": "3771:22:30" }, { "expression": { - "id": 27638, + "id": 30735, "isConstant": false, "isLValue": false, "isPure": false, @@ -3585,28 +3337,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27633, + "id": 30730, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3730:6:21", + "referencedDeclaration": 30621, + "src": "3804:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27635, + "id": 30732, "indexExpression": { "hexValue": "444149", - "id": 27634, + "id": 30731, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3737:5:21", + "src": "3811:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -3618,22 +3370,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3730:13:21", + "src": "3804:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27636, + "id": 30733, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3744:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "3730:18:21", + "referencedDeclaration": 30615, + "src": "3804:18:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3643,33 +3394,33 @@ "operator": "=", "rightHandSide": { "hexValue": "307841656430633338343032613564313964663645346330334634453244636544366532396331656539", - "id": 27637, + "id": 30734, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3751:42:21", + "src": "3825:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0xAed0c38402a5d19df6E4c03F4E2DceD6e29c1ee9" }, - "src": "3730:63:21", + "src": "3804:63:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27639, + "id": 30736, "nodeType": "ExpressionStatement", - "src": "3730:63:21" + "src": "3804:63:30" }, { "expression": { - "id": 27645, + "id": 30742, "isConstant": false, "isLValue": false, "isPure": false, @@ -3677,28 +3428,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27640, + "id": 30737, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3806:6:21", + "referencedDeclaration": 30621, + "src": "3880:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27642, + "id": 30739, "indexExpression": { "hexValue": "57455448", - "id": 27641, + "id": 30738, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3813:6:21", + "src": "3887:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -3710,22 +3461,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3806:14:21", + "src": "3880:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27643, + "id": 30740, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3821:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3806:19:21", + "referencedDeclaration": 30611, + "src": "3880:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3734,30 +3484,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27644, + "id": 30741, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27435, - "src": "3828:4:21", + "referencedDeclaration": 30529, + "src": "3902:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3806:26:21", + "src": "3880:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27646, + "id": 30743, "nodeType": "ExpressionStatement", - "src": "3806:26:21" + "src": "3880:26:30" }, { "expression": { - "id": 27652, + "id": 30749, "isConstant": false, "isLValue": false, "isPure": false, @@ -3765,28 +3515,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27647, + "id": 30744, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3843:6:21", + "referencedDeclaration": 30621, + "src": "3917:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27649, + "id": 30746, "indexExpression": { "hexValue": "57455448", - "id": 27648, + "id": 30745, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3850:6:21", + "src": "3924:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -3798,22 +3548,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3843:14:21", + "src": "3917:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27650, + "id": 30747, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3858:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3843:19:21", + "referencedDeclaration": 30613, + "src": "3917:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3823,33 +3572,33 @@ "operator": "=", "rightHandSide": { "hexValue": "33", - "id": 27651, + "id": 30748, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3865:1:21", + "src": "3939:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" }, "value": "3" }, - "src": "3843:23:21", + "src": "3917:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27653, + "id": 30750, "nodeType": "ExpressionStatement", - "src": "3843:23:21" + "src": "3917:23:30" }, { "expression": { - "id": 27659, + "id": 30756, "isConstant": false, "isLValue": false, "isPure": false, @@ -3857,28 +3606,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27654, + "id": 30751, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3877:6:21", + "referencedDeclaration": 30621, + "src": "3951:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27656, + "id": 30753, "indexExpression": { "hexValue": "57455448", - "id": 27655, + "id": 30752, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3884:6:21", + "src": "3958:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -3890,22 +3639,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3877:14:21", + "src": "3951:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27657, + "id": 30754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3892:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "3877:19:21", + "referencedDeclaration": 30615, + "src": "3951:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3915,33 +3663,33 @@ "operator": "=", "rightHandSide": { "hexValue": "307835663465433344663963626434333731344645323734306635453336313631353563356238343139", - "id": 27658, + "id": 30755, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3899:42:21", + "src": "3973:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419" }, - "src": "3877:64:21", + "src": "3951:64:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27660, + "id": 30757, "nodeType": "ExpressionStatement", - "src": "3877:64:21" + "src": "3951:64:30" }, { "expression": { - "id": 27666, + "id": 30763, "isConstant": false, "isLValue": false, "isPure": false, @@ -3949,28 +3697,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27661, + "id": 30758, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3954:6:21", + "referencedDeclaration": 30621, + "src": "4028:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27663, + "id": 30760, "indexExpression": { "hexValue": "57425443", - "id": 27662, + "id": 30759, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3961:6:21", + "src": "4035:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -3982,22 +3730,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3954:14:21", + "src": "4028:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27664, + "id": 30761, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3969:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3954:19:21", + "referencedDeclaration": 30611, + "src": "4028:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4006,30 +3753,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27665, + "id": 30762, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27438, - "src": "3976:4:21", + "referencedDeclaration": 30532, + "src": "4050:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3954:26:21", + "src": "4028:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27667, + "id": 30764, "nodeType": "ExpressionStatement", - "src": "3954:26:21" + "src": "4028:26:30" }, { "expression": { - "id": 27673, + "id": 30770, "isConstant": false, "isLValue": false, "isPure": false, @@ -4037,28 +3784,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27668, + "id": 30765, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3991:6:21", + "referencedDeclaration": 30621, + "src": "4065:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27670, + "id": 30767, "indexExpression": { "hexValue": "57425443", - "id": 27669, + "id": 30766, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3998:6:21", + "src": "4072:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -4070,22 +3817,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3991:14:21", + "src": "4065:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27671, + "id": 30768, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4006:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3991:19:21", + "referencedDeclaration": 30613, + "src": "4065:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4095,33 +3841,33 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 27672, + "id": 30769, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4013:1:21", + "src": "4087:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3991:23:21", + "src": "4065:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27674, + "id": 30771, "nodeType": "ExpressionStatement", - "src": "3991:23:21" + "src": "4065:23:30" }, { "expression": { - "id": 27680, + "id": 30777, "isConstant": false, "isLValue": false, "isPure": false, @@ -4129,28 +3875,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27675, + "id": 30772, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4025:6:21", + "referencedDeclaration": 30621, + "src": "4099:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27677, + "id": 30774, "indexExpression": { "hexValue": "57425443", - "id": 27676, + "id": 30773, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4032:6:21", + "src": "4106:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -4162,22 +3908,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4025:14:21", + "src": "4099:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27678, + "id": 30775, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4040:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "4025:19:21", + "referencedDeclaration": 30615, + "src": "4099:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4187,29 +3932,29 @@ "operator": "=", "rightHandSide": { "hexValue": "307846343033303038363532326135624545613439383846386341354233366462433937426545383863", - "id": 27679, + "id": 30776, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4047:42:21", + "src": "4121:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c" }, - "src": "4025:64:21", + "src": "4099:64:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27681, + "id": 30778, "nodeType": "ExpressionStatement", - "src": "4025:64:21" + "src": "4099:64:30" } ] }, @@ -4218,49 +3963,47 @@ "kind": "function", "modifiers": [], "name": "setUpTokens", - "nameLocation": "3555:11:21", + "nameLocation": "3629:11:30", "parameters": { - "id": 27603, + "id": 30700, "nodeType": "ParameterList", "parameters": [], - "src": "3566:2:21" + "src": "3640:2:30" }, "returnParameters": { - "id": 27604, + "id": 30701, "nodeType": "ParameterList", "parameters": [], - "src": "3576:0:21" + "src": "3650:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27747, + "id": 30844, "nodeType": "FunctionDefinition", - "src": "4147:461:21", - "nodes": [], + "src": "4221:461:30", "body": { - "id": 27746, + "id": 30843, "nodeType": "Block", - "src": "4214:394:21", - "nodes": [], + "src": "4288:394:30", "statements": [ { "assignments": [ - 27693 + 30790 ], "declarations": [ { "constant": false, - "id": 27693, + "id": 30790, "mutability": "mutable", "name": "addr", - "nameLocation": "4233:4:21", + "nameLocation": "4307:4:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4225:12:21", + "scope": 30843, + "src": "4299:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4268,10 +4011,10 @@ "typeString": "address" }, "typeName": { - "id": 27692, + "id": 30789, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4225:7:21", + "src": "4299:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4281,29 +4024,29 @@ "visibility": "internal" } ], - "id": 27698, + "id": 30795, "initialValue": { "expression": { "baseExpression": { - "id": 27694, + "id": 30791, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4240:6:21", + "referencedDeclaration": 30621, + "src": "4314:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27696, + "id": 30793, "indexExpression": { - "id": 27695, + "id": 30792, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27685, - "src": "4247:6:21", + "referencedDeclaration": 30782, + "src": "4321:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4314,44 +4057,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4240:14:21", + "src": "4314:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27697, + "id": 30794, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4255:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "4240:19:21", + "referencedDeclaration": 30611, + "src": "4314:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "4225:34:21" + "src": "4299:34:30" }, { "assignments": [ - 27700 + 30797 ], "declarations": [ { "constant": false, - "id": 27700, + "id": 30797, "mutability": "mutable", "name": "slot", - "nameLocation": "4278:4:21", + "nameLocation": "4352:4:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4270:12:21", + "scope": 30843, + "src": "4344:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4359,10 +4101,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27699, + "id": 30796, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4270:7:21", + "src": "4344:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4371,29 +4113,29 @@ "visibility": "internal" } ], - "id": 27705, + "id": 30802, "initialValue": { "expression": { "baseExpression": { - "id": 27701, + "id": 30798, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4286:6:21", + "referencedDeclaration": 30621, + "src": "4360:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27703, + "id": 30800, "indexExpression": { - "id": 27702, + "id": 30799, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27685, - "src": "4293:6:21", + "referencedDeclaration": 30782, + "src": "4367:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4404,44 +4146,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4286:14:21", + "src": "4360:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27704, + "id": 30801, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4301:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "4286:19:21", + "referencedDeclaration": 30613, + "src": "4360:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "4270:35:21" + "src": "4344:35:30" }, { "assignments": [ - 27707 + 30804 ], "declarations": [ { "constant": false, - "id": 27707, + "id": 30804, "mutability": "mutable", "name": "bal", - "nameLocation": "4324:3:21", + "nameLocation": "4398:3:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4316:11:21", + "scope": 30843, + "src": "4390:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4449,10 +4190,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27706, + "id": 30803, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4316:7:21", + "src": "4390:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4461,16 +4202,16 @@ "visibility": "internal" } ], - "id": 27714, + "id": 30811, "initialValue": { "arguments": [ { - "id": 27712, + "id": 30809, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4353:7:21", + "referencedDeclaration": 30784, + "src": "4427:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4487,12 +4228,12 @@ "expression": { "arguments": [ { - "id": 27709, + "id": 30806, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4337:4:21", + "referencedDeclaration": 30790, + "src": "4411:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4506,58 +4247,55 @@ "typeString": "address" } ], - "id": 27708, + "id": 30805, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "4330:6:21", + "referencedDeclaration": 29143, + "src": "4404:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27710, + "id": 30807, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4330:12:21", + "src": "4404:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, - "id": 27711, + "id": 30808, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4343:9:21", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26364, - "src": "4330:22:21", + "referencedDeclaration": 29082, + "src": "4404:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 27713, + "id": 30810, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4330:31:21", + "src": "4404:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4565,18 +4303,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4316:45:21" + "src": "4390:45:30" }, { "expression": { "arguments": [ { - "id": 27718, + "id": 30815, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4399:4:21", + "referencedDeclaration": 30790, + "src": "4473:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4587,24 +4325,24 @@ { "arguments": [ { - "id": 27722, + "id": 30819, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4439:7:21", + "referencedDeclaration": 30784, + "src": "4513:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27723, + "id": 30820, "name": "slot", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27700, - "src": "4448:4:21", + "referencedDeclaration": 30797, + "src": "4522:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4623,41 +4361,39 @@ } ], "expression": { - "id": 27720, + "id": 30817, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "4428:3:21", + "src": "4502:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27721, + "id": 30818, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4432:6:21", "memberName": "encode", "nodeType": "MemberAccess", - "src": "4428:10:21", + "src": "4502:10:30", "typeDescriptions": { "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 27724, + "id": 30821, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4428:25:21", + "src": "4502:25:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -4672,27 +4408,26 @@ "typeString": "bytes memory" } ], - "id": 27719, + "id": 30816, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "4418:9:21", + "src": "4492:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 27725, + "id": 30822, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4418:36:21", + "src": "4492:36:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4706,18 +4441,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27730, + "id": 30827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27728, + "id": 30825, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27707, - "src": "4492:3:21", + "referencedDeclaration": 30804, + "src": "4566:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4726,18 +4461,18 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27729, + "id": 30826, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27689, - "src": "4498:3:21", + "referencedDeclaration": 30786, + "src": "4572:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4492:9:21", + "src": "4566:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4751,35 +4486,34 @@ "typeString": "uint256" } ], - "id": 27727, + "id": 30824, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4484:7:21", + "src": "4558:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { - "id": 27726, + "id": 30823, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4484:7:21", + "src": "4558:7:30", "typeDescriptions": {} } }, - "id": 27731, + "id": 30828, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4484:18:21", + "src": "4558:18:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4803,51 +4537,49 @@ } ], "expression": { - "id": 27715, + "id": 30812, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27417, - "src": "4374:4:21", + "referencedDeclaration": 30511, + "src": "4448:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "id": 27717, + "id": 30814, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4379:5:21", "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 27403, - "src": "4374:10:21", + "referencedDeclaration": 30497, + "src": "4448:10:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (address,bytes32,bytes32) external" } }, - "id": 27732, + "id": 30829, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4374:139:21", + "src": "4448:139:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27733, + "id": 30830, "nodeType": "ExpressionStatement", - "src": "4374:139:21" + "src": "4448:139:30" }, { "expression": { @@ -4855,12 +4587,12 @@ { "arguments": [ { - "id": 27739, + "id": 30836, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4558:7:21", + "referencedDeclaration": 30784, + "src": "4632:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4877,12 +4609,12 @@ "expression": { "arguments": [ { - "id": 27736, + "id": 30833, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4542:4:21", + "referencedDeclaration": 30790, + "src": "4616:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4896,58 +4628,55 @@ "typeString": "address" } ], - "id": 27735, + "id": 30832, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "4535:6:21", + "referencedDeclaration": 29143, + "src": "4609:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27737, + "id": 30834, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4535:12:21", + "src": "4609:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, - "id": 27738, + "id": 30835, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4548:9:21", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26364, - "src": "4535:22:21", + "referencedDeclaration": 29082, + "src": "4609:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 27740, + "id": 30837, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4535:31:21", + "src": "4609:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4959,18 +4688,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27743, + "id": 30840, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27741, + "id": 30838, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27707, - "src": "4568:3:21", + "referencedDeclaration": 30804, + "src": "4642:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4979,18 +4708,18 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27742, + "id": 30839, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27689, - "src": "4574:3:21", + "referencedDeclaration": 30786, + "src": "4648:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4568:9:21", + "src": "4642:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5008,7 +4737,7 @@ "typeString": "uint256" } ], - "id": 27734, + "id": 30831, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5024,31 +4753,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "4526:8:21", + "src": "4600:8:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 27744, + "id": 30841, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4526:52:21", + "src": "4600:52:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27745, + "id": 30842, "nodeType": "ExpressionStatement", - "src": "4526:52:21" + "src": "4600:52:30" } ] }, @@ -5057,20 +4785,20 @@ "kind": "function", "modifiers": [], "name": "mint", - "nameLocation": "4156:4:21", + "nameLocation": "4230:4:30", "parameters": { - "id": 27690, + "id": 30787, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27685, + "id": 30782, "mutability": "mutable", "name": "symbol", - "nameLocation": "4169:6:21", + "nameLocation": "4243:6:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4161:14:21", + "scope": 30844, + "src": "4235:14:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5078,10 +4806,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27684, + "id": 30781, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4161:7:21", + "src": "4235:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5091,13 +4819,13 @@ }, { "constant": false, - "id": 27687, + "id": 30784, "mutability": "mutable", "name": "account", - "nameLocation": "4185:7:21", + "nameLocation": "4259:7:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4177:15:21", + "scope": 30844, + "src": "4251:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5105,10 +4833,10 @@ "typeString": "address" }, "typeName": { - "id": 27686, + "id": 30783, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4177:7:21", + "src": "4251:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5119,13 +4847,13 @@ }, { "constant": false, - "id": 27689, + "id": 30786, "mutability": "mutable", "name": "amt", - "nameLocation": "4202:3:21", + "nameLocation": "4276:3:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4194:11:21", + "scope": 30844, + "src": "4268:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5133,10 +4861,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27688, + "id": 30785, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4194:7:21", + "src": "4268:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5145,44 +4873,42 @@ "visibility": "internal" } ], - "src": "4160:46:21" + "src": "4234:46:30" }, "returnParameters": { - "id": 27691, + "id": 30788, "nodeType": "ParameterList", "parameters": [], - "src": "4214:0:21" + "src": "4288:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27823, + "id": 30920, "nodeType": "FunctionDefinition", - "src": "4666:583:21", - "nodes": [], + "src": "4740:583:30", "body": { - "id": 27822, + "id": 30919, "nodeType": "Block", - "src": "4744:505:21", - "nodes": [], + "src": "4818:505:30", "statements": [ { "assignments": [ - 27757 + 30854 ], "declarations": [ { "constant": false, - "id": 27757, + "id": 30854, "mutability": "mutable", "name": "diff", - "nameLocation": "4763:4:21", + "nameLocation": "4837:4:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4755:12:21", + "scope": 30919, + "src": "4829:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5190,10 +4916,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27756, + "id": 30853, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4755:7:21", + "src": "4829:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5202,25 +4928,25 @@ "visibility": "internal" } ], - "id": 27768, + "id": 30865, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27760, + "id": 30857, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27758, + "id": 30855, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4771:4:21", + "referencedDeclaration": 30846, + "src": "4845:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5229,18 +4955,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 27759, + "id": 30856, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4778:4:21", + "referencedDeclaration": 30848, + "src": "4852:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4771:11:21", + "src": "4845:11:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5251,18 +4977,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27766, + "id": 30863, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27764, + "id": 30861, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4799:4:21", + "referencedDeclaration": 30848, + "src": "4873:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5271,47 +4997,47 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27765, + "id": 30862, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4806:4:21", + "referencedDeclaration": 30846, + "src": "4880:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4799:11:21", + "src": "4873:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27767, + "id": 30864, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "4771:39:21", + "src": "4845:39:30", "trueExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27763, + "id": 30860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27761, + "id": 30858, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4785:4:21", + "referencedDeclaration": 30846, + "src": "4859:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5320,18 +5046,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27762, + "id": 30859, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4792:4:21", + "referencedDeclaration": 30848, + "src": "4866:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4785:11:21", + "src": "4859:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5343,7 +5069,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4755:55:21" + "src": "4829:55:30" }, { "condition": { @@ -5351,18 +5077,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27771, + "id": 30868, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27769, + "id": 30866, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27757, - "src": "4825:4:21", + "referencedDeclaration": 30854, + "src": "4899:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5372,50 +5098,50 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27770, + "id": 30867, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4833:1:21", + "src": "4907:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4825:9:21", + "src": "4899:9:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 27773, + "id": 30870, "nodeType": "IfStatement", - "src": "4821:22:21", + "src": "4895:22:30", "trueBody": { - "functionReturnParameters": 27755, - "id": 27772, + "functionReturnParameters": 30852, + "id": 30869, "nodeType": "Return", - "src": "4836:7:21" + "src": "4910:7:30" } }, { "assignments": [ - 27775 + 30872 ], "declarations": [ { "constant": false, - "id": 27775, + "id": 30872, "mutability": "mutable", "name": "denominator", - "nameLocation": "4863:11:21", + "nameLocation": "4937:11:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4855:19:21", + "scope": 30919, + "src": "4929:19:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5423,10 +5149,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27774, + "id": 30871, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4855:7:21", + "src": "4929:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5435,25 +5161,25 @@ "visibility": "internal" } ], - "id": 27782, + "id": 30879, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27778, + "id": 30875, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27776, + "id": 30873, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4877:4:21", + "referencedDeclaration": 30846, + "src": "4951:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5463,52 +5189,52 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27777, + "id": 30874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4885:1:21", + "src": "4959:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4877:9:21", + "src": "4951:9:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { - "id": 27780, + "id": 30877, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4896:4:21", + "referencedDeclaration": 30846, + "src": "4970:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27781, + "id": 30878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "4877:23:21", + "src": "4951:23:30", "trueExpression": { - "id": 27779, + "id": 30876, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4889:4:21", + "referencedDeclaration": 30848, + "src": "4963:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5520,22 +5246,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4855:45:21" + "src": "4929:45:30" }, { "assignments": [ - 27784 + 30881 ], "declarations": [ { "constant": false, - "id": 27784, + "id": 30881, "mutability": "mutable", "name": "check", - "nameLocation": "4916:5:21", + "nameLocation": "4990:5:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4911:10:21", + "scope": 30919, + "src": "4985:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5543,10 +5269,10 @@ "typeString": "bool" }, "typeName": { - "id": 27783, + "id": 30880, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4911:4:21", + "src": "4985:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5555,13 +5281,13 @@ "visibility": "internal" } ], - "id": 27799, + "id": 30896, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27798, + "id": 30895, "isConstant": false, "isLValue": false, "isPure": false, @@ -5573,7 +5299,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27790, + "id": 30887, "isConstant": false, "isLValue": false, "isPure": false, @@ -5585,18 +5311,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27787, + "id": 30884, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27785, + "id": 30882, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27757, - "src": "4926:4:21", + "referencedDeclaration": 30854, + "src": "5000:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5605,32 +5331,32 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 27786, + "id": 30883, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27512, - "src": "4933:3:21", + "referencedDeclaration": 30609, + "src": "5007:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4926:10:21", + "src": "5000:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27788, + "id": 30885, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4925:12:21", + "src": "4999:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5639,32 +5365,32 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 27789, + "id": 30886, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27775, - "src": "4940:11:21", + "referencedDeclaration": 30872, + "src": "5014:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4925:26:21", + "src": "4999:26:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27791, + "id": 30888, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4924:28:21", + "src": "4998:28:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5679,18 +5405,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27796, + "id": 30893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27792, + "id": 30889, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27512, - "src": "4956:3:21", + "referencedDeclaration": 30609, + "src": "5030:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5703,21 +5429,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27795, + "id": 30892, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27793, + "id": 30890, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4962:2:21", + "src": "5036:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -5727,55 +5453,55 @@ "nodeType": "BinaryOperation", "operator": "**", "rightExpression": { - "id": 27794, + "id": 30891, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27753, - "src": "4968:8:21", + "referencedDeclaration": 30850, + "src": "5042:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4962:14:21", + "src": "5036:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4956:20:21", + "src": "5030:20:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27797, + "id": 30894, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4955:22:21", + "src": "5029:22:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4924:53:21", + "src": "4998:53:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "4911:66:21" + "src": "4985:66:30" }, { "condition": { - "id": 27801, + "id": 30898, "isConstant": false, "isLValue": false, "isPure": false, @@ -5783,14 +5509,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4994:6:21", + "src": "5068:6:30", "subExpression": { - "id": 27800, + "id": 30897, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27784, - "src": "4995:5:21", + "referencedDeclaration": 30881, + "src": "5069:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5801,27 +5527,27 @@ "typeString": "bool" } }, - "id": 27821, + "id": 30918, "nodeType": "IfStatement", - "src": "4990:252:21", + "src": "5064:252:30", "trueBody": { - "id": 27820, + "id": 30917, "nodeType": "Block", - "src": "5001:241:21", + "src": "5075:241:30", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c2061636375726163792064696769747320", - "id": 27803, + "id": 30900, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5036:54:21", + "src": "5110:54:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_94772435adb9a5e16afe18480e0e25583a903de130497d52a7375f0e3b0b0ffc", "typeString": "literal_string \"Error: approx a == b not satisfied, accuracy digits \"" @@ -5829,12 +5555,12 @@ "value": "Error: approx a == b not satisfied, accuracy digits " }, { - "id": 27804, + "id": 30901, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27753, - "src": "5092:8:21", + "referencedDeclaration": 30850, + "src": "5166:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5852,50 +5578,49 @@ "typeString": "uint256" } ], - "id": 27802, + "id": 30899, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5021:14:21", + "src": "5095:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27805, + "id": 30902, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5021:80:21", + "src": "5095:80:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27806, + "id": 30903, "nodeType": "EmitStatement", - "src": "5016:85:21" + "src": "5090:85:30" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", - "id": 27808, + "id": 30905, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5136:12:21", + "src": "5210:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" @@ -5903,12 +5628,12 @@ "value": " Expected" }, { - "id": 27809, + "id": 30906, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "5150:4:21", + "referencedDeclaration": 30846, + "src": "5224:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5926,50 +5651,49 @@ "typeString": "uint256" } ], - "id": 27807, + "id": 30904, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5121:14:21", + "src": "5195:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27810, + "id": 30907, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5121:34:21", + "src": "5195:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27811, + "id": 30908, "nodeType": "EmitStatement", - "src": "5116:39:21" + "src": "5190:39:30" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", - "id": 27813, + "id": 30910, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5190:12:21", + "src": "5264:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" @@ -5977,12 +5701,12 @@ "value": " Actual" }, { - "id": 27814, + "id": 30911, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "5204:4:21", + "referencedDeclaration": 30848, + "src": "5278:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6000,72 +5724,70 @@ "typeString": "uint256" } ], - "id": 27812, + "id": 30909, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5175:14:21", + "src": "5249:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27815, + "id": 30912, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5175:34:21", + "src": "5249:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27816, + "id": 30913, "nodeType": "EmitStatement", - "src": "5170:39:21" + "src": "5244:39:30" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27817, + "id": 30914, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 216, - "src": "5224:4:21", + "src": "5298:4:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27818, + "id": 30915, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5224:6:21", + "src": "5298:6:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27819, + "id": 30916, "nodeType": "ExpressionStatement", - "src": "5224:6:21" + "src": "5298:6:30" } ] } @@ -6077,20 +5799,20 @@ "kind": "function", "modifiers": [], "name": "withinPrecision", - "nameLocation": "4675:15:21", + "nameLocation": "4749:15:30", "parameters": { - "id": 27754, + "id": 30851, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27749, + "id": 30846, "mutability": "mutable", "name": "val0", - "nameLocation": "4699:4:21", + "nameLocation": "4773:4:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4691:12:21", + "scope": 30920, + "src": "4765:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6098,10 +5820,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27748, + "id": 30845, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4691:7:21", + "src": "4765:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6111,13 +5833,13 @@ }, { "constant": false, - "id": 27751, + "id": 30848, "mutability": "mutable", "name": "val1", - "nameLocation": "4713:4:21", + "nameLocation": "4787:4:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4705:12:21", + "scope": 30920, + "src": "4779:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6125,10 +5847,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27750, + "id": 30847, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4705:7:21", + "src": "4779:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6138,13 +5860,13 @@ }, { "constant": false, - "id": 27753, + "id": 30850, "mutability": "mutable", "name": "accuracy", - "nameLocation": "4727:8:21", + "nameLocation": "4801:8:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4719:16:21", + "scope": 30920, + "src": "4793:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6152,10 +5874,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27752, + "id": 30849, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4719:7:21", + "src": "4793:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6164,44 +5886,42 @@ "visibility": "internal" } ], - "src": "4690:46:21" + "src": "4764:46:30" }, "returnParameters": { - "id": 27755, + "id": 30852, "nodeType": "ParameterList", "parameters": [], - "src": "4744:0:21" + "src": "4818:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27874, + "id": 30971, "nodeType": "FunctionDefinition", - "src": "5300:479:21", - "nodes": [], + "src": "5374:479:30", "body": { - "id": 27873, + "id": 30970, "nodeType": "Block", - "src": "5377:402:21", - "nodes": [], + "src": "5451:402:30", "statements": [ { "assignments": [ - 27833 + 30930 ], "declarations": [ { "constant": false, - "id": 27833, + "id": 30930, "mutability": "mutable", "name": "actualDiff", - "nameLocation": "5396:10:21", + "nameLocation": "5470:10:30", "nodeType": "VariableDeclaration", - "scope": 27873, - "src": "5388:18:21", + "scope": 30970, + "src": "5462:18:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6209,10 +5929,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27832, + "id": 30929, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5388:7:21", + "src": "5462:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6221,25 +5941,25 @@ "visibility": "internal" } ], - "id": 27844, + "id": 30941, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27836, + "id": 30933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27834, + "id": 30931, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5409:4:21", + "referencedDeclaration": 30922, + "src": "5483:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6248,18 +5968,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 27835, + "id": 30932, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5416:4:21", + "referencedDeclaration": 30924, + "src": "5490:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5409:11:21", + "src": "5483:11:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6270,18 +5990,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27842, + "id": 30939, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27840, + "id": 30937, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5437:4:21", + "referencedDeclaration": 30924, + "src": "5511:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6290,47 +6010,47 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27841, + "id": 30938, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5444:4:21", + "referencedDeclaration": 30922, + "src": "5518:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5437:11:21", + "src": "5511:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27843, + "id": 30940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "5409:39:21", + "src": "5483:39:30", "trueExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27839, + "id": 30936, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27837, + "id": 30934, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5423:4:21", + "referencedDeclaration": 30922, + "src": "5497:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6339,18 +6059,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27838, + "id": 30935, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5430:4:21", + "referencedDeclaration": 30924, + "src": "5504:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5423:11:21", + "src": "5497:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6362,22 +6082,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "5388:60:21" + "src": "5462:60:30" }, { "assignments": [ - 27846 + 30943 ], "declarations": [ { "constant": false, - "id": 27846, + "id": 30943, "mutability": "mutable", "name": "check", - "nameLocation": "5464:5:21", + "nameLocation": "5538:5:30", "nodeType": "VariableDeclaration", - "scope": 27873, - "src": "5459:10:21", + "scope": 30970, + "src": "5533:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6385,10 +6105,10 @@ "typeString": "bool" }, "typeName": { - "id": 27845, + "id": 30942, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5459:4:21", + "src": "5533:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6397,24 +6117,24 @@ "visibility": "internal" } ], - "id": 27850, + "id": 30947, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27849, + "id": 30946, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27847, + "id": 30944, "name": "actualDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27833, - "src": "5472:10:21", + "referencedDeclaration": 30930, + "src": "5546:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6423,29 +6143,29 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 27848, + "id": 30945, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27829, - "src": "5486:12:21", + "referencedDeclaration": 30926, + "src": "5560:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5472:26:21", + "src": "5546:26:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "5459:39:21" + "src": "5533:39:30" }, { "condition": { - "id": 27852, + "id": 30949, "isConstant": false, "isLValue": false, "isPure": false, @@ -6453,14 +6173,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5515:6:21", + "src": "5589:6:30", "subExpression": { - "id": 27851, + "id": 30948, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27846, - "src": "5516:5:21", + "referencedDeclaration": 30943, + "src": "5590:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6471,27 +6191,27 @@ "typeString": "bool" } }, - "id": 27872, + "id": 30969, "nodeType": "IfStatement", - "src": "5511:261:21", + "src": "5585:261:30", "trueBody": { - "id": 27871, + "id": 30968, "nodeType": "Block", - "src": "5523:249:21", + "src": "5597:249:30", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c20616363757261637920646966666572656e636520", - "id": 27854, + "id": 30951, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5558:58:21", + "src": "5632:58:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_96172d3974b4dd800f0469c3a6568537958d8450292a90b9e1d84055f2a54229", "typeString": "literal_string \"Error: approx a == b not satisfied, accuracy difference \"" @@ -6499,12 +6219,12 @@ "value": "Error: approx a == b not satisfied, accuracy difference " }, { - "id": 27855, + "id": 30952, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27829, - "src": "5618:12:21", + "referencedDeclaration": 30926, + "src": "5692:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6522,50 +6242,49 @@ "typeString": "uint256" } ], - "id": 27853, + "id": 30950, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5543:14:21", + "src": "5617:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27856, + "id": 30953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5543:88:21", + "src": "5617:88:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27857, + "id": 30954, "nodeType": "EmitStatement", - "src": "5538:93:21" + "src": "5612:93:30" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", - "id": 27859, + "id": 30956, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5666:12:21", + "src": "5740:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" @@ -6573,12 +6292,12 @@ "value": " Expected" }, { - "id": 27860, + "id": 30957, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5680:4:21", + "referencedDeclaration": 30922, + "src": "5754:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6596,50 +6315,49 @@ "typeString": "uint256" } ], - "id": 27858, + "id": 30955, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5651:14:21", + "src": "5725:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27861, + "id": 30958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5651:34:21", + "src": "5725:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27862, + "id": 30959, "nodeType": "EmitStatement", - "src": "5646:39:21" + "src": "5720:39:30" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", - "id": 27864, + "id": 30961, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5720:12:21", + "src": "5794:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" @@ -6647,12 +6365,12 @@ "value": " Actual" }, { - "id": 27865, + "id": 30962, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5734:4:21", + "referencedDeclaration": 30924, + "src": "5808:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6670,72 +6388,70 @@ "typeString": "uint256" } ], - "id": 27863, + "id": 30960, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5705:14:21", + "src": "5779:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27866, + "id": 30963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5705:34:21", + "src": "5779:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27867, + "id": 30964, "nodeType": "EmitStatement", - "src": "5700:39:21" + "src": "5774:39:30" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27868, + "id": 30965, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 216, - "src": "5754:4:21", + "src": "5828:4:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27869, + "id": 30966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5754:6:21", + "src": "5828:6:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27870, + "id": 30967, "nodeType": "ExpressionStatement", - "src": "5754:6:21" + "src": "5828:6:30" } ] } @@ -6747,20 +6463,20 @@ "kind": "function", "modifiers": [], "name": "withinDiff", - "nameLocation": "5309:10:21", + "nameLocation": "5383:10:30", "parameters": { - "id": 27830, + "id": 30927, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27825, + "id": 30922, "mutability": "mutable", "name": "val0", - "nameLocation": "5328:4:21", + "nameLocation": "5402:4:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5320:12:21", + "scope": 30971, + "src": "5394:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6768,10 +6484,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27824, + "id": 30921, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5320:7:21", + "src": "5394:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6781,13 +6497,13 @@ }, { "constant": false, - "id": 27827, + "id": 30924, "mutability": "mutable", "name": "val1", - "nameLocation": "5342:4:21", + "nameLocation": "5416:4:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5334:12:21", + "scope": 30971, + "src": "5408:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6795,10 +6511,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27826, + "id": 30923, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5334:7:21", + "src": "5408:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6808,13 +6524,13 @@ }, { "constant": false, - "id": 27829, + "id": 30926, "mutability": "mutable", "name": "expectedDiff", - "nameLocation": "5356:12:21", + "nameLocation": "5430:12:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5348:20:21", + "scope": 30971, + "src": "5422:20:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6822,10 +6538,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27828, + "id": 30925, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5348:7:21", + "src": "5422:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6834,64 +6550,62 @@ "visibility": "internal" } ], - "src": "5319:50:21" + "src": "5393:50:30" }, "returnParameters": { - "id": 27831, + "id": 30928, "nodeType": "ParameterList", "parameters": [], - "src": "5377:0:21" + "src": "5451:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27893, + "id": 30990, "nodeType": "FunctionDefinition", - "src": "5787:159:21", - "nodes": [], + "src": "5861:159:30", "body": { - "id": 27892, + "id": 30989, "nodeType": "Block", - "src": "5882:64:21", - "nodes": [], + "src": "5956:64:30", "statements": [ { "expression": { "arguments": [ { - "id": 27886, + "id": 30983, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27876, - "src": "5917:3:21", + "referencedDeclaration": 30973, + "src": "5991:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 27887, + "id": 30984, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27878, - "src": "5922:3:21", + "referencedDeclaration": 30975, + "src": "5996:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 27888, + "id": 30985, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27880, - "src": "5927:3:21", + "referencedDeclaration": 30977, + "src": "6001:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6899,14 +6613,14 @@ }, { "hexValue": "66616c7365", - "id": 27889, + "id": 30986, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5932:5:21", + "src": "6006:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6933,40 +6647,39 @@ "typeString": "bool" } ], - "id": 27885, + "id": 30982, "name": "constrictToRange", "nodeType": "Identifier", "overloadedDeclarations": [ - 27893, - 27931 + 30990, + 31028 ], - "referencedDeclaration": 27931, - "src": "5900:16:21", + "referencedDeclaration": 31028, + "src": "5974:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_bool_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256,bool) pure returns (uint256)" } }, - "id": 27890, + "id": 30987, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5900:38:21", + "src": "5974:38:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27884, - "id": 27891, + "functionReturnParameters": 30981, + "id": 30988, "nodeType": "Return", - "src": "5893:45:21" + "src": "5967:45:30" } ] }, @@ -6975,20 +6688,20 @@ "kind": "function", "modifiers": [], "name": "constrictToRange", - "nameLocation": "5796:16:21", + "nameLocation": "5870:16:30", "parameters": { - "id": 27881, + "id": 30978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27876, + "id": 30973, "mutability": "mutable", "name": "val", - "nameLocation": "5821:3:21", + "nameLocation": "5895:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5813:11:21", + "scope": 30990, + "src": "5887:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6996,10 +6709,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27875, + "id": 30972, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5813:7:21", + "src": "5887:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7009,13 +6722,13 @@ }, { "constant": false, - "id": 27878, + "id": 30975, "mutability": "mutable", "name": "min", - "nameLocation": "5834:3:21", + "nameLocation": "5908:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5826:11:21", + "scope": 30990, + "src": "5900:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7023,10 +6736,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27877, + "id": 30974, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5826:7:21", + "src": "5900:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7036,13 +6749,13 @@ }, { "constant": false, - "id": 27880, + "id": 30977, "mutability": "mutable", "name": "max", - "nameLocation": "5847:3:21", + "nameLocation": "5921:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5839:11:21", + "scope": 30990, + "src": "5913:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7050,10 +6763,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27879, + "id": 30976, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5839:7:21", + "src": "5913:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7062,21 +6775,21 @@ "visibility": "internal" } ], - "src": "5812:39:21" + "src": "5886:39:30" }, "returnParameters": { - "id": 27884, + "id": 30981, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27883, + "id": 30980, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5873:7:21", + "scope": 30990, + "src": "5947:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7084,10 +6797,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27882, + "id": 30979, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5873:7:21", + "src": "5947:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7096,23 +6809,21 @@ "visibility": "internal" } ], - "src": "5872:9:21" + "src": "5946:9:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "pure", "virtual": false, "visibility": "public" }, { - "id": 27931, + "id": 31028, "nodeType": "FunctionDefinition", - "src": "5954:291:21", - "nodes": [], + "src": "6028:291:30", "body": { - "id": 27930, + "id": 31027, "nodeType": "Block", - "src": "6063:182:21", - "nodes": [], + "src": "6137:182:30", "statements": [ { "condition": { @@ -7120,7 +6831,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27911, + "id": 31008, "isConstant": false, "isLValue": false, "isPure": false, @@ -7130,18 +6841,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27908, + "id": 31005, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27906, + "id": 31003, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27895, - "src": "6083:3:21", + "referencedDeclaration": 30992, + "src": "6157:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7151,21 +6862,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27907, + "id": 31004, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6090:1:21", + "src": "6164:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6083:8:21", + "src": "6157:8:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7174,7 +6885,7 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 27910, + "id": 31007, "isConstant": false, "isLValue": false, "isPure": false, @@ -7182,14 +6893,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6095:8:21", + "src": "6169:8:30", "subExpression": { - "id": 27909, + "id": 31006, "name": "nonZero", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27901, - "src": "6096:7:21", + "referencedDeclaration": 30998, + "src": "6170:7:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7200,7 +6911,7 @@ "typeString": "bool" } }, - "src": "6083:20:21", + "src": "6157:20:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7212,18 +6923,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27916, + "id": 31013, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27914, + "id": 31011, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6133:3:21", + "referencedDeclaration": 30996, + "src": "6207:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7232,18 +6943,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 27915, + "id": 31012, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6140:3:21", + "referencedDeclaration": 30994, + "src": "6214:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6133:10:21", + "src": "6207:10:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7255,7 +6966,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27926, + "id": 31023, "isConstant": false, "isLValue": false, "isPure": false, @@ -7265,18 +6976,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27924, + "id": 31021, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27919, + "id": 31016, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27895, - "src": "6214:3:21", + "referencedDeclaration": 30992, + "src": "6288:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7291,18 +7002,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27922, + "id": 31019, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27920, + "id": 31017, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6221:3:21", + "referencedDeclaration": 30996, + "src": "6295:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7311,38 +7022,38 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27921, + "id": 31018, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6227:3:21", + "referencedDeclaration": 30994, + "src": "6301:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6221:9:21", + "src": "6295:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27923, + "id": 31020, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "6220:11:21", + "src": "6294:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6214:17:21", + "src": "6288:17:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7351,74 +7062,74 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27925, + "id": 31022, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6234:3:21", + "referencedDeclaration": 30994, + "src": "6308:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6214:23:21", + "src": "6288:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27905, - "id": 27927, + "functionReturnParameters": 31002, + "id": 31024, "nodeType": "Return", - "src": "6207:30:21" + "src": "6281:30:30" }, - "id": 27928, + "id": 31025, "nodeType": "IfStatement", - "src": "6129:108:21", + "src": "6203:108:30", "trueBody": { "expression": { - "id": 27917, + "id": 31014, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6162:3:21", + "referencedDeclaration": 30996, + "src": "6236:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27905, - "id": 27918, + "functionReturnParameters": 31002, + "id": 31015, "nodeType": "Return", - "src": "6155:10:21" + "src": "6229:10:30" } }, - "id": 27929, + "id": 31026, "nodeType": "IfStatement", - "src": "6074:163:21", + "src": "6148:163:30", "trueBody": { "expression": { "hexValue": "30", - "id": 27912, + "id": 31009, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6112:1:21", + "src": "6186:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 27905, - "id": 27913, + "functionReturnParameters": 31002, + "id": 31010, "nodeType": "Return", - "src": "6105:8:21" + "src": "6179:8:30" } } ] @@ -7428,20 +7139,20 @@ "kind": "function", "modifiers": [], "name": "constrictToRange", - "nameLocation": "5963:16:21", + "nameLocation": "6037:16:30", "parameters": { - "id": 27902, + "id": 30999, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27895, + "id": 30992, "mutability": "mutable", "name": "val", - "nameLocation": "5988:3:21", + "nameLocation": "6062:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "5980:11:21", + "scope": 31028, + "src": "6054:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7449,10 +7160,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27894, + "id": 30991, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5980:7:21", + "src": "6054:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7462,13 +7173,13 @@ }, { "constant": false, - "id": 27897, + "id": 30994, "mutability": "mutable", "name": "min", - "nameLocation": "6001:3:21", + "nameLocation": "6075:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "5993:11:21", + "scope": 31028, + "src": "6067:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7476,10 +7187,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27896, + "id": 30993, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5993:7:21", + "src": "6067:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7489,13 +7200,13 @@ }, { "constant": false, - "id": 27899, + "id": 30996, "mutability": "mutable", "name": "max", - "nameLocation": "6014:3:21", + "nameLocation": "6088:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6006:11:21", + "scope": 31028, + "src": "6080:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7503,10 +7214,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27898, + "id": 30995, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6006:7:21", + "src": "6080:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7516,13 +7227,13 @@ }, { "constant": false, - "id": 27901, + "id": 30998, "mutability": "mutable", "name": "nonZero", - "nameLocation": "6024:7:21", + "nameLocation": "6098:7:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6019:12:21", + "scope": 31028, + "src": "6093:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7530,10 +7241,10 @@ "typeString": "bool" }, "typeName": { - "id": 27900, + "id": 30997, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6019:4:21", + "src": "6093:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7542,21 +7253,21 @@ "visibility": "internal" } ], - "src": "5979:53:21" + "src": "6053:53:30" }, "returnParameters": { - "id": 27905, + "id": 31002, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27904, + "id": 31001, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6054:7:21", + "scope": 31028, + "src": "6128:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7564,10 +7275,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27903, + "id": 31000, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6054:7:21", + "src": "6128:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7576,9 +7287,9 @@ "visibility": "internal" } ], - "src": "6053:9:21" + "src": "6127:9:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "pure", "virtual": false, "visibility": "public" @@ -7588,37 +7299,34 @@ "baseContracts": [ { "baseName": { - "id": 27413, + "id": 30507, "name": "DSTest", - "nameLocations": [ - "469:6:21" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, - "src": "469:6:21" + "src": "469:6:30" }, - "id": 27414, + "id": 30508, "nodeType": "InheritanceSpecifier", - "src": "469:6:21" + "src": "469:6:30" } ], "canonicalName": "Utility", "contractDependencies": [ - 27385 + 30364 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 27932, + 31029, 1786 ], "name": "Utility", - "nameLocation": "458:7:21", - "scope": 27933, + "nameLocation": "458:7:30", + "scope": 31030, "usedErrors": [] } ], "license": "AGPL-3.0-or-later" }, - "id": 21 + "id": 30 } \ No newline at end of file diff --git a/out/Utility.sol/Utility.json b/out/Utility.sol/Utility.json index 917b491..647165a 100644 --- a/out/Utility.sol/Utility.json +++ b/out/Utility.sol/Utility.json @@ -627,13 +627,13 @@ } ], "bytecode": { - "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b0319909116179055611630806100596000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528660405161057d9190610ef6565b60405180910390a16000805160206115db833981519152856040516105a29190610f22565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528560405161067e9190610ef6565b60405180910390a16000805160206115db833981519152846040516106a39190610f22565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f4e565b6107029190610f62565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f75565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f62565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f75565b6108c98684610f62565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fbe565b60408051601f1981840301815290829052610a7391610fda565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610fe6565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fbe565b60408051601f1981840301815290829052610b9991610fda565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115db83398151915281604051610c879190610ef6565b60405180910390a16000805160206115db83398151915282604051610cac9190610f22565b60405180910390a1610cbc610ae5565b5050565b6105d78061100483390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b81810381811115610db857610db8610d8f565b92915050565b600181815b80851115610df9578160001904821115610ddf57610ddf610d8f565b80851615610dec57918102915b93841c9390800290610dc3565b509250929050565b600082610e1057506001610db8565b81610e1d57506000610db8565b8160018114610e335760028114610e3d57610e59565b6001915050610db8565b60ff841115610e4e57610e4e610d8f565b50506001821b610db8565b5060208310610133831016604e8410600b8410161715610e7c575081810a610db8565b610e868383610dbe565b8060001904821115610e9a57610e9a610d8f565b029392505050565b6000610eae8383610e01565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b8082028115828204841417610db857610db8610d8f565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f5d57610f5d610eb5565b500690565b80820180821115610db857610db8610d8f565b600060208284031215610f8757600080fd5b5051919050565b6000815160005b81811015610faf5760208185018101518683015201610f95565b50600093019283525090919050565b6001600160e01b03198316815260006107056004830184610f8e565b6000610eae8284610f8e565b600060208284031215610ff857600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea26469706673582212202284e67777fca07e29094068d3e700ce3ff463464acf1e2573fcb253960d116864736f6c63430008110033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a264697066735822122026ebb28edd1d473a37e486b2d78d891e9540ee9cd062c2fa8b91d389eca9573564736f6c63430008110033", - "sourceMap": "449:5807:21:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;2989:103:21;;;;;;;;;-1:-1:-1;3048:37:21;3012:77;;;-1:-1:-1;;;;;;3012:77:21;;;;;;449:5807;;;;;;", + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b0319909116179055611654806100596000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528660405161057d9190610efe565b60405180910390a16000805160206115ff833981519152856040516105a29190610f2a565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528560405161067e9190610efe565b60405180910390a16000805160206115ff833981519152846040516106a39190610f2a565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f56565b6107029190610f6a565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f82565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f6a565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f82565b6108c98684610f6a565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fd6565b60408051601f1981840301815290829052610a7391610ff2565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610ffe565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fd6565b60408051601f1981840301815290829052610b9991610ff2565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115ff83398151915281604051610c879190610efe565b60405180910390a16000805160206115ff83398151915282604051610cac9190610f2a565b60405180910390a1610cbc610ae5565b5050565b6105e38061101c83390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b600082821015610db757610db7610d8f565b500390565b600181815b80851115610df7578160001904821115610ddd57610ddd610d8f565b80851615610dea57918102915b93841c9390800290610dc1565b509250929050565b600082610e0e57506001610e9c565b81610e1b57506000610e9c565b8160018114610e315760028114610e3b57610e57565b6001915050610e9c565b60ff841115610e4c57610e4c610d8f565b50506001821b610e9c565b5060208310610133831016604e8410600b8410161715610e7a575081810a610e9c565b610e848383610dbc565b8060001904821115610e9857610e98610d8f565b0290505b92915050565b6000610eae8383610dff565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b6000816000190483118215151615610ef957610ef9610d8f565b500290565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f6557610f65610eb5565b500690565b60008219821115610f7d57610f7d610d8f565b500190565b600060208284031215610f9457600080fd5b5051919050565b6000815160005b81811015610fbc5760208185018101518683015201610fa2565b81811115610fcb576000828601525b509290920192915050565b6001600160e01b03198316815260006107056004830184610f9b565b6000610eae8284610f9b565b60006020828403121561101057600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220232012e6a0447c146bf2864e8737b38551253301057cf2559d1a2c5c1ea9becf64736f6c634300080f0033", + "sourceMap": "449:5881:30:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;3063:103:30;;;;;;;;;-1:-1:-1;3122:37:30;3086:77;;;-1:-1:-1;;;;;;3086:77:30;;;;;;449:5881;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528660405161057d9190610ef6565b60405180910390a16000805160206115db833981519152856040516105a29190610f22565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528560405161067e9190610ef6565b60405180910390a16000805160206115db833981519152846040516106a39190610f22565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f4e565b6107029190610f62565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f75565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f62565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f75565b6108c98684610f62565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fbe565b60408051601f1981840301815290829052610a7391610fda565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610fe6565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fbe565b60408051601f1981840301815290829052610b9991610fda565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115db83398151915281604051610c879190610ef6565b60405180910390a16000805160206115db83398151915282604051610cac9190610f22565b60405180910390a1610cbc610ae5565b5050565b6105d78061100483390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b81810381811115610db857610db8610d8f565b92915050565b600181815b80851115610df9578160001904821115610ddf57610ddf610d8f565b80851615610dec57918102915b93841c9390800290610dc3565b509250929050565b600082610e1057506001610db8565b81610e1d57506000610db8565b8160018114610e335760028114610e3d57610e59565b6001915050610db8565b60ff841115610e4e57610e4e610d8f565b50506001821b610db8565b5060208310610133831016604e8410600b8410161715610e7c575081810a610db8565b610e868383610dbe565b8060001904821115610e9a57610e9a610d8f565b029392505050565b6000610eae8383610e01565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b8082028115828204841417610db857610db8610d8f565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f5d57610f5d610eb5565b500690565b80820180821115610db857610db8610d8f565b600060208284031215610f8757600080fd5b5051919050565b6000815160005b81811015610faf5760208185018101518683015201610f95565b50600093019283525090919050565b6001600160e01b03198316815260006107056004830184610f8e565b6000610eae8284610f8e565b600060208284031215610ff857600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea26469706673582212202284e67777fca07e29094068d3e700ce3ff463464acf1e2573fcb253960d116864736f6c63430008110033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a264697066735822122026ebb28edd1d473a37e486b2d78d891e9540ee9cd062c2fa8b91d389eca9573564736f6c63430008110033", - "sourceMap": "449:5807:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1671:36;;1706:1;1671:36;;;;;186:4:23;174:17;;;156:36;;144:2;129:18;1671:36:21;;;;;;;;4666:583;;;;;;:::i;:::-;;:::i;:::-;;5300:479;;;;;;:::i;:::-;;:::i;2104:45::-;;2147:2;2104:45;;1755:36;;1790:1;1755:36;;5954:291;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:23;;;1232:2;1217:18;5954:291:21;1098:177:23;2188:45:21;;2231:2;2188:45;;4147:461;;;;;;:::i;:::-;;:::i;2018:45::-;;2061:2;2018:45;;1931:36;;1966:1;1931:36;;3238:184;;;:::i;1819:584:0:-;;;:::i;:::-;;;1872:14:23;;1865:22;1847:41;;1835:2;1820:18;1819:584:0;1707:187:23;5787:159:21;;;;;;:::i;:::-;;:::i;1842:36::-;;1877:1;1842:36;;1581;;1616:1;1581:36;;3546:551;;3589:6;:14;;;:26;;-1:-1:-1;;;;;;3589:26:21;;;840:42;3589:26;;;;3648:1;3626:19;:23;3662:13;:24;;;;914:42;3662:24;;;3718:1;3697:18;:22;3730:18;:63;;;;3751:42;3730:63;;;3806:14;:26;;;;988:42;3806:26;;;3865:1;3843:19;:23;3877:19;:64;;;;3899:42;3877:64;;;-1:-1:-1;;;3589:14:21;3954;;;;:26;;;;1062:42;3954:26;;;3991:19;:23;4025:19;:64;;;;;4047:42;4025:64;;;3546:551;1572:26:0;;;;;;;;;4666:583:21;4755:12;4778:4;4771;:11;:39;;4799:11;4806:4;4799;:11;:::i;:::-;4771:39;;;4785:11;4792:4;4785;:11;:::i;:::-;4755:55;;4825:4;4833:1;4825:9;4821:22;;4836:7;4666:583;;;:::o;4821:22::-;4855:19;4877:9;;:23;;4896:4;4877:23;;;4889:4;4877:23;4855:45;-1:-1:-1;4911:10:21;4962:14;4968:8;4962:2;:14;:::i;:::-;4956:20;;2465:8;4956:20;:::i;:::-;4940:11;4926:10;2465:8;4926:4;:10;:::i;:::-;4925:26;;;;:::i;:::-;4924:53;4911:66;;4995:5;4990:252;;5021:80;;;4180:21:23;;;4237:2;4217:18;;;4210:30;4276:34;4271:2;4256:18;;4249:62;-1:-1:-1;;;4342:3:23;4327:19;;4320:51;4438:4;4423:20;;4416:36;;;5021:80:21;;-1:-1:-1;;;;;;;;;;;5021:80:21;;;;4403:3:23;5021:80:21;;;-1:-1:-1;;;;;;;;;;;5150:4:21;5121:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5204:4:21;5175:34;;;;;;:::i;:::-;;;;;;;;5224:6;:4;:6::i;:::-;4744:505;;;4666:583;;;:::o;5300:479::-;5388:18;5416:4;5409;:11;:39;;5437:11;5444:4;5437;:11;:::i;:::-;5409:39;;;5423:11;5430:4;5423;:11;:::i;:::-;5388:60;-1:-1:-1;5472:26:21;;;;;5511:261;;5543:88;;;5501:21:23;;;5558:2;5538:18;;;5531:30;5597:34;5592:2;5577:18;;5570:62;5669:26;5663:3;5648:19;;5641:55;5763:4;5748:20;;5741:36;;;5543:88:21;;-1:-1:-1;;;;;;;;;;;5543:88:21;;;;5728:3:23;5543:88:21;;;-1:-1:-1;;;;;;;;;;;5680:4:21;5651:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5734:4:21;5705:34;;;;;;:::i;:::-;;;;;;;;5754:6;:4;:6::i;:::-;5377:402;;5300:479;;;:::o;5954:291::-;6054:7;6083:8;;:20;;;;;6096:7;6095:8;6083:20;6074:163;;;-1:-1:-1;6112:1:21;6105:8;;6074:163;6140:3;6133;:10;6129:108;;-1:-1:-1;6162:3:21;6155:10;;6129:108;6234:3;6221:9;6234:3;6221;:9;:::i;:::-;6214:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6207:30;;6129:108;5954:291;;;;;;:::o;4147:461::-;4225:12;4240:14;;;:6;:14;;;;;;;;:19;;;4286;;;;4330:31;;-1:-1:-1;;;4330:31:21;;-1:-1:-1;;;;;6199:32:23;;;4330:31:21;;;6181:51:23;;;;4240:19:21;;;4286;;4240;;4330:22;;6154:18:23;;4330:31:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4374:4;;4428:25;;;-1:-1:-1;;;;;6624:32:23;;;4428:25:21;;;6606:51:23;6673:18;;;6666:34;;;4316:45:21;;-1:-1:-1;4374:4:21;;;;;;:10;;4399:4;;6579:18:23;;4428:25:21;;;;;;;;;;;;4418:36;;;;;;4498:3;4492;:9;;;;:::i;:::-;4374:139;;;;;;-1:-1:-1;;;;;;4374:139:21;;;-1:-1:-1;;;;;6931:32:23;;;4374:139:21;;;6913:51:23;6980:18;;;6973:34;;;;7023:18;;;7016:34;6886:18;;4374:139:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4535:31:21;;-1:-1:-1;;;4535:31:21;;-1:-1:-1;;;;;6199:32:23;;;4535:31:21;;;6181:51:23;4526:52:21;;-1:-1:-1;4535:22:21;;;-1:-1:-1;4535:22:21;;6154:18:23;;4535:31:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4568:9;4574:3;4568;:9;:::i;:::-;4526:8;:52::i;3238:184::-;3286:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3280:3:21;:17;;-1:-1:-1;;;;;;3280:17:21;-1:-1:-1;;;;;3280:17:21;;;;;;;;;;3327:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3321:3:21;:17;;-1:-1:-1;;;;;;3321:17:21;-1:-1:-1;;;;;3321:17:21;;;;;;;;;;3394:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3388:3:21;:17;;-1:-1:-1;;;;;;3388:17:21;-1:-1:-1;;;;;3388:17:21;;;;;;;;;;3238:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;6606:51:23;;;-1:-1:-1;;;6673:18:23;;;6666:34;2196:43:0;;;;;;;;;6579:18:23;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5787:159:21:-;5873:7;5900:38;5917:3;5922;5927;5932:5;5900:16;:38::i;2410:424:0:-;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;6913:51:23;;;-1:-1:-1;;;6980:18:23;;;6973:34;;;;2705:4:0;7023:18:23;;;7016:34;2482:11:0;;1671:64;2579:43;;6886:18:23;;2645:67:0;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;5202:262::-;5264:1;5259;:6;5255:203;;5286:41;;;;;8596:2:23;8578:21;;;8635:2;8615:18;;;8608:30;8674:34;8669:2;8654:18;;8647:62;-1:-1:-1;;;8740:2:23;8725:18;;8718:32;8782:3;8767:19;;8394:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;:::-;;;;;;;;5441:6;:4;:6::i;:::-;5202:262;;:::o;-1:-1:-1:-;;;;;;;;:::o;203:316:23:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:23;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:23;494:18;;;481:32;;203:316;-1:-1:-1;203:316:23:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;576:60;524:118;:::o;647:446::-;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:23;;-1:-1:-1;;647:446:23:o;1280:422::-;1357:6;1365;1373;1426:2;1414:9;1405:7;1401:23;1397:32;1394:52;;;1442:1;1439;1432:12;1394:52;1465:23;;;-1:-1:-1;1538:2:23;1523:18;;1510:32;-1:-1:-1;;;;;1571:31:23;;1561:42;;1551:70;;1617:1;1614;1607:12;1551:70;1280:422;;1640:5;;-1:-1:-1;;;1692:2:23;1677:18;;;;1664:32;;1280:422::o;1899:127::-;1960:10;1955:3;1951:20;1948:1;1941:31;1991:4;1988:1;1981:15;2015:4;2012:1;2005:15;2031:128;2098:9;;;2119:11;;;2116:37;;;2133:18;;:::i;:::-;2031:128;;;;:::o;2164:422::-;2253:1;2296:5;2253:1;2310:270;2331:7;2321:8;2318:21;2310:270;;;2390:4;2386:1;2382:6;2378:17;2372:4;2369:27;2366:53;;;2399:18;;:::i;:::-;2449:7;2439:8;2435:22;2432:55;;;2469:16;;;;2432:55;2548:22;;;;2508:15;;;;2310:270;;;2314:3;2164:422;;;;;:::o;2591:806::-;2640:5;2670:8;2660:80;;-1:-1:-1;2711:1:23;2725:5;;2660:80;2759:4;2749:76;;-1:-1:-1;2796:1:23;2810:5;;2749:76;2841:4;2859:1;2854:59;;;;2927:1;2922:130;;;;2834:218;;2854:59;2884:1;2875:10;;2898:5;;;2922:130;2959:3;2949:8;2946:17;2943:43;;;2966:18;;:::i;:::-;-1:-1:-1;;3022:1:23;3008:16;;3037:5;;2834:218;;3136:2;3126:8;3123:16;3117:3;3111:4;3108:13;3104:36;3098:2;3088:8;3085:16;3080:2;3074:4;3071:12;3067:35;3064:77;3061:159;;;-1:-1:-1;3173:19:23;;;3205:5;;3061:159;3252:34;3277:8;3271:4;3252:34;:::i;:::-;3322:6;3318:1;3314:6;3310:19;3301:7;3298:32;3295:58;;;3333:18;;:::i;:::-;3371:20;;2591:806;-1:-1:-1;;;2591:806:23:o;3402:131::-;3462:5;3491:36;3518:8;3512:4;3491:36;:::i;:::-;3482:45;3402:131;-1:-1:-1;;;3402:131:23:o;3538:127::-;3599:10;3594:3;3590:20;3587:1;3580:31;3630:4;3627:1;3620:15;3654:4;3651:1;3644:15;3670:120;3710:1;3736;3726:35;;3741:18;;:::i;:::-;-1:-1:-1;3775:9:23;;3670:120::o;3795:168::-;3868:9;;;3899;;3916:15;;;3910:22;;3896:37;3886:71;;3937:18;;:::i;4463:408::-;4693:2;4675:21;;;4732:2;4712:18;;;4705:30;-1:-1:-1;;;4766:2:23;4751:18;;4744:40;4851:4;4836:20;;4829:36;;;;4816:3;4801:19;;4463:408::o;4876:::-;5106:2;5088:21;;;5145:2;5125:18;;;5118:30;-1:-1:-1;;;5179:2:23;5164:18;;5157:40;5264:4;5249:20;;5242:36;;;;5229:3;5214:19;;4876:408::o;5788:112::-;5820:1;5846;5836:35;;5851:18;;:::i;:::-;-1:-1:-1;5885:9:23;;5788:112::o;5905:125::-;5970:9;;;5991:10;;;5988:36;;;6004:18;;:::i;6243:184::-;6313:6;6366:2;6354:9;6345:7;6341:23;6337:32;6334:52;;;6382:1;6379;6372:12;6334:52;-1:-1:-1;6405:16:23;;6243:184;-1:-1:-1;6243:184:23:o;7340:322::-;7381:3;7419:5;7413:12;7443:1;7453:128;7467:6;7464:1;7461:13;7453:128;;;7564:4;7549:13;;;7545:24;;7539:31;7526:11;;;7519:52;7482:12;7453:128;;;-1:-1:-1;7636:1:23;7600:16;;7625:13;;;-1:-1:-1;7600:16:23;;7340:322;-1:-1:-1;7340:322:23:o;7667:278::-;-1:-1:-1;;;;;;7852:33:23;;7840:46;;7822:3;7902:37;7936:1;7927:11;;7919:6;7902:37;:::i;7950:189::-;8079:3;8104:29;8129:3;8121:6;8104:29;:::i;8144:245::-;8211:6;8264:2;8252:9;8243:7;8239:23;8235:32;8232:52;;;8280:1;8277;8270:12;8232:52;8312:9;8306:16;8331:28;8353:5;8331:28;:::i", + "object": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528660405161057d9190610efe565b60405180910390a16000805160206115ff833981519152856040516105a29190610f2a565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528560405161067e9190610efe565b60405180910390a16000805160206115ff833981519152846040516106a39190610f2a565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f56565b6107029190610f6a565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f82565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f6a565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f82565b6108c98684610f6a565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fd6565b60408051601f1981840301815290829052610a7391610ff2565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610ffe565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fd6565b60408051601f1981840301815290829052610b9991610ff2565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115ff83398151915281604051610c879190610efe565b60405180910390a16000805160206115ff83398151915282604051610cac9190610f2a565b60405180910390a1610cbc610ae5565b5050565b6105e38061101c83390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b600082821015610db757610db7610d8f565b500390565b600181815b80851115610df7578160001904821115610ddd57610ddd610d8f565b80851615610dea57918102915b93841c9390800290610dc1565b509250929050565b600082610e0e57506001610e9c565b81610e1b57506000610e9c565b8160018114610e315760028114610e3b57610e57565b6001915050610e9c565b60ff841115610e4c57610e4c610d8f565b50506001821b610e9c565b5060208310610133831016604e8410600b8410161715610e7a575081810a610e9c565b610e848383610dbc565b8060001904821115610e9857610e98610d8f565b0290505b92915050565b6000610eae8383610dff565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b6000816000190483118215151615610ef957610ef9610d8f565b500290565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f6557610f65610eb5565b500690565b60008219821115610f7d57610f7d610d8f565b500190565b600060208284031215610f9457600080fd5b5051919050565b6000815160005b81811015610fbc5760208185018101518683015201610fa2565b81811115610fcb576000828601525b509290920192915050565b6001600160e01b03198316815260006107056004830184610f9b565b6000610eae8284610f9b565b60006020828403121561101057600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220232012e6a0447c146bf2864e8737b38551253301057cf2559d1a2c5c1ea9becf64736f6c634300080f0033", + "sourceMap": "449:5881:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1745:36;;1780:1;1745:36;;;;;186:4:32;174:17;;;156:36;;144:2;129:18;1745:36:30;;;;;;;;4740:583;;;;;;:::i;:::-;;:::i;:::-;;5374:479;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;6028:291;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:32;;;1232:2;1217:18;6028:291:30;1098:177:32;2262:45:30;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;2092:45::-;;2135:2;2092:45;;2005:36;;2040:1;2005:36;;3312:184;;;:::i;1819:584:0:-;;;:::i;:::-;;;1872:14:32;;1865:22;1847:41;;1835:2;1820:18;1819:584:0;1707:187:32;5861:159:30;;;;;;:::i;:::-;;:::i;1916:36::-;;1951:1;1916:36;;1655;;1690:1;1655:36;;3620:551;;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:30;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:30;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551;1572:26:0;;;;;;;;;4740:583:30;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:30;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;4177:21:32;;;4234:2;4214:18;;;4207:30;4273:34;4268:2;4253:18;;4246:62;-1:-1:-1;;;4339:3:32;4324:19;;4317:51;4435:4;4420:20;;4413:36;;;5095:80:30;;-1:-1:-1;;;;;;;;;;;5095:80:30;;;;4400:3:32;5095:80:30;;;-1:-1:-1;;;;;;;;;;;5224:4:30;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:30;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:30;;;;;5585:261;;5617:88;;;5498:21:32;;;5555:2;5535:18;;;5528:30;5594:34;5589:2;5574:18;;5567:62;5666:26;5660:3;5645:19;;5638:55;5760:4;5745:20;;5738:36;;;5617:88:30;;-1:-1:-1;;;;;;;;;;;5617:88:30;;;;5725:3:32;5617:88:30;;;-1:-1:-1;;;;;;;;;;;5754:4:30;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:30;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;6028:291::-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:30;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:30;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:30;;-1:-1:-1;;;;;6199:32:32;;;4404:31:30;;;6181:51:32;;;;4314:19:30;;;4360;;4314;;4404:22;;6154:18:32;;4404:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;;-1:-1:-1;;;;;6624:32:32;;;4502:25:30;;;6606:51:32;6673:18;;;6666:34;;;4390:45:30;;-1:-1:-1;4448:4:30;;;;;;:10;;4473:4;;6579:18:32;;4502:25:30;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;;;;;-1:-1:-1;;;;;;4448:139:30;;;-1:-1:-1;;;;;6931:32:32;;;4448:139:30;;;6913:51:32;6980:18;;;6973:34;;;;7023:18;;;7016:34;6886:18;;4448:139:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:30;;-1:-1:-1;;;4609:31:30;;-1:-1:-1;;;;;6199:32:32;;;4609:31:30;;;6181:51:32;4600:52:30;;-1:-1:-1;4609:22:30;;;-1:-1:-1;4609:22:30;;6154:18:32;;4609:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;:::-;4600:8;:52::i;3312:184::-;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:30;:17;;-1:-1:-1;;;;;;3354:17:30;-1:-1:-1;;;;;3354:17:30;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:30;:17;;-1:-1:-1;;;;;;3395:17:30;-1:-1:-1;;;;;3395:17:30;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:30;:17;;-1:-1:-1;;;;;;3462:17:30;-1:-1:-1;;;;;3462:17:30;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;6606:51:32;;;-1:-1:-1;;;6673:18:32;;;6666:34;2196:43:0;;;;;;;;;6579:18:32;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:30:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;2410:424:0:-;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;6913:51:32;;;-1:-1:-1;;;6980:18:32;;;6973:34;;;;2705:4:0;7023:18:32;;;7016:34;2482:11:0;;1671:64;2579:43;;6886:18:32;;2645:67:0;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;5202:262::-;5264:1;5259;:6;5255:203;;5286:41;;;;;8610:2:32;8592:21;;;8649:2;8629:18;;;8622:30;8688:34;8683:2;8668:18;;8661:62;-1:-1:-1;;;8754:2:32;8739:18;;8732:32;8796:3;8781:19;;8408:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;:::-;;;;;;;;5441:6;:4;:6::i;:::-;5202:262;;:::o;-1:-1:-1:-;;;;;;;;:::o;203:316:32:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:32;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:32;494:18;;;481:32;;203:316;-1:-1:-1;203:316:32:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;576:60;524:118;:::o;647:446::-;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:32;;-1:-1:-1;;647:446:32:o;1280:422::-;1357:6;1365;1373;1426:2;1414:9;1405:7;1401:23;1397:32;1394:52;;;1442:1;1439;1432:12;1394:52;1465:23;;;-1:-1:-1;1538:2:32;1523:18;;1510:32;-1:-1:-1;;;;;1571:31:32;;1561:42;;1551:70;;1617:1;1614;1607:12;1551:70;1280:422;;1640:5;;-1:-1:-1;;;1692:2:32;1677:18;;;;1664:32;;1280:422::o;1899:127::-;1960:10;1955:3;1951:20;1948:1;1941:31;1991:4;1988:1;1981:15;2015:4;2012:1;2005:15;2031:125;2071:4;2099:1;2096;2093:8;2090:34;;;2104:18;;:::i;:::-;-1:-1:-1;2141:9:32;;2031:125::o;2161:422::-;2250:1;2293:5;2250:1;2307:270;2328:7;2318:8;2315:21;2307:270;;;2387:4;2383:1;2379:6;2375:17;2369:4;2366:27;2363:53;;;2396:18;;:::i;:::-;2446:7;2436:8;2432:22;2429:55;;;2466:16;;;;2429:55;2545:22;;;;2505:15;;;;2307:270;;;2311:3;2161:422;;;;;:::o;2588:806::-;2637:5;2667:8;2657:80;;-1:-1:-1;2708:1:32;2722:5;;2657:80;2756:4;2746:76;;-1:-1:-1;2793:1:32;2807:5;;2746:76;2838:4;2856:1;2851:59;;;;2924:1;2919:130;;;;2831:218;;2851:59;2881:1;2872:10;;2895:5;;;2919:130;2956:3;2946:8;2943:17;2940:43;;;2963:18;;:::i;:::-;-1:-1:-1;;3019:1:32;3005:16;;3034:5;;2831:218;;3133:2;3123:8;3120:16;3114:3;3108:4;3105:13;3101:36;3095:2;3085:8;3082:16;3077:2;3071:4;3068:12;3064:35;3061:77;3058:159;;;-1:-1:-1;3170:19:32;;;3202:5;;3058:159;3249:34;3274:8;3268:4;3249:34;:::i;:::-;3319:6;3315:1;3311:6;3307:19;3298:7;3295:32;3292:58;;;3330:18;;:::i;:::-;3368:20;;-1:-1:-1;2588:806:32;;;;;:::o;3399:131::-;3459:5;3488:36;3515:8;3509:4;3488:36;:::i;:::-;3479:45;3399:131;-1:-1:-1;;;3399:131:32:o;3535:127::-;3596:10;3591:3;3587:20;3584:1;3577:31;3627:4;3624:1;3617:15;3651:4;3648:1;3641:15;3667:120;3707:1;3733;3723:35;;3738:18;;:::i;:::-;-1:-1:-1;3772:9:32;;3667:120::o;3792:168::-;3832:7;3898:1;3894;3890:6;3886:14;3883:1;3880:21;3875:1;3868:9;3861:17;3857:45;3854:71;;;3905:18;;:::i;:::-;-1:-1:-1;3945:9:32;;3792:168::o;4460:408::-;4690:2;4672:21;;;4729:2;4709:18;;;4702:30;-1:-1:-1;;;4763:2:32;4748:18;;4741:40;4848:4;4833:20;;4826:36;;;;4813:3;4798:19;;4460:408::o;4873:::-;5103:2;5085:21;;;5142:2;5122:18;;;5115:30;-1:-1:-1;;;5176:2:32;5161:18;;5154:40;5261:4;5246:20;;5239:36;;;;5226:3;5211:19;;4873:408::o;5785:112::-;5817:1;5843;5833:35;;5848:18;;:::i;:::-;-1:-1:-1;5882:9:32;;5785:112::o;5902:128::-;5942:3;5973:1;5969:6;5966:1;5963:13;5960:39;;;5979:18;;:::i;:::-;-1:-1:-1;6015:9:32;;5902:128::o;6243:184::-;6313:6;6366:2;6354:9;6345:7;6341:23;6337:32;6334:52;;;6382:1;6379;6372:12;6334:52;-1:-1:-1;6405:16:32;;6243:184;-1:-1:-1;6243:184:32:o;7340:336::-;7381:3;7419:5;7413:12;7443:1;7453:128;7467:6;7464:1;7461:13;7453:128;;;7564:4;7549:13;;;7545:24;;7539:31;7526:11;;;7519:52;7482:12;7453:128;;;7599:6;7596:1;7593:13;7590:48;;;7634:1;7625:6;7620:3;7616:16;7609:27;7590:48;-1:-1:-1;7654:16:32;;;;;7340:336;-1:-1:-1;;7340:336:32:o;7681:278::-;-1:-1:-1;;;;;;7866:33:32;;7854:46;;7836:3;7916:37;7950:1;7941:11;;7933:6;7916:37;:::i;7964:189::-;8093:3;8118:29;8143:3;8135:6;8118:29;:::i;8158:245::-;8225:6;8278:2;8266:9;8257:7;8253:23;8249:32;8246:52;;;8294:1;8291;8284:12;8246:52;8326:9;8320:16;8345:28;8367:5;8345:28;:::i", "linkReferences": {} }, "methodIdentifiers": { @@ -655,818 +655,21 @@ "withinDiff(uint256,uint256,uint256)": "344b1478", "withinPrecision(uint256,uint256,uint256)": "30f7c5c3" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"INTEREST_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LATEFEE_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PREMIUM_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"nonZero\",\"type\":\"bool\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createActors\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"symbol\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUpTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expectedDiff\",\"type\":\"uint256\"}],\"name\":\"withinDiff\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accuracy\",\"type\":\"uint256\"}],\"name\":\"withinPrecision\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Utility.sol\":\"Utility\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/interfaces/Interfaces.sol\":{\"keccak256\":\"0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7\",\"dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a\",\"dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb\"]},\"test/Utility.sol\":{\"keccak256\":\"0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775\",\"dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "address", - "name": "", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "bool", - "name": "", - "type": "bool", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address", - "name": "val", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_named_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes", - "name": "val", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes32", - "name": "val", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "string", - "name": "val", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_named_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "logs", - "anonymous": false - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "CL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "DL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "FL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "INTEREST_CALC_TYPE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "IS_TEST", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "LATEFEE_CALC_TYPE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "LL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "PREMIUM_CALC_TYPE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "SL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "min", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "max", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "nonZero", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "constrictToRange", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "min", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "max", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "constrictToRange", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "createActors" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "failed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "symbol", - "type": "bytes32" - }, - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amt", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "mint" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "setUpTokens" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val0", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "val1", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "expectedDiff", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "withinDiff" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val0", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "val1", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "accuracy", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "withinPrecision" - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "test/Utility.sol": "Utility" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/lib/ds-test/src/test.sol": { - "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", - "urls": [ - "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", - "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" - ], - "license": "GPL-3.0-or-later" - }, - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdAssertions.sol": { - "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", - "urls": [ - "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", - "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdError.sol": { - "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", - "urls": [ - "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", - "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Test.sol": { - "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", - "urls": [ - "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", - "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - }, - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - }, - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - }, - "src/interfaces/Interfaces.sol": { - "keccak256": "0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04", - "urls": [ - "bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7", - "dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX" - ], - "license": "GPL-3.0-or-later" - }, - "src/users/Actor.sol": { - "keccak256": "0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e", - "urls": [ - "bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a", - "dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb" - ], - "license": "AGPL-3.0-or-later" - }, - "test/Utility.sol": { - "keccak256": "0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f", - "urls": [ - "bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775", - "dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds" - ], - "license": "AGPL-3.0-or-later" - } - }, - "version": 1 - }, "ast": { "absolutePath": "test/Utility.sol", - "id": 27933, + "id": 31030, "exportedSymbols": { "Actor": [ - 27385 + 30364 ], "DSTest": [ 1786 ], "Hevm": [ - 27404 + 30498 ], "IERC20": [ - 26425 + 29143 ], "StdAssertions": [ 2708 @@ -1490,10 +693,10 @@ 1843 ], "User": [ - 27412 + 30506 ], "Utility": [ - 27932 + 31029 ], "Vm": [ 9352 @@ -1518,13 +721,12 @@ ] }, "nodeType": "SourceUnit", - "src": "47:6209:21", + "src": "47:6283:30", "nodes": [ { - "id": 27387, + "id": 30481, "nodeType": "PragmaDirective", - "src": "47:23:21", - "nodes": [], + "src": "47:23:30", "literals": [ "solidity", "^", @@ -1533,60 +735,57 @@ ] }, { - "id": 27388, + "id": 30482, "nodeType": "ImportDirective", - "src": "74:32:21", - "nodes": [], + "src": "74:32:30", "absolutePath": "src/users/Actor.sol", "file": "../src/users/Actor.sol", "nameLocation": "-1:-1:-1", - "scope": 27933, - "sourceUnit": 27386, + "scope": 31030, + "sourceUnit": 30365, "symbolAliases": [], "unitAlias": "" }, { - "id": 27389, + "id": 30483, "nodeType": "ImportDirective", - "src": "110:39:21", - "nodes": [], + "src": "110:39:30", "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 27933, + "scope": 31030, "sourceUnit": 8196, "symbolAliases": [], "unitAlias": "" }, { - "id": 27404, + "id": 30498, "nodeType": "ContractDefinition", - "src": "153:112:21", + "src": "153:112:30", "nodes": [ { - "id": 27394, + "id": 30488, "nodeType": "FunctionDefinition", - "src": "175:32:21", - "nodes": [], + "src": "175:32:30", "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", "modifiers": [], "name": "warp", - "nameLocation": "184:4:21", + "nameLocation": "184:4:30", "parameters": { - "id": 27392, + "id": 30486, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27391, + "id": 30485, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27394, - "src": "189:7:21", + "scope": 30488, + "src": "189:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1594,10 +793,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27390, + "id": 30484, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "189:7:21", + "src": "189:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1606,43 +805,42 @@ "visibility": "internal" } ], - "src": "188:9:21" + "src": "188:9:30" }, "returnParameters": { - "id": 27393, + "id": 30487, "nodeType": "ParameterList", "parameters": [], - "src": "206:0:21" + "src": "206:0:30" }, - "scope": 27404, + "scope": 30498, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27403, + "id": 30497, "nodeType": "FunctionDefinition", - "src": "213:49:21", - "nodes": [], + "src": "213:49:30", "functionSelector": "70ca10bb", "implemented": false, "kind": "function", "modifiers": [], "name": "store", - "nameLocation": "222:5:21", + "nameLocation": "222:5:30", "parameters": { - "id": 27401, + "id": 30495, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27396, + "id": 30490, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "228:7:21", + "scope": 30497, + "src": "228:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1650,10 +848,10 @@ "typeString": "address" }, "typeName": { - "id": 27395, + "id": 30489, "name": "address", "nodeType": "ElementaryTypeName", - "src": "228:7:21", + "src": "228:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1664,13 +862,13 @@ }, { "constant": false, - "id": 27398, + "id": 30492, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "236:7:21", + "scope": 30497, + "src": "236:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1678,10 +876,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27397, + "id": 30491, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "236:7:21", + "src": "236:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1691,13 +889,13 @@ }, { "constant": false, - "id": 27400, + "id": 30494, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27403, - "src": "244:7:21", + "scope": 30497, + "src": "244:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1705,10 +903,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27399, + "id": 30493, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "244:7:21", + "src": "244:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1717,15 +915,15 @@ "visibility": "internal" } ], - "src": "227:25:21" + "src": "227:25:30" }, "returnParameters": { - "id": 27402, + "id": 30496, "nodeType": "ParameterList", "parameters": [], - "src": "261:0:21" + "src": "261:0:30" }, - "scope": 27404, + "scope": 30498, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -1738,42 +936,41 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 27404 + 30498 ], "name": "Hevm", - "nameLocation": "163:4:21", - "scope": 27933, + "nameLocation": "163:4:30", + "scope": 31030, "usedErrors": [] }, { - "id": 27412, + "id": 30506, "nodeType": "ContractDefinition", - "src": "269:69:21", + "src": "269:69:30", "nodes": [ { - "id": 27411, + "id": 30505, "nodeType": "FunctionDefinition", - "src": "291:44:21", - "nodes": [], + "src": "291:44:30", "functionSelector": "095ea7b3", "implemented": false, "kind": "function", "modifiers": [], "name": "approve", - "nameLocation": "300:7:21", + "nameLocation": "300:7:30", "parameters": { - "id": 27409, + "id": 30503, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27406, + "id": 30500, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27411, - "src": "308:7:21", + "scope": 30505, + "src": "308:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1781,10 +978,10 @@ "typeString": "address" }, "typeName": { - "id": 27405, + "id": 30499, "name": "address", "nodeType": "ElementaryTypeName", - "src": "308:7:21", + "src": "308:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1795,13 +992,13 @@ }, { "constant": false, - "id": 27408, + "id": 30502, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27411, - "src": "317:7:21", + "scope": 30505, + "src": "317:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1809,10 +1006,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27407, + "id": 30501, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "317:7:21", + "src": "317:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1821,15 +1018,15 @@ "visibility": "internal" } ], - "src": "307:18:21" + "src": "307:18:30" }, "returnParameters": { - "id": 27410, + "id": 30504, "nodeType": "ParameterList", "parameters": [], - "src": "334:0:21" + "src": "334:0:30" }, - "scope": 27412, + "scope": 30506, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -1842,180 +1039,163 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 27412 + 30506 ], "name": "User", - "nameLocation": "279:4:21", - "scope": 27933, + "nameLocation": "279:4:30", + "scope": 31030, "usedErrors": [] }, { - "id": 27932, + "id": 31029, "nodeType": "ContractDefinition", - "src": "449:5807:21", + "src": "449:5881:30", "nodes": [ { - "id": 27417, + "id": 30511, "nodeType": "VariableDeclaration", - "src": "485:9:21", - "nodes": [], + "src": "485:9:30", "constant": false, "mutability": "mutable", "name": "hevm", - "nameLocation": "490:4:21", - "scope": 27932, + "nameLocation": "490:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" }, "typeName": { - "id": 27416, + "id": 30510, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27415, + "id": 30509, "name": "Hevm", - "nameLocations": [ - "485:4:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27404, - "src": "485:4:21" + "referencedDeclaration": 30498, + "src": "485:4:30" }, - "referencedDeclaration": 27404, - "src": "485:4:21", + "referencedDeclaration": 30498, + "src": "485:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, "visibility": "internal" }, { - "id": 27420, + "id": 30514, "nodeType": "VariableDeclaration", - "src": "596:10:21", - "nodes": [], + "src": "596:10:30", "constant": false, "mutability": "mutable", "name": "joe", - "nameLocation": "603:3:21", - "scope": 27932, + "nameLocation": "603:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27419, + "id": 30513, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27418, + "id": 30512, "name": "Actor", - "nameLocations": [ - "596:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "596:5:21" + "referencedDeclaration": 30364, + "src": "596:5:30" }, - "referencedDeclaration": 27385, - "src": "596:5:21", + "referencedDeclaration": 30364, + "src": "596:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27423, + "id": 30517, "nodeType": "VariableDeclaration", - "src": "625:10:21", - "nodes": [], + "src": "625:10:30", "constant": false, "mutability": "mutable", "name": "dev", - "nameLocation": "632:3:21", - "scope": 27932, + "nameLocation": "632:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27422, + "id": 30516, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27421, + "id": 30515, "name": "Actor", - "nameLocations": [ - "625:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "625:5:21" + "referencedDeclaration": 30364, + "src": "625:5:30" }, - "referencedDeclaration": 27385, - "src": "625:5:21", + "referencedDeclaration": 30364, + "src": "625:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27426, + "id": 30520, "nodeType": "VariableDeclaration", - "src": "651:10:21", - "nodes": [], + "src": "651:10:30", "constant": false, "mutability": "mutable", "name": "jon", - "nameLocation": "658:3:21", - "scope": 27932, + "nameLocation": "658:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" }, "typeName": { - "id": 27425, + "id": 30519, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27424, + "id": 30518, "name": "Actor", - "nameLocations": [ - "651:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "651:5:21" + "referencedDeclaration": 30364, + "src": "651:5:30" }, - "referencedDeclaration": 27385, - "src": "651:5:21", + "referencedDeclaration": 30364, + "src": "651:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 27429, + "id": 30523, "nodeType": "VariableDeclaration", - "src": "815:67:21", - "nodes": [], + "src": "815:67:30", "constant": true, "mutability": "constant", "name": "USDC", - "nameLocation": "832:4:21", - "scope": 27932, + "nameLocation": "832:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2023,10 +1203,10 @@ "typeString": "address" }, "typeName": { - "id": 27427, + "id": 30521, "name": "address", "nodeType": "ElementaryTypeName", - "src": "815:7:21", + "src": "815:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2035,14 +1215,14 @@ }, "value": { "hexValue": "307841306238363939316336323138623336633164313944346132653945623063453336303665423438", - "id": 27428, + "id": 30522, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "840:42:21", + "src": "840:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2052,15 +1232,14 @@ "visibility": "internal" }, { - "id": 27432, + "id": 30526, "nodeType": "VariableDeclaration", - "src": "889:67:21", - "nodes": [], + "src": "889:67:30", "constant": true, "mutability": "constant", "name": "DAI", - "nameLocation": "906:3:21", - "scope": 27932, + "nameLocation": "906:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2068,10 +1247,10 @@ "typeString": "address" }, "typeName": { - "id": 27430, + "id": 30524, "name": "address", "nodeType": "ElementaryTypeName", - "src": "889:7:21", + "src": "889:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2080,14 +1259,14 @@ }, "value": { "hexValue": "307836423137353437344538393039344334344461393862393534456564654143343935323731643046", - "id": 27431, + "id": 30525, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "914:42:21", + "src": "914:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2097,15 +1276,14 @@ "visibility": "internal" }, { - "id": 27435, + "id": 30529, "nodeType": "VariableDeclaration", - "src": "963:67:21", - "nodes": [], + "src": "963:67:30", "constant": true, "mutability": "constant", "name": "WETH", - "nameLocation": "980:4:21", - "scope": 27932, + "nameLocation": "980:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2113,10 +1291,10 @@ "typeString": "address" }, "typeName": { - "id": 27433, + "id": 30527, "name": "address", "nodeType": "ElementaryTypeName", - "src": "963:7:21", + "src": "963:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2125,14 +1303,14 @@ }, "value": { "hexValue": "307843303261614133396232323346453844304130653543344632376541443930383343373536436332", - "id": 27434, + "id": 30528, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "988:42:21", + "src": "988:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2142,15 +1320,14 @@ "visibility": "internal" }, { - "id": 27438, + "id": 30532, "nodeType": "VariableDeclaration", - "src": "1037:67:21", - "nodes": [], + "src": "1037:67:30", "constant": true, "mutability": "constant", "name": "WBTC", - "nameLocation": "1054:4:21", - "scope": 27932, + "nameLocation": "1054:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2158,10 +1335,10 @@ "typeString": "address" }, "typeName": { - "id": 27436, + "id": 30530, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1037:7:21", + "src": "1037:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2170,14 +1347,14 @@ }, "value": { "hexValue": "307832323630464143354535353432613737334161343466424366654466374331393362633243353939", - "id": 27437, + "id": 30531, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1062:42:21", + "src": "1062:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2187,50 +1364,90 @@ "visibility": "internal" }, { - "id": 27444, + "id": 30535, "nodeType": "VariableDeclaration", - "src": "1113:35:21", - "nodes": [], + "src": "1111:67:30", + "constant": true, + "mutability": "constant", + "name": "FRAX", + "nameLocation": "1128:4:30", + "scope": 31029, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 30533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1111:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "hexValue": "307838353364393535614345663832324462303538656238353035393131454437374631373562393965", + "id": 30534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1136:42:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x853d955aCEf822Db058eb8505911ED77F175b99e" + }, + "visibility": "internal" + }, + { + "id": 30541, + "nodeType": "VariableDeclaration", + "src": "1187:35:30", "constant": true, "mutability": "constant", "name": "usdc", - "nameLocation": "1129:4:21", - "scope": 27932, + "nameLocation": "1203:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27440, + "id": 30537, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27439, + "id": 30536, "name": "IERC20", - "nameLocations": [ - "1113:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1113:6:21" + "referencedDeclaration": 29143, + "src": "1187:6:30" }, - "referencedDeclaration": 26425, - "src": "1113:6:21", + "referencedDeclaration": 29143, + "src": "1187:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27442, + "id": 30539, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27429, - "src": "1143:4:21", + "referencedDeclaration": 30523, + "src": "1217:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2244,80 +1461,75 @@ "typeString": "address" } ], - "id": 27441, + "id": 30538, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1136:6:21", + "referencedDeclaration": 29143, + "src": "1210:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27443, + "id": 30540, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1136:12:21", + "src": "1210:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27450, + "id": 30547, "nodeType": "VariableDeclaration", - "src": "1155:34:21", - "nodes": [], + "src": "1229:34:30", "constant": true, "mutability": "constant", "name": "dai", - "nameLocation": "1171:3:21", - "scope": 27932, + "nameLocation": "1245:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27446, + "id": 30543, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27445, + "id": 30542, "name": "IERC20", - "nameLocations": [ - "1155:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1155:6:21" + "referencedDeclaration": 29143, + "src": "1229:6:30" }, - "referencedDeclaration": 26425, - "src": "1155:6:21", + "referencedDeclaration": 29143, + "src": "1229:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27448, + "id": 30545, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27432, - "src": "1185:3:21", + "referencedDeclaration": 30526, + "src": "1259:3:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2331,80 +1543,75 @@ "typeString": "address" } ], - "id": 27447, + "id": 30544, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1178:6:21", + "referencedDeclaration": 29143, + "src": "1252:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27449, + "id": 30546, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1178:11:21", + "src": "1252:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27456, + "id": 30553, "nodeType": "VariableDeclaration", - "src": "1196:35:21", - "nodes": [], + "src": "1270:35:30", "constant": true, "mutability": "constant", "name": "weth", - "nameLocation": "1212:4:21", - "scope": 27932, + "nameLocation": "1286:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27452, + "id": 30549, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27451, + "id": 30548, "name": "IERC20", - "nameLocations": [ - "1196:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1196:6:21" + "referencedDeclaration": 29143, + "src": "1270:6:30" }, - "referencedDeclaration": 26425, - "src": "1196:6:21", + "referencedDeclaration": 29143, + "src": "1270:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27454, + "id": 30551, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27435, - "src": "1226:4:21", + "referencedDeclaration": 30529, + "src": "1300:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2418,80 +1625,75 @@ "typeString": "address" } ], - "id": 27453, + "id": 30550, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1219:6:21", + "referencedDeclaration": 29143, + "src": "1293:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27455, + "id": 30552, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1219:12:21", + "src": "1293:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27462, + "id": 30559, "nodeType": "VariableDeclaration", - "src": "1238:35:21", - "nodes": [], + "src": "1312:35:30", "constant": true, "mutability": "constant", "name": "wbtc", - "nameLocation": "1254:4:21", - "scope": 27932, + "nameLocation": "1328:4:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" }, "typeName": { - "id": 27458, + "id": 30555, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27457, + "id": 30554, "name": "IERC20", - "nameLocations": [ - "1238:6:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26425, - "src": "1238:6:21" + "referencedDeclaration": 29143, + "src": "1312:6:30" }, - "referencedDeclaration": 26425, - "src": "1238:6:21", + "referencedDeclaration": 29143, + "src": "1312:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 27460, + "id": 30557, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27438, - "src": "1268:4:21", + "referencedDeclaration": 30532, + "src": "1342:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2505,45 +1707,43 @@ "typeString": "address" } ], - "id": 27459, + "id": 30556, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "1261:6:21", + "referencedDeclaration": 29143, + "src": "1335:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27461, + "id": 30558, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1261:12:21", + "src": "1335:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 27465, + "id": 30562, "nodeType": "VariableDeclaration", - "src": "1282:82:21", - "nodes": [], + "src": "1356:82:30", "constant": true, "mutability": "constant", "name": "UNISWAP_V2_ROUTER_02", - "nameLocation": "1299:20:21", - "scope": 27932, + "nameLocation": "1373:20:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2551,10 +1751,10 @@ "typeString": "address" }, "typeName": { - "id": 27463, + "id": 30560, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1282:7:21", + "src": "1356:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2563,14 +1763,14 @@ }, "value": { "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", - "id": 27464, + "id": 30561, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1322:42:21", + "src": "1396:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2580,15 +1780,14 @@ "visibility": "internal" }, { - "id": 27468, + "id": 30565, "nodeType": "VariableDeclaration", - "src": "1392:82:21", - "nodes": [], + "src": "1466:82:30", "constant": true, "mutability": "constant", "name": "UNISWAP_V2_FACTORY", - "nameLocation": "1409:18:21", - "scope": 27932, + "nameLocation": "1483:18:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2596,10 +1795,10 @@ "typeString": "address" }, "typeName": { - "id": 27466, + "id": 30563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1392:7:21", + "src": "1466:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2608,14 +1807,14 @@ }, "value": { "hexValue": "307835433639624565373031656638313461324236613345444434423136353243423963633561413666", - "id": 27467, + "id": 30564, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1432:42:21", + "src": "1506:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2625,16 +1824,15 @@ "visibility": "internal" }, { - "id": 27471, + "id": 30568, "nodeType": "VariableDeclaration", - "src": "1581:36:21", - "nodes": [], + "src": "1655:36:30", "constant": true, "functionSelector": "e70dd6cf", "mutability": "constant", "name": "CL_FACTORY", - "nameLocation": "1603:10:21", - "scope": 27932, + "nameLocation": "1677:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2642,10 +1840,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27469, + "id": 30566, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1581:5:21", + "src": "1655:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2653,14 +1851,14 @@ }, "value": { "hexValue": "30", - "id": 27470, + "id": 30567, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1616:1:21", + "src": "1690:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -2670,16 +1868,15 @@ "visibility": "public" }, { - "id": 27474, + "id": 30571, "nodeType": "VariableDeclaration", - "src": "1671:36:21", - "nodes": [], + "src": "1745:36:30", "constant": true, "functionSelector": "174a5be4", "mutability": "constant", "name": "DL_FACTORY", - "nameLocation": "1693:10:21", - "scope": 27932, + "nameLocation": "1767:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2687,10 +1884,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27472, + "id": 30569, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1671:5:21", + "src": "1745:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2698,14 +1895,14 @@ }, "value": { "hexValue": "31", - "id": 27473, + "id": 30570, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1706:1:21", + "src": "1780:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -2715,16 +1912,15 @@ "visibility": "public" }, { - "id": 27477, + "id": 30574, "nodeType": "VariableDeclaration", - "src": "1755:36:21", - "nodes": [], + "src": "1829:36:30", "constant": true, "functionSelector": "38505fb0", "mutability": "constant", "name": "FL_FACTORY", - "nameLocation": "1777:10:21", - "scope": 27932, + "nameLocation": "1851:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2732,10 +1928,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27475, + "id": 30572, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1755:5:21", + "src": "1829:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2743,14 +1939,14 @@ }, "value": { "hexValue": "32", - "id": 27476, + "id": 30573, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1790:1:21", + "src": "1864:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -2760,16 +1956,15 @@ "visibility": "public" }, { - "id": 27480, + "id": 30577, "nodeType": "VariableDeclaration", - "src": "1842:36:21", - "nodes": [], + "src": "1916:36:30", "constant": true, "functionSelector": "c5ba73ed", "mutability": "constant", "name": "LL_FACTORY", - "nameLocation": "1864:10:21", - "scope": 27932, + "nameLocation": "1938:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2777,10 +1972,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27478, + "id": 30575, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1842:5:21", + "src": "1916:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2788,14 +1983,14 @@ }, "value": { "hexValue": "33", - "id": 27479, + "id": 30576, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1877:1:21", + "src": "1951:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" @@ -2805,16 +2000,15 @@ "visibility": "public" }, { - "id": 27483, + "id": 30580, "nodeType": "VariableDeclaration", - "src": "1931:36:21", - "nodes": [], + "src": "2005:36:30", "constant": true, "functionSelector": "9f71f14a", "mutability": "constant", "name": "SL_FACTORY", - "nameLocation": "1953:10:21", - "scope": 27932, + "nameLocation": "2027:10:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2822,10 +2016,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27481, + "id": 30578, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1931:5:21", + "src": "2005:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2833,14 +2027,14 @@ }, "value": { "hexValue": "34", - "id": 27482, + "id": 30579, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1966:1:21", + "src": "2040:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_4_by_1", "typeString": "int_const 4" @@ -2850,16 +2044,15 @@ "visibility": "public" }, { - "id": 27486, + "id": 30583, "nodeType": "VariableDeclaration", - "src": "2018:45:21", - "nodes": [], + "src": "2092:45:30", "constant": true, "functionSelector": "8c38922f", "mutability": "constant", "name": "INTEREST_CALC_TYPE", - "nameLocation": "2040:18:21", - "scope": 27932, + "nameLocation": "2114:18:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2867,10 +2060,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27484, + "id": 30581, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2018:5:21", + "src": "2092:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2878,14 +2071,14 @@ }, "value": { "hexValue": "3130", - "id": 27485, + "id": 30582, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2061:2:21", + "src": "2135:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -2895,16 +2088,15 @@ "visibility": "public" }, { - "id": 27489, + "id": 30586, "nodeType": "VariableDeclaration", - "src": "2104:45:21", - "nodes": [], + "src": "2178:45:30", "constant": true, "functionSelector": "3493f4ca", "mutability": "constant", "name": "LATEFEE_CALC_TYPE", - "nameLocation": "2126:17:21", - "scope": 27932, + "nameLocation": "2200:17:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2912,10 +2104,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27487, + "id": 30584, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2104:5:21", + "src": "2178:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2923,14 +2115,14 @@ }, "value": { "hexValue": "3131", - "id": 27488, + "id": 30585, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2147:2:21", + "src": "2221:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_11_by_1", "typeString": "int_const 11" @@ -2940,16 +2132,15 @@ "visibility": "public" }, { - "id": 27492, + "id": 30589, "nodeType": "VariableDeclaration", - "src": "2188:45:21", - "nodes": [], + "src": "2262:45:30", "constant": true, "functionSelector": "7a8fe3c0", "mutability": "constant", "name": "PREMIUM_CALC_TYPE", - "nameLocation": "2210:17:21", - "scope": 27932, + "nameLocation": "2284:17:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2957,10 +2148,10 @@ "typeString": "uint8" }, "typeName": { - "id": 27490, + "id": 30587, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "2188:5:21", + "src": "2262:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2968,14 +2159,14 @@ }, "value": { "hexValue": "3132", - "id": 27491, + "id": 30588, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2231:2:21", + "src": "2305:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" @@ -2985,15 +2176,14 @@ "visibility": "public" }, { - "id": 27497, + "id": 30594, "nodeType": "VariableDeclaration", - "src": "2274:30:21", - "nodes": [], + "src": "2348:30:30", "constant": true, "mutability": "constant", "name": "USD", - "nameLocation": "2291:3:21", - "scope": 27932, + "nameLocation": "2365:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3001,10 +2191,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27493, + "id": 30590, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2274:7:21", + "src": "2348:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3015,21 +2205,21 @@ "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" }, - "id": 27496, + "id": 30593, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27494, + "id": 30591, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2297:2:21", + "src": "2371:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -3040,21 +2230,21 @@ "operator": "**", "rightExpression": { "hexValue": "36", - "id": 27495, + "id": 30592, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2303:1:21", + "src": "2377:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_6_by_1", "typeString": "int_const 6" }, "value": "6" }, - "src": "2297:7:21", + "src": "2371:7:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" @@ -3063,15 +2253,14 @@ "visibility": "internal" }, { - "id": 27502, + "id": 30599, "nodeType": "VariableDeclaration", - "src": "2339:30:21", - "nodes": [], + "src": "2413:30:30", "constant": true, "mutability": "constant", "name": "BTC", - "nameLocation": "2356:3:21", - "scope": 27932, + "nameLocation": "2430:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3079,10 +2268,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27498, + "id": 30595, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2339:7:21", + "src": "2413:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3093,21 +2282,21 @@ "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" }, - "id": 27501, + "id": 30598, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27499, + "id": 30596, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2362:2:21", + "src": "2436:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -3118,21 +2307,21 @@ "operator": "**", "rightExpression": { "hexValue": "38", - "id": 27500, + "id": 30597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2368:1:21", + "src": "2442:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "2362:7:21", + "src": "2436:7:30", "typeDescriptions": { "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" @@ -3141,15 +2330,14 @@ "visibility": "internal" }, { - "id": 27507, + "id": 30604, "nodeType": "VariableDeclaration", - "src": "2404:31:21", - "nodes": [], + "src": "2478:31:30", "constant": true, "mutability": "constant", "name": "WAD", - "nameLocation": "2421:3:21", - "scope": 27932, + "nameLocation": "2495:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3157,10 +2345,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27503, + "id": 30600, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2404:7:21", + "src": "2478:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3171,21 +2359,21 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 27506, + "id": 30603, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27504, + "id": 30601, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2427:2:21", + "src": "2501:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -3196,21 +2384,21 @@ "operator": "**", "rightExpression": { "hexValue": "3138", - "id": 27505, + "id": 30602, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2433:2:21", + "src": "2507:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", "typeString": "int_const 18" }, "value": "18" }, - "src": "2427:8:21", + "src": "2501:8:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" @@ -3219,15 +2407,14 @@ "visibility": "internal" }, { - "id": 27512, + "id": 30609, "nodeType": "VariableDeclaration", - "src": "2442:31:21", - "nodes": [], + "src": "2516:31:30", "constant": true, "mutability": "constant", "name": "RAY", - "nameLocation": "2459:3:21", - "scope": 27932, + "nameLocation": "2533:3:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3235,10 +2422,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27508, + "id": 30605, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2442:7:21", + "src": "2516:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3249,21 +2436,21 @@ "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" }, - "id": 27511, + "id": 30608, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27509, + "id": 30606, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2465:2:21", + "src": "2539:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -3274,21 +2461,21 @@ "operator": "**", "rightExpression": { "hexValue": "3237", - "id": 27510, + "id": 30607, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2471:2:21", + "src": "2545:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_27_by_1", "typeString": "int_const 27" }, "value": "27" }, - "src": "2465:8:21", + "src": "2539:8:30", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" @@ -3297,21 +2484,20 @@ "visibility": "internal" }, { - "id": 27519, + "id": 30616, "nodeType": "StructDefinition", - "src": "2557:167:21", - "nodes": [], + "src": "2631:167:30", "canonicalName": "Utility.Token", "members": [ { "constant": false, - "id": 27514, + "id": 30611, "mutability": "mutable", "name": "addr", - "nameLocation": "2589:4:21", + "nameLocation": "2663:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2581:12:21", + "scope": 30616, + "src": "2655:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3319,10 +2505,10 @@ "typeString": "address" }, "typeName": { - "id": 27513, + "id": 30610, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2581:7:21", + "src": "2655:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3333,13 +2519,13 @@ }, { "constant": false, - "id": 27516, + "id": 30613, "mutability": "mutable", "name": "slot", - "nameLocation": "2637:4:21", + "nameLocation": "2711:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2629:12:21", + "scope": 30616, + "src": "2703:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3347,10 +2533,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27515, + "id": 30612, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2629:7:21", + "src": "2703:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3360,13 +2546,13 @@ }, { "constant": false, - "id": 27518, + "id": 30615, "mutability": "mutable", "name": "orcl", - "nameLocation": "2684:4:21", + "nameLocation": "2758:4:30", "nodeType": "VariableDeclaration", - "scope": 27519, - "src": "2676:12:21", + "scope": 30616, + "src": "2750:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3374,10 +2560,10 @@ "typeString": "address" }, "typeName": { - "id": 27517, + "id": 30614, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2676:7:21", + "src": "2750:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3388,61 +2574,57 @@ } ], "name": "Token", - "nameLocation": "2564:5:21", - "scope": 27932, + "nameLocation": "2638:5:30", + "scope": 31029, "visibility": "public" }, { - "id": 27524, + "id": 30621, "nodeType": "VariableDeclaration", - "src": "2733:33:21", - "nodes": [], + "src": "2807:33:30", "constant": false, "mutability": "mutable", "name": "tokens", - "nameLocation": "2760:6:21", - "scope": 27932, + "nameLocation": "2834:6:30", + "scope": 31029, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "typeName": { - "id": 27523, + "id": 30620, "keyType": { - "id": 27520, + "id": 30617, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2742:7:21", + "src": "2816:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "2733:26:21", + "src": "2807:26:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "valueType": { - "id": 27522, + "id": 30619, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27521, + "id": 30618, "name": "Token", - "nameLocations": [ - "2753:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27519, - "src": "2753:5:21" + "referencedDeclaration": 30616, + "src": "2827:5:30" }, - "referencedDeclaration": 27519, - "src": "2753:5:21", + "referencedDeclaration": 30616, + "src": "2827:5:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage_ptr", + "typeIdentifier": "t_struct$_Token_$30616_storage_ptr", "typeString": "struct Utility.Token" } } @@ -3450,21 +2632,20 @@ "visibility": "internal" }, { - "id": 27529, + "id": 30626, "nodeType": "StructDefinition", - "src": "2775:68:21", - "nodes": [], + "src": "2849:68:30", "canonicalName": "Utility.TestObj", "members": [ { "constant": false, - "id": 27526, + "id": 30623, "mutability": "mutable", "name": "pre", - "nameLocation": "2809:3:21", + "nameLocation": "2883:3:30", "nodeType": "VariableDeclaration", - "scope": 27529, - "src": "2801:11:21", + "scope": 30626, + "src": "2875:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3472,10 +2653,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27525, + "id": 30622, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2801:7:21", + "src": "2875:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3485,13 +2666,13 @@ }, { "constant": false, - "id": 27528, + "id": 30625, "mutability": "mutable", "name": "post", - "nameLocation": "2831:4:21", + "nameLocation": "2905:4:30", "nodeType": "VariableDeclaration", - "scope": 27529, - "src": "2823:12:21", + "scope": 30626, + "src": "2897:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3499,10 +2680,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27527, + "id": 30624, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2823:7:21", + "src": "2897:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3512,33 +2693,32 @@ } ], "name": "TestObj", - "nameLocation": "2782:7:21", - "scope": 27932, + "nameLocation": "2856:7:30", + "scope": 31029, "visibility": "public" }, { - "id": 27535, + "id": 30632, "nodeType": "EventDefinition", - "src": "2851:29:21", - "nodes": [], + "src": "2925:29:30", "anonymous": false, "eventSelector": "3c5ad147104e56be34a9176a6692f7df8d2f4b29a5af06bc6b98970d329d6577", "name": "Debug", - "nameLocation": "2857:5:21", + "nameLocation": "2931:5:30", "parameters": { - "id": 27534, + "id": 30631, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27531, + "id": 30628, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27535, - "src": "2863:6:21", + "scope": 30632, + "src": "2937:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3546,10 +2726,10 @@ "typeString": "string" }, "typeName": { - "id": 27530, + "id": 30627, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2863:6:21", + "src": "2937:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3559,14 +2739,14 @@ }, { "constant": false, - "id": 27533, + "id": 30630, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27535, - "src": "2871:7:21", + "scope": 30632, + "src": "2945:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3574,10 +2754,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27532, + "id": 30629, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2871:7:21", + "src": "2945:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3586,32 +2766,31 @@ "visibility": "internal" } ], - "src": "2862:17:21" + "src": "2936:17:30" } }, { - "id": 27541, + "id": 30638, "nodeType": "EventDefinition", - "src": "2886:29:21", - "nodes": [], + "src": "2960:29:30", "anonymous": false, "eventSelector": "14186b8ac9c91f14b0f16f9e886356157442bb899be26513dfe1d4d5929a5bac", "name": "Debug", - "nameLocation": "2892:5:21", + "nameLocation": "2966:5:30", "parameters": { - "id": 27540, + "id": 30637, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27537, + "id": 30634, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27541, - "src": "2898:6:21", + "scope": 30638, + "src": "2972:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3619,10 +2798,10 @@ "typeString": "string" }, "typeName": { - "id": 27536, + "id": 30633, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2898:6:21", + "src": "2972:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3632,14 +2811,14 @@ }, { "constant": false, - "id": 27539, + "id": 30636, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27541, - "src": "2906:7:21", + "scope": 30638, + "src": "2980:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3647,10 +2826,10 @@ "typeString": "address" }, "typeName": { - "id": 27538, + "id": 30635, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2906:7:21", + "src": "2980:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3660,32 +2839,31 @@ "visibility": "internal" } ], - "src": "2897:17:21" + "src": "2971:17:30" } }, { - "id": 27547, + "id": 30644, "nodeType": "EventDefinition", - "src": "2921:26:21", - "nodes": [], + "src": "2995:26:30", "anonymous": false, "eventSelector": "d1401e4d321999a7547f3d989953912043b0f4ab8471cc7307695072f6ee9d83", "name": "Debug", - "nameLocation": "2927:5:21", + "nameLocation": "3001:5:30", "parameters": { - "id": 27546, + "id": 30643, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27543, + "id": 30640, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27547, - "src": "2933:6:21", + "scope": 30644, + "src": "3007:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3693,10 +2871,10 @@ "typeString": "string" }, "typeName": { - "id": 27542, + "id": 30639, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2933:6:21", + "src": "3007:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3706,14 +2884,14 @@ }, { "constant": false, - "id": 27545, + "id": 30642, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27547, - "src": "2941:4:21", + "scope": 30644, + "src": "3015:4:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3721,10 +2899,10 @@ "typeString": "bool" }, "typeName": { - "id": 27544, + "id": 30641, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2941:4:21", + "src": "3015:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3733,32 +2911,31 @@ "visibility": "internal" } ], - "src": "2932:14:21" + "src": "3006:14:30" } }, { - "id": 27553, + "id": 30650, "nodeType": "EventDefinition", - "src": "2953:28:21", - "nodes": [], + "src": "3027:28:30", "anonymous": false, "eventSelector": "747eaa98d4c6787fb9ebfa7ba00179a57433dbd57fd28208b7a240d949164a09", "name": "Debug", - "nameLocation": "2959:5:21", + "nameLocation": "3033:5:30", "parameters": { - "id": 27552, + "id": 30649, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27549, + "id": 30646, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27553, - "src": "2965:6:21", + "scope": 30650, + "src": "3039:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3766,10 +2943,10 @@ "typeString": "string" }, "typeName": { - "id": 27548, + "id": 30645, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2965:6:21", + "src": "3039:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3779,14 +2956,14 @@ }, { "constant": false, - "id": 27551, + "id": 30648, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27553, - "src": "2973:6:21", + "scope": 30650, + "src": "3047:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3794,10 +2971,10 @@ "typeString": "string" }, "typeName": { - "id": 27550, + "id": 30647, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2973:6:21", + "src": "3047:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3806,36 +2983,34 @@ "visibility": "internal" } ], - "src": "2964:16:21" + "src": "3038:16:30" } }, { - "id": 27577, + "id": 30674, "nodeType": "FunctionDefinition", - "src": "2989:103:21", - "nodes": [], + "src": "3063:103:30", "body": { - "id": 27576, + "id": 30673, "nodeType": "Block", - "src": "3010:82:21", - "nodes": [], + "src": "3084:82:30", "statements": [ { "expression": { - "id": 27574, + "id": 30671, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27556, + "id": 30653, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27417, - "src": "3012:4:21", + "referencedDeclaration": 30511, + "src": "3086:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, @@ -3855,14 +3030,14 @@ "arguments": [ { "hexValue": "6865766d20636865617420636f6465", - "id": 27567, + "id": 30664, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3066:17:21", + "src": "3140:17:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", "typeString": "literal_string \"hevm cheat code\"" @@ -3877,27 +3052,26 @@ "typeString": "literal_string \"hevm cheat code\"" } ], - "id": 27566, + "id": 30663, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "3056:9:21", + "src": "3130:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 27568, + "id": 30665, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3056:28:21", + "src": "3130:28:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -3912,35 +3086,34 @@ "typeString": "bytes32" } ], - "id": 27565, + "id": 30662, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3048:7:21", + "src": "3122:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 27564, + "id": 30661, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3048:7:21", + "src": "3122:7:30", "typeDescriptions": {} } }, - "id": 27569, + "id": 30666, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3048:37:21", + "src": "3122:37:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3955,35 +3128,34 @@ "typeString": "uint256" } ], - "id": 27563, + "id": 30660, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3040:7:21", + "src": "3114:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint160_$", "typeString": "type(uint160)" }, "typeName": { - "id": 27562, + "id": 30659, "name": "uint160", "nodeType": "ElementaryTypeName", - "src": "3040:7:21", + "src": "3114:7:30", "typeDescriptions": {} } }, - "id": 27570, + "id": 30667, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3040:46:21", + "src": "3114:46:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint160", @@ -3998,35 +3170,34 @@ "typeString": "uint160" } ], - "id": 27561, + "id": 30658, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3032:7:21", + "src": "3106:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes20_$", "typeString": "type(bytes20)" }, "typeName": { - "id": 27560, + "id": 30657, "name": "bytes20", "nodeType": "ElementaryTypeName", - "src": "3032:7:21", + "src": "3106:7:30", "typeDescriptions": {} } }, - "id": 27571, + "id": 30668, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3032:55:21", + "src": "3106:55:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes20", @@ -4041,35 +3212,34 @@ "typeString": "bytes20" } ], - "id": 27559, + "id": 30656, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3024:7:21", + "src": "3098:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27558, + "id": 30655, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3024:7:21", + "src": "3098:7:30", "typeDescriptions": {} } }, - "id": 27572, + "id": 30669, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3024:64:21", + "src": "3098:64:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4084,42 +3254,41 @@ "typeString": "address" } ], - "id": 27557, + "id": 30654, "name": "Hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27404, - "src": "3019:4:21", + "referencedDeclaration": 30498, + "src": "3093:4:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Hevm_$27404_$", + "typeIdentifier": "t_type$_t_contract$_Hevm_$30498_$", "typeString": "type(contract Hevm)" } }, - "id": 27573, + "id": 30670, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3019:70:21", + "src": "3093:70:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "src": "3012:77:21", + "src": "3086:77:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "id": 27575, + "id": 30672, "nodeType": "ExpressionStatement", - "src": "3012:77:21" + "src": "3086:77:30" } ] }, @@ -4129,49 +3298,47 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 27554, + "id": 30651, "nodeType": "ParameterList", "parameters": [], - "src": "3000:2:21" + "src": "3074:2:30" }, "returnParameters": { - "id": 27555, + "id": 30652, "nodeType": "ParameterList", "parameters": [], - "src": "3010:0:21" + "src": "3084:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27602, + "id": 30699, "nodeType": "FunctionDefinition", - "src": "3238:184:21", - "nodes": [], + "src": "3312:184:30", "body": { - "id": 27601, + "id": 30698, "nodeType": "Block", - "src": "3269:153:21", - "nodes": [], + "src": "3343:153:30", "statements": [ { "expression": { - "id": 27585, + "id": 30682, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27580, + "id": 30677, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27426, - "src": "3280:3:21", + "referencedDeclaration": 30520, + "src": "3354:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -4181,80 +3348,76 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27583, + "id": 30680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3286:9:21", + "src": "3360:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27582, + "id": 30679, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27581, + "id": 30678, "name": "Actor", - "nameLocations": [ - "3290:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3290:5:21" + "referencedDeclaration": 30364, + "src": "3364:5:30" }, - "referencedDeclaration": 27385, - "src": "3290:5:21", + "referencedDeclaration": 30364, + "src": "3364:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27584, + "id": 30681, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3286:11:21", + "src": "3360:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3280:17:21", + "src": "3354:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27586, + "id": 30683, "nodeType": "ExpressionStatement", - "src": "3280:17:21" + "src": "3354:17:30" }, { "expression": { - "id": 27592, + "id": 30689, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27587, + "id": 30684, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27420, - "src": "3321:3:21", + "referencedDeclaration": 30514, + "src": "3395:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -4264,80 +3427,76 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27590, + "id": 30687, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3327:9:21", + "src": "3401:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27589, + "id": 30686, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27588, + "id": 30685, "name": "Actor", - "nameLocations": [ - "3331:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3331:5:21" + "referencedDeclaration": 30364, + "src": "3405:5:30" }, - "referencedDeclaration": 27385, - "src": "3331:5:21", + "referencedDeclaration": 30364, + "src": "3405:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27591, + "id": 30688, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3327:11:21", + "src": "3401:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3321:17:21", + "src": "3395:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27593, + "id": 30690, "nodeType": "ExpressionStatement", - "src": "3321:17:21" + "src": "3395:17:30" }, { "expression": { - "id": 27599, + "id": 30696, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27594, + "id": 30691, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27423, - "src": "3388:3:21", + "referencedDeclaration": 30517, + "src": "3462:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, @@ -4347,63 +3506,59 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27597, + "id": 30694, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3394:9:21", + "src": "3468:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27385_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 27596, + "id": 30693, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27595, + "id": 30692, "name": "Actor", - "nameLocations": [ - "3398:5:21" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27385, - "src": "3398:5:21" + "referencedDeclaration": 30364, + "src": "3472:5:30" }, - "referencedDeclaration": 27385, - "src": "3398:5:21", + "referencedDeclaration": 30364, + "src": "3472:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } } }, - "id": 27598, + "id": 30695, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3394:11:21", + "src": "3468:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "src": "3388:17:21", + "src": "3462:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27385", + "typeIdentifier": "t_contract$_Actor_$30364", "typeString": "contract Actor" } }, - "id": 27600, + "id": 30697, "nodeType": "ExpressionStatement", - "src": "3388:17:21" + "src": "3462:17:30" } ] }, @@ -4412,38 +3567,36 @@ "kind": "function", "modifiers": [], "name": "createActors", - "nameLocation": "3247:12:21", + "nameLocation": "3321:12:30", "parameters": { - "id": 27578, + "id": 30675, "nodeType": "ParameterList", "parameters": [], - "src": "3259:2:21" + "src": "3333:2:30" }, "returnParameters": { - "id": 27579, + "id": 30676, "nodeType": "ParameterList", "parameters": [], - "src": "3269:0:21" + "src": "3343:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27683, + "id": 30780, "nodeType": "FunctionDefinition", - "src": "3546:551:21", - "nodes": [], + "src": "3620:551:30", "body": { - "id": 27682, + "id": 30779, "nodeType": "Block", - "src": "3576:521:21", - "nodes": [], + "src": "3650:521:30", "statements": [ { "expression": { - "id": 27610, + "id": 30707, "isConstant": false, "isLValue": false, "isPure": false, @@ -4451,28 +3604,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27605, + "id": 30702, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3589:6:21", + "referencedDeclaration": 30621, + "src": "3663:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27607, + "id": 30704, "indexExpression": { "hexValue": "55534443", - "id": 27606, + "id": 30703, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3596:6:21", + "src": "3670:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa", "typeString": "literal_string \"USDC\"" @@ -4484,22 +3637,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3589:14:21", + "src": "3663:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27608, + "id": 30705, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3604:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3589:19:21", + "referencedDeclaration": 30611, + "src": "3663:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4508,30 +3660,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27609, + "id": 30706, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27429, - "src": "3611:4:21", + "referencedDeclaration": 30523, + "src": "3685:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3589:26:21", + "src": "3663:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27611, + "id": 30708, "nodeType": "ExpressionStatement", - "src": "3589:26:21" + "src": "3663:26:30" }, { "expression": { - "id": 27617, + "id": 30714, "isConstant": false, "isLValue": false, "isPure": false, @@ -4539,28 +3691,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27612, + "id": 30709, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3626:6:21", + "referencedDeclaration": 30621, + "src": "3700:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27614, + "id": 30711, "indexExpression": { "hexValue": "55534443", - "id": 27613, + "id": 30710, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3633:6:21", + "src": "3707:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa", "typeString": "literal_string \"USDC\"" @@ -4572,22 +3724,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3626:14:21", + "src": "3700:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27615, + "id": 30712, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3641:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3626:19:21", + "referencedDeclaration": 30613, + "src": "3700:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4597,33 +3748,33 @@ "operator": "=", "rightHandSide": { "hexValue": "39", - "id": 27616, + "id": 30713, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3648:1:21", + "src": "3722:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_9_by_1", "typeString": "int_const 9" }, "value": "9" }, - "src": "3626:23:21", + "src": "3700:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27618, + "id": 30715, "nodeType": "ExpressionStatement", - "src": "3626:23:21" + "src": "3700:23:30" }, { "expression": { - "id": 27624, + "id": 30721, "isConstant": false, "isLValue": false, "isPure": false, @@ -4631,28 +3782,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27619, + "id": 30716, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3662:6:21", + "referencedDeclaration": 30621, + "src": "3736:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27621, + "id": 30718, "indexExpression": { "hexValue": "444149", - "id": 27620, + "id": 30717, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3669:5:21", + "src": "3743:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -4664,22 +3815,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3662:13:21", + "src": "3736:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27622, + "id": 30719, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3676:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3662:18:21", + "referencedDeclaration": 30611, + "src": "3736:18:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4688,30 +3838,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27623, + "id": 30720, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27432, - "src": "3683:3:21", + "referencedDeclaration": 30526, + "src": "3757:3:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3662:24:21", + "src": "3736:24:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27625, + "id": 30722, "nodeType": "ExpressionStatement", - "src": "3662:24:21" + "src": "3736:24:30" }, { "expression": { - "id": 27631, + "id": 30728, "isConstant": false, "isLValue": false, "isPure": false, @@ -4719,28 +3869,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27626, + "id": 30723, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3697:6:21", + "referencedDeclaration": 30621, + "src": "3771:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27628, + "id": 30725, "indexExpression": { "hexValue": "444149", - "id": 27627, + "id": 30724, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3704:5:21", + "src": "3778:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -4752,22 +3902,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3697:13:21", + "src": "3771:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27629, + "id": 30726, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3711:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3697:18:21", + "referencedDeclaration": 30613, + "src": "3771:18:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4777,33 +3926,33 @@ "operator": "=", "rightHandSide": { "hexValue": "32", - "id": 27630, + "id": 30727, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3718:1:21", + "src": "3792:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "3697:22:21", + "src": "3771:22:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27632, + "id": 30729, "nodeType": "ExpressionStatement", - "src": "3697:22:21" + "src": "3771:22:30" }, { "expression": { - "id": 27638, + "id": 30735, "isConstant": false, "isLValue": false, "isPure": false, @@ -4811,28 +3960,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27633, + "id": 30730, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3730:6:21", + "referencedDeclaration": 30621, + "src": "3804:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27635, + "id": 30732, "indexExpression": { "hexValue": "444149", - "id": 27634, + "id": 30731, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3737:5:21", + "src": "3811:5:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a5e92f3efb6826155f1f728e162af9d7cda33a574a1153b58f03ea01cc37e568", "typeString": "literal_string \"DAI\"" @@ -4844,22 +3993,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3730:13:21", + "src": "3804:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27636, + "id": 30733, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3744:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "3730:18:21", + "referencedDeclaration": 30615, + "src": "3804:18:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4869,33 +4017,33 @@ "operator": "=", "rightHandSide": { "hexValue": "307841656430633338343032613564313964663645346330334634453244636544366532396331656539", - "id": 27637, + "id": 30734, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3751:42:21", + "src": "3825:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0xAed0c38402a5d19df6E4c03F4E2DceD6e29c1ee9" }, - "src": "3730:63:21", + "src": "3804:63:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27639, + "id": 30736, "nodeType": "ExpressionStatement", - "src": "3730:63:21" + "src": "3804:63:30" }, { "expression": { - "id": 27645, + "id": 30742, "isConstant": false, "isLValue": false, "isPure": false, @@ -4903,28 +4051,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27640, + "id": 30737, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3806:6:21", + "referencedDeclaration": 30621, + "src": "3880:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27642, + "id": 30739, "indexExpression": { "hexValue": "57455448", - "id": 27641, + "id": 30738, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3813:6:21", + "src": "3887:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -4936,22 +4084,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3806:14:21", + "src": "3880:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27643, + "id": 30740, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3821:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3806:19:21", + "referencedDeclaration": 30611, + "src": "3880:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4960,30 +4107,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27644, + "id": 30741, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27435, - "src": "3828:4:21", + "referencedDeclaration": 30529, + "src": "3902:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3806:26:21", + "src": "3880:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27646, + "id": 30743, "nodeType": "ExpressionStatement", - "src": "3806:26:21" + "src": "3880:26:30" }, { "expression": { - "id": 27652, + "id": 30749, "isConstant": false, "isLValue": false, "isPure": false, @@ -4991,28 +4138,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27647, + "id": 30744, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3843:6:21", + "referencedDeclaration": 30621, + "src": "3917:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27649, + "id": 30746, "indexExpression": { "hexValue": "57455448", - "id": 27648, + "id": 30745, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3850:6:21", + "src": "3924:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -5024,22 +4171,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3843:14:21", + "src": "3917:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27650, + "id": 30747, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3858:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3843:19:21", + "referencedDeclaration": 30613, + "src": "3917:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5049,33 +4195,33 @@ "operator": "=", "rightHandSide": { "hexValue": "33", - "id": 27651, + "id": 30748, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3865:1:21", + "src": "3939:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" }, "value": "3" }, - "src": "3843:23:21", + "src": "3917:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27653, + "id": 30750, "nodeType": "ExpressionStatement", - "src": "3843:23:21" + "src": "3917:23:30" }, { "expression": { - "id": 27659, + "id": 30756, "isConstant": false, "isLValue": false, "isPure": false, @@ -5083,28 +4229,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27654, + "id": 30751, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3877:6:21", + "referencedDeclaration": 30621, + "src": "3951:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27656, + "id": 30753, "indexExpression": { "hexValue": "57455448", - "id": 27655, + "id": 30752, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3884:6:21", + "src": "3958:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0f8a193ff464434486c0daf7db2a895884365d2bc84ba47a68fcf89c1b14b5b8", "typeString": "literal_string \"WETH\"" @@ -5116,22 +4262,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3877:14:21", + "src": "3951:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27657, + "id": 30754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3892:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "3877:19:21", + "referencedDeclaration": 30615, + "src": "3951:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5141,33 +4286,33 @@ "operator": "=", "rightHandSide": { "hexValue": "307835663465433344663963626434333731344645323734306635453336313631353563356238343139", - "id": 27658, + "id": 30755, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3899:42:21", + "src": "3973:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419" }, - "src": "3877:64:21", + "src": "3951:64:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27660, + "id": 30757, "nodeType": "ExpressionStatement", - "src": "3877:64:21" + "src": "3951:64:30" }, { "expression": { - "id": 27666, + "id": 30763, "isConstant": false, "isLValue": false, "isPure": false, @@ -5175,28 +4320,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27661, + "id": 30758, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3954:6:21", + "referencedDeclaration": 30621, + "src": "4028:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27663, + "id": 30760, "indexExpression": { "hexValue": "57425443", - "id": 27662, + "id": 30759, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3961:6:21", + "src": "4035:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -5208,22 +4353,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3954:14:21", + "src": "4028:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27664, + "id": 30761, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "3969:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "3954:19:21", + "referencedDeclaration": 30611, + "src": "4028:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5232,30 +4376,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27665, + "id": 30762, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27438, - "src": "3976:4:21", + "referencedDeclaration": 30532, + "src": "4050:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3954:26:21", + "src": "4028:26:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27667, + "id": 30764, "nodeType": "ExpressionStatement", - "src": "3954:26:21" + "src": "4028:26:30" }, { "expression": { - "id": 27673, + "id": 30770, "isConstant": false, "isLValue": false, "isPure": false, @@ -5263,28 +4407,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27668, + "id": 30765, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "3991:6:21", + "referencedDeclaration": 30621, + "src": "4065:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27670, + "id": 30767, "indexExpression": { "hexValue": "57425443", - "id": 27669, + "id": 30766, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3998:6:21", + "src": "4072:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -5296,22 +4440,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3991:14:21", + "src": "4065:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27671, + "id": 30768, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4006:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "3991:19:21", + "referencedDeclaration": 30613, + "src": "4065:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5321,33 +4464,33 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 27672, + "id": 30769, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4013:1:21", + "src": "4087:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3991:23:21", + "src": "4065:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27674, + "id": 30771, "nodeType": "ExpressionStatement", - "src": "3991:23:21" + "src": "4065:23:30" }, { "expression": { - "id": 27680, + "id": 30777, "isConstant": false, "isLValue": false, "isPure": false, @@ -5355,28 +4498,28 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27675, + "id": 30772, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4025:6:21", + "referencedDeclaration": 30621, + "src": "4099:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27677, + "id": 30774, "indexExpression": { "hexValue": "57425443", - "id": 27676, + "id": 30773, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4032:6:21", + "src": "4106:6:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_98da2c5e4c6b1db946694570273b859a6e4083ccc8faa155edfc4c54eb3cfd73", "typeString": "literal_string \"WBTC\"" @@ -5388,22 +4531,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4025:14:21", + "src": "4099:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27678, + "id": 30775, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4040:4:21", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 27518, - "src": "4025:19:21", + "referencedDeclaration": 30615, + "src": "4099:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5413,29 +4555,29 @@ "operator": "=", "rightHandSide": { "hexValue": "307846343033303038363532326135624545613439383846386341354233366462433937426545383863", - "id": 27679, + "id": 30776, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4047:42:21", + "src": "4121:42:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "value": "0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c" }, - "src": "4025:64:21", + "src": "4099:64:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27681, + "id": 30778, "nodeType": "ExpressionStatement", - "src": "4025:64:21" + "src": "4099:64:30" } ] }, @@ -5444,49 +4586,47 @@ "kind": "function", "modifiers": [], "name": "setUpTokens", - "nameLocation": "3555:11:21", + "nameLocation": "3629:11:30", "parameters": { - "id": 27603, + "id": 30700, "nodeType": "ParameterList", "parameters": [], - "src": "3566:2:21" + "src": "3640:2:30" }, "returnParameters": { - "id": 27604, + "id": 30701, "nodeType": "ParameterList", "parameters": [], - "src": "3576:0:21" + "src": "3650:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27747, + "id": 30844, "nodeType": "FunctionDefinition", - "src": "4147:461:21", - "nodes": [], + "src": "4221:461:30", "body": { - "id": 27746, + "id": 30843, "nodeType": "Block", - "src": "4214:394:21", - "nodes": [], + "src": "4288:394:30", "statements": [ { "assignments": [ - 27693 + 30790 ], "declarations": [ { "constant": false, - "id": 27693, + "id": 30790, "mutability": "mutable", "name": "addr", - "nameLocation": "4233:4:21", + "nameLocation": "4307:4:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4225:12:21", + "scope": 30843, + "src": "4299:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5494,10 +4634,10 @@ "typeString": "address" }, "typeName": { - "id": 27692, + "id": 30789, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4225:7:21", + "src": "4299:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5507,29 +4647,29 @@ "visibility": "internal" } ], - "id": 27698, + "id": 30795, "initialValue": { "expression": { "baseExpression": { - "id": 27694, + "id": 30791, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4240:6:21", + "referencedDeclaration": 30621, + "src": "4314:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27696, + "id": 30793, "indexExpression": { - "id": 27695, + "id": 30792, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27685, - "src": "4247:6:21", + "referencedDeclaration": 30782, + "src": "4321:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5540,44 +4680,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4240:14:21", + "src": "4314:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27697, + "id": 30794, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4255:4:21", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 27514, - "src": "4240:19:21", + "referencedDeclaration": 30611, + "src": "4314:19:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "4225:34:21" + "src": "4299:34:30" }, { "assignments": [ - 27700 + 30797 ], "declarations": [ { "constant": false, - "id": 27700, + "id": 30797, "mutability": "mutable", "name": "slot", - "nameLocation": "4278:4:21", + "nameLocation": "4352:4:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4270:12:21", + "scope": 30843, + "src": "4344:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5585,10 +4724,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27699, + "id": 30796, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4270:7:21", + "src": "4344:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5597,29 +4736,29 @@ "visibility": "internal" } ], - "id": 27705, + "id": 30802, "initialValue": { "expression": { "baseExpression": { - "id": 27701, + "id": 30798, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27524, - "src": "4286:6:21", + "referencedDeclaration": 30621, + "src": "4360:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$27519_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 27703, + "id": 30800, "indexExpression": { - "id": 27702, + "id": 30799, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27685, - "src": "4293:6:21", + "referencedDeclaration": 30782, + "src": "4367:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5630,44 +4769,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4286:14:21", + "src": "4360:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$27519_storage", + "typeIdentifier": "t_struct$_Token_$30616_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 27704, + "id": 30801, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4301:4:21", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 27516, - "src": "4286:19:21", + "referencedDeclaration": 30613, + "src": "4360:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "4270:35:21" + "src": "4344:35:30" }, { "assignments": [ - 27707 + 30804 ], "declarations": [ { "constant": false, - "id": 27707, + "id": 30804, "mutability": "mutable", "name": "bal", - "nameLocation": "4324:3:21", + "nameLocation": "4398:3:30", "nodeType": "VariableDeclaration", - "scope": 27746, - "src": "4316:11:21", + "scope": 30843, + "src": "4390:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5675,10 +4813,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27706, + "id": 30803, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4316:7:21", + "src": "4390:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5687,16 +4825,16 @@ "visibility": "internal" } ], - "id": 27714, + "id": 30811, "initialValue": { "arguments": [ { - "id": 27712, + "id": 30809, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4353:7:21", + "referencedDeclaration": 30784, + "src": "4427:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5713,12 +4851,12 @@ "expression": { "arguments": [ { - "id": 27709, + "id": 30806, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4337:4:21", + "referencedDeclaration": 30790, + "src": "4411:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5732,58 +4870,55 @@ "typeString": "address" } ], - "id": 27708, + "id": 30805, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "4330:6:21", + "referencedDeclaration": 29143, + "src": "4404:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27710, + "id": 30807, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4330:12:21", + "src": "4404:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, - "id": 27711, + "id": 30808, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4343:9:21", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26364, - "src": "4330:22:21", + "referencedDeclaration": 29082, + "src": "4404:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 27713, + "id": 30810, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4330:31:21", + "src": "4404:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5791,18 +4926,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4316:45:21" + "src": "4390:45:30" }, { "expression": { "arguments": [ { - "id": 27718, + "id": 30815, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4399:4:21", + "referencedDeclaration": 30790, + "src": "4473:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5813,24 +4948,24 @@ { "arguments": [ { - "id": 27722, + "id": 30819, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4439:7:21", + "referencedDeclaration": 30784, + "src": "4513:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27723, + "id": 30820, "name": "slot", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27700, - "src": "4448:4:21", + "referencedDeclaration": 30797, + "src": "4522:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5849,41 +4984,39 @@ } ], "expression": { - "id": 27720, + "id": 30817, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, - "src": "4428:3:21", + "src": "4502:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 27721, + "id": 30818, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4432:6:21", "memberName": "encode", "nodeType": "MemberAccess", - "src": "4428:10:21", + "src": "4502:10:30", "typeDescriptions": { "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 27724, + "id": 30821, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4428:25:21", + "src": "4502:25:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -5898,27 +5031,26 @@ "typeString": "bytes memory" } ], - "id": 27719, + "id": 30816, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, - "src": "4418:9:21", + "src": "4492:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 27725, + "id": 30822, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4418:36:21", + "src": "4492:36:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -5932,18 +5064,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27730, + "id": 30827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27728, + "id": 30825, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27707, - "src": "4492:3:21", + "referencedDeclaration": 30804, + "src": "4566:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5952,18 +5084,18 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27729, + "id": 30826, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27689, - "src": "4498:3:21", + "referencedDeclaration": 30786, + "src": "4572:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4492:9:21", + "src": "4566:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5977,35 +5109,34 @@ "typeString": "uint256" } ], - "id": 27727, + "id": 30824, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4484:7:21", + "src": "4558:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { - "id": 27726, + "id": 30823, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4484:7:21", + "src": "4558:7:30", "typeDescriptions": {} } }, - "id": 27731, + "id": 30828, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4484:18:21", + "src": "4558:18:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -6029,51 +5160,49 @@ } ], "expression": { - "id": 27715, + "id": 30812, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27417, - "src": "4374:4:21", + "referencedDeclaration": 30511, + "src": "4448:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$27404", + "typeIdentifier": "t_contract$_Hevm_$30498", "typeString": "contract Hevm" } }, - "id": 27717, + "id": 30814, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4379:5:21", "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 27403, - "src": "4374:10:21", + "referencedDeclaration": 30497, + "src": "4448:10:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (address,bytes32,bytes32) external" } }, - "id": 27732, + "id": 30829, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4374:139:21", + "src": "4448:139:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27733, + "id": 30830, "nodeType": "ExpressionStatement", - "src": "4374:139:21" + "src": "4448:139:30" }, { "expression": { @@ -6081,12 +5210,12 @@ { "arguments": [ { - "id": 27739, + "id": 30836, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27687, - "src": "4558:7:21", + "referencedDeclaration": 30784, + "src": "4632:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6103,12 +5232,12 @@ "expression": { "arguments": [ { - "id": 27736, + "id": 30833, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27693, - "src": "4542:4:21", + "referencedDeclaration": 30790, + "src": "4616:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6122,58 +5251,55 @@ "typeString": "address" } ], - "id": 27735, + "id": 30832, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "4535:6:21", + "referencedDeclaration": 29143, + "src": "4609:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", "typeString": "type(contract IERC20)" } }, - "id": 27737, + "id": 30834, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4535:12:21", + "src": "4609:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29143", "typeString": "contract IERC20" } }, - "id": 27738, + "id": 30835, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4548:9:21", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26364, - "src": "4535:22:21", + "referencedDeclaration": 29082, + "src": "4609:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 27740, + "id": 30837, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4535:31:21", + "src": "4609:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6185,18 +5311,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27743, + "id": 30840, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27741, + "id": 30838, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27707, - "src": "4568:3:21", + "referencedDeclaration": 30804, + "src": "4642:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6205,18 +5331,18 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27742, + "id": 30839, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27689, - "src": "4574:3:21", + "referencedDeclaration": 30786, + "src": "4648:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4568:9:21", + "src": "4642:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6234,7 +5360,7 @@ "typeString": "uint256" } ], - "id": 27734, + "id": 30831, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6250,31 +5376,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "4526:8:21", + "src": "4600:8:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 27744, + "id": 30841, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4526:52:21", + "src": "4600:52:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27745, + "id": 30842, "nodeType": "ExpressionStatement", - "src": "4526:52:21" + "src": "4600:52:30" } ] }, @@ -6283,20 +5408,20 @@ "kind": "function", "modifiers": [], "name": "mint", - "nameLocation": "4156:4:21", + "nameLocation": "4230:4:30", "parameters": { - "id": 27690, + "id": 30787, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27685, + "id": 30782, "mutability": "mutable", "name": "symbol", - "nameLocation": "4169:6:21", + "nameLocation": "4243:6:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4161:14:21", + "scope": 30844, + "src": "4235:14:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6304,10 +5429,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 27684, + "id": 30781, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4161:7:21", + "src": "4235:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6317,13 +5442,13 @@ }, { "constant": false, - "id": 27687, + "id": 30784, "mutability": "mutable", "name": "account", - "nameLocation": "4185:7:21", + "nameLocation": "4259:7:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4177:15:21", + "scope": 30844, + "src": "4251:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6331,10 +5456,10 @@ "typeString": "address" }, "typeName": { - "id": 27686, + "id": 30783, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4177:7:21", + "src": "4251:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6345,13 +5470,13 @@ }, { "constant": false, - "id": 27689, + "id": 30786, "mutability": "mutable", "name": "amt", - "nameLocation": "4202:3:21", + "nameLocation": "4276:3:30", "nodeType": "VariableDeclaration", - "scope": 27747, - "src": "4194:11:21", + "scope": 30844, + "src": "4268:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6359,10 +5484,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27688, + "id": 30785, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4194:7:21", + "src": "4268:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6371,44 +5496,42 @@ "visibility": "internal" } ], - "src": "4160:46:21" + "src": "4234:46:30" }, "returnParameters": { - "id": 27691, + "id": 30788, "nodeType": "ParameterList", "parameters": [], - "src": "4214:0:21" + "src": "4288:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27823, + "id": 30920, "nodeType": "FunctionDefinition", - "src": "4666:583:21", - "nodes": [], + "src": "4740:583:30", "body": { - "id": 27822, + "id": 30919, "nodeType": "Block", - "src": "4744:505:21", - "nodes": [], + "src": "4818:505:30", "statements": [ { "assignments": [ - 27757 + 30854 ], "declarations": [ { "constant": false, - "id": 27757, + "id": 30854, "mutability": "mutable", "name": "diff", - "nameLocation": "4763:4:21", + "nameLocation": "4837:4:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4755:12:21", + "scope": 30919, + "src": "4829:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6416,10 +5539,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27756, + "id": 30853, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4755:7:21", + "src": "4829:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6428,25 +5551,25 @@ "visibility": "internal" } ], - "id": 27768, + "id": 30865, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27760, + "id": 30857, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27758, + "id": 30855, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4771:4:21", + "referencedDeclaration": 30846, + "src": "4845:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6455,18 +5578,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 27759, + "id": 30856, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4778:4:21", + "referencedDeclaration": 30848, + "src": "4852:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4771:11:21", + "src": "4845:11:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6477,18 +5600,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27766, + "id": 30863, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27764, + "id": 30861, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4799:4:21", + "referencedDeclaration": 30848, + "src": "4873:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6497,47 +5620,47 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27765, + "id": 30862, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4806:4:21", + "referencedDeclaration": 30846, + "src": "4880:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4799:11:21", + "src": "4873:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27767, + "id": 30864, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "4771:39:21", + "src": "4845:39:30", "trueExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27763, + "id": 30860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27761, + "id": 30858, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4785:4:21", + "referencedDeclaration": 30846, + "src": "4859:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6546,18 +5669,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27762, + "id": 30859, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4792:4:21", + "referencedDeclaration": 30848, + "src": "4866:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4785:11:21", + "src": "4859:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6569,7 +5692,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4755:55:21" + "src": "4829:55:30" }, { "condition": { @@ -6577,18 +5700,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27771, + "id": 30868, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27769, + "id": 30866, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27757, - "src": "4825:4:21", + "referencedDeclaration": 30854, + "src": "4899:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6598,50 +5721,50 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27770, + "id": 30867, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4833:1:21", + "src": "4907:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4825:9:21", + "src": "4899:9:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 27773, + "id": 30870, "nodeType": "IfStatement", - "src": "4821:22:21", + "src": "4895:22:30", "trueBody": { - "functionReturnParameters": 27755, - "id": 27772, + "functionReturnParameters": 30852, + "id": 30869, "nodeType": "Return", - "src": "4836:7:21" + "src": "4910:7:30" } }, { "assignments": [ - 27775 + 30872 ], "declarations": [ { "constant": false, - "id": 27775, + "id": 30872, "mutability": "mutable", "name": "denominator", - "nameLocation": "4863:11:21", + "nameLocation": "4937:11:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4855:19:21", + "scope": 30919, + "src": "4929:19:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6649,10 +5772,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27774, + "id": 30871, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4855:7:21", + "src": "4929:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6661,25 +5784,25 @@ "visibility": "internal" } ], - "id": 27782, + "id": 30879, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27778, + "id": 30875, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27776, + "id": 30873, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4877:4:21", + "referencedDeclaration": 30846, + "src": "4951:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6689,52 +5812,52 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27777, + "id": 30874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4885:1:21", + "src": "4959:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4877:9:21", + "src": "4951:9:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { - "id": 27780, + "id": 30877, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "4896:4:21", + "referencedDeclaration": 30846, + "src": "4970:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27781, + "id": 30878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "4877:23:21", + "src": "4951:23:30", "trueExpression": { - "id": 27779, + "id": 30876, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "4889:4:21", + "referencedDeclaration": 30848, + "src": "4963:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6746,22 +5869,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4855:45:21" + "src": "4929:45:30" }, { "assignments": [ - 27784 + 30881 ], "declarations": [ { "constant": false, - "id": 27784, + "id": 30881, "mutability": "mutable", "name": "check", - "nameLocation": "4916:5:21", + "nameLocation": "4990:5:30", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "4911:10:21", + "scope": 30919, + "src": "4985:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6769,10 +5892,10 @@ "typeString": "bool" }, "typeName": { - "id": 27783, + "id": 30880, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4911:4:21", + "src": "4985:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6781,13 +5904,13 @@ "visibility": "internal" } ], - "id": 27799, + "id": 30896, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27798, + "id": 30895, "isConstant": false, "isLValue": false, "isPure": false, @@ -6799,7 +5922,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27790, + "id": 30887, "isConstant": false, "isLValue": false, "isPure": false, @@ -6811,18 +5934,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27787, + "id": 30884, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27785, + "id": 30882, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27757, - "src": "4926:4:21", + "referencedDeclaration": 30854, + "src": "5000:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6831,32 +5954,32 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 27786, + "id": 30883, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27512, - "src": "4933:3:21", + "referencedDeclaration": 30609, + "src": "5007:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4926:10:21", + "src": "5000:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27788, + "id": 30885, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4925:12:21", + "src": "4999:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6865,32 +5988,32 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 27789, + "id": 30886, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27775, - "src": "4940:11:21", + "referencedDeclaration": 30872, + "src": "5014:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4925:26:21", + "src": "4999:26:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27791, + "id": 30888, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4924:28:21", + "src": "4998:28:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6905,18 +6028,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27796, + "id": 30893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27792, + "id": 30889, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27512, - "src": "4956:3:21", + "referencedDeclaration": 30609, + "src": "5030:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6929,21 +6052,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27795, + "id": 30892, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 27793, + "id": 30890, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4962:2:21", + "src": "5036:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -6953,55 +6076,55 @@ "nodeType": "BinaryOperation", "operator": "**", "rightExpression": { - "id": 27794, + "id": 30891, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27753, - "src": "4968:8:21", + "referencedDeclaration": 30850, + "src": "5042:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4962:14:21", + "src": "5036:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4956:20:21", + "src": "5030:20:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27797, + "id": 30894, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4955:22:21", + "src": "5029:22:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4924:53:21", + "src": "4998:53:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "4911:66:21" + "src": "4985:66:30" }, { "condition": { - "id": 27801, + "id": 30898, "isConstant": false, "isLValue": false, "isPure": false, @@ -7009,14 +6132,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4994:6:21", + "src": "5068:6:30", "subExpression": { - "id": 27800, + "id": 30897, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27784, - "src": "4995:5:21", + "referencedDeclaration": 30881, + "src": "5069:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7027,27 +6150,27 @@ "typeString": "bool" } }, - "id": 27821, + "id": 30918, "nodeType": "IfStatement", - "src": "4990:252:21", + "src": "5064:252:30", "trueBody": { - "id": 27820, + "id": 30917, "nodeType": "Block", - "src": "5001:241:21", + "src": "5075:241:30", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c2061636375726163792064696769747320", - "id": 27803, + "id": 30900, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5036:54:21", + "src": "5110:54:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_94772435adb9a5e16afe18480e0e25583a903de130497d52a7375f0e3b0b0ffc", "typeString": "literal_string \"Error: approx a == b not satisfied, accuracy digits \"" @@ -7055,12 +6178,12 @@ "value": "Error: approx a == b not satisfied, accuracy digits " }, { - "id": 27804, + "id": 30901, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27753, - "src": "5092:8:21", + "referencedDeclaration": 30850, + "src": "5166:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7078,50 +6201,49 @@ "typeString": "uint256" } ], - "id": 27802, + "id": 30899, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5021:14:21", + "src": "5095:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27805, + "id": 30902, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5021:80:21", + "src": "5095:80:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27806, + "id": 30903, "nodeType": "EmitStatement", - "src": "5016:85:21" + "src": "5090:85:30" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", - "id": 27808, + "id": 30905, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5136:12:21", + "src": "5210:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" @@ -7129,12 +6251,12 @@ "value": " Expected" }, { - "id": 27809, + "id": 30906, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27749, - "src": "5150:4:21", + "referencedDeclaration": 30846, + "src": "5224:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7152,50 +6274,49 @@ "typeString": "uint256" } ], - "id": 27807, + "id": 30904, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5121:14:21", + "src": "5195:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27810, + "id": 30907, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5121:34:21", + "src": "5195:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27811, + "id": 30908, "nodeType": "EmitStatement", - "src": "5116:39:21" + "src": "5190:39:30" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", - "id": 27813, + "id": 30910, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5190:12:21", + "src": "5264:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" @@ -7203,12 +6324,12 @@ "value": " Actual" }, { - "id": 27814, + "id": 30911, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27751, - "src": "5204:4:21", + "referencedDeclaration": 30848, + "src": "5278:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7226,72 +6347,70 @@ "typeString": "uint256" } ], - "id": 27812, + "id": 30909, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5175:14:21", + "src": "5249:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27815, + "id": 30912, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5175:34:21", + "src": "5249:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27816, + "id": 30913, "nodeType": "EmitStatement", - "src": "5170:39:21" + "src": "5244:39:30" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27817, + "id": 30914, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 216, - "src": "5224:4:21", + "src": "5298:4:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27818, + "id": 30915, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5224:6:21", + "src": "5298:6:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27819, + "id": 30916, "nodeType": "ExpressionStatement", - "src": "5224:6:21" + "src": "5298:6:30" } ] } @@ -7303,20 +6422,20 @@ "kind": "function", "modifiers": [], "name": "withinPrecision", - "nameLocation": "4675:15:21", + "nameLocation": "4749:15:30", "parameters": { - "id": 27754, + "id": 30851, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27749, + "id": 30846, "mutability": "mutable", "name": "val0", - "nameLocation": "4699:4:21", + "nameLocation": "4773:4:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4691:12:21", + "scope": 30920, + "src": "4765:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7324,10 +6443,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27748, + "id": 30845, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4691:7:21", + "src": "4765:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7337,13 +6456,13 @@ }, { "constant": false, - "id": 27751, + "id": 30848, "mutability": "mutable", "name": "val1", - "nameLocation": "4713:4:21", + "nameLocation": "4787:4:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4705:12:21", + "scope": 30920, + "src": "4779:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7351,10 +6470,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27750, + "id": 30847, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4705:7:21", + "src": "4779:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7364,13 +6483,13 @@ }, { "constant": false, - "id": 27753, + "id": 30850, "mutability": "mutable", "name": "accuracy", - "nameLocation": "4727:8:21", + "nameLocation": "4801:8:30", "nodeType": "VariableDeclaration", - "scope": 27823, - "src": "4719:16:21", + "scope": 30920, + "src": "4793:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7378,10 +6497,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27752, + "id": 30849, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4719:7:21", + "src": "4793:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7390,44 +6509,42 @@ "visibility": "internal" } ], - "src": "4690:46:21" + "src": "4764:46:30" }, "returnParameters": { - "id": 27755, + "id": 30852, "nodeType": "ParameterList", "parameters": [], - "src": "4744:0:21" + "src": "4818:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27874, + "id": 30971, "nodeType": "FunctionDefinition", - "src": "5300:479:21", - "nodes": [], + "src": "5374:479:30", "body": { - "id": 27873, + "id": 30970, "nodeType": "Block", - "src": "5377:402:21", - "nodes": [], + "src": "5451:402:30", "statements": [ { "assignments": [ - 27833 + 30930 ], "declarations": [ { "constant": false, - "id": 27833, + "id": 30930, "mutability": "mutable", "name": "actualDiff", - "nameLocation": "5396:10:21", + "nameLocation": "5470:10:30", "nodeType": "VariableDeclaration", - "scope": 27873, - "src": "5388:18:21", + "scope": 30970, + "src": "5462:18:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7435,10 +6552,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27832, + "id": 30929, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5388:7:21", + "src": "5462:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7447,25 +6564,25 @@ "visibility": "internal" } ], - "id": 27844, + "id": 30941, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27836, + "id": 30933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27834, + "id": 30931, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5409:4:21", + "referencedDeclaration": 30922, + "src": "5483:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7474,18 +6591,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 27835, + "id": 30932, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5416:4:21", + "referencedDeclaration": 30924, + "src": "5490:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5409:11:21", + "src": "5483:11:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7496,18 +6613,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27842, + "id": 30939, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27840, + "id": 30937, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5437:4:21", + "referencedDeclaration": 30924, + "src": "5511:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7516,47 +6633,47 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27841, + "id": 30938, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5444:4:21", + "referencedDeclaration": 30922, + "src": "5518:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5437:11:21", + "src": "5511:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27843, + "id": 30940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "5409:39:21", + "src": "5483:39:30", "trueExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27839, + "id": 30936, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27837, + "id": 30934, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5423:4:21", + "referencedDeclaration": 30922, + "src": "5497:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7565,18 +6682,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27838, + "id": 30935, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5430:4:21", + "referencedDeclaration": 30924, + "src": "5504:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5423:11:21", + "src": "5497:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7588,22 +6705,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "5388:60:21" + "src": "5462:60:30" }, { "assignments": [ - 27846 + 30943 ], "declarations": [ { "constant": false, - "id": 27846, + "id": 30943, "mutability": "mutable", "name": "check", - "nameLocation": "5464:5:21", + "nameLocation": "5538:5:30", "nodeType": "VariableDeclaration", - "scope": 27873, - "src": "5459:10:21", + "scope": 30970, + "src": "5533:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7611,10 +6728,10 @@ "typeString": "bool" }, "typeName": { - "id": 27845, + "id": 30942, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5459:4:21", + "src": "5533:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7623,24 +6740,24 @@ "visibility": "internal" } ], - "id": 27850, + "id": 30947, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27849, + "id": 30946, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27847, + "id": 30944, "name": "actualDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27833, - "src": "5472:10:21", + "referencedDeclaration": 30930, + "src": "5546:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7649,29 +6766,29 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 27848, + "id": 30945, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27829, - "src": "5486:12:21", + "referencedDeclaration": 30926, + "src": "5560:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5472:26:21", + "src": "5546:26:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "5459:39:21" + "src": "5533:39:30" }, { "condition": { - "id": 27852, + "id": 30949, "isConstant": false, "isLValue": false, "isPure": false, @@ -7679,14 +6796,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5515:6:21", + "src": "5589:6:30", "subExpression": { - "id": 27851, + "id": 30948, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27846, - "src": "5516:5:21", + "referencedDeclaration": 30943, + "src": "5590:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7697,27 +6814,27 @@ "typeString": "bool" } }, - "id": 27872, + "id": 30969, "nodeType": "IfStatement", - "src": "5511:261:21", + "src": "5585:261:30", "trueBody": { - "id": 27871, + "id": 30968, "nodeType": "Block", - "src": "5523:249:21", + "src": "5597:249:30", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c20616363757261637920646966666572656e636520", - "id": 27854, + "id": 30951, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5558:58:21", + "src": "5632:58:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_96172d3974b4dd800f0469c3a6568537958d8450292a90b9e1d84055f2a54229", "typeString": "literal_string \"Error: approx a == b not satisfied, accuracy difference \"" @@ -7725,12 +6842,12 @@ "value": "Error: approx a == b not satisfied, accuracy difference " }, { - "id": 27855, + "id": 30952, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27829, - "src": "5618:12:21", + "referencedDeclaration": 30926, + "src": "5692:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7748,50 +6865,49 @@ "typeString": "uint256" } ], - "id": 27853, + "id": 30950, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5543:14:21", + "src": "5617:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27856, + "id": 30953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5543:88:21", + "src": "5617:88:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27857, + "id": 30954, "nodeType": "EmitStatement", - "src": "5538:93:21" + "src": "5612:93:30" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", - "id": 27859, + "id": 30956, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5666:12:21", + "src": "5740:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" @@ -7799,12 +6915,12 @@ "value": " Expected" }, { - "id": 27860, + "id": 30957, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "5680:4:21", + "referencedDeclaration": 30922, + "src": "5754:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7822,50 +6938,49 @@ "typeString": "uint256" } ], - "id": 27858, + "id": 30955, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5651:14:21", + "src": "5725:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27861, + "id": 30958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5651:34:21", + "src": "5725:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27862, + "id": 30959, "nodeType": "EmitStatement", - "src": "5646:39:21" + "src": "5720:39:30" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", - "id": 27864, + "id": 30961, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5720:12:21", + "src": "5794:12:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" @@ -7873,12 +6988,12 @@ "value": " Actual" }, { - "id": 27865, + "id": 30962, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27827, - "src": "5734:4:21", + "referencedDeclaration": 30924, + "src": "5808:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7896,72 +7011,70 @@ "typeString": "uint256" } ], - "id": 27863, + "id": 30960, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 73, - "src": "5705:14:21", + "src": "5779:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 27866, + "id": 30963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5705:34:21", + "src": "5779:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27867, + "id": 30964, "nodeType": "EmitStatement", - "src": "5700:39:21" + "src": "5774:39:30" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27868, + "id": 30965, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 216, - "src": "5754:4:21", + "src": "5828:4:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27869, + "id": 30966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5754:6:21", + "src": "5828:6:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27870, + "id": 30967, "nodeType": "ExpressionStatement", - "src": "5754:6:21" + "src": "5828:6:30" } ] } @@ -7973,20 +7086,20 @@ "kind": "function", "modifiers": [], "name": "withinDiff", - "nameLocation": "5309:10:21", + "nameLocation": "5383:10:30", "parameters": { - "id": 27830, + "id": 30927, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27825, + "id": 30922, "mutability": "mutable", "name": "val0", - "nameLocation": "5328:4:21", + "nameLocation": "5402:4:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5320:12:21", + "scope": 30971, + "src": "5394:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7994,10 +7107,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27824, + "id": 30921, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5320:7:21", + "src": "5394:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8007,13 +7120,13 @@ }, { "constant": false, - "id": 27827, + "id": 30924, "mutability": "mutable", "name": "val1", - "nameLocation": "5342:4:21", + "nameLocation": "5416:4:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5334:12:21", + "scope": 30971, + "src": "5408:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8021,10 +7134,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27826, + "id": 30923, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5334:7:21", + "src": "5408:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8034,13 +7147,13 @@ }, { "constant": false, - "id": 27829, + "id": 30926, "mutability": "mutable", "name": "expectedDiff", - "nameLocation": "5356:12:21", + "nameLocation": "5430:12:30", "nodeType": "VariableDeclaration", - "scope": 27874, - "src": "5348:20:21", + "scope": 30971, + "src": "5422:20:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8048,10 +7161,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27828, + "id": 30925, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5348:7:21", + "src": "5422:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8060,64 +7173,62 @@ "visibility": "internal" } ], - "src": "5319:50:21" + "src": "5393:50:30" }, "returnParameters": { - "id": 27831, + "id": 30928, "nodeType": "ParameterList", "parameters": [], - "src": "5377:0:21" + "src": "5451:0:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27893, + "id": 30990, "nodeType": "FunctionDefinition", - "src": "5787:159:21", - "nodes": [], + "src": "5861:159:30", "body": { - "id": 27892, + "id": 30989, "nodeType": "Block", - "src": "5882:64:21", - "nodes": [], + "src": "5956:64:30", "statements": [ { "expression": { "arguments": [ { - "id": 27886, + "id": 30983, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27876, - "src": "5917:3:21", + "referencedDeclaration": 30973, + "src": "5991:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 27887, + "id": 30984, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27878, - "src": "5922:3:21", + "referencedDeclaration": 30975, + "src": "5996:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 27888, + "id": 30985, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27880, - "src": "5927:3:21", + "referencedDeclaration": 30977, + "src": "6001:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8125,14 +7236,14 @@ }, { "hexValue": "66616c7365", - "id": 27889, + "id": 30986, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5932:5:21", + "src": "6006:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8159,40 +7270,39 @@ "typeString": "bool" } ], - "id": 27885, + "id": 30982, "name": "constrictToRange", "nodeType": "Identifier", "overloadedDeclarations": [ - 27893, - 27931 + 30990, + 31028 ], - "referencedDeclaration": 27931, - "src": "5900:16:21", + "referencedDeclaration": 31028, + "src": "5974:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_bool_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256,bool) pure returns (uint256)" } }, - "id": 27890, + "id": 30987, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5900:38:21", + "src": "5974:38:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27884, - "id": 27891, + "functionReturnParameters": 30981, + "id": 30988, "nodeType": "Return", - "src": "5893:45:21" + "src": "5967:45:30" } ] }, @@ -8201,20 +7311,20 @@ "kind": "function", "modifiers": [], "name": "constrictToRange", - "nameLocation": "5796:16:21", + "nameLocation": "5870:16:30", "parameters": { - "id": 27881, + "id": 30978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27876, + "id": 30973, "mutability": "mutable", "name": "val", - "nameLocation": "5821:3:21", + "nameLocation": "5895:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5813:11:21", + "scope": 30990, + "src": "5887:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8222,10 +7332,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27875, + "id": 30972, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5813:7:21", + "src": "5887:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8235,13 +7345,13 @@ }, { "constant": false, - "id": 27878, + "id": 30975, "mutability": "mutable", "name": "min", - "nameLocation": "5834:3:21", + "nameLocation": "5908:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5826:11:21", + "scope": 30990, + "src": "5900:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8249,10 +7359,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27877, + "id": 30974, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5826:7:21", + "src": "5900:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8262,13 +7372,13 @@ }, { "constant": false, - "id": 27880, + "id": 30977, "mutability": "mutable", "name": "max", - "nameLocation": "5847:3:21", + "nameLocation": "5921:3:30", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5839:11:21", + "scope": 30990, + "src": "5913:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8276,10 +7386,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27879, + "id": 30976, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5839:7:21", + "src": "5913:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8288,21 +7398,21 @@ "visibility": "internal" } ], - "src": "5812:39:21" + "src": "5886:39:30" }, "returnParameters": { - "id": 27884, + "id": 30981, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27883, + "id": 30980, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27893, - "src": "5873:7:21", + "scope": 30990, + "src": "5947:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8310,10 +7420,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27882, + "id": 30979, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5873:7:21", + "src": "5947:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8322,23 +7432,21 @@ "visibility": "internal" } ], - "src": "5872:9:21" + "src": "5946:9:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "pure", "virtual": false, "visibility": "public" }, { - "id": 27931, + "id": 31028, "nodeType": "FunctionDefinition", - "src": "5954:291:21", - "nodes": [], + "src": "6028:291:30", "body": { - "id": 27930, + "id": 31027, "nodeType": "Block", - "src": "6063:182:21", - "nodes": [], + "src": "6137:182:30", "statements": [ { "condition": { @@ -8346,7 +7454,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27911, + "id": 31008, "isConstant": false, "isLValue": false, "isPure": false, @@ -8356,18 +7464,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27908, + "id": 31005, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27906, + "id": 31003, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27895, - "src": "6083:3:21", + "referencedDeclaration": 30992, + "src": "6157:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8377,21 +7485,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 27907, + "id": 31004, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6090:1:21", + "src": "6164:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6083:8:21", + "src": "6157:8:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8400,7 +7508,7 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 27910, + "id": 31007, "isConstant": false, "isLValue": false, "isPure": false, @@ -8408,14 +7516,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6095:8:21", + "src": "6169:8:30", "subExpression": { - "id": 27909, + "id": 31006, "name": "nonZero", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27901, - "src": "6096:7:21", + "referencedDeclaration": 30998, + "src": "6170:7:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8426,7 +7534,7 @@ "typeString": "bool" } }, - "src": "6083:20:21", + "src": "6157:20:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8438,18 +7546,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27916, + "id": 31013, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27914, + "id": 31011, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6133:3:21", + "referencedDeclaration": 30996, + "src": "6207:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8458,18 +7566,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 27915, + "id": 31012, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6140:3:21", + "referencedDeclaration": 30994, + "src": "6214:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6133:10:21", + "src": "6207:10:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8481,7 +7589,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27926, + "id": 31023, "isConstant": false, "isLValue": false, "isPure": false, @@ -8491,18 +7599,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27924, + "id": 31021, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27919, + "id": 31016, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27895, - "src": "6214:3:21", + "referencedDeclaration": 30992, + "src": "6288:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8517,18 +7625,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27922, + "id": 31019, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27920, + "id": 31017, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6221:3:21", + "referencedDeclaration": 30996, + "src": "6295:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8537,38 +7645,38 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27921, + "id": 31018, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6227:3:21", + "referencedDeclaration": 30994, + "src": "6301:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6221:9:21", + "src": "6295:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27923, + "id": 31020, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "6220:11:21", + "src": "6294:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6214:17:21", + "src": "6288:17:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8577,74 +7685,74 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 27925, + "id": 31022, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27897, - "src": "6234:3:21", + "referencedDeclaration": 30994, + "src": "6308:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6214:23:21", + "src": "6288:23:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27905, - "id": 27927, + "functionReturnParameters": 31002, + "id": 31024, "nodeType": "Return", - "src": "6207:30:21" + "src": "6281:30:30" }, - "id": 27928, + "id": 31025, "nodeType": "IfStatement", - "src": "6129:108:21", + "src": "6203:108:30", "trueBody": { "expression": { - "id": 27917, + "id": 31014, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27899, - "src": "6162:3:21", + "referencedDeclaration": 30996, + "src": "6236:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27905, - "id": 27918, + "functionReturnParameters": 31002, + "id": 31015, "nodeType": "Return", - "src": "6155:10:21" + "src": "6229:10:30" } }, - "id": 27929, + "id": 31026, "nodeType": "IfStatement", - "src": "6074:163:21", + "src": "6148:163:30", "trueBody": { "expression": { "hexValue": "30", - "id": 27912, + "id": 31009, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6112:1:21", + "src": "6186:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 27905, - "id": 27913, + "functionReturnParameters": 31002, + "id": 31010, "nodeType": "Return", - "src": "6105:8:21" + "src": "6179:8:30" } } ] @@ -8654,20 +7762,20 @@ "kind": "function", "modifiers": [], "name": "constrictToRange", - "nameLocation": "5963:16:21", + "nameLocation": "6037:16:30", "parameters": { - "id": 27902, + "id": 30999, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27895, + "id": 30992, "mutability": "mutable", "name": "val", - "nameLocation": "5988:3:21", + "nameLocation": "6062:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "5980:11:21", + "scope": 31028, + "src": "6054:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8675,10 +7783,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27894, + "id": 30991, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5980:7:21", + "src": "6054:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8688,13 +7796,13 @@ }, { "constant": false, - "id": 27897, + "id": 30994, "mutability": "mutable", "name": "min", - "nameLocation": "6001:3:21", + "nameLocation": "6075:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "5993:11:21", + "scope": 31028, + "src": "6067:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8702,10 +7810,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27896, + "id": 30993, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5993:7:21", + "src": "6067:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8715,13 +7823,13 @@ }, { "constant": false, - "id": 27899, + "id": 30996, "mutability": "mutable", "name": "max", - "nameLocation": "6014:3:21", + "nameLocation": "6088:3:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6006:11:21", + "scope": 31028, + "src": "6080:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8729,10 +7837,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27898, + "id": 30995, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6006:7:21", + "src": "6080:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8742,13 +7850,13 @@ }, { "constant": false, - "id": 27901, + "id": 30998, "mutability": "mutable", "name": "nonZero", - "nameLocation": "6024:7:21", + "nameLocation": "6098:7:30", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6019:12:21", + "scope": 31028, + "src": "6093:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8756,10 +7864,10 @@ "typeString": "bool" }, "typeName": { - "id": 27900, + "id": 30997, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6019:4:21", + "src": "6093:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8768,21 +7876,21 @@ "visibility": "internal" } ], - "src": "5979:53:21" + "src": "6053:53:30" }, "returnParameters": { - "id": 27905, + "id": 31002, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27904, + "id": 31001, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27931, - "src": "6054:7:21", + "scope": 31028, + "src": "6128:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8790,10 +7898,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27903, + "id": 31000, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6054:7:21", + "src": "6128:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8802,9 +7910,9 @@ "visibility": "internal" } ], - "src": "6053:9:21" + "src": "6127:9:30" }, - "scope": 27932, + "scope": 31029, "stateMutability": "pure", "virtual": false, "visibility": "public" @@ -8814,37 +7922,34 @@ "baseContracts": [ { "baseName": { - "id": 27413, + "id": 30507, "name": "DSTest", - "nameLocations": [ - "469:6:21" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, - "src": "469:6:21" + "src": "469:6:30" }, - "id": 27414, + "id": 30508, "nodeType": "InheritanceSpecifier", - "src": "469:6:21" + "src": "469:6:30" } ], "canonicalName": "Utility", "contractDependencies": [ - 27385 + 30364 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 27932, + 31029, 1786 ], "name": "Utility", - "nameLocation": "458:7:21", - "scope": 27933, + "nameLocation": "458:7:30", + "scope": 31030, "usedErrors": [] } ], "license": "AGPL-3.0-or-later" }, - "id": 21 + "id": 30 } \ No newline at end of file diff --git a/out/Vesting.sol/Vesting.json b/out/Vesting.sol/Vesting.json index 5a031b7..11e48c2 100644 --- a/out/Vesting.sol/Vesting.json +++ b/out/Vesting.sol/Vesting.json @@ -143,6 +143,19 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "getAllVestedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [ { @@ -308,6 +321,19 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "totalTokensToVest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [ { @@ -362,26 +388,26 @@ } ], "bytecode": { - "object": "0x60a06040523480156200001157600080fd5b506040516200191b3803806200191b8339810160408190526200003491620001b2565b600080546001600160a01b03191633908117825560405190918291600080516020620018fb833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b0380851693921691600080516020620018fb83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b6080516116e762000214600039600081816101bd0152818161080f0152610bc201526116e76000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806385d4cad3116100a2578063d36862e811610071578063d36862e81461022e578063dd46706414610241578063ec20b45714610254578063f02c6d8f14610267578063f2fde38b1461027057600080fd5b806385d4cad3146101b857806388a772ef146101f75780638da5cb5b1461020a578063c7e42b1b1461021b57600080fd5b80635b904cb7116100de5780635b904cb7146101685780636f7bc9be14610170578063715018a6146101a35780637f87bbd6146101ab57600080fd5b80630bca8bcd1461011057806342714978146101365780634e71d92d1461014b57806350ad827a14610153575b600080fd5b61012361011e3660046114ba565b610283565b6040519081526020015b60405180910390f35b6101496101443660046114ba565b6103fb565b005b610149610689565b61015b610966565b60405161012d91906114dc565b6101496109e8565b61019361017e3660046114ba565b60066020526000908152604090205460ff1681565b604051901515815260200161012d565b610149610ac7565b6004546101939060ff1681565b6101df7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161012d565b6101236102053660046114ba565b610b3b565b6000546001600160a01b03166101df565b6101496102293660046114ba565b610b96565b61012361023c3660046114ba565b610f28565b61014961024f36600461153e565b610f83565b610149610262366004611557565b61101a565b61012360035481565b61014961027e3660046114ba565b6112bb565b6001600160a01b03811660009081526006602052604081205460ff1680156102ad575060045460ff165b156103ee5760006102bd836113a5565b905060006102ca84610b3b565b905080600583815481106102e0576102e0611581565b90600052602060002090600302016002015410610301575060009392505050565b60006224ea006003544261031591906115ad565b61031f91906115c6565b9050600060646103308460086115e8565b61033a91906115c6565b61034490836115e8565b606461035185600c6115e8565b61035b91906115c6565b61036591906115ff565b9050828111806103765750600b8210155b156103b2576005848154811061038e5761038e611581565b906000526020600020906003020160020154836103ab91906115ad565b90506103e5565b600584815481106103c5576103c5611581565b906000526020600020906003020160020154816103e291906115ad565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b0316331461042e5760405162461bcd60e51b815260040161042590611612565b60405180910390fd5b6001600160a01b0381166104aa5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610425565b60006104b5826113a5565b90506000600582815481106104cc576104cc611581565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600580549193509161051c916115ad565b8154811061052c5761052c611581565b90600052602060002090600302016005838154811061054d5761054d611581565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556005805483926105a3916115ad565b815481106105b3576105b3611581565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600580548061060a5761060a611647565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260069091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526006602052604090205460ff1615156001146107135760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610425565b60045460ff166107795760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610425565b600061078433610283565b9050600081116107f35760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610425565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610860573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610884919061165d565b6108e35760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610425565b60006108ee336113a5565b9050816005828154811061090457610904611581565b9060005260206000209060030201600201600082825461092491906115ff565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606005805480602002602001604051908101604052809291908181526020016000905b828210156109df576000848152602090819020604080516060810182526003860290920180546001600160a01b031683526001808201548486015260029091015491830191909152908352909201910161098a565b50505050905090565b6000546001600160a01b03163314610a125760405162461bcd60e51b815260040161042590611612565b60045460ff1615610a8b5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610425565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610af15760405162461bcd60e51b815260040161042590611612565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610b67836113a5565b905060058181548110610b7c57610b7c611581565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610bc05760405162461bcd60e51b815260040161042590611612565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c675760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610425565b6001600160a01b038116610ce35760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610425565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4e919061167f565b905060008111610dc65760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610425565b6000826001600160a01b031663a9059cbb610de96000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5a919061165d565b905080610ec45760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610425565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610ef96000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610f54836113a5565b905060058181548110610f6957610f69611581565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fad5760405162461bcd60e51b815260040161042590611612565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fdc81426115ff565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110445760405162461bcd60e51b815260040161042590611612565b6001600160a01b03821660009081526006602052604090205460ff16156110ca5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610425565b6001600160a01b0382166111465760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610425565b600081116111b45760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610425565b6001600160a01b0382811660008181526006602090815260408083208054600160ff1990911681179091558151606081018352858152928301878152838301858152600580549384018155865293517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600390930292830180546001600160a01b031916919098161790965594517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db186015590517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db290940193909355915190917f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f91a25050565b6000546001600160a01b031633146112e55760405162461bcd60e51b815260040161042590611612565b6001600160a01b03811661134a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610425565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526006602052604081205460ff1615156001146114385760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610425565b6000805b60055481101561149c57836001600160a01b03166005828154811061146357611463611581565b60009182526020909120600390910201546001600160a01b03160361148a5780915061149c565b8061149481611698565b91505061143c565b5092915050565b80356001600160a01b03811681146103f657600080fd5b6000602082840312156114cc57600080fd5b6114d5826114a3565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561153157815180516001600160a01b03168552868101518786015285015185850152606090930192908501906001016114f9565b5091979650505050505050565b60006020828403121561155057600080fd5b5035919050565b6000806040838503121561156a57600080fd5b611573836114a3565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156115c0576115c0611597565b92915050565b6000826115e357634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176115c0576115c0611597565b808201808211156115c0576115c0611597565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b60006020828403121561166f57600080fd5b815180151581146114d557600080fd5b60006020828403121561169157600080fd5b5051919050565b6000600182016116aa576116aa611597565b506001019056fea2646970667358221220157b3eae9a1ae2e7d7cc252855d7fcf62c788bb02ed633aa778f7e49daee3f3f64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "sourceMap": "494:9716:16:-:0;;;1724:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;955:17:18;998:18;;-1:-1:-1;;;;;;998:18:18;699:10:17;998:18:18;;;;;1032:43;;699:10:17;;;;-1:-1:-1;;;;;;;;;;;1032:43:18;955:17;;1032:43;-1:-1:-1;;;;;;1784:24:16;;;;1819:25;1837:6;1819:17;:25::i;:::-;1724:128;;494:9716;;2118:244:18;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;696:2:23;1376:68:18;;;678:21:23;;;715:18;;;708:30;774:34;754:18;;;747:62;826:18;;1376:68:18;;;;;;;;;-1:-1:-1;;;;;2207:22:18;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:18;;1057:2:23;2199:73:18::1;::::0;::::1;1039:21:23::0;1096:2;1076:18;;;1069:30;1135:34;1115:18;;;1108:62;-1:-1:-1;;;1186:18:23;;;1179:36;1232:19;;2199:73:18::1;855:402:23::0;2199:73:18::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:18;;::::1;::::0;2309:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;2288:38:18;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:18::1;-1:-1:-1::0;;;;;2337:17:18;;;::::1;::::0;;;::::1;::::0;;2118:244::o;14:177:23:-;93:13;;-1:-1:-1;;;;;135:31:23;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:293::-;275:6;283;336:2;324:9;315:7;311:23;307:32;304:52;;;352:1;349;342:12;304:52;375:40;405:9;375:40;:::i;:::-;365:50;;434:49;479:2;468:9;464:18;434:49;:::i;:::-;424:59;;196:293;;;;;:::o;855:402::-;494:9716:16;;;;;;;;;;;;;;;;;;;;;;", + "object": "0x60a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "sourceMap": "490:10064:16:-:0;;;1761:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;955:17:18;998:18;;-1:-1:-1;;;;;;998:18:18;699:10:17;998:18:18;;;;;1032:43;;699:10:17;;;;-1:-1:-1;;;;;;;;;;;1032:43:18;955:17;;1032:43;-1:-1:-1;;;;;;1821:24:16;;;;1856:25;1874:6;1856:17;:25::i;:::-;1761:128;;490:10064;;2118:244:18;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;696:2:28;1376:68:18;;;678:21:28;;;715:18;;;708:30;774:34;754:18;;;747:62;826:18;;1376:68:18;;;;;;;;;-1:-1:-1;;;;;2207:22:18;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:18;;1057:2:28;2199:73:18::1;::::0;::::1;1039:21:28::0;1096:2;1076:18;;;1069:30;1135:34;1115:18;;;1108:62;-1:-1:-1;;;1186:18:28;;;1179:36;1232:19;;2199:73:18::1;855:402:28::0;2199:73:18::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:18;;::::1;::::0;2309:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;2288:38:18;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:18::1;-1:-1:-1::0;;;;;2337:17:18;;;::::1;::::0;;;::::1;::::0;;2118:244::o;14:177:28:-;93:13;;-1:-1:-1;;;;;135:31:28;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:293::-;275:6;283;336:2;324:9;315:7;311:23;307:32;304:52;;;352:1;349;342:12;304:52;375:40;405:9;375:40;:::i;:::-;365:50;;434:49;479:2;468:9;464:18;434:49;:::i;:::-;424:59;;196:293;;;;;:::o;855:402::-;490:10064:16;;;;;;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806385d4cad3116100a2578063d36862e811610071578063d36862e81461022e578063dd46706414610241578063ec20b45714610254578063f02c6d8f14610267578063f2fde38b1461027057600080fd5b806385d4cad3146101b857806388a772ef146101f75780638da5cb5b1461020a578063c7e42b1b1461021b57600080fd5b80635b904cb7116100de5780635b904cb7146101685780636f7bc9be14610170578063715018a6146101a35780637f87bbd6146101ab57600080fd5b80630bca8bcd1461011057806342714978146101365780634e71d92d1461014b57806350ad827a14610153575b600080fd5b61012361011e3660046114ba565b610283565b6040519081526020015b60405180910390f35b6101496101443660046114ba565b6103fb565b005b610149610689565b61015b610966565b60405161012d91906114dc565b6101496109e8565b61019361017e3660046114ba565b60066020526000908152604090205460ff1681565b604051901515815260200161012d565b610149610ac7565b6004546101939060ff1681565b6101df7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161012d565b6101236102053660046114ba565b610b3b565b6000546001600160a01b03166101df565b6101496102293660046114ba565b610b96565b61012361023c3660046114ba565b610f28565b61014961024f36600461153e565b610f83565b610149610262366004611557565b61101a565b61012360035481565b61014961027e3660046114ba565b6112bb565b6001600160a01b03811660009081526006602052604081205460ff1680156102ad575060045460ff165b156103ee5760006102bd836113a5565b905060006102ca84610b3b565b905080600583815481106102e0576102e0611581565b90600052602060002090600302016002015410610301575060009392505050565b60006224ea006003544261031591906115ad565b61031f91906115c6565b9050600060646103308460086115e8565b61033a91906115c6565b61034490836115e8565b606461035185600c6115e8565b61035b91906115c6565b61036591906115ff565b9050828111806103765750600b8210155b156103b2576005848154811061038e5761038e611581565b906000526020600020906003020160020154836103ab91906115ad565b90506103e5565b600584815481106103c5576103c5611581565b906000526020600020906003020160020154816103e291906115ad565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b0316331461042e5760405162461bcd60e51b815260040161042590611612565b60405180910390fd5b6001600160a01b0381166104aa5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610425565b60006104b5826113a5565b90506000600582815481106104cc576104cc611581565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600580549193509161051c916115ad565b8154811061052c5761052c611581565b90600052602060002090600302016005838154811061054d5761054d611581565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556005805483926105a3916115ad565b815481106105b3576105b3611581565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600580548061060a5761060a611647565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260069091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526006602052604090205460ff1615156001146107135760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610425565b60045460ff166107795760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610425565b600061078433610283565b9050600081116107f35760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610425565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610860573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610884919061165d565b6108e35760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610425565b60006108ee336113a5565b9050816005828154811061090457610904611581565b9060005260206000209060030201600201600082825461092491906115ff565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606005805480602002602001604051908101604052809291908181526020016000905b828210156109df576000848152602090819020604080516060810182526003860290920180546001600160a01b031683526001808201548486015260029091015491830191909152908352909201910161098a565b50505050905090565b6000546001600160a01b03163314610a125760405162461bcd60e51b815260040161042590611612565b60045460ff1615610a8b5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610425565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610af15760405162461bcd60e51b815260040161042590611612565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610b67836113a5565b905060058181548110610b7c57610b7c611581565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610bc05760405162461bcd60e51b815260040161042590611612565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c675760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610425565b6001600160a01b038116610ce35760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610425565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4e919061167f565b905060008111610dc65760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610425565b6000826001600160a01b031663a9059cbb610de96000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5a919061165d565b905080610ec45760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610425565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610ef96000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610f54836113a5565b905060058181548110610f6957610f69611581565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fad5760405162461bcd60e51b815260040161042590611612565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fdc81426115ff565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110445760405162461bcd60e51b815260040161042590611612565b6001600160a01b03821660009081526006602052604090205460ff16156110ca5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610425565b6001600160a01b0382166111465760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610425565b600081116111b45760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610425565b6001600160a01b0382811660008181526006602090815260408083208054600160ff1990911681179091558151606081018352858152928301878152838301858152600580549384018155865293517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600390930292830180546001600160a01b031916919098161790965594517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db186015590517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db290940193909355915190917f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f91a25050565b6000546001600160a01b031633146112e55760405162461bcd60e51b815260040161042590611612565b6001600160a01b03811661134a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610425565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526006602052604081205460ff1615156001146114385760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610425565b6000805b60055481101561149c57836001600160a01b03166005828154811061146357611463611581565b60009182526020909120600390910201546001600160a01b03160361148a5780915061149c565b8061149481611698565b91505061143c565b5092915050565b80356001600160a01b03811681146103f657600080fd5b6000602082840312156114cc57600080fd5b6114d5826114a3565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561153157815180516001600160a01b03168552868101518786015285015185850152606090930192908501906001016114f9565b5091979650505050505050565b60006020828403121561155057600080fd5b5035919050565b6000806040838503121561156a57600080fd5b611573836114a3565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156115c0576115c0611597565b92915050565b6000826115e357634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176115c0576115c0611597565b808201808211156115c0576115c0611597565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b60006020828403121561166f57600080fd5b815180151581146114d557600080fd5b60006020828403121561169157600080fd5b5051919050565b6000600182016116aa576116aa611597565b506001019056fea2646970667358221220157b3eae9a1ae2e7d7cc252855d7fcf62c788bb02ed633aa778f7e49daee3f3f64736f6c63430008110033", - "sourceMap": "494:9716:16:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7352:949;;;;;;:::i;:::-;;:::i;:::-;;;529:25:23;;;517:2;502:18;7352:949:16;;;;;;;;5327:529;;;;;;:::i;:::-;;:::i;:::-;;3530:699;;;:::i;10096:111::-;;;:::i;:::-;;;;;;;:::i;6024:261::-;;;:::i;1292:41::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1608:14:23;;1601:22;1583:41;;1571:2;1556:18;1292:41:16;1443:187:23;1815:148:18;;;:::i;781:26:16:-;;;;;;;;;605:35;;;;;;;;-1:-1:-1;;;;;1799:32:23;;;1781:51;;1769:2;1754:18;605:35:16;1635:203:23;9005:286:16;;;;;;:::i;:::-;;:::i;1164:87:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;1164:87;;6472:636:16;;;;;;:::i;:::-;;:::i;8502:290::-;;;;;;:::i;:::-;;:::i;2444:226:18:-;;;;;;:::i;:::-;;:::i;4615:548:16:-;;;;;;:::i;:::-;;:::i;688:31::-;;;;;;2118:244:18;;;;;;:::i;:::-;;:::i;7352:949:16:-;-1:-1:-1;;;;;7441:19:16;;7417:7;7441:19;;;:9;:19;;;;;;;;:37;;;;-1:-1:-1;7464:14:16;;;;7441:37;7437:857;;;7497:11;7511:24;7526:8;7511:14;:24::i;:::-;7497:38;;7552:17;7572:25;7588:8;7572:15;:25::i;:::-;7552:45;;7656:12;7618:15;7634:3;7618:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:50;7614:99;;-1:-1:-1;7696:1:16;;7352:949;-1:-1:-1;;;7352:949:16:o;7614:99::-;7729:17;7789:7;7769:16;;7751:15;:34;;;;:::i;:::-;7750:46;;;;:::i;:::-;7729:68;-1:-1:-1;7813:18:16;7898:3;7879:16;:12;7894:1;7879:16;:::i;:::-;:22;;;;:::i;:::-;7863:39;;:12;:39;:::i;:::-;7855:3;7835:17;:12;7850:2;7835:17;:::i;:::-;:23;;;;:::i;:::-;7834:69;;;;:::i;:::-;7813:90;;7940:12;7924:13;:28;:50;;;;7972:2;7956:12;:18;;7924:50;7920:276;;;8026:15;8042:3;8026:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8011:12;:49;;;;:::i;:::-;7995:65;;7920:276;;;8146:15;8162:3;8146:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8130:13;:50;;;;:::i;:::-;8114:66;;7920:276;8219:13;7352:949;-1:-1:-1;;;;;7352:949:16:o;7437:857::-;-1:-1:-1;8281:1:16;;7352:949;-1:-1:-1;7352:949:16:o;7437:857::-;7352:949;;;:::o;5327:529::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;5409:22:16;::::1;5401:93;;;::::0;-1:-1:-1;;;5401:93:16;;3772:2:23;5401:93:16::1;::::0;::::1;3754:21:23::0;3811:2;3791:18;;;3784:30;3850:34;3830:18;;;3823:62;3921:28;3901:18;;;3894:56;3967:19;;5401:93:16::1;3570:422:23::0;5401:93:16::1;5507:11;5521:24;5536:8;5521:14;:24::i;:::-;5507:38;;5558:20;5581:15;5597:3;5581:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;5558:43:::1;::::0;;::::1;::::0;::::1;::::0;;5581:20:::1;::::0;;::::1;::::0;;::::1;5558:43:::0;;-1:-1:-1;;;;;5558:43:16::1;::::0;;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;;;;;5635:15:::1;5651:22:::0;;5558:43;;-1:-1:-1;5635:15:16;5651:24:::1;::::0;::::1;:::i;:::-;5635:41;;;;;;;;:::i;:::-;;;;;;;;;;;5612:15;5628:3;5612:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;:64;;:20:::1;::::0;;::::1;;:64:::0;;-1:-1:-1;;;;;;5612:64:16::1;-1:-1:-1::0;;;;;5612:64:16;;::::1;::::0;;;::::1;::::0;;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;::::1;::::0;;;;::::1;::::0;;;;5687:15:::1;5703:22:::0;;5731:4;;5703:24:::1;::::0;::::1;:::i;:::-;5687:41;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;:48;;:41:::1;::::0;;;::::1;;:48:::0;;-1:-1:-1;;;;;;5687:48:16::1;-1:-1:-1::0;;;;;5687:48:16;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;-1:-1:-1;5687:48:16;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;::::1;::::0;5746:15:::1;:21:::0;;;::::1;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;-1:-1:-1::0;;5746:21:16;;;;;::::1;;::::0;;-1:-1:-1;;;;;;5746:21:16::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;;::::0;;;;;;;-1:-1:-1;;;;;5778:19:16;::::1;::::0;;;:9:::1;:19:::0;;;;;;;:27;;-1:-1:-1;;5778:27:16::1;::::0;;5823:25;5778:19;;5823:25:::1;::::0;::::1;5390:466;;5327:529:::0;:::o;3530:699::-;2033:10;2023:21;;;;:9;:21;;;;;;;;:29;;:21;:29;2015:100;;;;-1:-1:-1;;;2015:100:16;;4331:2:23;2015:100:16;;;4313:21:23;4370:2;4350:18;;;4343:30;4409:34;4389:18;;;4382:62;4480:28;4460:18;;;4453:56;4526:19;;2015:100:16;4129:422:23;2015:100:16;3590:14:::1;::::0;::::1;;3582:70;;;::::0;-1:-1:-1;;;3582:70:16;;4758:2:23;3582:70:16::1;::::0;::::1;4740:21:23::0;4797:2;4777:18;;;4770:30;4836:34;4816:18;;;4809:62;-1:-1:-1;;;4887:18:23;;;4880:41;4938:19;;3582:70:16::1;4556:407:23::0;3582:70:16::1;3663:21;3687:28;3704:10;3687:16;:28::i;:::-;3663:52;;3750:1;3734:13;:17;3726:82;;;::::0;-1:-1:-1;;;3726:82:16;;5170:2:23;3726:82:16::1;::::0;::::1;5152:21:23::0;5209:2;5189:18;;;5182:30;5248:34;5228:18;;;5221:62;-1:-1:-1;;;5299:18:23;;;5292:50;5359:19;;3726:82:16::1;4968:416:23::0;3726:82:16::1;3861:54;::::0;-1:-1:-1;;;3861:54:16;;3889:10:::1;3861:54;::::0;::::1;5563:51:23::0;5630:18;;;5623:34;;;3868:10:16::1;-1:-1:-1::0;;;;;3861:27:16::1;::::0;::::1;::::0;5536:18:23;;3861:54:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3853:109;;;::::0;-1:-1:-1;;;3853:109:16;;6152:2:23;3853:109:16::1;::::0;::::1;6134:21:23::0;6191:2;6171:18;;;6164:30;6230:34;6210:18;;;6203:62;-1:-1:-1;;;6281:18:23;;;6274:40;6331:19;;3853:109:16::1;5950:406:23::0;3853:109:16::1;4018:11;4032:26;4047:10;4032:14;:26::i;:::-;4018:40;;4151:13;4113:15;4129:3;4113:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:51;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4182:39:16::1;::::0;;4195:10:::1;5563:51:23::0;;5645:2;5630:18;;5623:34;;;4182:39:16::1;::::0;5536:18:23;4182:39:16::1;;;;;;;3571:658;;3530:699::o:0;10096:111::-;10147:17;10184:15;10177:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10177:22:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10096:111;:::o;6024:261::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;6090:14:16::1;::::0;::::1;;6089:15;6081:83;;;::::0;-1:-1:-1;;;6081:83:16;;6563:2:23;6081:83:16::1;::::0;::::1;6545:21:23::0;6602:2;6582:18;;;6575:30;6641:34;6621:18;;;6614:62;6712:25;6692:18;;;6685:53;6755:19;;6081:83:16::1;6361:419:23::0;6081:83:16::1;6177:14;:21:::0;;-1:-1:-1;;6177:21:16::1;6194:4;6177:21;::::0;;6228:15:::1;6209:16;:34:::0;6261:16:::1;::::0;::::1;::::0;6177:14:::1;::::0;6261:16:::1;6024:261::o:0;1815:148:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;1922:1:::1;1906:6:::0;;1885:40:::1;::::0;-1:-1:-1;;;;;1906:6:18;;::::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1953:1;1936:19:::0;;-1:-1:-1;;;;;;1936:19:18::1;::::0;;1815:148::o;9005:286:16:-;-1:-1:-1;;;;;9093:19:16;;9069:7;9093:19;;;:9;:19;;;;;;;;9089:195;;;9129:11;9143:24;9158:8;9143:14;:24::i;:::-;9129:38;;9189:15;9205:3;9189:20;;;;;;;;:::i;:::-;;;;;;;;;;;:33;;;9182:40;;;9005:286;;;:::o;6472:636::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;6559:10:16::1;-1:-1:-1::0;;;;;6550:19:16::1;:5;-1:-1:-1::0;;;;;6550:19:16::1;::::0;6542:89:::1;;;::::0;-1:-1:-1;;;6542:89:16;;6987:2:23;6542:89:16::1;::::0;::::1;6969:21:23::0;7026:2;7006:18;;;6999:30;7065:34;7045:18;;;7038:62;7136:27;7116:18;;;7109:55;7181:19;;6542:89:16::1;6785:421:23::0;6542:89:16::1;-1:-1:-1::0;;;;;6650:19:16;::::1;6642:87;;;::::0;-1:-1:-1;;;6642:87:16;;7413:2:23;6642:87:16::1;::::0;::::1;7395:21:23::0;7452:2;7432:18;;;7425:30;7491:34;7471:18;;;7464:62;7562:25;7542:18;;;7535:53;7605:19;;6642:87:16::1;7211:419:23::0;6642:87:16::1;6760:38;::::0;-1:-1:-1;;;6760:38:16;;6792:4:::1;6760:38;::::0;::::1;1781:51:23::0;6742:15:16::1;::::0;-1:-1:-1;;;;;6760:23:16;::::1;::::0;::::1;::::0;1754:18:23;;6760:38:16::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6742:56;;6827:1;6817:7;:11;6809:79;;;::::0;-1:-1:-1;;;6809:79:16;;8026:2:23;6809:79:16::1;::::0;::::1;8008:21:23::0;8065:2;8045:18;;;8038:30;8104:34;8084:18;;;8077:62;8175:25;8155:18;;;8148:53;8218:19;;6809:79:16::1;7824:419:23::0;6809:79:16::1;6901:12;6923:5;-1:-1:-1::0;;;;;6916:22:16::1;;6939:7;1210::18::0;1237:6;-1:-1:-1;;;;;1237:6:18;;1164:87;6939:7:16::1;6916:40;::::0;-1:-1:-1;;;;;;6916:40:16::1;::::0;;;;;;-1:-1:-1;;;;;5581:32:23;;;6916:40:16::1;::::0;::::1;5563:51:23::0;5630:18;;;5623:34;;;5536:18;;6916:40:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6901:55;;6975:7;6967:70;;;::::0;-1:-1:-1;;;6967:70:16;;8450:2:23;6967:70:16::1;::::0;::::1;8432:21:23::0;8489:2;8469:18;;;8462:30;8528:34;8508:18;;;8501:62;-1:-1:-1;;;8579:18:23;;;8572:48;8637:19;;6967:70:16::1;8248:414:23::0;6967:70:16::1;7055:45;7076:5;7083:7;7092;1210::18::0;1237:6;-1:-1:-1;;;;;1237:6:18;;1164:87;7092:7:16::1;7055:45;::::0;;-1:-1:-1;;;;;8925:15:23;;;8907:34;;8972:2;8957:18;;8950:34;;;;9020:15;;9000:18;;;8993:43;7055:45:16;;;;;;8857:2:23;7055:45:16;;::::1;6531:577;;6472:636:::0;:::o;8502:290::-;-1:-1:-1;;;;;8591:19:16;;8567:7;8591:19;;;:9;:19;;;;;;;;8587:198;;;8629:11;8643:24;8658:8;8643:14;:24::i;:::-;8629:38;;8689:15;8705:3;8689:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8682:41;;;8502:290;;;:::o;2444:226:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;2525:6:::1;::::0;;;2508:23;;-1:-1:-1;;;;;;2508:23:18;;::::1;-1:-1:-1::0;;;;;2525:6:18;::::1;2508:23;::::0;;;2542:19:::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2659:1:::1;2643:6:::0;;2622:40:::1;::::0;-1:-1:-1;;;;;2643:6:18;;::::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;4615:548:16:-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;-1:-1:-1;;;;;4717:19:16;::::1;;::::0;;;:9:::1;:19;::::0;;;;;::::1;;:28;4709:93;;;::::0;-1:-1:-1;;;4709:93:16;;9249:2:23;4709:93:16::1;::::0;::::1;9231:21:23::0;9288:2;9268:18;;;9261:30;9327:34;9307:18;;;9300:62;-1:-1:-1;;;9378:18:23;;;9371:50;9438:19;;4709:93:16::1;9047:416:23::0;4709:93:16::1;-1:-1:-1::0;;;;;4821:22:16;::::1;4813:91;;;::::0;-1:-1:-1;;;4813:91:16;;9670:2:23;4813:91:16::1;::::0;::::1;9652:21:23::0;9709:2;9689:18;;;9682:30;9748:34;9728:18;;;9721:62;9819:26;9799:18;;;9792:54;9863:19;;4813:91:16::1;9468:420:23::0;4813:91:16::1;4939:1;4923:13;:17;4915:83;;;::::0;-1:-1:-1;;;4915:83:16;;10095:2:23;4915:83:16::1;::::0;::::1;10077:21:23::0;10134:2;10114:18;;;10107:30;10173:34;10153:18;;;10146:62;-1:-1:-1;;;10224:18:23;;;10217:51;10285:19;;4915:83:16::1;9893:417:23::0;4915:83:16::1;-1:-1:-1::0;;;;;5011:19:16;;::::1;;::::0;;;:9:::1;:19;::::0;;;;;;;:26;;5033:4:::1;-1:-1:-1::0;;5011:26:16;;::::1;::::0;::::1;::::0;;;5069:36;;::::1;::::0;::::1;::::0;;;;;;;::::1;::::0;;;;;;;;;5048:15:::1;:58:::0;;;;::::1;::::0;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;;;;;5048:58:16::1;::::0;;;::::1;;::::0;;;;;;;;;;;;;;;;;;;5132:23;;5011:19;;5132:23:::1;::::0;::::1;4615:548:::0;;:::o;2118:244:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:18;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:18;;10517:2:23;2199:73:18::1;::::0;::::1;10499:21:23::0;10556:2;10536:18;;;10529:30;10595:34;10575:18;;;10568:62;-1:-1:-1;;;10646:18:23;;;10639:36;10692:19;;2199:73:18::1;10315:402:23::0;2199:73:18::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:18;;::::1;::::0;2309:6;::::1;::::0;2288:38:::1;::::0;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:18::1;-1:-1:-1::0;;;;;2337:17:18;;;::::1;::::0;;;::::1;::::0;;2118:244::o;9518:438:16:-;-1:-1:-1;;;;;9611:19:16;;9583:7;9611:19;;;:9;:19;;;;;;;;:27;;:19;:27;9603:96;;;;-1:-1:-1;;;9603:96:16;;10924:2:23;9603:96:16;;;10906:21:23;10963:2;10943:18;;;10936:30;11002:34;10982:18;;;10975:62;11073:26;11053:18;;;11046:54;11117:19;;9603:96:16;10722:420:23;9603:96:16;9712:11;;9736:190;9760:15;:22;9756:26;;9736:190;;;9838:8;-1:-1:-1;;;;;9808:38:16;:15;9824:1;9808:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:26;-1:-1:-1;;;;;9808:26:16;:38;9804:111;;9873:1;9867:7;;9894:5;;9804:111;9784:3;;;;:::i;:::-;;;;9736:190;;;-1:-1:-1;9945:3:16;9518:438;-1:-1:-1;;9518:438:16:o;14:173:23:-;82:20;;-1:-1:-1;;;;;131:31:23;;121:42;;111:70;;177:1;174;167:12;192:186;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;:::-;333:39;192:186;-1:-1:-1;;;192:186:23:o;565:873::-;790:2;842:21;;;912:13;;815:18;;;934:22;;;761:4;;790:2;975;;993:18;;;;1034:15;;;761:4;1077:335;1091:6;1088:1;1085:13;1077:335;;;1150:13;;1192:9;;-1:-1:-1;;;;;1188:35:23;1176:48;;1264:11;;;1258:18;1244:12;;;1237:40;1317:11;;1311:18;1297:12;;;1290:40;1359:4;1350:14;;;;1387:15;;;;1220:1;1106:9;1077:335;;;-1:-1:-1;1429:3:23;;565:873;-1:-1:-1;;;;;;;565:873:23:o;1843:180::-;1902:6;1955:2;1943:9;1934:7;1930:23;1926:32;1923:52;;;1971:1;1968;1961:12;1923:52;-1:-1:-1;1994:23:23;;1843:180;-1:-1:-1;1843:180:23:o;2028:254::-;2096:6;2104;2157:2;2145:9;2136:7;2132:23;2128:32;2125:52;;;2173:1;2170;2163:12;2125:52;2196:29;2215:9;2196:29;:::i;:::-;2186:39;2272:2;2257:18;;;;2244:32;;-1:-1:-1;;;2028:254:23:o;2287:127::-;2348:10;2343:3;2339:20;2336:1;2329:31;2379:4;2376:1;2369:15;2403:4;2400:1;2393:15;2419:127;2480:10;2475:3;2471:20;2468:1;2461:31;2511:4;2508:1;2501:15;2535:4;2532:1;2525:15;2551:128;2618:9;;;2639:11;;;2636:37;;;2653:18;;:::i;:::-;2551:128;;;;:::o;2684:217::-;2724:1;2750;2740:132;;2794:10;2789:3;2785:20;2782:1;2775:31;2829:4;2826:1;2819:15;2857:4;2854:1;2847:15;2740:132;-1:-1:-1;2886:9:23;;2684:217::o;2906:168::-;2979:9;;;3010;;3027:15;;;3021:22;;3007:37;2997:71;;3048:18;;:::i;3079:125::-;3144:9;;;3165:10;;;3162:36;;;3178:18;;:::i;3209:356::-;3411:2;3393:21;;;3430:18;;;3423:30;3489:34;3484:2;3469:18;;3462:62;3556:2;3541:18;;3209:356::o;3997:127::-;4058:10;4053:3;4049:20;4046:1;4039:31;4089:4;4086:1;4079:15;4113:4;4110:1;4103:15;5668:277;5735:6;5788:2;5776:9;5767:7;5763:23;5759:32;5756:52;;;5804:1;5801;5794:12;5756:52;5836:9;5830:16;5889:5;5882:13;5875:21;5868:5;5865:32;5855:60;;5911:1;5908;5901:12;7635:184;7705:6;7758:2;7746:9;7737:7;7733:23;7729:32;7726:52;;;7774:1;7771;7764:12;7726:52;-1:-1:-1;7797:16:23;;7635:184;-1:-1:-1;7635:184:23:o;11147:135::-;11186:3;11207:17;;;11204:43;;11227:18;;:::i;:::-;-1:-1:-1;11274:1:23;11263:13;;11147:135::o", + "object": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f0033", + "sourceMap": "490:10064:16:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7390:105;7470:17;;7390:105;;;160:25:28;;;148:2;133:18;7390:105:16;;;;;;;;7696:949;;;;;;:::i;:::-;;:::i;5411:529::-;;;;;;:::i;:::-;;:::i;:::-;;3567:699;;;:::i;10440:111::-;;;:::i;:::-;;;;;;;:::i;6108:261::-;;;:::i;1329:41::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1608:14:28;;1601:22;1583:41;;1571:2;1556:18;1329:41:16;1443:187:28;1815:148:18;;;:::i;777:26:16:-;;;;;;;;;601:35;;;;;;;;-1:-1:-1;;;;;1799:32:28;;;1781:51;;1769:2;1754:18;601:35:16;1635:203:28;9349:286:16;;;;;;:::i;:::-;;:::i;1164:87:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;1164:87;;857:32:16;;;;;;6556:636;;;;;;:::i;:::-;;:::i;8846:290::-;;;;;;:::i;:::-;;:::i;2444:226:18:-;;;;;;:::i;:::-;;:::i;4652:595:16:-;;;;;;:::i;:::-;;:::i;684:31::-;;;;;;2118:244:18;;;;;;:::i;:::-;;:::i;7696:949:16:-;-1:-1:-1;;;;;7785:19:16;;7761:7;7785:19;;;:9;:19;;;;;;;;:37;;;;-1:-1:-1;7808:14:16;;;;7785:37;7781:857;;;7841:11;7855:24;7870:8;7855:14;:24::i;:::-;7841:38;;7896:17;7916:25;7932:8;7916:15;:25::i;:::-;7896:45;;8000:12;7962:15;7978:3;7962:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:50;7958:99;;-1:-1:-1;8040:1:16;;7696:949;-1:-1:-1;;;7696:949:16:o;7958:99::-;8073:17;8133:7;8113:16;;8095:15;:34;;;;:::i;:::-;8094:46;;;;:::i;:::-;8073:68;-1:-1:-1;8157:18:16;8242:3;8223:16;:12;8238:1;8223:16;:::i;:::-;:22;;;;:::i;:::-;8207:39;;:12;:39;:::i;:::-;8199:3;8179:17;:12;8194:2;8179:17;:::i;:::-;:23;;;;:::i;:::-;8178:69;;;;:::i;:::-;8157:90;;8284:12;8268:13;:28;:50;;;;8316:2;8300:12;:18;;8268:50;8264:276;;;8370:15;8386:3;8370:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8355:12;:49;;;;:::i;:::-;8339:65;;8264:276;;;8490:15;8506:3;8490:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8474:13;:50;;;;:::i;:::-;8458:66;;8264:276;8563:13;7696:949;-1:-1:-1;;;;;7696:949:16:o;7781:857::-;-1:-1:-1;8625:1:16;;7696:949;-1:-1:-1;7696:949:16:o;7781:857::-;7696:949;;;:::o;5411:529::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;5493:22:16;::::1;5485:93;;;::::0;-1:-1:-1;;;5485:93:16;;3772:2:28;5485:93:16::1;::::0;::::1;3754:21:28::0;3811:2;3791:18;;;3784:30;3850:34;3830:18;;;3823:62;3921:28;3901:18;;;3894:56;3967:19;;5485:93:16::1;3570:422:28::0;5485:93:16::1;5591:11;5605:24;5620:8;5605:14;:24::i;:::-;5591:38;;5642:20;5665:15;5681:3;5665:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;5642:43:::1;::::0;;::::1;::::0;::::1;::::0;;5665:20:::1;::::0;;::::1;::::0;;::::1;5642:43:::0;;-1:-1:-1;;;;;5642:43:16::1;::::0;;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;;;;;5719:15:::1;5735:22:::0;;5642:43;;-1:-1:-1;5719:15:16;5735:24:::1;::::0;::::1;:::i;:::-;5719:41;;;;;;;;:::i;:::-;;;;;;;;;;;5696:15;5712:3;5696:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;:64;;:20:::1;::::0;;::::1;;:64:::0;;-1:-1:-1;;;;;;5696:64:16::1;-1:-1:-1::0;;;;;5696:64:16;;::::1;::::0;;;::::1;::::0;;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;::::1;::::0;;;;::::1;::::0;;;;5771:15:::1;5787:22:::0;;5815:4;;5787:24:::1;::::0;::::1;:::i;:::-;5771:41;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;:48;;:41:::1;::::0;;;::::1;;:48:::0;;-1:-1:-1;;;;;;5771:48:16::1;-1:-1:-1::0;;;;;5771:48:16;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;-1:-1:-1;5771:48:16;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;::::1;::::0;5830:15:::1;:21:::0;;;::::1;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;-1:-1:-1::0;;5830:21:16;;;;;::::1;;::::0;;-1:-1:-1;;;;;;5830:21:16::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;;::::0;;;;;;;-1:-1:-1;;;;;5862:19:16;::::1;::::0;;;:9:::1;:19:::0;;;;;;;:27;;-1:-1:-1;;5862:27:16::1;::::0;;5907:25;5862:19;;5907:25:::1;::::0;::::1;5474:466;;5411:529:::0;:::o;3567:699::-;2070:10;2060:21;;;;:9;:21;;;;;;;;:29;;:21;:29;2052:100;;;;-1:-1:-1;;;2052:100:16;;4331:2:28;2052:100:16;;;4313:21:28;4370:2;4350:18;;;4343:30;4409:34;4389:18;;;4382:62;4480:28;4460:18;;;4453:56;4526:19;;2052:100:16;4129:422:28;2052:100:16;3627:14:::1;::::0;::::1;;3619:70;;;::::0;-1:-1:-1;;;3619:70:16;;4758:2:28;3619:70:16::1;::::0;::::1;4740:21:28::0;4797:2;4777:18;;;4770:30;4836:34;4816:18;;;4809:62;-1:-1:-1;;;4887:18:28;;;4880:41;4938:19;;3619:70:16::1;4556:407:28::0;3619:70:16::1;3700:21;3724:28;3741:10;3724:16;:28::i;:::-;3700:52;;3787:1;3771:13;:17;3763:82;;;::::0;-1:-1:-1;;;3763:82:16;;5170:2:28;3763:82:16::1;::::0;::::1;5152:21:28::0;5209:2;5189:18;;;5182:30;5248:34;5228:18;;;5221:62;-1:-1:-1;;;5299:18:28;;;5292:50;5359:19;;3763:82:16::1;4968:416:28::0;3763:82:16::1;3898:54;::::0;-1:-1:-1;;;3898:54:16;;3926:10:::1;3898:54;::::0;::::1;5563:51:28::0;5630:18;;;5623:34;;;3905:10:16::1;-1:-1:-1::0;;;;;3898:27:16::1;::::0;::::1;::::0;5536:18:28;;3898:54:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3890:109;;;::::0;-1:-1:-1;;;3890:109:16;;6152:2:28;3890:109:16::1;::::0;::::1;6134:21:28::0;6191:2;6171:18;;;6164:30;6230:34;6210:18;;;6203:62;-1:-1:-1;;;6281:18:28;;;6274:40;6331:19;;3890:109:16::1;5950:406:28::0;3890:109:16::1;4055:11;4069:26;4084:10;4069:14;:26::i;:::-;4055:40;;4188:13;4150:15;4166:3;4150:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:51;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4219:39:16::1;::::0;;4232:10:::1;5563:51:28::0;;5645:2;5630:18;;5623:34;;;4219:39:16::1;::::0;5536:18:28;4219:39:16::1;;;;;;;3608:658;;3567:699::o:0;10440:111::-;10491:17;10528:15;10521:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10521:22:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10440:111;:::o;6108:261::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;6174:14:16::1;::::0;::::1;;6173:15;6165:83;;;::::0;-1:-1:-1;;;6165:83:16;;6563:2:28;6165:83:16::1;::::0;::::1;6545:21:28::0;6602:2;6582:18;;;6575:30;6641:34;6621:18;;;6614:62;6712:25;6692:18;;;6685:53;6755:19;;6165:83:16::1;6361:419:28::0;6165:83:16::1;6261:14;:21:::0;;-1:-1:-1;;6261:21:16::1;6278:4;6261:21;::::0;;6312:15:::1;6293:16;:34:::0;6345:16:::1;::::0;::::1;::::0;6261:14:::1;::::0;6345:16:::1;6108:261::o:0;1815:148:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;1922:1:::1;1906:6:::0;;1885:40:::1;::::0;-1:-1:-1;;;;;1906:6:18;;::::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1953:1;1936:19:::0;;-1:-1:-1;;;;;;1936:19:18::1;::::0;;1815:148::o;9349:286:16:-;-1:-1:-1;;;;;9437:19:16;;9413:7;9437:19;;;:9;:19;;;;;;;;9433:195;;;9473:11;9487:24;9502:8;9487:14;:24::i;:::-;9473:38;;9533:15;9549:3;9533:20;;;;;;;;:::i;:::-;;;;;;;;;;;:33;;;9526:40;;;9349:286;;;:::o;6556:636::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;6643:10:16::1;-1:-1:-1::0;;;;;6634:19:16::1;:5;-1:-1:-1::0;;;;;6634:19:16::1;::::0;6626:89:::1;;;::::0;-1:-1:-1;;;6626:89:16;;6987:2:28;6626:89:16::1;::::0;::::1;6969:21:28::0;7026:2;7006:18;;;6999:30;7065:34;7045:18;;;7038:62;7136:27;7116:18;;;7109:55;7181:19;;6626:89:16::1;6785:421:28::0;6626:89:16::1;-1:-1:-1::0;;;;;6734:19:16;::::1;6726:87;;;::::0;-1:-1:-1;;;6726:87:16;;7413:2:28;6726:87:16::1;::::0;::::1;7395:21:28::0;7452:2;7432:18;;;7425:30;7491:34;7471:18;;;7464:62;7562:25;7542:18;;;7535:53;7605:19;;6726:87:16::1;7211:419:28::0;6726:87:16::1;6844:38;::::0;-1:-1:-1;;;6844:38:16;;6876:4:::1;6844:38;::::0;::::1;1781:51:28::0;6826:15:16::1;::::0;-1:-1:-1;;;;;6844:23:16;::::1;::::0;::::1;::::0;1754:18:28;;6844:38:16::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6826:56;;6911:1;6901:7;:11;6893:79;;;::::0;-1:-1:-1;;;6893:79:16;;8026:2:28;6893:79:16::1;::::0;::::1;8008:21:28::0;8065:2;8045:18;;;8038:30;8104:34;8084:18;;;8077:62;8175:25;8155:18;;;8148:53;8218:19;;6893:79:16::1;7824:419:28::0;6893:79:16::1;6985:12;7007:5;-1:-1:-1::0;;;;;7000:22:16::1;;7023:7;1210::18::0;1237:6;-1:-1:-1;;;;;1237:6:18;;1164:87;7023:7:16::1;7000:40;::::0;-1:-1:-1;;;;;;7000:40:16::1;::::0;;;;;;-1:-1:-1;;;;;5581:32:28;;;7000:40:16::1;::::0;::::1;5563:51:28::0;5630:18;;;5623:34;;;5536:18;;7000:40:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6985:55;;7059:7;7051:70;;;::::0;-1:-1:-1;;;7051:70:16;;8450:2:28;7051:70:16::1;::::0;::::1;8432:21:28::0;8489:2;8469:18;;;8462:30;8528:34;8508:18;;;8501:62;-1:-1:-1;;;8579:18:28;;;8572:48;8637:19;;7051:70:16::1;8248:414:28::0;7051:70:16::1;7139:45;7160:5;7167:7;7176;1210::18::0;1237:6;-1:-1:-1;;;;;1237:6:18;;1164:87;7176:7:16::1;7139:45;::::0;;-1:-1:-1;;;;;8925:15:28;;;8907:34;;8972:2;8957:18;;8950:34;;;;9020:15;;9000:18;;;8993:43;7139:45:16;;;;;;8857:2:28;7139:45:16;;::::1;6615:577;;6556:636:::0;:::o;8846:290::-;-1:-1:-1;;;;;8935:19:16;;8911:7;8935:19;;;:9;:19;;;;;;;;8931:198;;;8973:11;8987:24;9002:8;8987:14;:24::i;:::-;8973:38;;9033:15;9049:3;9033:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;9026:41;;;8846:290;;;:::o;2444:226:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;2525:6:::1;::::0;;;2508:23;;-1:-1:-1;;;;;;2508:23:18;;::::1;-1:-1:-1::0;;;;;2525:6:18;::::1;2508:23;::::0;;;2542:19:::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2659:1:::1;2643:6:::0;;2622:40:::1;::::0;-1:-1:-1;;;;;2643:6:18;;::::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;4652:595:16:-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;-1:-1:-1;;;;;4754:19:16;::::1;;::::0;;;:9:::1;:19;::::0;;;;;::::1;;:28;4746:93;;;::::0;-1:-1:-1;;;4746:93:16;;9249:2:28;4746:93:16::1;::::0;::::1;9231:21:28::0;9288:2;9268:18;;;9261:30;9327:34;9307:18;;;9300:62;-1:-1:-1;;;9378:18:28;;;9371:50;9438:19;;4746:93:16::1;9047:416:28::0;4746:93:16::1;-1:-1:-1::0;;;;;4858:22:16;::::1;4850:91;;;::::0;-1:-1:-1;;;4850:91:16;;9670:2:28;4850:91:16::1;::::0;::::1;9652:21:28::0;9709:2;9689:18;;;9682:30;9748:34;9728:18;;;9721:62;9819:26;9799:18;;;9792:54;9863:19;;4850:91:16::1;9468:420:28::0;4850:91:16::1;4976:1;4960:13;:17;4952:83;;;::::0;-1:-1:-1;;;4952:83:16;;10095:2:28;4952:83:16::1;::::0;::::1;10077:21:28::0;10134:2;10114:18;;;10107:30;10173:34;10153:18;;;10146:62;-1:-1:-1;;;10224:18:28;;;10217:51;10285:19;;4952:83:16::1;9893:417:28::0;4952:83:16::1;-1:-1:-1::0;;;;;5048:19:16;;::::1;;::::0;;;:9:::1;:19;::::0;;;;;;;:26;;5070:4:::1;-1:-1:-1::0;;5048:26:16;;::::1;::::0;::::1;::::0;;;5106:36;;::::1;::::0;::::1;::::0;;;;;;;::::1;::::0;;;;;;;;;5085:15:::1;:58:::0;;;;::::1;::::0;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;;;;;5085:58:16::1;::::0;;;::::1;;::::0;;;;;;;;;;;;;;;;;;;5156:17:::1;:34:::0;;5106:36;;5048:19;5156:34:::1;::::0;5106:36;;5156:34:::1;:::i;:::-;::::0;;;-1:-1:-1;;5216:23:16::1;::::0;-1:-1:-1;;;;;5216:23:16;::::1;::::0;::::1;::::0;;;::::1;4652:595:::0;;:::o;2118:244:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:18;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:18;;10517:2:28;2199:73:18::1;::::0;::::1;10499:21:28::0;10556:2;10536:18;;;10529:30;10595:34;10575:18;;;10568:62;-1:-1:-1;;;10646:18:28;;;10639:36;10692:19;;2199:73:18::1;10315:402:28::0;2199:73:18::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:18;;::::1;::::0;2309:6;::::1;::::0;2288:38:::1;::::0;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:18::1;-1:-1:-1::0;;;;;2337:17:18;;;::::1;::::0;;;::::1;::::0;;2118:244::o;9862:438:16:-;-1:-1:-1;;;;;9955:19:16;;9927:7;9955:19;;;:9;:19;;;;;;;;:27;;:19;:27;9947:96;;;;-1:-1:-1;;;9947:96:16;;10924:2:28;9947:96:16;;;10906:21:28;10963:2;10943:18;;;10936:30;11002:34;10982:18;;;10975:62;11073:26;11053:18;;;11046:54;11117:19;;9947:96:16;10722:420:28;9947:96:16;10056:11;;10080:190;10104:15;:22;10100:26;;10080:190;;;10182:8;-1:-1:-1;;;;;10152:38:16;:15;10168:1;10152:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:26;-1:-1:-1;;;;;10152:26:16;:38;10148:111;;10217:1;10211:7;;10238:5;;10148:111;10128:3;;;;:::i;:::-;;;;10080:190;;;-1:-1:-1;10289:3:16;9862:438;-1:-1:-1;;9862:438:16:o;196:173:28:-;264:20;;-1:-1:-1;;;;;313:31:28;;303:42;;293:70;;359:1;356;349:12;374:186;433:6;486:2;474:9;465:7;461:23;457:32;454:52;;;502:1;499;492:12;454:52;525:29;544:9;525:29;:::i;:::-;515:39;374:186;-1:-1:-1;;;374:186:28:o;565:873::-;790:2;842:21;;;912:13;;815:18;;;934:22;;;761:4;;790:2;975;;993:18;;;;1034:15;;;761:4;1077:335;1091:6;1088:1;1085:13;1077:335;;;1150:13;;1192:9;;-1:-1:-1;;;;;1188:35:28;1176:48;;1264:11;;;1258:18;1244:12;;;1237:40;1317:11;;1311:18;1297:12;;;1290:40;1359:4;1350:14;;;;1387:15;;;;1220:1;1106:9;1077:335;;;-1:-1:-1;1429:3:28;;565:873;-1:-1:-1;;;;;;;565:873:28:o;1843:180::-;1902:6;1955:2;1943:9;1934:7;1930:23;1926:32;1923:52;;;1971:1;1968;1961:12;1923:52;-1:-1:-1;1994:23:28;;1843:180;-1:-1:-1;1843:180:28:o;2028:254::-;2096:6;2104;2157:2;2145:9;2136:7;2132:23;2128:32;2125:52;;;2173:1;2170;2163:12;2125:52;2196:29;2215:9;2196:29;:::i;:::-;2186:39;2272:2;2257:18;;;;2244:32;;-1:-1:-1;;;2028:254:28:o;2287:127::-;2348:10;2343:3;2339:20;2336:1;2329:31;2379:4;2376:1;2369:15;2403:4;2400:1;2393:15;2419:127;2480:10;2475:3;2471:20;2468:1;2461:31;2511:4;2508:1;2501:15;2535:4;2532:1;2525:15;2551:125;2591:4;2619:1;2616;2613:8;2610:34;;;2624:18;;:::i;:::-;-1:-1:-1;2661:9:28;;2551:125::o;2681:217::-;2721:1;2747;2737:132;;2791:10;2786:3;2782:20;2779:1;2772:31;2826:4;2823:1;2816:15;2854:4;2851:1;2844:15;2737:132;-1:-1:-1;2883:9:28;;2681:217::o;2903:168::-;2943:7;3009:1;3005;3001:6;2997:14;2994:1;2991:21;2986:1;2979:9;2972:17;2968:45;2965:71;;;3016:18;;:::i;:::-;-1:-1:-1;3056:9:28;;2903:168::o;3076:128::-;3116:3;3147:1;3143:6;3140:1;3137:13;3134:39;;;3153:18;;:::i;:::-;-1:-1:-1;3189:9:28;;3076:128::o;3209:356::-;3411:2;3393:21;;;3430:18;;;3423:30;3489:34;3484:2;3469:18;;3462:62;3556:2;3541:18;;3209:356::o;3997:127::-;4058:10;4053:3;4049:20;4046:1;4039:31;4089:4;4086:1;4079:15;4113:4;4110:1;4103:15;5668:277;5735:6;5788:2;5776:9;5767:7;5763:23;5759:32;5756:52;;;5804:1;5801;5794:12;5756:52;5836:9;5830:16;5889:5;5882:13;5875:21;5868:5;5865:32;5855:60;;5911:1;5908;5901:12;7635:184;7705:6;7758:2;7746:9;7737:7;7733:23;7729:32;7726:52;;;7774:1;7771;7764:12;7726:52;-1:-1:-1;7797:16:28;;7635:184;-1:-1:-1;7635:184:28:o;11147:135::-;11186:3;11207:17;;;11204:43;;11227:18;;:::i;:::-;-1:-1:-1;11274:1:28;11263:13;;11147:135::o", "linkReferences": {}, "immutableReferences": { - "25541": [ + "27449": [ { - "start": 445, + "start": 471, "length": 32 }, { - "start": 2063, + "start": 2098, "length": 32 }, { - "start": 3010, + "start": 3045, "length": 32 } ] @@ -391,6 +417,7 @@ "addInvestor(address,uint256)": "ec20b457", "claim()": "4e71d92d", "enableVesting()": "5b904cb7", + "getAllVestedTokens()": "08ac7624", "getAmountClaimed(address)": "d36862e8", "getAmountToClaim(address)": "0bca8bcd", "getInvestorLibrary()": "50ad827a", @@ -401,560 +428,36 @@ "proveToken()": "85d4cad3", "removeInvestor(address)": "42714978", "renounceOwnership()": "715018a6", + "totalTokensToVest()": "a145f1b5", "transferOwnership(address)": "f2fde38b", "vestingEnabled()": "7f87bbd6", "vestingStartUnix()": "f02c6d8f", "withdrawErc20(address)": "c7e42b1b" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_proveToken\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_admin\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"Erc20TokensWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"InvestorAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"InvestorRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amountClaimed\",\"type\":\"uint256\"}],\"name\":\"ProveClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"VestingEnabled\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_tokensToVest\",\"type\":\"uint256\"}],\"name\":\"addInvestor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"claim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableVesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"getAmountClaimed\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"getAmountToClaim\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getInvestorLibrary\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokensToVest\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"tokensClaimed\",\"type\":\"uint256\"}],\"internalType\":\"struct Vesting.Investor[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"getTokensToVest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"investors\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"lock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeInvestor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"vestingEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"vestingStartUnix\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"withdrawErc20\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Erc20TokensWithdrawn(address,uint256,address)\":{\"params\":{\"amount\":\"tokens withdrawn.\",\"receiver\":\"address of msg.sender.\",\"token\":\"address of Erc20 token.\"}},\"InvestorAdded(address)\":{\"params\":{\"account\":\"is the wallet address of investor that was added to the investorLibrary.\"}},\"InvestorRemoved(address)\":{\"params\":{\"account\":\"is the wallet address of investor that was added to the investorLibrary.\"}},\"ProveClaimed(address,uint256)\":{\"params\":{\"account\":\"is the wallet address of msg.sender.\",\"amountClaimed\":\"is the amount of tokens the account claimed.\"}}},\"kind\":\"dev\",\"methods\":{\"addInvestor(address,uint256)\":{\"params\":{\"_account\":\"the wallet address of investor being added.\",\"_tokensToVest\":\"the amount of $PROVE that is being vested for that investor.\"}},\"claim()\":{\"details\":\"msg.sender must be the investor address\"},\"enableVesting()\":{\"details\":\"will set start time to vestingStartUnix. will set vestingEnabled to true.\"},\"getAmountClaimed(address)\":{\"params\":{\"_account\":\"address of investor.\"},\"returns\":{\"_0\":\"uint256 amount of tokens claimed by account.\"}},\"getAmountToClaim(address)\":{\"params\":{\"_account\":\"address of investor.\"},\"returns\":{\"_0\":\"uint256 amount of tokens to claim.\"}},\"getInvestorLibrary()\":{\"returns\":{\"_0\":\"Investor[] memory the array of investor structs \"}},\"getTokensToVest(address)\":{\"params\":{\"_account\":\"address of investor\"},\"returns\":{\"_0\":\"uint256 investor's tokensToVest\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"removeInvestor(address)\":{\"params\":{\"_account\":\"the wallet address of investor that is being removed.\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdrawErc20(address)\":{\"details\":\"token address cannot be $PROVE\",\"params\":{\"token\":\"contract address of token we wish to remove.\"}}},\"version\":1},\"userdoc\":{\"events\":{\"Erc20TokensWithdrawn(address,uint256,address)\":{\"notice\":\"This event is emitted when withdrawErc20() is executed.\"},\"InvestorAdded(address)\":{\"notice\":\"This event is emitted when addInvestor() is successfully executed.\"},\"InvestorRemoved(address)\":{\"notice\":\"This event is emitted when removeInvestor() is successfully executed.\"},\"ProveClaimed(address,uint256)\":{\"notice\":\"This event is emitted when claim() is successfully executed.\"},\"VestingEnabled()\":{\"notice\":\"This event is emitted when enableVesting() is executed. Should only be executed once.\"}},\"kind\":\"user\",\"methods\":{\"addInvestor(address,uint256)\":{\"notice\":\"This function sets an address as true in the investors mapping and also pushes a new investor element to the Investor array.\"},\"claim()\":{\"notice\":\"Used to claim vested tokens.\"},\"constructor\":{\"notice\":\"Mapping to track investor addresses.\"},\"enableVesting()\":{\"notice\":\"This function starts the vesting period.\"},\"getAmountClaimed(address)\":{\"notice\":\"This function returns the amount of tokens an investor HAS claimed.\"},\"getAmountToClaim(address)\":{\"notice\":\"This function returns the amount of tokens to claim for a specified investor.\"},\"getInvestorLibrary()\":{\"notice\":\"This function returns the investor library array\"},\"getTokensToVest(address)\":{\"notice\":\"This function returns an investors tokensToVest (amount of $PROVE allocated to that investor)\"},\"removeInvestor(address)\":{\"notice\":\"This function removes an investor from the investorLibrary.\"},\"vestingEnabled()\":{\"notice\":\"block timestamp of when vesting has begun\"},\"vestingStartUnix()\":{\"notice\":\"The vested token address.\"},\"withdrawErc20(address)\":{\"notice\":\"Is used to remove ERC20 tokens from the contract.\"}},\"notice\":\"This contract will hold $PROVE tokens in escrow This contract will facilitate the private sale investor vesting tokens This contract will follow a strict vesting schedule This contract will follow a claim model\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/Vesting.sol\":\"Vesting\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/Vesting.sol\":{\"keccak256\":\"0x9bbba0177c1e6e33919153caf168a978cea4140158713283ddf39e8f9efd5b4a\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://2b3e9f85c2c9b104be07aed03ae1f719d3a6712a8447fc37e1efd73e3c07dcd8\",\"dweb:/ipfs/QmewoBQ8Uu8VRfVFuizmPYgsWNKFfaQQqaSDjMMNhNJzaC\"]},\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]},\"src/interfaces/Interfaces.sol\":{\"keccak256\":\"0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7\",\"dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "_proveToken", - "type": "address" - }, - { - "internalType": "address", - "name": "_admin", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "token", - "type": "address", - "indexed": false - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256", - "indexed": false - }, - { - "internalType": "address", - "name": "receiver", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "Erc20TokensWithdrawn", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address", - "indexed": true - } - ], - "type": "event", - "name": "InvestorAdded", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address", - "indexed": true - } - ], - "type": "event", - "name": "InvestorRemoved", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "previousOwner", - "type": "address", - "indexed": true - }, - { - "internalType": "address", - "name": "newOwner", - "type": "address", - "indexed": true - } - ], - "type": "event", - "name": "OwnershipTransferred", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address", - "indexed": false - }, - { - "internalType": "uint256", - "name": "amountClaimed", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "ProveClaimed", - "anonymous": false - }, - { - "inputs": [], - "type": "event", - "name": "VestingEnabled", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_tokensToVest", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "addInvestor" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "claim" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "enableVesting" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_account", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getAmountClaimed", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_account", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getAmountToClaim", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "getInvestorLibrary", - "outputs": [ - { - "internalType": "struct Vesting.Investor[]", - "name": "", - "type": "tuple[]", - "components": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokensToVest", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "tokensClaimed", - "type": "uint256" - } - ] - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_account", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getTokensToVest", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "name": "investors", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "time", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "lock" - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "proveToken", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_account", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "removeInvestor" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "renounceOwnership" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "transferOwnership" - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "vestingEnabled", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "vestingStartUnix", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "token", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "withdrawErc20" - } - ], - "devdoc": { - "kind": "dev", - "methods": { - "addInvestor(address,uint256)": { - "params": { - "_account": "the wallet address of investor being added.", - "_tokensToVest": "the amount of $PROVE that is being vested for that investor." - } - }, - "claim()": { - "details": "msg.sender must be the investor address" - }, - "enableVesting()": { - "details": "will set start time to vestingStartUnix. will set vestingEnabled to true." - }, - "getAmountClaimed(address)": { - "params": { - "_account": "address of investor." - }, - "returns": { - "_0": "uint256 amount of tokens claimed by account." - } - }, - "getAmountToClaim(address)": { - "params": { - "_account": "address of investor." - }, - "returns": { - "_0": "uint256 amount of tokens to claim." - } - }, - "getInvestorLibrary()": { - "returns": { - "_0": "Investor[] memory the array of investor structs " - } - }, - "getTokensToVest(address)": { - "params": { - "_account": "address of investor" - }, - "returns": { - "_0": "uint256 investor's tokensToVest" - } - }, - "owner()": { - "details": "Returns the address of the current owner." - }, - "removeInvestor(address)": { - "params": { - "_account": "the wallet address of investor that is being removed." - } - }, - "renounceOwnership()": { - "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." - }, - "transferOwnership(address)": { - "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." - }, - "withdrawErc20(address)": { - "details": "token address cannot be $PROVE", - "params": { - "token": "contract address of token we wish to remove." - } - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": { - "addInvestor(address,uint256)": { - "notice": "This function sets an address as true in the investors mapping and also pushes a new investor element to the Investor array." - }, - "claim()": { - "notice": "Used to claim vested tokens." - }, - "constructor": { - "notice": "Mapping to track investor addresses." - }, - "enableVesting()": { - "notice": "This function starts the vesting period." - }, - "getAmountClaimed(address)": { - "notice": "This function returns the amount of tokens an investor HAS claimed." - }, - "getAmountToClaim(address)": { - "notice": "This function returns the amount of tokens to claim for a specified investor." - }, - "getInvestorLibrary()": { - "notice": "This function returns the investor library array" - }, - "getTokensToVest(address)": { - "notice": "This function returns an investors tokensToVest (amount of $PROVE allocated to that investor)" - }, - "removeInvestor(address)": { - "notice": "This function removes an investor from the investorLibrary." - }, - "vestingEnabled()": { - "notice": "block timestamp of when vesting has begun" - }, - "vestingStartUnix()": { - "notice": "The vested token address." - }, - "withdrawErc20(address)": { - "notice": "Is used to remove ERC20 tokens from the contract." - } - }, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "src/Vesting.sol": "Vesting" - }, - "libraries": {} - }, - "sources": { - "src/Vesting.sol": { - "keccak256": "0x9bbba0177c1e6e33919153caf168a978cea4140158713283ddf39e8f9efd5b4a", - "urls": [ - "bzz-raw://2b3e9f85c2c9b104be07aed03ae1f719d3a6712a8447fc37e1efd73e3c07dcd8", - "dweb:/ipfs/QmewoBQ8Uu8VRfVFuizmPYgsWNKFfaQQqaSDjMMNhNJzaC" - ], - "license": "UNLICENSED" - }, - "src/extensions/Context.sol": { - "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", - "urls": [ - "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", - "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" - ], - "license": "MIT" - }, - "src/extensions/Ownable.sol": { - "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", - "urls": [ - "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", - "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" - ], - "license": "MIT" - }, - "src/interfaces/Interfaces.sol": { - "keccak256": "0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04", - "urls": [ - "bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7", - "dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX" - ], - "license": "GPL-3.0-or-later" - } - }, - "version": 1 - }, "ast": { "absolutePath": "src/Vesting.sol", - "id": 26118, + "id": 28041, "exportedSymbols": { "Context": [ - 26143 + 28066 ], "IERC20": [ - 26425 + 29102 ], "Ownable": [ - 26291 + 28214 ], "Vesting": [ - 26117 + 28040 ] }, "nodeType": "SourceUnit", - "src": "40:10172:16", + "src": "40:10516:16", "nodes": [ { - "id": 25533, + "id": 27441, "nodeType": "PragmaDirective", "src": "40:24:16", - "nodes": [], "literals": [ "solidity", "^", @@ -963,36 +466,34 @@ ] }, { - "id": 25534, + "id": 27442, "nodeType": "ImportDirective", "src": "68:34:16", - "nodes": [], "absolutePath": "src/extensions/Ownable.sol", "file": "./extensions/Ownable.sol", "nameLocation": "-1:-1:-1", - "scope": 26118, - "sourceUnit": 26292, + "scope": 28041, + "sourceUnit": 28215, "symbolAliases": [], "unitAlias": "" }, { - "id": 25536, + "id": 27444, "nodeType": "ImportDirective", - "src": "104:51:16", - "nodes": [], - "absolutePath": "src/interfaces/Interfaces.sol", - "file": "./interfaces/Interfaces.sol", + "src": "104:47:16", + "absolutePath": "src/interfaces/IERC20.sol", + "file": "./interfaces/IERC20.sol", "nameLocation": "-1:-1:-1", - "scope": 26118, - "sourceUnit": 27207, + "scope": 28041, + "sourceUnit": 29111, "symbolAliases": [ { "foreign": { - "id": 25535, + "id": 27443, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, + "referencedDeclaration": 29102, "src": "112:6:16", "typeDescriptions": {} }, @@ -1002,21 +503,20 @@ "unitAlias": "" }, { - "id": 26117, + "id": 28040, "nodeType": "ContractDefinition", - "src": "494:9716:16", + "src": "490:10064:16", "nodes": [ { - "id": 25541, + "id": 27449, "nodeType": "VariableDeclaration", - "src": "605:35:16", - "nodes": [], + "src": "601:35:16", "constant": false, "functionSelector": "85d4cad3", "mutability": "immutable", "name": "proveToken", - "nameLocation": "630:10:16", - "scope": 26117, + "nameLocation": "626:10:16", + "scope": 28040, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1024,10 +524,10 @@ "typeString": "address" }, "typeName": { - "id": 25540, + "id": 27448, "name": "address", "nodeType": "ElementaryTypeName", - "src": "605:7:16", + "src": "601:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1037,22 +537,21 @@ "visibility": "public" }, { - "id": 25544, + "id": 27452, "nodeType": "VariableDeclaration", - "src": "688:31:16", - "nodes": [], + "src": "684:31:16", "constant": false, "documentation": { - "id": 25542, + "id": 27450, "nodeType": "StructuredDocumentation", - "src": "643:39:16", + "src": "639:39:16", "text": "@notice The vested token address." }, "functionSelector": "f02c6d8f", "mutability": "mutable", "name": "vestingStartUnix", - "nameLocation": "703:16:16", - "scope": 26117, + "nameLocation": "699:16:16", + "scope": 28040, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1060,10 +559,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25543, + "id": 27451, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "688:7:16", + "src": "684:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1072,22 +571,21 @@ "visibility": "public" }, { - "id": 25547, + "id": 27455, "nodeType": "VariableDeclaration", - "src": "781:26:16", - "nodes": [], + "src": "777:26:16", "constant": false, "documentation": { - "id": 25545, + "id": 27453, "nodeType": "StructuredDocumentation", - "src": "722:53:16", + "src": "718:53:16", "text": "@notice block timestamp of when vesting has begun" }, "functionSelector": "7f87bbd6", "mutability": "mutable", "name": "vestingEnabled", - "nameLocation": "793:14:16", - "scope": 26117, + "nameLocation": "789:14:16", + "scope": 28040, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1095,10 +593,10 @@ "typeString": "bool" }, "typeName": { - "id": 25546, + "id": 27454, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "781:4:16", + "src": "777:4:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1107,74 +605,97 @@ "visibility": "public" }, { - "id": 25552, + "id": 27458, "nodeType": "VariableDeclaration", - "src": "861:26:16", - "nodes": [], + "src": "857:32:16", "constant": false, "documentation": { - "id": 25548, + "id": 27456, "nodeType": "StructuredDocumentation", - "src": "815:40:16", + "src": "811:40:16", "text": "@notice vesting enabled when true." }, + "functionSelector": "a145f1b5", + "mutability": "mutable", + "name": "totalTokensToVest", + "nameLocation": "872:17:16", + "scope": 28040, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27457, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "857:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "id": 27462, + "nodeType": "VariableDeclaration", + "src": "898:26:16", + "constant": false, "mutability": "mutable", "name": "investorLibrary", - "nameLocation": "872:15:16", - "scope": 26117, + "nameLocation": "909:15:16", + "scope": 28040, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 25550, + "id": 27460, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 25549, + "id": 27459, "name": "Investor", - "nameLocations": [ - "861:8:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 25559, - "src": "861:8:16" + "referencedDeclaration": 27469, + "src": "898:8:16" }, - "referencedDeclaration": 25559, - "src": "861:8:16", + "referencedDeclaration": 27469, + "src": "898:8:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 25551, + "id": 27461, "nodeType": "ArrayTypeName", - "src": "861:10:16", + "src": "898:10:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" }, { - "id": 25559, + "id": 27469, "nodeType": "StructDefinition", - "src": "1171:113:16", - "nodes": [], + "src": "1208:113:16", "canonicalName": "Vesting.Investor", "members": [ { "constant": false, - "id": 25554, + "id": 27464, "mutability": "mutable", "name": "account", - "nameLocation": "1206:7:16", + "nameLocation": "1243:7:16", "nodeType": "VariableDeclaration", - "scope": 25559, - "src": "1198:15:16", + "scope": 27469, + "src": "1235:15:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1182,10 +703,10 @@ "typeString": "address" }, "typeName": { - "id": 25553, + "id": 27463, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1198:7:16", + "src": "1235:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1196,13 +717,13 @@ }, { "constant": false, - "id": 25556, + "id": 27466, "mutability": "mutable", "name": "tokensToVest", - "nameLocation": "1232:12:16", + "nameLocation": "1269:12:16", "nodeType": "VariableDeclaration", - "scope": 25559, - "src": "1224:20:16", + "scope": 27469, + "src": "1261:20:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1210,10 +731,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25555, + "id": 27465, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1224:7:16", + "src": "1261:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1223,13 +744,13 @@ }, { "constant": false, - "id": 25558, + "id": 27468, "mutability": "mutable", "name": "tokensClaimed", - "nameLocation": "1263:13:16", + "nameLocation": "1300:13:16", "nodeType": "VariableDeclaration", - "scope": 25559, - "src": "1255:21:16", + "scope": 27469, + "src": "1292:21:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1237,10 +758,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25557, + "id": 27467, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1255:7:16", + "src": "1292:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1250,21 +771,20 @@ } ], "name": "Investor", - "nameLocation": "1178:8:16", - "scope": 26117, + "nameLocation": "1215:8:16", + "scope": 28040, "visibility": "public" }, { - "id": 25563, + "id": 27473, "nodeType": "VariableDeclaration", - "src": "1292:41:16", - "nodes": [], + "src": "1329:41:16", "constant": false, "functionSelector": "6f7bc9be", "mutability": "mutable", "name": "investors", - "nameLocation": "1324:9:16", - "scope": 26117, + "nameLocation": "1361:9:16", + "scope": 28040, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1272,28 +792,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 25562, + "id": 27472, "keyType": { - "id": 25560, + "id": 27470, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1300:7:16", + "src": "1337:7:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1292:24:16", + "src": "1329:24:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 25561, + "id": 27471, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1311:4:16", + "src": "1348:4:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1303,30 +823,28 @@ "visibility": "public" }, { - "id": 25580, + "id": 27490, "nodeType": "FunctionDefinition", - "src": "1724:128:16", - "nodes": [], + "src": "1761:128:16", "body": { - "id": 25579, + "id": 27489, "nodeType": "Block", - "src": "1773:79:16", - "nodes": [], + "src": "1810:79:16", "statements": [ { "expression": { - "id": 25573, + "id": 27483, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 25571, + "id": 27481, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25541, - "src": "1784:10:16", + "referencedDeclaration": 27449, + "src": "1821:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1335,37 +853,37 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 25572, + "id": 27482, "name": "_proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25566, - "src": "1797:11:16", + "referencedDeclaration": 27476, + "src": "1834:11:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1784:24:16", + "src": "1821:24:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 25574, + "id": 27484, "nodeType": "ExpressionStatement", - "src": "1784:24:16" + "src": "1821:24:16" }, { "expression": { "arguments": [ { - "id": 25576, + "id": 27486, "name": "_admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25568, - "src": "1837:6:16", + "referencedDeclaration": 27478, + "src": "1874:6:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1379,43 +897,42 @@ "typeString": "address" } ], - "id": 25575, + "id": 27485, "name": "transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26256, - "src": "1819:17:16", + "referencedDeclaration": 28179, + "src": "1856:17:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 25577, + "id": 27487, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1819:25:16", + "src": "1856:25:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25578, + "id": 27488, "nodeType": "ExpressionStatement", - "src": "1819:25:16" + "src": "1856:25:16" } ] }, "documentation": { - "id": 25564, + "id": 27474, "nodeType": "StructuredDocumentation", - "src": "1342:48:16", + "src": "1379:48:16", "text": "@notice Mapping to track investor addresses." }, "implemented": true, @@ -1424,18 +941,18 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 25569, + "id": 27479, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25566, + "id": 27476, "mutability": "mutable", "name": "_proveToken", - "nameLocation": "1744:11:16", + "nameLocation": "1781:11:16", "nodeType": "VariableDeclaration", - "scope": 25580, - "src": "1736:19:16", + "scope": 27490, + "src": "1773:19:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1443,10 +960,10 @@ "typeString": "address" }, "typeName": { - "id": 25565, + "id": 27475, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1736:7:16", + "src": "1773:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1457,13 +974,13 @@ }, { "constant": false, - "id": 25568, + "id": 27478, "mutability": "mutable", "name": "_admin", - "nameLocation": "1765:6:16", + "nameLocation": "1802:6:16", "nodeType": "VariableDeclaration", - "scope": 25580, - "src": "1757:14:16", + "scope": 27490, + "src": "1794:14:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1471,10 +988,10 @@ "typeString": "address" }, "typeName": { - "id": 25567, + "id": 27477, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1757:7:16", + "src": "1794:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1484,29 +1001,27 @@ "visibility": "internal" } ], - "src": "1735:37:16" + "src": "1772:37:16" }, "returnParameters": { - "id": 25570, + "id": 27480, "nodeType": "ParameterList", "parameters": [], - "src": "1773:0:16" + "src": "1810:0:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 25595, + "id": 27505, "nodeType": "ModifierDefinition", - "src": "1980:155:16", - "nodes": [], + "src": "2017:155:16", "body": { - "id": 25594, + "id": 27504, "nodeType": "Block", - "src": "2004:131:16", - "nodes": [], + "src": "2041:131:16", "statements": [ { "expression": { @@ -1516,47 +1031,46 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 25589, + "id": 27499, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 25584, + "id": 27494, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "2023:9:16", + "referencedDeclaration": 27473, + "src": "2060:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 25587, + "id": 27497, "indexExpression": { "expression": { - "id": 25585, + "id": 27495, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "2033:3:16", + "src": "2070:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 25586, + "id": 27496, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2037:6:16", "memberName": "sender", "nodeType": "MemberAccess", - "src": "2033:10:16", + "src": "2070:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1567,7 +1081,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2023:21:16", + "src": "2060:21:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1577,21 +1091,21 @@ "operator": "==", "rightExpression": { "hexValue": "74727565", - "id": 25588, + "id": 27498, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2048:4:16", + "src": "2085:4:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "2023:29:16", + "src": "2060:29:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1599,14 +1113,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e73656e646572206d75737420626520616e20696e766573746f72", - "id": 25590, + "id": 27500, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2054:60:16", + "src": "2091:60:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_04c0e7337b94cd08ab709ab9e01a52972b8997f541f0ec03cfdf895720fa5020", "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" @@ -1625,7 +1139,7 @@ "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" } ], - "id": 25583, + "id": 27493, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1633,85 +1147,83 @@ -18 ], "referencedDeclaration": -18, - "src": "2015:7:16", + "src": "2052:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25591, + "id": 27501, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2015:100:16", + "src": "2052:100:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25592, + "id": 27502, "nodeType": "ExpressionStatement", - "src": "2015:100:16" + "src": "2052:100:16" }, { - "id": 25593, + "id": 27503, "nodeType": "PlaceholderStatement", - "src": "2126:1:16" + "src": "2163:1:16" } ] }, "documentation": { - "id": 25581, + "id": 27491, "nodeType": "StructuredDocumentation", - "src": "1918:56:16", + "src": "1955:56:16", "text": "@dev modifier to check if msg.sender is an investor." }, "name": "onlyInvestor", - "nameLocation": "1989:12:16", + "nameLocation": "2026:12:16", "parameters": { - "id": 25582, + "id": 27492, "nodeType": "ParameterList", "parameters": [], - "src": "2001:2:16" + "src": "2038:2:16" }, "virtual": false, "visibility": "internal" }, { - "id": 25602, + "id": 27512, "nodeType": "EventDefinition", - "src": "2406:59:16", - "nodes": [], + "src": "2443:59:16", "anonymous": false, "documentation": { - "id": 25596, + "id": 27506, "nodeType": "StructuredDocumentation", - "src": "2192:208:16", + "src": "2229:208:16", "text": "@notice This event is emitted when claim() is successfully executed.\n @param account is the wallet address of msg.sender.\n @param amountClaimed is the amount of tokens the account claimed." }, "eventSelector": "c9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d", "name": "ProveClaimed", - "nameLocation": "2412:12:16", + "nameLocation": "2449:12:16", "parameters": { - "id": 25601, + "id": 27511, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25598, + "id": 27508, "indexed": false, "mutability": "mutable", "name": "account", - "nameLocation": "2433:7:16", + "nameLocation": "2470:7:16", "nodeType": "VariableDeclaration", - "scope": 25602, - "src": "2425:15:16", + "scope": 27512, + "src": "2462:15:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1719,10 +1231,10 @@ "typeString": "address" }, "typeName": { - "id": 25597, + "id": 27507, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2425:7:16", + "src": "2462:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1733,14 +1245,14 @@ }, { "constant": false, - "id": 25600, + "id": 27510, "indexed": false, "mutability": "mutable", "name": "amountClaimed", - "nameLocation": "2450:13:16", + "nameLocation": "2487:13:16", "nodeType": "VariableDeclaration", - "scope": 25602, - "src": "2442:21:16", + "scope": 27512, + "src": "2479:21:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1748,10 +1260,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25599, + "id": 27509, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2442:7:16", + "src": "2479:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1760,38 +1272,37 @@ "visibility": "internal" } ], - "src": "2424:40:16" + "src": "2461:40:16" } }, { - "id": 25607, + "id": 27517, "nodeType": "EventDefinition", - "src": "2654:45:16", - "nodes": [], + "src": "2691:45:16", "anonymous": false, "documentation": { - "id": 25603, + "id": 27513, "nodeType": "StructuredDocumentation", - "src": "2473:175:16", + "src": "2510:175:16", "text": "@notice This event is emitted when addInvestor() is successfully executed.\n @param account is the wallet address of investor that was added to the investorLibrary." }, "eventSelector": "62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f", "name": "InvestorAdded", - "nameLocation": "2660:13:16", + "nameLocation": "2697:13:16", "parameters": { - "id": 25606, + "id": 27516, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25605, + "id": 27515, "indexed": true, "mutability": "mutable", "name": "account", - "nameLocation": "2690:7:16", + "nameLocation": "2727:7:16", "nodeType": "VariableDeclaration", - "scope": 25607, - "src": "2674:23:16", + "scope": 27517, + "src": "2711:23:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1799,10 +1310,10 @@ "typeString": "address" }, "typeName": { - "id": 25604, + "id": 27514, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2674:7:16", + "src": "2711:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1812,38 +1323,37 @@ "visibility": "internal" } ], - "src": "2673:25:16" + "src": "2710:25:16" } }, { - "id": 25612, + "id": 27522, "nodeType": "EventDefinition", - "src": "2891:47:16", - "nodes": [], + "src": "2928:47:16", "anonymous": false, "documentation": { - "id": 25608, + "id": 27518, "nodeType": "StructuredDocumentation", - "src": "2707:178:16", + "src": "2744:178:16", "text": "@notice This event is emitted when removeInvestor() is successfully executed.\n @param account is the wallet address of investor that was added to the investorLibrary." }, "eventSelector": "ba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d", "name": "InvestorRemoved", - "nameLocation": "2897:15:16", + "nameLocation": "2934:15:16", "parameters": { - "id": 25611, + "id": 27521, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25610, + "id": 27520, "indexed": true, "mutability": "mutable", "name": "account", - "nameLocation": "2929:7:16", + "nameLocation": "2966:7:16", "nodeType": "VariableDeclaration", - "scope": 25612, - "src": "2913:23:16", + "scope": 27522, + "src": "2950:23:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1851,10 +1361,10 @@ "typeString": "address" }, "typeName": { - "id": 25609, + "id": 27519, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2913:7:16", + "src": "2950:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1864,38 +1374,37 @@ "visibility": "internal" } ], - "src": "2912:25:16" + "src": "2949:25:16" } }, { - "id": 25621, + "id": 27531, "nodeType": "EventDefinition", - "src": "3154:76:16", - "nodes": [], + "src": "3191:76:16", "anonymous": false, "documentation": { - "id": 25613, + "id": 27523, "nodeType": "StructuredDocumentation", - "src": "2946:202:16", + "src": "2983:202:16", "text": "@notice This event is emitted when withdrawErc20() is executed.\n @param token address of Erc20 token.\n @param amount tokens withdrawn.\n @param receiver address of msg.sender." }, "eventSelector": "3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f", "name": "Erc20TokensWithdrawn", - "nameLocation": "3160:20:16", + "nameLocation": "3197:20:16", "parameters": { - "id": 25620, + "id": 27530, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25615, + "id": 27525, "indexed": false, "mutability": "mutable", "name": "token", - "nameLocation": "3189:5:16", + "nameLocation": "3226:5:16", "nodeType": "VariableDeclaration", - "scope": 25621, - "src": "3181:13:16", + "scope": 27531, + "src": "3218:13:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1903,10 +1412,10 @@ "typeString": "address" }, "typeName": { - "id": 25614, + "id": 27524, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3181:7:16", + "src": "3218:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1917,14 +1426,14 @@ }, { "constant": false, - "id": 25617, + "id": 27527, "indexed": false, "mutability": "mutable", "name": "amount", - "nameLocation": "3204:6:16", + "nameLocation": "3241:6:16", "nodeType": "VariableDeclaration", - "scope": 25621, - "src": "3196:14:16", + "scope": 27531, + "src": "3233:14:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1932,10 +1441,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25616, + "id": 27526, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3196:7:16", + "src": "3233:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1945,14 +1454,14 @@ }, { "constant": false, - "id": 25619, + "id": 27529, "indexed": false, "mutability": "mutable", "name": "receiver", - "nameLocation": "3220:8:16", + "nameLocation": "3257:8:16", "nodeType": "VariableDeclaration", - "scope": 25621, - "src": "3212:16:16", + "scope": 27531, + "src": "3249:16:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1960,10 +1469,10 @@ "typeString": "address" }, "typeName": { - "id": 25618, + "id": 27528, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3212:7:16", + "src": "3249:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1973,52 +1482,49 @@ "visibility": "internal" } ], - "src": "3180:49:16" + "src": "3217:49:16" } }, { - "id": 25624, + "id": 27534, "nodeType": "EventDefinition", - "src": "3341:23:16", - "nodes": [], + "src": "3378:23:16", "anonymous": false, "documentation": { - "id": 25622, + "id": 27532, "nodeType": "StructuredDocumentation", - "src": "3238:97:16", + "src": "3275:97:16", "text": "@notice This event is emitted when enableVesting() is executed. Should only be executed once." }, "eventSelector": "f78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa3", "name": "VestingEnabled", - "nameLocation": "3347:14:16", + "nameLocation": "3384:14:16", "parameters": { - "id": 25623, + "id": 27533, "nodeType": "ParameterList", "parameters": [], - "src": "3361:2:16" + "src": "3398:2:16" } }, { - "id": 25682, + "id": 27592, "nodeType": "FunctionDefinition", - "src": "3530:699:16", - "nodes": [], + "src": "3567:699:16", "body": { - "id": 25681, + "id": 27591, "nodeType": "Block", - "src": "3571:658:16", - "nodes": [], + "src": "3608:658:16", "statements": [ { "expression": { "arguments": [ { - "id": 25631, + "id": 27541, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25547, - "src": "3590:14:16", + "referencedDeclaration": 27455, + "src": "3627:14:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2026,14 +1532,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a636c61696d28292076657374696e67206973206e6f7420656e61626c6564", - "id": 25632, + "id": 27542, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3606:45:16", + "src": "3643:45:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_34ce9ff9fcf1e453c578e481f1424d1ad92317cc4ad3678a8839da76e7fbb7d6", "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" @@ -2052,7 +1558,7 @@ "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" } ], - "id": 25630, + "id": 27540, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2060,46 +1566,45 @@ -18 ], "referencedDeclaration": -18, - "src": "3582:7:16", + "src": "3619:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25633, + "id": 27543, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3582:70:16", + "src": "3619:70:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25634, + "id": 27544, "nodeType": "ExpressionStatement", - "src": "3582:70:16" + "src": "3619:70:16" }, { "assignments": [ - 25636 + 27546 ], "declarations": [ { "constant": false, - "id": 25636, + "id": 27546, "mutability": "mutable", "name": "amountToClaim", - "nameLocation": "3671:13:16", + "nameLocation": "3708:13:16", "nodeType": "VariableDeclaration", - "scope": 25681, - "src": "3663:21:16", + "scope": 27591, + "src": "3700:21:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2107,10 +1612,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25635, + "id": 27545, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3663:7:16", + "src": "3700:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2119,31 +1624,30 @@ "visibility": "internal" } ], - "id": 25641, + "id": 27551, "initialValue": { "arguments": [ { "expression": { - "id": 25638, + "id": 27548, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "3704:3:16", + "src": "3741:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 25639, + "id": 27549, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3708:6:16", "memberName": "sender", "nodeType": "MemberAccess", - "src": "3704:10:16", + "src": "3741:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2157,27 +1661,26 @@ "typeString": "address" } ], - "id": 25637, + "id": 27547, "name": "getAmountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26000, - "src": "3687:16:16", + "referencedDeclaration": 27923, + "src": "3724:16:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 25640, + "id": 27550, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3687:28:16", + "src": "3724:28:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2185,7 +1688,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "3663:52:16" + "src": "3700:52:16" }, { "expression": { @@ -2195,18 +1698,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25645, + "id": 27555, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25643, + "id": 27553, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25636, - "src": "3734:13:16", + "referencedDeclaration": 27546, + "src": "3771:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2216,21 +1719,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 25644, + "id": 27554, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3750:1:16", + "src": "3787:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3734:17:16", + "src": "3771:17:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2238,14 +1741,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686173206e6f20746f6b656e7320746f20636c61696d", - "id": 25646, + "id": 27556, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3753:54:16", + "src": "3790:54:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_7fe10741cbe6c2a9cecbadf80743676cd6f5fd9119dd5a58d21ffa6d6e330a51", "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" @@ -2264,7 +1767,7 @@ "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" } ], - "id": 25642, + "id": 27552, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2272,31 +1775,30 @@ -18 ], "referencedDeclaration": -18, - "src": "3726:7:16", + "src": "3763:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25647, + "id": 27557, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3726:82:16", + "src": "3763:82:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25648, + "id": 27558, "nodeType": "ExpressionStatement", - "src": "3726:82:16" + "src": "3763:82:16" }, { "expression": { @@ -2305,38 +1807,37 @@ "arguments": [ { "expression": { - "id": 25654, + "id": 27564, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "3889:3:16", + "src": "3926:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 25655, + "id": 27565, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3893:6:16", "memberName": "sender", "nodeType": "MemberAccess", - "src": "3889:10:16", + "src": "3926:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 25656, + "id": 27566, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25636, - "src": "3901:13:16", + "referencedDeclaration": 27546, + "src": "3938:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2357,12 +1858,12 @@ "expression": { "arguments": [ { - "id": 25651, + "id": 27561, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25541, - "src": "3868:10:16", + "referencedDeclaration": 27449, + "src": "3905:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2376,58 +1877,55 @@ "typeString": "address" } ], - "id": 25650, + "id": 27560, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "3861:6:16", + "referencedDeclaration": 29102, + "src": "3898:6:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 25652, + "id": 27562, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3861:18:16", + "src": "3898:18:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 25653, + "id": 27563, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3880:8:16", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 26374, - "src": "3861:27:16", + "referencedDeclaration": 29051, + "src": "3898:27:16", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 25657, + "id": 27567, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3861:54:16", + "src": "3898:54:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2436,14 +1934,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e7375636365737366756c", - "id": 25658, + "id": 27568, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3917:44:16", + "src": "3954:44:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1582297afdf7bee42b6ca3b96d51a42caca872f6fd9c2b28e52da0c647e180a4", "typeString": "literal_string \"Vesting.sol::claim() transfer unsuccessful\"" @@ -2462,7 +1960,7 @@ "typeString": "literal_string \"Vesting.sol::claim() transfer unsuccessful\"" } ], - "id": 25649, + "id": 27559, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2470,46 +1968,45 @@ -18 ], "referencedDeclaration": -18, - "src": "3853:7:16", + "src": "3890:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25659, + "id": 27569, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3853:109:16", + "src": "3890:109:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25660, + "id": 27570, "nodeType": "ExpressionStatement", - "src": "3853:109:16" + "src": "3890:109:16" }, { "assignments": [ - 25662 + 27572 ], "declarations": [ { "constant": false, - "id": 25662, + "id": 27572, "mutability": "mutable", "name": "idx", - "nameLocation": "4026:3:16", + "nameLocation": "4063:3:16", "nodeType": "VariableDeclaration", - "scope": 25681, - "src": "4018:11:16", + "scope": 27591, + "src": "4055:11:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2517,10 +2014,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25661, + "id": 27571, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4018:7:16", + "src": "4055:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2529,31 +2026,30 @@ "visibility": "internal" } ], - "id": 25667, + "id": 27577, "initialValue": { "arguments": [ { "expression": { - "id": 25664, + "id": 27574, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "4047:3:16", + "src": "4084:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 25665, + "id": 27575, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4051:6:16", "memberName": "sender", "nodeType": "MemberAccess", - "src": "4047:10:16", + "src": "4084:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2567,27 +2063,26 @@ "typeString": "address" } ], - "id": 25663, + "id": 27573, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26105, - "src": "4032:14:16", + "referencedDeclaration": 28028, + "src": "4069:14:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 25666, + "id": 27576, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4032:26:16", + "src": "4069:26:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2595,11 +2090,11 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4018:40:16" + "src": "4055:40:16" }, { "expression": { - "id": 25673, + "id": 27583, "isConstant": false, "isLValue": false, "isPure": false, @@ -2607,25 +2102,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 25668, + "id": 27578, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "4113:15:16", + "referencedDeclaration": 27462, + "src": "4150:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25670, + "id": 27580, "indexExpression": { - "id": 25669, + "id": 27579, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25662, - "src": "4129:3:16", + "referencedDeclaration": 27572, + "src": "4166:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2636,22 +2131,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4113:20:16", + "src": "4150:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 25671, + "id": 27581, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4134:13:16", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25558, - "src": "4113:34:16", + "referencedDeclaration": 27468, + "src": "4150:34:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2660,64 +2154,63 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 25672, + "id": 27582, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25636, - "src": "4151:13:16", + "referencedDeclaration": 27546, + "src": "4188:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4113:51:16", + "src": "4150:51:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 25674, + "id": 27584, "nodeType": "ExpressionStatement", - "src": "4113:51:16" + "src": "4150:51:16" }, { "eventCall": { "arguments": [ { "expression": { - "id": 25676, + "id": 27586, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "4195:3:16", + "src": "4232:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 25677, + "id": 27587, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4199:6:16", "memberName": "sender", "nodeType": "MemberAccess", - "src": "4195:10:16", + "src": "4232:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 25678, + "id": 27588, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25636, - "src": "4207:13:16", + "referencedDeclaration": 27546, + "src": "4244:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2735,43 +2228,42 @@ "typeString": "uint256" } ], - "id": 25675, + "id": 27585, "name": "ProveClaimed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25602, - "src": "4182:12:16", + "referencedDeclaration": 27512, + "src": "4219:12:16", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 25679, + "id": 27589, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4182:39:16", + "src": "4219:39:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25680, + "id": 27590, "nodeType": "EmitStatement", - "src": "4177:44:16" + "src": "4214:44:16" } ] }, "documentation": { - "id": 25625, + "id": 27535, "nodeType": "StructuredDocumentation", - "src": "3430:94:16", + "src": "3467:94:16", "text": "@notice Used to claim vested tokens.\n @dev msg.sender must be the investor address" }, "functionSelector": "4e71d92d", @@ -2780,51 +2272,46 @@ "modifiers": [ { "arguments": [], - "id": 25628, + "id": 27538, "kind": "modifierInvocation", "modifierName": { - "id": 25627, + "id": 27537, "name": "onlyInvestor", - "nameLocations": [ - "3556:12:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 25595, - "src": "3556:12:16" + "referencedDeclaration": 27505, + "src": "3593:12:16" }, "nodeType": "ModifierInvocation", - "src": "3556:14:16" + "src": "3593:14:16" } ], "name": "claim", - "nameLocation": "3539:5:16", + "nameLocation": "3576:5:16", "parameters": { - "id": 25626, + "id": 27536, "nodeType": "ParameterList", "parameters": [], - "src": "3544:2:16" + "src": "3581:2:16" }, "returnParameters": { - "id": 25629, + "id": 27539, "nodeType": "ParameterList", "parameters": [], - "src": "3571:0:16" + "src": "3608:0:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 25739, + "id": 27653, "nodeType": "FunctionDefinition", - "src": "4615:548:16", - "nodes": [], + "src": "4652:595:16", "body": { - "id": 25738, + "id": 27652, "nodeType": "Block", - "src": "4698:465:16", - "nodes": [], + "src": "4735:512:16", "statements": [ { "expression": { @@ -2834,32 +2321,32 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 25697, + "id": 27607, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 25693, + "id": 27603, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "4717:9:16", + "referencedDeclaration": 27473, + "src": "4754:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 25695, + "id": 27605, "indexExpression": { - "id": 25694, + "id": 27604, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25685, - "src": "4727:8:16", + "referencedDeclaration": 27595, + "src": "4764:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2870,7 +2357,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4717:19:16", + "src": "4754:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2880,21 +2367,21 @@ "operator": "==", "rightExpression": { "hexValue": "66616c7365", - "id": 25696, + "id": 27606, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "4740:5:16", + "src": "4777:5:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "src": "4717:28:16", + "src": "4754:28:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2902,14 +2389,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f72282920696e766573746f7220697320616c7265616479206164646564", - "id": 25698, + "id": 27608, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4747:54:16", + "src": "4784:54:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ac8b3365ec58116f79763809b4a76f0b400571fe8055cd18bc01fd9ea666875f", "typeString": "literal_string \"Vesting.sol::addInvestor() investor is already added\"" @@ -2928,7 +2415,7 @@ "typeString": "literal_string \"Vesting.sol::addInvestor() investor is already added\"" } ], - "id": 25692, + "id": 27602, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2936,31 +2423,30 @@ -18 ], "referencedDeclaration": -18, - "src": "4709:7:16", + "src": "4746:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25699, + "id": 27609, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4709:93:16", + "src": "4746:93:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25700, + "id": 27610, "nodeType": "ExpressionStatement", - "src": "4709:93:16" + "src": "4746:93:16" }, { "expression": { @@ -2970,18 +2456,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 25707, + "id": 27617, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25702, + "id": 27612, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25685, - "src": "4821:8:16", + "referencedDeclaration": 27595, + "src": "4858:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2993,14 +2479,14 @@ "arguments": [ { "hexValue": "30", - "id": 25705, + "id": 27615, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4841:1:16", + "src": "4878:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -3015,42 +2501,41 @@ "typeString": "int_const 0" } ], - "id": 25704, + "id": 27614, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4833:7:16", + "src": "4870:7:16", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 25703, + "id": 27613, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4833:7:16", + "src": "4870:7:16", "typeDescriptions": {} } }, - "id": 25706, + "id": 27616, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4833:10:16", + "src": "4870:10:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4821:22:16", + "src": "4858:22:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3058,14 +2543,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f756e742063616e6e6f742062652061646472657373283029", - "id": 25708, + "id": 27618, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4845:58:16", + "src": "4882:58:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_43a7576cc71999d5991f16be987a98bc7d178f59df62ec343336a603751a8636", "typeString": "literal_string \"Vesting.sol::addInvestor() _account cannot be address(0)\"" @@ -3084,7 +2569,7 @@ "typeString": "literal_string \"Vesting.sol::addInvestor() _account cannot be address(0)\"" } ], - "id": 25701, + "id": 27611, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3092,31 +2577,30 @@ -18 ], "referencedDeclaration": -18, - "src": "4813:7:16", + "src": "4850:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25709, + "id": 27619, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4813:91:16", + "src": "4850:91:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25710, + "id": 27620, "nodeType": "ExpressionStatement", - "src": "4813:91:16" + "src": "4850:91:16" }, { "expression": { @@ -3126,18 +2610,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25714, + "id": 27624, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25712, + "id": 27622, "name": "_tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25687, - "src": "4923:13:16", + "referencedDeclaration": 27597, + "src": "4960:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3147,21 +2631,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 25713, + "id": 27623, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4939:1:16", + "src": "4976:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4923:17:16", + "src": "4960:17:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3169,14 +2653,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b656e73546f56657374206d7573742062652067742030", - "id": 25715, + "id": 27625, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4942:55:16", + "src": "4979:55:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6c29cccc352d3a7eba90af13be2b3943b9e81df521048af1ca34057bc8661bb8", "typeString": "literal_string \"Vesting.sol::addInvestor() _tokensToVest must be gt 0\"" @@ -3195,7 +2679,7 @@ "typeString": "literal_string \"Vesting.sol::addInvestor() _tokensToVest must be gt 0\"" } ], - "id": 25711, + "id": 27621, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3203,60 +2687,59 @@ -18 ], "referencedDeclaration": -18, - "src": "4915:7:16", + "src": "4952:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25716, + "id": 27626, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4915:83:16", + "src": "4952:83:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25717, + "id": 27627, "nodeType": "ExpressionStatement", - "src": "4915:83:16" + "src": "4952:83:16" }, { "expression": { - "id": 25722, + "id": 27632, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 25718, + "id": 27628, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "5011:9:16", + "referencedDeclaration": 27473, + "src": "5048:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 25720, + "id": 27630, "indexExpression": { - "id": 25719, + "id": 27629, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25685, - "src": "5021:8:16", + "referencedDeclaration": 27595, + "src": "5058:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3267,7 +2750,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5011:19:16", + "src": "5048:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3277,29 +2760,29 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 25721, + "id": 27631, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5033:4:16", + "src": "5070:4:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "5011:26:16", + "src": "5048:26:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 25723, + "id": 27633, "nodeType": "ExpressionStatement", - "src": "5011:26:16" + "src": "5048:26:16" }, { "expression": { @@ -3307,24 +2790,24 @@ { "arguments": [ { - "id": 25728, + "id": 27638, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25685, - "src": "5078:8:16", + "referencedDeclaration": 27595, + "src": "5115:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 25729, + "id": 27639, "name": "_tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25687, - "src": "5088:13:16", + "referencedDeclaration": 27597, + "src": "5125:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3332,14 +2815,14 @@ }, { "hexValue": "30", - "id": 25730, + "id": 27640, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5103:1:16", + "src": "5140:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -3362,30 +2845,29 @@ "typeString": "int_const 0" } ], - "id": 25727, + "id": 27637, "name": "Investor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25559, - "src": "5069:8:16", + "referencedDeclaration": 27469, + "src": "5106:8:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Investor_$25559_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Investor_$27469_storage_ptr_$", "typeString": "type(struct Vesting.Investor storage pointer)" } }, - "id": 25731, + "id": 27641, "isConstant": false, "isLValue": false, "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5069:36:16", + "src": "5106:36:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } } @@ -3393,66 +2875,107 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Investor_$25559_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } ], "expression": { - "id": 25724, + "id": 27634, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5048:15:16", + "referencedDeclaration": 27462, + "src": "5085:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25726, + "id": 27636, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5064:4:16", "memberName": "push", "nodeType": "MemberAccess", - "src": "5048:20:16", + "src": "5085:20:16", "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_Investor_$25559_storage_$dyn_storage_ptr_$_t_struct$_Investor_$25559_storage_$returns$__$bound_to$_t_array$_t_struct$_Investor_$25559_storage_$dyn_storage_ptr_$", + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$_t_struct$_Investor_$27469_storage_$returns$__$bound_to$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$", "typeString": "function (struct Vesting.Investor storage ref[] storage pointer,struct Vesting.Investor storage ref)" } }, - "id": 25732, + "id": 27642, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5048:58:16", + "src": "5085:58:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25733, + "id": 27643, + "nodeType": "ExpressionStatement", + "src": "5085:58:16" + }, + { + "expression": { + "id": 27646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 27644, + "name": "totalTokensToVest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27458, + "src": "5156:17:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 27645, + "name": "_tokensToVest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27597, + "src": "5177:13:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5156:34:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 27647, "nodeType": "ExpressionStatement", - "src": "5048:58:16" + "src": "5156:34:16" }, { "eventCall": { "arguments": [ { - "id": 25735, + "id": 27649, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25685, - "src": "5146:8:16", + "referencedDeclaration": 27595, + "src": "5230:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3466,43 +2989,42 @@ "typeString": "address" } ], - "id": 25734, + "id": 27648, "name": "InvestorAdded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25607, - "src": "5132:13:16", + "referencedDeclaration": 27517, + "src": "5216:13:16", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 25736, + "id": 27650, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5132:23:16", + "src": "5216:23:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25737, + "id": 27651, "nodeType": "EmitStatement", - "src": "5127:28:16" + "src": "5211:28:16" } ] }, "documentation": { - "id": 25683, + "id": 27593, "nodeType": "StructuredDocumentation", - "src": "4313:296:16", + "src": "4350:296:16", "text": "@notice This function sets an address as true in the investors mapping and also pushes a new investor element to the Investor array.\n @param _account the wallet address of investor being added.\n @param _tokensToVest the amount of $PROVE that is being vested for that investor." }, "functionSelector": "ec20b457", @@ -3511,37 +3033,34 @@ "modifiers": [ { "arguments": [], - "id": 25690, + "id": 27600, "kind": "modifierInvocation", "modifierName": { - "id": 25689, + "id": 27599, "name": "onlyOwner", - "nameLocations": [ - "4686:9:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26206, - "src": "4686:9:16" + "referencedDeclaration": 28129, + "src": "4723:9:16" }, "nodeType": "ModifierInvocation", - "src": "4686:11:16" + "src": "4723:11:16" } ], "name": "addInvestor", - "nameLocation": "4624:11:16", + "nameLocation": "4661:11:16", "parameters": { - "id": 25688, + "id": 27598, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25685, + "id": 27595, "mutability": "mutable", "name": "_account", - "nameLocation": "4644:8:16", + "nameLocation": "4681:8:16", "nodeType": "VariableDeclaration", - "scope": 25739, - "src": "4636:16:16", + "scope": 27653, + "src": "4673:16:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3549,10 +3068,10 @@ "typeString": "address" }, "typeName": { - "id": 25684, + "id": 27594, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4636:7:16", + "src": "4673:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3563,13 +3082,13 @@ }, { "constant": false, - "id": 25687, + "id": 27597, "mutability": "mutable", "name": "_tokensToVest", - "nameLocation": "4662:13:16", + "nameLocation": "4699:13:16", "nodeType": "VariableDeclaration", - "scope": 25739, - "src": "4654:21:16", + "scope": 27653, + "src": "4691:21:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3577,10 +3096,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25686, + "id": 27596, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4654:7:16", + "src": "4691:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3589,29 +3108,27 @@ "visibility": "internal" } ], - "src": "4635:41:16" + "src": "4672:41:16" }, "returnParameters": { - "id": 25691, + "id": 27601, "nodeType": "ParameterList", "parameters": [], - "src": "4698:0:16" + "src": "4735:0:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 25806, + "id": 27720, "nodeType": "FunctionDefinition", - "src": "5327:529:16", - "nodes": [], + "src": "5411:529:16", "body": { - "id": 25805, + "id": 27719, "nodeType": "Block", - "src": "5390:466:16", - "nodes": [], + "src": "5474:466:16", "statements": [ { "expression": { @@ -3621,18 +3138,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 25753, + "id": 27667, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25748, + "id": 27662, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25742, - "src": "5409:8:16", + "referencedDeclaration": 27656, + "src": "5493:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3644,14 +3161,14 @@ "arguments": [ { "hexValue": "30", - "id": 25751, + "id": 27665, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5429:1:16", + "src": "5513:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -3666,42 +3183,41 @@ "typeString": "int_const 0" } ], - "id": 25750, + "id": 27664, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5421:7:16", + "src": "5505:7:16", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 25749, + "id": 27663, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5421:7:16", + "src": "5505:7:16", "typeDescriptions": {} } }, - "id": 25752, + "id": 27666, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5421:10:16", + "src": "5505:10:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "5409:22:16", + "src": "5493:22:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3709,14 +3225,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a72656d6f7665496e766573746f722829206163636f756e742063616e6e6f742062652061646472657373283029", - "id": 25754, + "id": 27668, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5433:60:16", + "src": "5517:60:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6b2ef8fa4a278f0c633eee5173cf5b45c06af3207fcf59338db6e0d4ebe3ce85", "typeString": "literal_string \"Vesting.sol::removeInvestor() account cannot be address(0)\"" @@ -3735,7 +3251,7 @@ "typeString": "literal_string \"Vesting.sol::removeInvestor() account cannot be address(0)\"" } ], - "id": 25747, + "id": 27661, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3743,46 +3259,45 @@ -18 ], "referencedDeclaration": -18, - "src": "5401:7:16", + "src": "5485:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25755, + "id": 27669, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5401:93:16", + "src": "5485:93:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25756, + "id": 27670, "nodeType": "ExpressionStatement", - "src": "5401:93:16" + "src": "5485:93:16" }, { "assignments": [ - 25758 + 27672 ], "declarations": [ { "constant": false, - "id": 25758, + "id": 27672, "mutability": "mutable", "name": "idx", - "nameLocation": "5515:3:16", + "nameLocation": "5599:3:16", "nodeType": "VariableDeclaration", - "scope": 25805, - "src": "5507:11:16", + "scope": 27719, + "src": "5591:11:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3790,10 +3305,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25757, + "id": 27671, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5507:7:16", + "src": "5591:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3802,16 +3317,16 @@ "visibility": "internal" } ], - "id": 25762, + "id": 27676, "initialValue": { "arguments": [ { - "id": 25760, + "id": 27674, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25742, - "src": "5536:8:16", + "referencedDeclaration": 27656, + "src": "5620:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3825,27 +3340,26 @@ "typeString": "address" } ], - "id": 25759, + "id": 27673, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26105, - "src": "5521:14:16", + "referencedDeclaration": 28028, + "src": "5605:14:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 25761, + "id": 27675, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5521:24:16", + "src": "5605:24:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3853,73 +3367,70 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "5507:38:16" + "src": "5591:38:16" }, { "assignments": [ - 25765 + 27679 ], "declarations": [ { "constant": false, - "id": 25765, + "id": 27679, "mutability": "mutable", "name": "temp", - "nameLocation": "5574:4:16", + "nameLocation": "5658:4:16", "nodeType": "VariableDeclaration", - "scope": 25805, - "src": "5558:20:16", + "scope": 27719, + "src": "5642:20:16", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor" }, "typeName": { - "id": 25764, + "id": 27678, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 25763, + "id": 27677, "name": "Investor", - "nameLocations": [ - "5558:8:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 25559, - "src": "5558:8:16" + "referencedDeclaration": 27469, + "src": "5642:8:16" }, - "referencedDeclaration": 25559, - "src": "5558:8:16", + "referencedDeclaration": 27469, + "src": "5642:8:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", "typeString": "struct Vesting.Investor" } }, "visibility": "internal" } ], - "id": 25769, + "id": 27683, "initialValue": { "baseExpression": { - "id": 25766, + "id": 27680, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5581:15:16", + "referencedDeclaration": 27462, + "src": "5665:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25768, + "id": 27682, "indexExpression": { - "id": 25767, + "id": 27681, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25758, - "src": "5597:3:16", + "referencedDeclaration": 27672, + "src": "5681:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3930,43 +3441,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5581:20:16", + "src": "5665:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5558:43:16" + "src": "5642:43:16" }, { "expression": { - "id": 25779, + "id": 27693, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 25770, + "id": 27684, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5612:15:16", + "referencedDeclaration": 27462, + "src": "5696:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25772, + "id": 27686, "indexExpression": { - "id": 25771, + "id": 27685, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25758, - "src": "5628:3:16", + "referencedDeclaration": 27672, + "src": "5712:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3977,9 +3488,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5612:20:16", + "src": "5696:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, @@ -3987,50 +3498,49 @@ "operator": "=", "rightHandSide": { "baseExpression": { - "id": 25773, + "id": 27687, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5635:15:16", + "referencedDeclaration": 27462, + "src": "5719:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25778, + "id": 27692, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25777, + "id": 27691, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 25774, + "id": 27688, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5651:15:16", + "referencedDeclaration": 27462, + "src": "5735:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25775, + "id": 27689, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5667:6:16", "memberName": "length", "nodeType": "MemberAccess", - "src": "5651:22:16", + "src": "5735:22:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4040,21 +3550,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 25776, + "id": 27690, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5674:1:16", + "src": "5758:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "5651:24:16", + "src": "5735:24:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4065,75 +3575,74 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5635:41:16", + "src": "5719:41:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "src": "5612:64:16", + "src": "5696:64:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 25780, + "id": 27694, "nodeType": "ExpressionStatement", - "src": "5612:64:16" + "src": "5696:64:16" }, { "expression": { - "id": 25788, + "id": 27702, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 25781, + "id": 27695, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5687:15:16", + "referencedDeclaration": 27462, + "src": "5771:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25786, + "id": 27700, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25785, + "id": 27699, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 25782, + "id": 27696, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5703:15:16", + "referencedDeclaration": 27462, + "src": "5787:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25783, + "id": 27697, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5719:6:16", "memberName": "length", "nodeType": "MemberAccess", - "src": "5703:22:16", + "src": "5787:22:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4143,21 +3652,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 25784, + "id": 27698, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5726:1:16", + "src": "5810:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "5703:24:16", + "src": "5787:24:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4168,35 +3677,35 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5687:41:16", + "src": "5771:41:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 25787, + "id": 27701, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25765, - "src": "5731:4:16", + "referencedDeclaration": 27679, + "src": "5815:4:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "src": "5687:48:16", + "src": "5771:48:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 25789, + "id": 27703, "nodeType": "ExpressionStatement", - "src": "5687:48:16" + "src": "5771:48:16" }, { "expression": { @@ -4204,79 +3713,77 @@ "expression": { "argumentTypes": [], "expression": { - "id": 25790, + "id": 27704, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "5746:15:16", + "referencedDeclaration": 27462, + "src": "5830:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25792, + "id": 27706, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5762:3:16", "memberName": "pop", "nodeType": "MemberAccess", - "src": "5746:19:16", + "src": "5830:19:16", "typeDescriptions": { - "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_struct$_Investor_$25559_storage_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_struct$_Investor_$25559_storage_$dyn_storage_ptr_$", + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$", "typeString": "function (struct Vesting.Investor storage ref[] storage pointer)" } }, - "id": 25793, + "id": 27707, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5746:21:16", + "src": "5830:21:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25794, + "id": 27708, "nodeType": "ExpressionStatement", - "src": "5746:21:16" + "src": "5830:21:16" }, { "expression": { - "id": 25799, + "id": 27713, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 25795, + "id": 27709, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "5778:9:16", + "referencedDeclaration": 27473, + "src": "5862:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 25797, + "id": 27711, "indexExpression": { - "id": 25796, + "id": 27710, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25742, - "src": "5788:8:16", + "referencedDeclaration": 27656, + "src": "5872:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4287,7 +3794,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5778:19:16", + "src": "5862:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4297,40 +3804,40 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 25798, + "id": 27712, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5800:5:16", + "src": "5884:5:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "src": "5778:27:16", + "src": "5862:27:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 25800, + "id": 27714, "nodeType": "ExpressionStatement", - "src": "5778:27:16" + "src": "5862:27:16" }, { "eventCall": { "arguments": [ { - "id": 25802, + "id": 27716, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25742, - "src": "5839:8:16", + "referencedDeclaration": 27656, + "src": "5923:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4344,43 +3851,42 @@ "typeString": "address" } ], - "id": 25801, + "id": 27715, "name": "InvestorRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25612, - "src": "5823:15:16", + "referencedDeclaration": 27522, + "src": "5907:15:16", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 25803, + "id": 27717, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5823:25:16", + "src": "5907:25:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25804, + "id": 27718, "nodeType": "EmitStatement", - "src": "5818:30:16" + "src": "5902:30:16" } ] }, "documentation": { - "id": 25740, + "id": 27654, "nodeType": "StructuredDocumentation", - "src": "5171:150:16", + "src": "5255:150:16", "text": "@notice This function removes an investor from the investorLibrary.\n @param _account the wallet address of investor that is being removed." }, "functionSelector": "42714978", @@ -4389,37 +3895,34 @@ "modifiers": [ { "arguments": [], - "id": 25745, + "id": 27659, "kind": "modifierInvocation", "modifierName": { - "id": 25744, + "id": 27658, "name": "onlyOwner", - "nameLocations": [ - "5378:9:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26206, - "src": "5378:9:16" + "referencedDeclaration": 28129, + "src": "5462:9:16" }, "nodeType": "ModifierInvocation", - "src": "5378:11:16" + "src": "5462:11:16" } ], "name": "removeInvestor", - "nameLocation": "5336:14:16", + "nameLocation": "5420:14:16", "parameters": { - "id": 25743, + "id": 27657, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25742, + "id": 27656, "mutability": "mutable", "name": "_account", - "nameLocation": "5359:8:16", + "nameLocation": "5443:8:16", "nodeType": "VariableDeclaration", - "scope": 25806, - "src": "5351:16:16", + "scope": 27720, + "src": "5435:16:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4427,10 +3930,10 @@ "typeString": "address" }, "typeName": { - "id": 25741, + "id": 27655, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5351:7:16", + "src": "5435:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4440,35 +3943,33 @@ "visibility": "internal" } ], - "src": "5350:18:16" + "src": "5434:18:16" }, "returnParameters": { - "id": 25746, + "id": 27660, "nodeType": "ParameterList", "parameters": [], - "src": "5390:0:16" + "src": "5474:0:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 25831, + "id": 27745, "nodeType": "FunctionDefinition", - "src": "6024:261:16", - "nodes": [], + "src": "6108:261:16", "body": { - "id": 25830, + "id": 27744, "nodeType": "Block", - "src": "6070:215:16", - "nodes": [], + "src": "6154:215:16", "statements": [ { "expression": { "arguments": [ { - "id": 25814, + "id": 27728, "isConstant": false, "isLValue": false, "isPure": false, @@ -4476,14 +3977,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6089:15:16", + "src": "6173:15:16", "subExpression": { - "id": 25813, + "id": 27727, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25547, - "src": "6090:14:16", + "referencedDeclaration": 27455, + "src": "6174:14:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4496,14 +3997,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657374696e6720697320616c726561647920656e61626c6564", - "id": 25815, + "id": 27729, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6106:57:16", + "src": "6190:57:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_b81e7806853eebb1dd20d036cf5def1e03a3259047e4c17a645085fd705441b0", "typeString": "literal_string \"Vesting.sol::enableVesting() vesting is already enabled\"" @@ -4522,7 +4023,7 @@ "typeString": "literal_string \"Vesting.sol::enableVesting() vesting is already enabled\"" } ], - "id": 25812, + "id": 27726, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4530,46 +4031,45 @@ -18 ], "referencedDeclaration": -18, - "src": "6081:7:16", + "src": "6165:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25816, + "id": 27730, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6081:83:16", + "src": "6165:83:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25817, + "id": 27731, "nodeType": "ExpressionStatement", - "src": "6081:83:16" + "src": "6165:83:16" }, { "expression": { - "id": 25820, + "id": 27734, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 25818, + "id": 27732, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25547, - "src": "6177:14:16", + "referencedDeclaration": 27455, + "src": "6261:14:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4579,44 +4079,44 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 25819, + "id": 27733, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6194:4:16", + "src": "6278:4:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "6177:21:16", + "src": "6261:21:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 25821, + "id": 27735, "nodeType": "ExpressionStatement", - "src": "6177:21:16" + "src": "6261:21:16" }, { "expression": { - "id": 25825, + "id": 27739, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 25822, + "id": 27736, "name": "vestingStartUnix", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25544, - "src": "6209:16:16", + "referencedDeclaration": 27452, + "src": "6293:16:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4626,83 +4126,81 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 25823, + "id": 27737, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "6228:5:16", + "src": "6312:5:16", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 25824, + "id": 27738, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6234:9:16", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "6228:15:16", + "src": "6312:15:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6209:34:16", + "src": "6293:34:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 25826, + "id": 27740, "nodeType": "ExpressionStatement", - "src": "6209:34:16" + "src": "6293:34:16" }, { "eventCall": { "arguments": [], "expression": { "argumentTypes": [], - "id": 25827, + "id": 27741, "name": "VestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25624, - "src": "6261:14:16", + "referencedDeclaration": 27534, + "src": "6345:14:16", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 25828, + "id": 27742, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6261:16:16", + "src": "6345:16:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25829, + "id": 27743, "nodeType": "EmitStatement", - "src": "6256:21:16" + "src": "6340:21:16" } ] }, "documentation": { - "id": 25807, + "id": 27721, "nodeType": "StructuredDocumentation", - "src": "5864:154:16", + "src": "5948:154:16", "text": "@notice This function starts the vesting period.\n @dev will set start time to vestingStartUnix.\n will set vestingEnabled to true." }, "functionSelector": "5b904cb7", @@ -4711,51 +4209,46 @@ "modifiers": [ { "arguments": [], - "id": 25810, + "id": 27724, "kind": "modifierInvocation", "modifierName": { - "id": 25809, + "id": 27723, "name": "onlyOwner", - "nameLocations": [ - "6058:9:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26206, - "src": "6058:9:16" + "referencedDeclaration": 28129, + "src": "6142:9:16" }, "nodeType": "ModifierInvocation", - "src": "6058:11:16" + "src": "6142:11:16" } ], "name": "enableVesting", - "nameLocation": "6033:13:16", + "nameLocation": "6117:13:16", "parameters": { - "id": 25808, + "id": 27722, "nodeType": "ParameterList", "parameters": [], - "src": "6046:2:16" + "src": "6130:2:16" }, "returnParameters": { - "id": 25811, + "id": 27725, "nodeType": "ParameterList", "parameters": [], - "src": "6070:0:16" + "src": "6154:0:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 25899, + "id": 27813, "nodeType": "FunctionDefinition", - "src": "6472:636:16", - "nodes": [], + "src": "6556:636:16", "body": { - "id": 25898, + "id": 27812, "nodeType": "Block", - "src": "6531:577:16", - "nodes": [], + "src": "6615:577:16", "statements": [ { "expression": { @@ -4765,18 +4258,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 25842, + "id": 27756, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25840, + "id": 27754, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25834, - "src": "6550:5:16", + "referencedDeclaration": 27748, + "src": "6634:5:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4785,18 +4278,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 25841, + "id": 27755, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25541, - "src": "6559:10:16", + "referencedDeclaration": 27449, + "src": "6643:10:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6550:19:16", + "src": "6634:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4804,14 +4297,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a7769746864726177457263323028292063616e6e6f74207769746864726177202450524f564520746f6b656e", - "id": 25843, + "id": 27757, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6571:59:16", + "src": "6655:59:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_75db5b4aa55e9f0b03e4a8c070f8f66290a98338aaae1576bb806eef1f0080d2", "typeString": "literal_string \"Vesting.sol::withdrawErc20() cannot withdraw $PROVE token\"" @@ -4830,7 +4323,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() cannot withdraw $PROVE token\"" } ], - "id": 25839, + "id": 27753, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4838,31 +4331,30 @@ -18 ], "referencedDeclaration": -18, - "src": "6542:7:16", + "src": "6626:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25844, + "id": 27758, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6542:89:16", + "src": "6626:89:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25845, + "id": 27759, "nodeType": "ExpressionStatement", - "src": "6542:89:16" + "src": "6626:89:16" }, { "expression": { @@ -4872,18 +4364,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 25852, + "id": 27766, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25847, + "id": 27761, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25834, - "src": "6650:5:16", + "referencedDeclaration": 27748, + "src": "6734:5:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4895,14 +4387,14 @@ "arguments": [ { "hexValue": "30", - "id": 25850, + "id": 27764, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6667:1:16", + "src": "6751:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -4917,42 +4409,41 @@ "typeString": "int_const 0" } ], - "id": 25849, + "id": 27763, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6659:7:16", + "src": "6743:7:16", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 25848, + "id": 27762, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6659:7:16", + "src": "6743:7:16", "typeDescriptions": {} } }, - "id": 25851, + "id": 27765, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6659:10:16", + "src": "6743:10:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6650:19:16", + "src": "6734:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4960,14 +4451,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b656e2063616e6e6f742062652061646472657373283029", - "id": 25853, + "id": 27767, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6671:57:16", + "src": "6755:57:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_29e76f784f984a6a07713ea53163c68fa39fa9a65b7a983cda7f9b66495bef31", "typeString": "literal_string \"Vesting.sol::withdrawErc20() token cannot be address(0)\"" @@ -4986,7 +4477,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() token cannot be address(0)\"" } ], - "id": 25846, + "id": 27760, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4994,46 +4485,45 @@ -18 ], "referencedDeclaration": -18, - "src": "6642:7:16", + "src": "6726:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25854, + "id": 27768, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6642:87:16", + "src": "6726:87:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25855, + "id": 27769, "nodeType": "ExpressionStatement", - "src": "6642:87:16" + "src": "6726:87:16" }, { "assignments": [ - 25857 + 27771 ], "declarations": [ { "constant": false, - "id": 25857, + "id": 27771, "mutability": "mutable", "name": "balance", - "nameLocation": "6750:7:16", + "nameLocation": "6834:7:16", "nodeType": "VariableDeclaration", - "scope": 25898, - "src": "6742:15:16", + "scope": 27812, + "src": "6826:15:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5041,10 +4531,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25856, + "id": 27770, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6742:7:16", + "src": "6826:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5053,20 +4543,20 @@ "visibility": "internal" } ], - "id": 25867, + "id": 27781, "initialValue": { "arguments": [ { "arguments": [ { - "id": 25864, + "id": 27778, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "6792:4:16", + "src": "6876:4:16", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26117", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -5074,39 +4564,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26117", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 25863, + "id": 27777, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6784:7:16", + "src": "6868:7:16", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 25862, + "id": 27776, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6784:7:16", + "src": "6868:7:16", "typeDescriptions": {} } }, - "id": 25865, + "id": 27779, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6784:13:16", + "src": "6868:13:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5124,12 +4613,12 @@ "expression": { "arguments": [ { - "id": 25859, + "id": 27773, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25834, - "src": "6767:5:16", + "referencedDeclaration": 27748, + "src": "6851:5:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5143,58 +4632,55 @@ "typeString": "address" } ], - "id": 25858, + "id": 27772, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "6760:6:16", + "referencedDeclaration": 29102, + "src": "6844:6:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 25860, + "id": 27774, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6760:13:16", + "src": "6844:13:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 25861, + "id": 27775, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6774:9:16", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26364, - "src": "6760:23:16", + "referencedDeclaration": 29041, + "src": "6844:23:16", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 25866, + "id": 27780, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6760:38:16", + "src": "6844:38:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5202,7 +4688,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "6742:56:16" + "src": "6826:56:16" }, { "expression": { @@ -5212,18 +4698,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25871, + "id": 27785, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25869, + "id": 27783, "name": "balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25857, - "src": "6817:7:16", + "referencedDeclaration": 27771, + "src": "6901:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5233,21 +4719,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 25870, + "id": 27784, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6827:1:16", + "src": "6911:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6817:11:16", + "src": "6901:11:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5255,14 +4741,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a77697468647261774572633230282920696e73756666696369656e7420746f6b656e2062616c616e6365", - "id": 25872, + "id": 27786, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6830:57:16", + "src": "6914:57:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_85892f03ec8e97515a01b84c9239dbced7e62306353ae22f1c016c668c87f26e", "typeString": "literal_string \"Vesting.sol::withdrawErc20() insufficient token balance\"" @@ -5281,7 +4767,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() insufficient token balance\"" } ], - "id": 25868, + "id": 27782, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5289,46 +4775,45 @@ -18 ], "referencedDeclaration": -18, - "src": "6809:7:16", + "src": "6893:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25873, + "id": 27787, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6809:79:16", + "src": "6893:79:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25874, + "id": 27788, "nodeType": "ExpressionStatement", - "src": "6809:79:16" + "src": "6893:79:16" }, { "assignments": [ - 25876 + 27790 ], "declarations": [ { "constant": false, - "id": 25876, + "id": 27790, "mutability": "mutable", "name": "success", - "nameLocation": "6906:7:16", + "nameLocation": "6990:7:16", "nodeType": "VariableDeclaration", - "scope": 25898, - "src": "6901:12:16", + "scope": 27812, + "src": "6985:12:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5336,10 +4821,10 @@ "typeString": "bool" }, "typeName": { - "id": 25875, + "id": 27789, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6901:4:16", + "src": "6985:4:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5348,34 +4833,33 @@ "visibility": "internal" } ], - "id": 25885, + "id": 27799, "initialValue": { "arguments": [ { "arguments": [], "expression": { "argumentTypes": [], - "id": 25881, + "id": 27795, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26192, - "src": "6939:5:16", + "referencedDeclaration": 28115, + "src": "7023:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 25882, + "id": 27796, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6939:7:16", + "src": "7023:7:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5383,12 +4867,12 @@ } }, { - "id": 25883, + "id": 27797, "name": "balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25857, - "src": "6948:7:16", + "referencedDeclaration": 27771, + "src": "7032:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5409,12 +4893,12 @@ "expression": { "arguments": [ { - "id": 25878, + "id": 27792, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25834, - "src": "6923:5:16", + "referencedDeclaration": 27748, + "src": "7007:5:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5428,58 +4912,55 @@ "typeString": "address" } ], - "id": 25877, + "id": 27791, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26425, - "src": "6916:6:16", + "referencedDeclaration": 29102, + "src": "7000:6:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26425_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 25879, + "id": 27793, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6916:13:16", + "src": "7000:13:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26425", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 25880, + "id": 27794, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6930:8:16", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 26374, - "src": "6916:22:16", + "referencedDeclaration": 29051, + "src": "7000:22:16", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 25884, + "id": 27798, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6916:40:16", + "src": "7000:40:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5487,18 +4968,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "6901:55:16" + "src": "6985:55:16" }, { "expression": { "arguments": [ { - "id": 25887, + "id": 27801, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25876, - "src": "6975:7:16", + "referencedDeclaration": 27790, + "src": "7059:7:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5506,14 +4987,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a776974686472617745726332302829207472616e7366657220756e7375636365737366756c", - "id": 25888, + "id": 27802, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6984:52:16", + "src": "7068:52:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_15e8b103591986e2799c2dc971bdc5cdfd784ab9acde7b421a1ef4ce4227abca", "typeString": "literal_string \"Vesting.sol::withdrawErc20() transfer unsuccessful\"" @@ -5532,7 +5013,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() transfer unsuccessful\"" } ], - "id": 25886, + "id": 27800, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5540,54 +5021,53 @@ -18 ], "referencedDeclaration": -18, - "src": "6967:7:16", + "src": "7051:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 25889, + "id": 27803, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6967:70:16", + "src": "7051:70:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25890, + "id": 27804, "nodeType": "ExpressionStatement", - "src": "6967:70:16" + "src": "7051:70:16" }, { "eventCall": { "arguments": [ { - "id": 25892, + "id": 27806, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25834, - "src": "7076:5:16", + "referencedDeclaration": 27748, + "src": "7160:5:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 25893, + "id": 27807, "name": "balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25857, - "src": "7083:7:16", + "referencedDeclaration": 27771, + "src": "7167:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5597,27 +5077,26 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 25894, + "id": 27808, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26192, - "src": "7092:5:16", + "referencedDeclaration": 28115, + "src": "7176:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 25895, + "id": 27809, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7092:7:16", + "src": "7176:7:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5640,43 +5119,42 @@ "typeString": "address" } ], - "id": 25891, + "id": 27805, "name": "Erc20TokensWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25621, - "src": "7055:20:16", + "referencedDeclaration": 27531, + "src": "7139:20:16", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (address,uint256,address)" } }, - "id": 25896, + "id": 27810, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7055:45:16", + "src": "7139:45:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25897, + "id": 27811, "nodeType": "EmitStatement", - "src": "7050:50:16" + "src": "7134:50:16" } ] }, "documentation": { - "id": 25832, + "id": 27746, "nodeType": "StructuredDocumentation", - "src": "6293:173:16", + "src": "6377:173:16", "text": "@notice Is used to remove ERC20 tokens from the contract.\n @dev token address cannot be $PROVE\n @param token contract address of token we wish to remove." }, "functionSelector": "c7e42b1b", @@ -5685,37 +5163,34 @@ "modifiers": [ { "arguments": [], - "id": 25837, + "id": 27751, "kind": "modifierInvocation", "modifierName": { - "id": 25836, + "id": 27750, "name": "onlyOwner", - "nameLocations": [ - "6519:9:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26206, - "src": "6519:9:16" + "referencedDeclaration": 28129, + "src": "6603:9:16" }, "nodeType": "ModifierInvocation", - "src": "6519:11:16" + "src": "6603:11:16" } ], "name": "withdrawErc20", - "nameLocation": "6481:13:16", + "nameLocation": "6565:13:16", "parameters": { - "id": 25835, + "id": 27749, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25834, + "id": 27748, "mutability": "mutable", "name": "token", - "nameLocation": "6503:5:16", + "nameLocation": "6587:5:16", "nodeType": "VariableDeclaration", - "scope": 25899, - "src": "6495:13:16", + "scope": 27813, + "src": "6579:13:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5723,10 +5198,10 @@ "typeString": "address" }, "typeName": { - "id": 25833, + "id": 27747, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6495:7:16", + "src": "6579:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5736,29 +5211,113 @@ "visibility": "internal" } ], - "src": "6494:15:16" + "src": "6578:15:16" }, "returnParameters": { - "id": 25838, + "id": 27752, "nodeType": "ParameterList", "parameters": [], - "src": "6531:0:16" + "src": "6615:0:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 26000, + "id": 27822, "nodeType": "FunctionDefinition", - "src": "7352:949:16", - "nodes": [], + "src": "7390:105:16", "body": { - "id": 25999, + "id": 27821, "nodeType": "Block", - "src": "7426:875:16", - "nodes": [], + "src": "7452:43:16", + "statements": [ + { + "expression": { + "id": 27819, + "name": "totalTokensToVest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 27458, + "src": "7470:17:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 27818, + "id": 27820, + "nodeType": "Return", + "src": "7463:24:16" + } + ] + }, + "documentation": { + "id": 27814, + "nodeType": "StructuredDocumentation", + "src": "7243:141:16", + "text": "@notice This function returns the amount of total tokens this contract will vest\n @return uint256 total amount of tokens to vest." + }, + "functionSelector": "08ac7624", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getAllVestedTokens", + "nameLocation": "7399:18:16", + "parameters": { + "id": 27815, + "nodeType": "ParameterList", + "parameters": [], + "src": "7417:2:16" + }, + "returnParameters": { + "id": 27818, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27817, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 27822, + "src": "7443:7:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 27816, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7443:7:16", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7442:9:16" + }, + "scope": 28040, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 27923, + "nodeType": "FunctionDefinition", + "src": "7696:949:16", + "body": { + "id": 27922, + "nodeType": "Block", + "src": "7770:875:16", "statements": [ { "condition": { @@ -5766,32 +5325,32 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 25911, + "id": 27834, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 25907, + "id": 27830, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "7441:9:16", + "referencedDeclaration": 27473, + "src": "7785:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 25909, + "id": 27832, "indexExpression": { - "id": 25908, + "id": 27831, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25902, - "src": "7451:8:16", + "referencedDeclaration": 27825, + "src": "7795:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5802,7 +5361,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7441:19:16", + "src": "7785:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5811,74 +5370,74 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 25910, + "id": 27833, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25547, - "src": "7464:14:16", + "referencedDeclaration": 27455, + "src": "7808:14:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7441:37:16", + "src": "7785:37:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 25997, + "id": 27920, "nodeType": "Block", - "src": "8259:35:16", + "src": "8603:35:16", "statements": [ { "expression": { "hexValue": "30", - "id": 25995, + "id": 27918, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8281:1:16", + "src": "8625:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 25906, - "id": 25996, + "functionReturnParameters": 27829, + "id": 27919, "nodeType": "Return", - "src": "8274:8:16" + "src": "8618:8:16" } ] }, - "id": 25998, + "id": 27921, "nodeType": "IfStatement", - "src": "7437:857:16", + "src": "7781:857:16", "trueBody": { - "id": 25994, + "id": 27917, "nodeType": "Block", - "src": "7480:764:16", + "src": "7824:764:16", "statements": [ { "assignments": [ - 25913 + 27836 ], "declarations": [ { "constant": false, - "id": 25913, + "id": 27836, "mutability": "mutable", "name": "idx", - "nameLocation": "7505:3:16", + "nameLocation": "7849:3:16", "nodeType": "VariableDeclaration", - "scope": 25994, - "src": "7497:11:16", + "scope": 27917, + "src": "7841:11:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5886,10 +5445,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25912, + "id": 27835, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7497:7:16", + "src": "7841:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5898,16 +5457,16 @@ "visibility": "internal" } ], - "id": 25917, + "id": 27840, "initialValue": { "arguments": [ { - "id": 25915, + "id": 27838, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25902, - "src": "7526:8:16", + "referencedDeclaration": 27825, + "src": "7870:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5921,27 +5480,26 @@ "typeString": "address" } ], - "id": 25914, + "id": 27837, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26105, - "src": "7511:14:16", + "referencedDeclaration": 28028, + "src": "7855:14:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 25916, + "id": 27839, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7511:24:16", + "src": "7855:24:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5949,22 +5507,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "7497:38:16" + "src": "7841:38:16" }, { "assignments": [ - 25919 + 27842 ], "declarations": [ { "constant": false, - "id": 25919, + "id": 27842, "mutability": "mutable", "name": "tokensToVest", - "nameLocation": "7557:12:16", + "nameLocation": "7901:12:16", "nodeType": "VariableDeclaration", - "scope": 25994, - "src": "7552:17:16", + "scope": 27917, + "src": "7896:17:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5972,10 +5530,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25918, + "id": 27841, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7552:4:16", + "src": "7896:4:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5984,16 +5542,16 @@ "visibility": "internal" } ], - "id": 25923, + "id": 27846, "initialValue": { "arguments": [ { - "id": 25921, + "id": 27844, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25902, - "src": "7588:8:16", + "referencedDeclaration": 27825, + "src": "7932:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6007,27 +5565,26 @@ "typeString": "address" } ], - "id": 25920, + "id": 27843, "name": "getTokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26056, - "src": "7572:15:16", + "referencedDeclaration": 27979, + "src": "7916:15:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 25922, + "id": 27845, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7572:25:16", + "src": "7916:25:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6035,7 +5592,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "7552:45:16" + "src": "7896:45:16" }, { "condition": { @@ -6043,7 +5600,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25929, + "id": 27852, "isConstant": false, "isLValue": false, "isPure": false, @@ -6051,25 +5608,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 25924, + "id": 27847, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "7618:15:16", + "referencedDeclaration": 27462, + "src": "7962:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25926, + "id": 27849, "indexExpression": { - "id": 25925, + "id": 27848, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25913, - "src": "7634:3:16", + "referencedDeclaration": 27836, + "src": "7978:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6080,22 +5637,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7618:20:16", + "src": "7962:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 25927, + "id": 27850, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7639:13:16", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25558, - "src": "7618:34:16", + "referencedDeclaration": 27468, + "src": "7962:34:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6104,70 +5660,70 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 25928, + "id": 27851, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25919, - "src": "7656:12:16", + "referencedDeclaration": 27842, + "src": "8000:12:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7618:50:16", + "src": "7962:50:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 25933, + "id": 27856, "nodeType": "IfStatement", - "src": "7614:99:16", + "src": "7958:99:16", "trueBody": { - "id": 25932, + "id": 27855, "nodeType": "Block", - "src": "7670:43:16", + "src": "8014:43:16", "statements": [ { "expression": { "hexValue": "30", - "id": 25930, + "id": 27853, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7696:1:16", + "src": "8040:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 25906, - "id": 25931, + "functionReturnParameters": 27829, + "id": 27854, "nodeType": "Return", - "src": "7689:8:16" + "src": "8033:8:16" } ] } }, { "assignments": [ - 25935 + 27858 ], "declarations": [ { "constant": false, - "id": 25935, + "id": 27858, "mutability": "mutable", "name": "monthsPassed", - "nameLocation": "7734:12:16", + "nameLocation": "8078:12:16", "nodeType": "VariableDeclaration", - "scope": 25994, - "src": "7729:17:16", + "scope": 27917, + "src": "8073:17:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6175,10 +5731,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25934, + "id": 27857, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7729:4:16", + "src": "8073:4:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6187,7 +5743,7 @@ "visibility": "internal" } ], - "id": 25944, + "id": 27867, "initialValue": { "components": [ { @@ -6195,7 +5751,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25942, + "id": 27865, "isConstant": false, "isLValue": false, "isPure": false, @@ -6207,33 +5763,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25939, + "id": 27862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 25936, + "id": 27859, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "7751:5:16", + "src": "8095:5:16", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 25937, + "id": 27860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7757:9:16", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "7751:15:16", + "src": "8095:15:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6242,32 +5797,32 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 25938, + "id": 27861, "name": "vestingStartUnix", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25544, - "src": "7769:16:16", + "referencedDeclaration": 27452, + "src": "8113:16:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7751:34:16", + "src": "8095:34:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 25940, + "id": 27863, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7750:36:16", + "src": "8094:36:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6277,14 +5832,14 @@ "operator": "/", "rightExpression": { "hexValue": "34", - "id": 25941, + "id": 27864, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7789:7:16", + "src": "8133:7:16", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -6292,43 +5847,43 @@ }, "value": "4" }, - "src": "7750:46:16", + "src": "8094:46:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 25943, + "id": 27866, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7749:48:16", + "src": "8093:48:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7729:68:16" + "src": "8073:68:16" }, { "assignments": [ - 25946 + 27869 ], "declarations": [ { "constant": false, - "id": 25946, + "id": 27869, "mutability": "mutable", "name": "amountToClaim", - "nameLocation": "7818:13:16", + "nameLocation": "8162:13:16", "nodeType": "VariableDeclaration", - "scope": 25994, - "src": "7813:18:16", + "scope": 27917, + "src": "8157:18:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6336,10 +5891,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25945, + "id": 27868, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7813:4:16", + "src": "8157:4:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6348,13 +5903,13 @@ "visibility": "internal" } ], - "id": 25963, + "id": 27886, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25962, + "id": 27885, "isConstant": false, "isLValue": false, "isPure": false, @@ -6366,7 +5921,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25951, + "id": 27874, "isConstant": false, "isLValue": false, "isPure": false, @@ -6376,18 +5931,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25949, + "id": 27872, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25947, + "id": 27870, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25919, - "src": "7835:12:16", + "referencedDeclaration": 27842, + "src": "8179:12:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6397,21 +5952,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 25948, + "id": 27871, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7850:2:16", + "src": "8194:2:16", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "7835:17:16", + "src": "8179:17:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6421,35 +5976,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 25950, + "id": 27873, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7855:3:16", + "src": "8199:3:16", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "7835:23:16", + "src": "8179:23:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 25952, + "id": 27875, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7834:25:16", + "src": "8178:25:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6464,18 +6019,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25960, + "id": 27883, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25953, + "id": 27876, "name": "monthsPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25935, - "src": "7863:12:16", + "referencedDeclaration": 27858, + "src": "8207:12:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6490,7 +6045,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25958, + "id": 27881, "isConstant": false, "isLValue": false, "isPure": false, @@ -6500,18 +6055,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25956, + "id": 27879, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25954, + "id": 27877, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25919, - "src": "7879:12:16", + "referencedDeclaration": 27842, + "src": "8223:12:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6521,21 +6076,21 @@ "operator": "*", "rightExpression": { "hexValue": "38", - "id": 25955, + "id": 27878, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7894:1:16", + "src": "8238:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "7879:16:16", + "src": "8223:16:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6545,68 +6100,68 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 25957, + "id": 27880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7898:3:16", + "src": "8242:3:16", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "7879:22:16", + "src": "8223:22:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 25959, + "id": 27882, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7878:24:16", + "src": "8222:24:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7863:39:16", + "src": "8207:39:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 25961, + "id": 27884, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7862:41:16", + "src": "8206:41:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7834:69:16", + "src": "8178:69:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7813:90:16" + "src": "8157:90:16" }, { "condition": { @@ -6614,7 +6169,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 25970, + "id": 27893, "isConstant": false, "isLValue": false, "isPure": false, @@ -6624,18 +6179,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25966, + "id": 27889, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25964, + "id": 27887, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25946, - "src": "7924:13:16", + "referencedDeclaration": 27869, + "src": "8268:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6644,18 +6199,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 25965, + "id": 27888, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25919, - "src": "7940:12:16", + "referencedDeclaration": 27842, + "src": "8284:12:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7924:28:16", + "src": "8268:28:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6668,18 +6223,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25969, + "id": 27892, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25967, + "id": 27890, "name": "monthsPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25935, - "src": "7956:12:16", + "referencedDeclaration": 27858, + "src": "8300:12:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6689,51 +6244,51 @@ "operator": ">=", "rightExpression": { "hexValue": "3131", - "id": 25968, + "id": 27891, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7972:2:16", + "src": "8316:2:16", "typeDescriptions": { "typeIdentifier": "t_rational_11_by_1", "typeString": "int_const 11" }, "value": "11" }, - "src": "7956:18:16", + "src": "8300:18:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7924:50:16", + "src": "8268:50:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 25990, + "id": 27913, "nodeType": "Block", - "src": "8095:101:16", + "src": "8439:101:16", "statements": [ { "expression": { - "id": 25988, + "id": 27911, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 25981, + "id": 27904, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25946, - "src": "8114:13:16", + "referencedDeclaration": 27869, + "src": "8458:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6746,18 +6301,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25987, + "id": 27910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25982, + "id": 27905, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25946, - "src": "8130:13:16", + "referencedDeclaration": 27869, + "src": "8474:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6768,25 +6323,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 25983, + "id": 27906, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "8146:15:16", + "referencedDeclaration": 27462, + "src": "8490:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25985, + "id": 27908, "indexExpression": { - "id": 25984, + "id": 27907, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25913, - "src": "8162:3:16", + "referencedDeclaration": 27836, + "src": "8506:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6797,67 +6352,66 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8146:20:16", + "src": "8490:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 25986, + "id": 27909, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8167:13:16", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25558, - "src": "8146:34:16", + "referencedDeclaration": 27468, + "src": "8490:34:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8130:50:16", + "src": "8474:50:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8114:66:16", + "src": "8458:66:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 25989, + "id": 27912, "nodeType": "ExpressionStatement", - "src": "8114:66:16" + "src": "8458:66:16" } ] }, - "id": 25991, + "id": 27914, "nodeType": "IfStatement", - "src": "7920:276:16", + "src": "8264:276:16", "trueBody": { - "id": 25980, + "id": 27903, "nodeType": "Block", - "src": "7976:100:16", + "src": "8320:100:16", "statements": [ { "expression": { - "id": 25978, + "id": 27901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 25971, + "id": 27894, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25946, - "src": "7995:13:16", + "referencedDeclaration": 27869, + "src": "8339:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6870,18 +6424,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 25977, + "id": 27900, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 25972, + "id": 27895, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25919, - "src": "8011:12:16", + "referencedDeclaration": 27842, + "src": "8355:12:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6892,25 +6446,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 25973, + "id": 27896, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "8026:15:16", + "referencedDeclaration": 27462, + "src": "8370:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 25975, + "id": 27898, "indexExpression": { - "id": 25974, + "id": 27897, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25913, - "src": "8042:3:16", + "referencedDeclaration": 27836, + "src": "8386:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6921,63 +6475,62 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8026:20:16", + "src": "8370:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 25976, + "id": 27899, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8047:13:16", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25558, - "src": "8026:34:16", + "referencedDeclaration": 27468, + "src": "8370:34:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8011:49:16", + "src": "8355:49:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7995:65:16", + "src": "8339:65:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 25979, + "id": 27902, "nodeType": "ExpressionStatement", - "src": "7995:65:16" + "src": "8339:65:16" } ] } }, { "expression": { - "id": 25992, + "id": 27915, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25946, - "src": "8219:13:16", + "referencedDeclaration": 27869, + "src": "8563:13:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 25906, - "id": 25993, + "functionReturnParameters": 27829, + "id": 27916, "nodeType": "Return", - "src": "8212:20:16" + "src": "8556:20:16" } ] } @@ -6985,9 +6538,9 @@ ] }, "documentation": { - "id": 25900, + "id": 27823, "nodeType": "StructuredDocumentation", - "src": "7159:187:16", + "src": "7503:187:16", "text": "@notice This function returns the amount of tokens to claim for a specified investor.\n @param _account address of investor.\n @return uint256 amount of tokens to claim." }, "functionSelector": "0bca8bcd", @@ -6995,20 +6548,20 @@ "kind": "function", "modifiers": [], "name": "getAmountToClaim", - "nameLocation": "7361:16:16", + "nameLocation": "7705:16:16", "parameters": { - "id": 25903, + "id": 27826, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25902, + "id": 27825, "mutability": "mutable", "name": "_account", - "nameLocation": "7386:8:16", + "nameLocation": "7730:8:16", "nodeType": "VariableDeclaration", - "scope": 26000, - "src": "7378:16:16", + "scope": 27923, + "src": "7722:16:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7016,10 +6569,10 @@ "typeString": "address" }, "typeName": { - "id": 25901, + "id": 27824, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7378:7:16", + "src": "7722:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7029,21 +6582,21 @@ "visibility": "internal" } ], - "src": "7377:18:16" + "src": "7721:18:16" }, "returnParameters": { - "id": 25906, + "id": 27829, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 25905, + "id": 27828, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26000, - "src": "7417:7:16", + "scope": 27923, + "src": "7761:7:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7051,10 +6604,10 @@ "typeString": "uint256" }, "typeName": { - "id": 25904, + "id": 27827, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7417:7:16", + "src": "7761:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7063,46 +6616,44 @@ "visibility": "internal" } ], - "src": "7416:9:16" + "src": "7760:9:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "view", "virtual": false, "visibility": "public" }, { - "id": 26028, + "id": 27951, "nodeType": "FunctionDefinition", - "src": "8502:290:16", - "nodes": [], + "src": "8846:290:16", "body": { - "id": 26027, + "id": 27950, "nodeType": "Block", - "src": "8576:216:16", - "nodes": [], + "src": "8920:216:16", "statements": [ { "condition": { "baseExpression": { - "id": 26008, + "id": 27931, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "8591:9:16", + "referencedDeclaration": 27473, + "src": "8935:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 26010, + "id": 27933, "indexExpression": { - "id": 26009, + "id": 27932, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26003, - "src": "8601:8:16", + "referencedDeclaration": 27926, + "src": "8945:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7113,63 +6664,63 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8591:19:16", + "src": "8935:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 26025, + "id": 27948, "nodeType": "Block", - "src": "8750:35:16", + "src": "9094:35:16", "statements": [ { "expression": { "hexValue": "30", - "id": 26023, + "id": 27946, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8772:1:16", + "src": "9116:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 26007, - "id": 26024, + "functionReturnParameters": 27930, + "id": 27947, "nodeType": "Return", - "src": "8765:8:16" + "src": "9109:8:16" } ] }, - "id": 26026, + "id": 27949, "nodeType": "IfStatement", - "src": "8587:198:16", + "src": "8931:198:16", "trueBody": { - "id": 26022, + "id": 27945, "nodeType": "Block", - "src": "8612:123:16", + "src": "8956:123:16", "statements": [ { "assignments": [ - 26012 + 27935 ], "declarations": [ { "constant": false, - "id": 26012, + "id": 27935, "mutability": "mutable", "name": "idx", - "nameLocation": "8637:3:16", + "nameLocation": "8981:3:16", "nodeType": "VariableDeclaration", - "scope": 26022, - "src": "8629:11:16", + "scope": 27945, + "src": "8973:11:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7177,10 +6728,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26011, + "id": 27934, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8629:7:16", + "src": "8973:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7189,16 +6740,16 @@ "visibility": "internal" } ], - "id": 26016, + "id": 27939, "initialValue": { "arguments": [ { - "id": 26014, + "id": 27937, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26003, - "src": "8658:8:16", + "referencedDeclaration": 27926, + "src": "9002:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7212,27 +6763,26 @@ "typeString": "address" } ], - "id": 26013, + "id": 27936, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26105, - "src": "8643:14:16", + "referencedDeclaration": 28028, + "src": "8987:14:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 26015, + "id": 27938, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8643:24:16", + "src": "8987:24:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7240,31 +6790,31 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "8629:38:16" + "src": "8973:38:16" }, { "expression": { "expression": { "baseExpression": { - "id": 26017, + "id": 27940, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "8689:15:16", + "referencedDeclaration": 27462, + "src": "9033:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 26019, + "id": 27942, "indexExpression": { - "id": 26018, + "id": 27941, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26012, - "src": "8705:3:16", + "referencedDeclaration": 27935, + "src": "9049:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7275,31 +6825,30 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8689:20:16", + "src": "9033:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 26020, + "id": 27943, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8710:13:16", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25558, - "src": "8689:34:16", + "referencedDeclaration": 27468, + "src": "9033:34:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 26007, - "id": 26021, + "functionReturnParameters": 27930, + "id": 27944, "nodeType": "Return", - "src": "8682:41:16" + "src": "9026:41:16" } ] } @@ -7307,9 +6856,9 @@ ] }, "documentation": { - "id": 26001, + "id": 27924, "nodeType": "StructuredDocumentation", - "src": "8309:187:16", + "src": "8653:187:16", "text": "@notice This function returns the amount of tokens an investor HAS claimed.\n @param _account address of investor.\n @return uint256 amount of tokens claimed by account." }, "functionSelector": "d36862e8", @@ -7317,20 +6866,20 @@ "kind": "function", "modifiers": [], "name": "getAmountClaimed", - "nameLocation": "8511:16:16", + "nameLocation": "8855:16:16", "parameters": { - "id": 26004, + "id": 27927, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26003, + "id": 27926, "mutability": "mutable", "name": "_account", - "nameLocation": "8536:8:16", + "nameLocation": "8880:8:16", "nodeType": "VariableDeclaration", - "scope": 26028, - "src": "8528:16:16", + "scope": 27951, + "src": "8872:16:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7338,10 +6887,10 @@ "typeString": "address" }, "typeName": { - "id": 26002, + "id": 27925, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8528:7:16", + "src": "8872:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7351,21 +6900,21 @@ "visibility": "internal" } ], - "src": "8527:18:16" + "src": "8871:18:16" }, "returnParameters": { - "id": 26007, + "id": 27930, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26006, + "id": 27929, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26028, - "src": "8567:7:16", + "scope": 27951, + "src": "8911:7:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7373,10 +6922,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26005, + "id": 27928, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8567:7:16", + "src": "8911:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7385,46 +6934,44 @@ "visibility": "internal" } ], - "src": "8566:9:16" + "src": "8910:9:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "view", "virtual": false, "visibility": "public" }, { - "id": 26056, + "id": 27979, "nodeType": "FunctionDefinition", - "src": "9005:286:16", - "nodes": [], + "src": "9349:286:16", "body": { - "id": 26055, + "id": 27978, "nodeType": "Block", - "src": "9078:213:16", - "nodes": [], + "src": "9422:213:16", "statements": [ { "condition": { "baseExpression": { - "id": 26036, + "id": 27959, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "9093:9:16", + "referencedDeclaration": 27473, + "src": "9437:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 26038, + "id": 27961, "indexExpression": { - "id": 26037, + "id": 27960, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26031, - "src": "9103:8:16", + "referencedDeclaration": 27954, + "src": "9447:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7435,63 +6982,63 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9093:19:16", + "src": "9437:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 26053, + "id": 27976, "nodeType": "Block", - "src": "9249:35:16", + "src": "9593:35:16", "statements": [ { "expression": { "hexValue": "30", - "id": 26051, + "id": 27974, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9271:1:16", + "src": "9615:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 26035, - "id": 26052, + "functionReturnParameters": 27958, + "id": 27975, "nodeType": "Return", - "src": "9264:8:16" + "src": "9608:8:16" } ] }, - "id": 26054, + "id": 27977, "nodeType": "IfStatement", - "src": "9089:195:16", + "src": "9433:195:16", "trueBody": { - "id": 26050, + "id": 27973, "nodeType": "Block", - "src": "9114:120:16", + "src": "9458:120:16", "statements": [ { "assignments": [ - 26040 + 27963 ], "declarations": [ { "constant": false, - "id": 26040, + "id": 27963, "mutability": "mutable", "name": "idx", - "nameLocation": "9137:3:16", + "nameLocation": "9481:3:16", "nodeType": "VariableDeclaration", - "scope": 26050, - "src": "9129:11:16", + "scope": 27973, + "src": "9473:11:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7499,10 +7046,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26039, + "id": 27962, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9129:7:16", + "src": "9473:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7511,16 +7058,16 @@ "visibility": "internal" } ], - "id": 26044, + "id": 27967, "initialValue": { "arguments": [ { - "id": 26042, + "id": 27965, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26031, - "src": "9158:8:16", + "referencedDeclaration": 27954, + "src": "9502:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7534,27 +7081,26 @@ "typeString": "address" } ], - "id": 26041, + "id": 27964, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26105, - "src": "9143:14:16", + "referencedDeclaration": 28028, + "src": "9487:14:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 26043, + "id": 27966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9143:24:16", + "src": "9487:24:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7562,31 +7108,31 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "9129:38:16" + "src": "9473:38:16" }, { "expression": { "expression": { "baseExpression": { - "id": 26045, + "id": 27968, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "9189:15:16", + "referencedDeclaration": 27462, + "src": "9533:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 26047, + "id": 27970, "indexExpression": { - "id": 26046, + "id": 27969, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26040, - "src": "9205:3:16", + "referencedDeclaration": 27963, + "src": "9549:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7597,31 +7143,30 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9189:20:16", + "src": "9533:20:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 26048, + "id": 27971, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9210:12:16", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 25556, - "src": "9189:33:16", + "referencedDeclaration": 27466, + "src": "9533:33:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 26035, - "id": 26049, + "functionReturnParameters": 27958, + "id": 27972, "nodeType": "Return", - "src": "9182:40:16" + "src": "9526:40:16" } ] } @@ -7629,9 +7174,9 @@ ] }, "documentation": { - "id": 26029, + "id": 27952, "nodeType": "StructuredDocumentation", - "src": "8800:199:16", + "src": "9144:199:16", "text": "@notice This function returns an investors tokensToVest (amount of $PROVE allocated to that investor)\n @param _account address of investor\n @return uint256 investor's tokensToVest" }, "functionSelector": "88a772ef", @@ -7639,20 +7184,20 @@ "kind": "function", "modifiers": [], "name": "getTokensToVest", - "nameLocation": "9014:15:16", + "nameLocation": "9358:15:16", "parameters": { - "id": 26032, + "id": 27955, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26031, + "id": 27954, "mutability": "mutable", "name": "_account", - "nameLocation": "9038:8:16", + "nameLocation": "9382:8:16", "nodeType": "VariableDeclaration", - "scope": 26056, - "src": "9030:16:16", + "scope": 27979, + "src": "9374:16:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7660,10 +7205,10 @@ "typeString": "address" }, "typeName": { - "id": 26030, + "id": 27953, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9030:7:16", + "src": "9374:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7673,21 +7218,21 @@ "visibility": "internal" } ], - "src": "9029:18:16" + "src": "9373:18:16" }, "returnParameters": { - "id": 26035, + "id": 27958, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26034, + "id": 27957, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26056, - "src": "9069:7:16", + "scope": 27979, + "src": "9413:7:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7695,10 +7240,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26033, + "id": 27956, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9069:7:16", + "src": "9413:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7707,23 +7252,21 @@ "visibility": "internal" } ], - "src": "9068:9:16" + "src": "9412:9:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "view", "virtual": false, "visibility": "public" }, { - "id": 26105, + "id": 28028, "nodeType": "FunctionDefinition", - "src": "9518:438:16", - "nodes": [], + "src": "9862:438:16", "body": { - "id": 26104, + "id": 28027, "nodeType": "Block", - "src": "9592:364:16", - "nodes": [], + "src": "9936:364:16", "statements": [ { "expression": { @@ -7733,32 +7276,32 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 26069, + "id": 27992, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 26065, + "id": 27988, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25563, - "src": "9611:9:16", + "referencedDeclaration": 27473, + "src": "9955:9:16", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 26067, + "id": 27990, "indexExpression": { - "id": 26066, + "id": 27989, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26059, - "src": "9621:8:16", + "referencedDeclaration": 27982, + "src": "9965:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7769,7 +7312,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9611:19:16", + "src": "9955:19:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7779,21 +7322,21 @@ "operator": "==", "rightExpression": { "hexValue": "74727565", - "id": 26068, + "id": 27991, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9634:4:16", + "src": "9978:4:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "9611:27:16", + "src": "9955:27:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7801,14 +7344,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a6c6f63617465496e766573746f722829206163636f756e74206973206e6f7420616e20696e766573746f72", - "id": 26070, + "id": 27993, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9640:58:16", + "src": "9984:58:16", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c7d5b975a38bc7e0b558417843062c4383bc48f01017af3fb1a433530c55d36", "typeString": "literal_string \"Vesting.sol::locateInvestor() account is not an investor\"" @@ -7827,7 +7370,7 @@ "typeString": "literal_string \"Vesting.sol::locateInvestor() account is not an investor\"" } ], - "id": 26064, + "id": 27987, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7835,46 +7378,45 @@ -18 ], "referencedDeclaration": -18, - "src": "9603:7:16", + "src": "9947:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 26071, + "id": 27994, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9603:96:16", + "src": "9947:96:16", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 26072, + "id": 27995, "nodeType": "ExpressionStatement", - "src": "9603:96:16" + "src": "9947:96:16" }, { "assignments": [ - 26074 + 27997 ], "declarations": [ { "constant": false, - "id": 26074, + "id": 27997, "mutability": "mutable", "name": "idx", - "nameLocation": "9720:3:16", + "nameLocation": "10064:3:16", "nodeType": "VariableDeclaration", - "scope": 26104, - "src": "9712:11:16", + "scope": 28027, + "src": "10056:11:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7882,10 +7424,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26073, + "id": 27996, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9712:7:16", + "src": "10056:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7894,15 +7436,15 @@ "visibility": "internal" } ], - "id": 26075, + "id": 27998, "nodeType": "VariableDeclarationStatement", - "src": "9712:11:16" + "src": "10056:11:16" }, { "body": { - "id": 26100, + "id": 28023, "nodeType": "Block", - "src": "9789:137:16", + "src": "10133:137:16", "statements": [ { "condition": { @@ -7910,7 +7452,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 26092, + "id": 28015, "isConstant": false, "isLValue": false, "isPure": false, @@ -7918,25 +7460,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 26087, + "id": 28010, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "9808:15:16", + "referencedDeclaration": 27462, + "src": "10152:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 26089, + "id": 28012, "indexExpression": { - "id": 26088, + "id": 28011, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26077, - "src": "9824:1:16", + "referencedDeclaration": 28000, + "src": "10168:1:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7947,22 +7489,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9808:18:16", + "src": "10152:18:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage", + "typeIdentifier": "t_struct$_Investor_$27469_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 26090, + "id": 28013, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9827:7:16", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25554, - "src": "9808:26:16", + "referencedDeclaration": 27464, + "src": "10152:26:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7971,45 +7512,45 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 26091, + "id": 28014, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26059, - "src": "9838:8:16", + "referencedDeclaration": 27982, + "src": "10182:8:16", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "9808:38:16", + "src": "10152:38:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 26099, + "id": 28022, "nodeType": "IfStatement", - "src": "9804:111:16", + "src": "10148:111:16", "trueBody": { - "id": 26098, + "id": 28021, "nodeType": "Block", - "src": "9848:67:16", + "src": "10192:67:16", "statements": [ { "expression": { - "id": 26095, + "id": 28018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 26093, + "id": 28016, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26074, - "src": "9867:3:16", + "referencedDeclaration": 27997, + "src": "10211:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8018,31 +7559,31 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 26094, + "id": 28017, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26077, - "src": "9873:1:16", + "referencedDeclaration": 28000, + "src": "10217:1:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9867:7:16", + "src": "10211:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 26096, + "id": 28019, "nodeType": "ExpressionStatement", - "src": "9867:7:16" + "src": "10211:7:16" }, { - "id": 26097, + "id": 28020, "nodeType": "Break", - "src": "9894:5:16" + "src": "10238:5:16" } ] } @@ -8054,18 +7595,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 26083, + "id": 28006, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 26080, + "id": 28003, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26077, - "src": "9756:1:16", + "referencedDeclaration": 28000, + "src": "10100:1:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8075,52 +7616,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 26081, + "id": 28004, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "9760:15:16", + "referencedDeclaration": 27462, + "src": "10104:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 26082, + "id": 28005, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9776:6:16", "memberName": "length", "nodeType": "MemberAccess", - "src": "9760:22:16", + "src": "10104:22:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9756:26:16", + "src": "10100:26:16", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 26101, + "id": 28024, "initializationExpression": { "assignments": [ - 26077 + 28000 ], "declarations": [ { "constant": false, - "id": 26077, + "id": 28000, "mutability": "mutable", "name": "i", - "nameLocation": "9749:1:16", + "nameLocation": "10093:1:16", "nodeType": "VariableDeclaration", - "scope": 26101, - "src": "9741:9:16", + "scope": 28024, + "src": "10085:9:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8128,10 +7668,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26076, + "id": 27999, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9741:7:16", + "src": "10085:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8140,17 +7680,17 @@ "visibility": "internal" } ], - "id": 26079, + "id": 28002, "initialValue": { "hexValue": "30", - "id": 26078, + "id": 28001, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9753:1:16", + "src": "10097:1:16", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -8158,11 +7698,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "9741:13:16" + "src": "10085:13:16" }, "loopExpression": { "expression": { - "id": 26085, + "id": 28008, "isConstant": false, "isLValue": false, "isPure": false, @@ -8170,14 +7710,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "9784:3:16", + "src": "10128:3:16", "subExpression": { - "id": 26084, + "id": 28007, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26077, - "src": "9784:1:16", + "referencedDeclaration": 28000, + "src": "10128:1:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8188,57 +7728,57 @@ "typeString": "uint256" } }, - "id": 26086, + "id": 28009, "nodeType": "ExpressionStatement", - "src": "9784:3:16" + "src": "10128:3:16" }, "nodeType": "ForStatement", - "src": "9736:190:16" + "src": "10080:190:16" }, { "expression": { - "id": 26102, + "id": 28025, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26074, - "src": "9945:3:16", + "referencedDeclaration": 27997, + "src": "10289:3:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 26063, - "id": 26103, + "functionReturnParameters": 27986, + "id": 28026, "nodeType": "Return", - "src": "9938:10:16" + "src": "10282:10:16" } ] }, "documentation": { - "id": 26057, + "id": 27980, "nodeType": "StructuredDocumentation", - "src": "9299:213:16", + "src": "9643:213:16", "text": "@notice This function returns the index location of an account in the investor library array\n @param _account address of investor\n @return uint256 investor's index in the investor library array" }, "implemented": true, "kind": "function", "modifiers": [], "name": "locateInvestor", - "nameLocation": "9527:14:16", + "nameLocation": "9871:14:16", "parameters": { - "id": 26060, + "id": 27983, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26059, + "id": 27982, "mutability": "mutable", "name": "_account", - "nameLocation": "9550:8:16", + "nameLocation": "9894:8:16", "nodeType": "VariableDeclaration", - "scope": 26105, - "src": "9542:16:16", + "scope": 28028, + "src": "9886:16:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8246,10 +7786,10 @@ "typeString": "address" }, "typeName": { - "id": 26058, + "id": 27981, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9542:7:16", + "src": "9886:7:16", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8259,21 +7799,21 @@ "visibility": "internal" } ], - "src": "9541:18:16" + "src": "9885:18:16" }, "returnParameters": { - "id": 26063, + "id": 27986, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26062, + "id": 27985, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26105, - "src": "9583:7:16", + "scope": 28028, + "src": "9927:7:16", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8281,10 +7821,10 @@ "typeString": "uint256" }, "typeName": { - "id": 26061, + "id": 27984, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9583:7:16", + "src": "9927:7:16", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8293,48 +7833,46 @@ "visibility": "internal" } ], - "src": "9582:9:16" + "src": "9926:9:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "view", "virtual": false, "visibility": "internal" }, { - "id": 26116, + "id": 28039, "nodeType": "FunctionDefinition", - "src": "10096:111:16", - "nodes": [], + "src": "10440:111:16", "body": { - "id": 26115, + "id": 28038, "nodeType": "Block", - "src": "10166:41:16", - "nodes": [], + "src": "10510:41:16", "statements": [ { "expression": { - "id": 26113, + "id": 28036, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 25552, - "src": "10184:15:16", + "referencedDeclaration": 27462, + "src": "10528:15:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "functionReturnParameters": 26112, - "id": 26114, + "functionReturnParameters": 28035, + "id": 28037, "nodeType": "Return", - "src": "10177:22:16" + "src": "10521:22:16" } ] }, "documentation": { - "id": 26106, + "id": 28029, "nodeType": "StructuredDocumentation", - "src": "9964:126:16", + "src": "10308:126:16", "text": "@notice This function returns the investor library array\n @return Investor[] memory the array of investor structs " }, "functionSelector": "50ad827a", @@ -8342,67 +7880,64 @@ "kind": "function", "modifiers": [], "name": "getInvestorLibrary", - "nameLocation": "10105:18:16", + "nameLocation": "10449:18:16", "parameters": { - "id": 26107, + "id": 28030, "nodeType": "ParameterList", "parameters": [], - "src": "10123:2:16" + "src": "10467:2:16" }, "returnParameters": { - "id": 26112, + "id": 28035, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26111, + "id": 28034, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 26116, - "src": "10147:17:16", + "scope": 28039, + "src": "10491:17:16", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 26109, + "id": 28032, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 26108, + "id": 28031, "name": "Investor", - "nameLocations": [ - "10147:8:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 25559, - "src": "10147:8:16" + "referencedDeclaration": 27469, + "src": "10491:8:16" }, - "referencedDeclaration": 25559, - "src": "10147:8:16", + "referencedDeclaration": 27469, + "src": "10491:8:16", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25559_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 26110, + "id": 28033, "nodeType": "ArrayTypeName", - "src": "10147:10:16", + "src": "10491:10:16", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25559_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "src": "10146:19:16" + "src": "10490:19:16" }, - "scope": 26117, + "scope": 28040, "stateMutability": "view", "virtual": false, "visibility": "public" @@ -8412,38 +7947,35 @@ "baseContracts": [ { "baseName": { - "id": 25538, + "id": 27446, "name": "Ownable", - "nameLocations": [ - "514:7:16" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26291, - "src": "514:7:16" + "referencedDeclaration": 28214, + "src": "510:7:16" }, - "id": 25539, + "id": 27447, "nodeType": "InheritanceSpecifier", - "src": "514:7:16" + "src": "510:7:16" } ], "canonicalName": "Vesting", "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 25537, + "id": 27445, "nodeType": "StructuredDocumentation", - "src": "231:263:16", + "src": "227:263:16", "text": "@notice This contract will hold $PROVE tokens in escrow\n This contract will facilitate the private sale investor vesting tokens\n This contract will follow a strict vesting schedule\n This contract will follow a claim model" }, "fullyImplemented": true, "linearizedBaseContracts": [ - 26117, - 26291, - 26143 + 28040, + 28214, + 28066 ], "name": "Vesting", - "nameLocation": "503:7:16", - "scope": 26118, + "nameLocation": "499:7:16", + "scope": 28041, "usedErrors": [] } ], diff --git a/out/Vesting.t.sol/VestingTest.json b/out/Vesting.t.sol/VestingTest.json index 897311f..abbaeb8 100644 --- a/out/Vesting.t.sol/VestingTest.json +++ b/out/Vesting.t.sol/VestingTest.json @@ -856,13 +856,13 @@ } ], "bytecode": { - "object": "0x60806040526000805460ff191660011790553480156200001e57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b031990911617905561a4d2806200005b6000396000f3fe60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000814565b6200024c6200029336600462007c3c565b62000b1a565b6200024c620002aa36600462007c3c565b62000c90565b62000261600b81565b62000261600281565b6200024c62000da0565b6200024c62000ef8565b6200024c620010d1565b6200024c620012b6565b6200024c62001d10565b6200024c62002156565b620003156200030f36600462007c78565b620026aa565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007cd2565b62002708565b6200024c620028c1565b62000261600a81565b6200024c6200036836600462007d0d565b62002e97565b62000261600481565b6200024c620036db565b6200024c62003c48565b6200024c62003e97565b6200024c6200458a565b620003a962004670565b60405190151581526020016200026f565b62000315620003cb36600462007c3c565b620047a1565b6200024c620003e236600462007d0d565b620047bc565b62000261600381565b6200024c62004f22565b6200024c62005239565b62000261600081565b6200024c62005a96565b6200024c62005cef565b600054620003a99060ff1681565b6200043a6200458a565b6200044462005a96565b60025460405173c00e94cb662c3520282e6f5717214004a7f26888916001600160a01b031690620004759062007beb565b6200048292919062007d27565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007d41565b600062005f02565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b9919081019062007dfe565b9050620005c9815160006200608b565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620006109390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562000630573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000656919062007d41565b62000665576200066562007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620006e8929190911690636f7bc9be906024015b602060405180830381865afa158015620006ba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006e0919062007d41565b600162005f02565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200073c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000766919081019062007dfe565b905062000776815160016200608b565b620007ae8160008151811062000790576200079062007f13565b6020908102919091010151516001546001600160a01b03166200614e565b620007e381600081518110620007c857620007c862007f13565b602002602001015160200151678ac7230489e800006200608b565b6200081181600081518110620007fd57620007fd62007f13565b60200260200101516040015160006200608b565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200085b9390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af11580156200087b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008a1919062007d41565b620008b057620008b062007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620008ec929190911690636f7bc9be906024016200069c565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000936573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000960919081019062007dfe565b905062000970815160016200608b565b6200098a8160008151811062000790576200079062007f13565b620009a481600081518110620007c857620007c862007f13565b620009be81600081518110620007fd57620007fd62007f13565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f493620009fb939082169291169060040162007d27565b6020604051808303816000875af115801562000a1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a41919062007d41565b62000a505762000a5062007efd565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000a8c929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000ae0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000b0a919081019062007dfe565b905062000811815160006200608b565b600082841162000b365762000b30848462007f3f565b62000b42565b62000b42838562007f3f565b90508060000362000b535750505050565b6000841562000b63578462000b65565b835b9050600062000b7684600a62008052565b62000b8e906b033b2e3c9fd0803ce800000062008076565b8262000ba76b033b2e3c9fd0803ce8000000866200808d565b62000bb3919062008076565b1090508062000c8857604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a47d8339815191529181900360a00190a16000805160206200a47d8339815191528660405162000c4e9190620080a7565b60405180910390a16000805160206200a47d8339815191528560405162000c769190620080e0565b60405180910390a162000c8862006248565b505050505050565b600082841162000cac5762000ca6848462007f3f565b62000cb8565b62000cb8838562007f3f565b9050818111158062000d9957604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a47d8339815191529181900360a00190a16000805160206200a47d8339815191528560405162000d5f9190620080a7565b60405180910390a16000805160206200a47d8339815191528460405162000d879190620080e0565b60405180910390a162000d9962006248565b5050505050565b601854604080516385d4cad360e01b8152905162000e2e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000ded573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e1391906200810b565b73c00e94cb662c3520282e6f5717214004a7f268886200614e565b6018546040805163f02c6d8f60e01b8152905162000ea9926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000e7b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ea191906200812b565b60006200608b565b60185460408051633fc3ddeb60e11b8152905162000ef6926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362000f4093908216929116906801158e460913d000009060040162007ed9565b6020604051808303816000875af115801562000f60573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f86919062007d41565b62000f955762000f9562007efd565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262000fea929190911690630bca8bcd906024015b602060405180830381865afa15801562000e7b573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001039573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105f919062007d41565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200109c929190911690630bca8bcd9060240162000fcc565b601854604051630bca8bcd60e01b81526000600482015262000ef6916001600160a01b031690630bca8bcd9060240162000fcc565b6018546040805163f02c6d8f60e01b815290516200111e926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000e7b573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200116b926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620011ba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011e0919062007d41565b620011ef57620011ef62007efd565b6018546040805163f02c6d8f60e01b8152905162001269926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200123c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200126291906200812b565b426200608b565b60185460408051633fc3ddeb60e11b8152905162000ef6926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa158015620006ba573d6000803e3d6000fd5b60185469d3c21bcecceda100000090620012f09073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b0316836200634c565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b1580156200134557600080fd5b505af11580156200135a573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc94506200139e939283169290911690869060040162007ed9565b6020604051808303816000875af1158015620013be573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013e4919062007d41565b620013f357620013f362007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001442573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001468919062007d41565b62001477576200147762007efd565b601854604080516385d4cad360e01b815290516200151c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620014c4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620014ea91906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162000fcc565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200156b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001591919062007d41565b620015a057620015a062007efd565b601854604080516385d4cad360e01b81529051620016a4926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ed573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200161391906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200165d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200168391906200812b565b60646200169284600c6200808d565b6200169e919062008076565b6200608b565b620016b26224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001701573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001727919062007d41565b62001736576200173662007efd565b601854604080516385d4cad360e01b8152905162001828926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001783573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017a991906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620017f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200181991906200812b565b6064620016928460146200808d565b620018366224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001885573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018ab919062007d41565b620018ba57620018ba62007efd565b601854604080516385d4cad360e01b81529051620019ac926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001907573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200192d91906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001977573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200199d91906200812b565b60646200169284601c6200808d565b620019ba626ebe0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001a09573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a2f919062007d41565b62001a3e5762001a3e62007efd565b601854604080516385d4cad360e01b8152905162001b30926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ab191906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001afb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b2191906200812b565b6064620016928460346200808d565b62001b3e62dd7c0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bb3919062007d41565b62001bc25762001bc262007efd565b601854604080516385d4cad360e01b8152905162001cad926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001c0f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c3591906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001c80573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ca691906200812b565b826200608b565b6000805160206200a45d83398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001cfb57600080fd5b505af115801562000d99573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001d5c9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562001d7c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001da2919062007d41565b1562001db25762001db262007efd565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001dfe9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562001e1e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e44919062007d41565b1562001e545762001e5462007efd565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001ea09291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562001ec0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ee6919062007d41565b1562001ef65762001ef662007efd565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562001f4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f7491906200810b565b6040518363ffffffff1660e01b815260040162001f9392919062007d27565b6020604051808303816000875af115801562001fb3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001fd9919062007d41565b1562001fe95762001fe962007efd565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e3692620020229291169060009060040162007d27565b6020604051808303816000875af115801562002042573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002068919062007d41565b1562002078576200207862007efd565b601854620020b59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620020af620f424060646200808d565b6200634c565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e3692620021019291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562002121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002147919062007d41565b62000ef65762000ef662007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200219d9390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af1158015620021bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620021e3919062007d41565b620021f257620021f262007efd565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200222f939082169291169060040162007d27565b6020604051808303816000875af11580156200224f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002275919062007d41565b1562002285576200228562007efd565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620022bd92911690849060040162007d27565b6020604051808303816000875af1158015620022dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002303919062007d41565b1562002313576200231362007efd565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002350939082169291169060040162007d27565b6020604051808303816000875af115801562002370573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002396919062007d41565b620023a557620023a562007efd565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b158015620023fa57600080fd5b505af11580156200240f573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b158015620024af57600080fd5b505af1158015620024c4573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200251257600080fd5b505af115801562002527573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b158015620025c757600080fd5b505af1158015620025dc573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200262857600080fd5b505af11580156200263d573d6000803e3d6000fd5b505050506000805160206200a45d83398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200268f57600080fd5b505af1158015620026a4573d6000803e3d6000fd5b50505050565b600084158015620026b9575081155b15620026c85750600062002700565b838303620026d857508162002700565b83620026e5818562007f3f565b620026f1908762008145565b620026fd91906200815c565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa1580156200276d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200279391906200812b565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620027c6908990879060200162008172565b604051602081830303815290604052805190602001208785620027ea91906200815c565b6040516001600160e01b031960e086901b1681526200280f939291906004016200818b565b600060405180830381600087803b1580156200282a57600080fd5b505af11580156200283f573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000c889350861691506370a0823190602401602060405180830381865afa1580156200288f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028b591906200812b565b6200169e86846200815c565b601854620028fa9073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b03166a0422ca8b0a00a4250000006200634c565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b1580156200294f57600080fd5b505af115801562002964573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562002a0457600080fd5b505af115801562002a19573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002a6e57600080fd5b505af115801562002a83573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002ad193928316929091169069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af115801562002af1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002b17919062007d41565b62002b265762002b2662007efd565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a43d8339815191529063f28dceb390608401600060405180830381600087803b15801562002bb057600080fd5b505af115801562002bc5573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002c1a57600080fd5b505af115801562002c2f573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002c82573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ca8919062007d41565b62002cb75762002cb762007efd565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d0857600080fd5b505af115801562002d1d573d6000803e3d6000fd5b5050505062002d306301dfe20062006360565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d8157600080fd5b505af115801562002d96573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562002e2d57600080fd5b505af115801562002e42573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200262857600080fd5b62002eb98169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620063bb565b60185490915062002eea9073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b0316836200634c565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b15801562002f3f57600080fd5b505af115801562002f54573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002f98939283169290911690869060040162007ed9565b6020604051808303816000875af115801562002fb8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002fde919062007d41565b62002fed5762002fed62007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200303c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003062919062007d41565b62003071576200307162007efd565b601854604080516385d4cad360e01b81529051620030be926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620014c4573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200310d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003133919062007d41565b62003142576200314262007efd565b601854604080516385d4cad360e01b815290516200324f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200318f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620031b591906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620031ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200322591906200812b565b60646200323484600c6200808d565b62003240919062008076565b670de0b6b3a764000062000c90565b6200325d6224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032d2919062007d41565b620032e157620032e162007efd565b601854604080516385d4cad360e01b81529051620033d3926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200332e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200335491906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200339e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033c491906200812b565b6064620032348460146200808d565b620033e16224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003430573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003456919062007d41565b62003465576200346562007efd565b601854604080516385d4cad360e01b8152905162003557926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034b2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034d891906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003522573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200354891906200812b565b60646200323484601c6200808d565b62003565626ebe0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620035da919062007d41565b620035e957620035e962007efd565b601854604080516385d4cad360e01b8152905162001b30926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562003636573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200365c91906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036a6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036cc91906200812b565b6064620032348460346200808d565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620037229390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562003742573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003768919062007d41565b1562003778576200377862007efd565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620037ba929116908490678ac7230489e800009060040162007ed9565b6020604051808303816000875af1158015620037da573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003800919062007d41565b1562003810576200381062007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038579390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562003877573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200389d919062007d41565b620038ac57620038ac62007efd565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b1580156200390157600080fd5b505af115801562003916573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b158015620039ad57600080fd5b505af1158015620039c2573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003a079290911690678ac7230489e800009060040162008172565b600060405180830381600087803b15801562003a2257600080fd5b505af115801562003a37573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562003ad757600080fd5b505af115801562003aec573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003b2d90600090678ac7230489e800009060040162008172565b600060405180830381600087803b15801562003b4857600080fd5b505af115801562003b5d573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562003bf557600080fd5b505af115801562003c0a573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b45793506200260d929091169060009060040162008172565b60185462003c7f9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620020af620f424060646200808d565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003d189073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003ce2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003d0891906200812b565b6200169e620f424060646200808d565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003d629073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162000fcc565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003dae9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562003dce573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003df4919062007d41565b62003e035762003e0362007efd565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003e4d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162000fcc565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000ef69073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003cc4565b600060405162003ea79062007bf9565b604051809103906000f08015801562003ec4573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc9362003f0d938116921690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562003f2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f53919062007d41565b62003f625762003f6262007efd565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003faa93908216929116906801158e460913d000009060040162007ed9565b6020604051808303816000875af115801562003fca573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003ff0919062007d41565b62003fff5762003fff62007efd565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620040429291169085906801a055690d9db800009060040162007ed9565b6020604051808303816000875af115801562004062573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004088919062007d41565b62004097576200409762007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620040d3929190911690636f7bc9be906024016200069c565b6018546003546040516337bde4df60e11b81526001600160a01b0391821660048201526200410f929190911690636f7bc9be906024016200069c565b6018546040516337bde4df60e11b81526001600160a01b03838116600483015262004145921690636f7bc9be906024016200069c565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200418f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620041b9919081019062007dfe565b9050620041c9815160036200608b565b620041e38160008151811062000790576200079062007f13565b620041fd81600081518110620007c857620007c862007f13565b6200421781600081518110620007fd57620007fd62007f13565b6200424f8160018151811062004231576200423162007f13565b6020908102919091010151516003546001600160a01b03166200614e565b620042858160018151811062004269576200426962007f13565b6020026020010151602001516801158e460913d000006200608b565b6200429f81600181518110620007fd57620007fd62007f13565b620042cc81600281518110620042b957620042b962007f13565b602002602001015160000151836200614e565b6200430281600281518110620042e657620042e662007f13565b6020026020010151602001516801a055690d9db800006200608b565b6200431c81600281518110620007fd57620007fd62007f13565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004359939082169291169060040162007d27565b6020604051808303816000875af115801562004379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200439f919062007d41565b620043ae57620043ae62007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620043ea929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b03918216600482015262004426929190911690636f7bc9be906024016200069c565b6018546040516337bde4df60e11b81526001600160a01b0384811660048301526200445c921690636f7bc9be906024016200069c565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620044b0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620044da919081019062007dfe565b9050620044ea815160026200608b565b6200450481600081518110620042b957620042b962007f13565b6200451e81600081518110620042e657620042e662007f13565b6200453881600081518110620007fd57620007fd62007f13565b620045528160018151811062004231576200423162007f13565b6200456c8160018151811062004269576200426962007f13565b6200458681600181518110620007fd57620007fd62007f13565b5050565b604051620045989062007bf9565b604051809103906000f080158015620045b5573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b0392909216919091179055604051620045e49062007bf9565b604051809103906000f08015801562004601573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620046309062007bf9565b604051809103906000f0801580156200464d573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff1615620046915750600054610100900460ff1690565b60006000805160206200a43d8339815191523b156200479c576040516000906000805160206200a43d833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620046fe9083906519985a5b195960d21b9060200162008172565b60408051601f19818403018152908290526200471e9291602001620081d2565b60408051601f19818403018152908290526200473a9162008205565b6000604051808303816000865af19150503d806000811462004779576040519150601f19603f3d011682016040523d82523d6000602084013e6200477e565b606091505b509150508080602001905181019062004798919062007d41565b9150505b919050565b6000620047b28484846000620026aa565b90505b9392505050565b620047de8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620063bb565b601854909150620048159073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b0316620020af8460036200808d565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004864573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200488a919062007d41565b62004899576200489962007efd565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620048d89390821692911690869060040162007ed9565b6020604051808303816000875af1158015620048f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200491e919062007d41565b6200492d576200492d62007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200496c9390821692911690869060040162007ed9565b6020604051808303816000875af11580156200498c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620049b2919062007d41565b620049c157620049c162007efd565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620049fb929116908490869060040162007ed9565b6020604051808303816000875af115801562004a1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a41919062007d41565b62004a505762004a5062007efd565b62004a5e6212750062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004aad573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ad3919062007d41565b62004ae25762004ae262007efd565b601854604080516385d4cad360e01b8152905162004b2f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200318f573d6000803e3d6000fd5b62004b3d62cb070062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004b8c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bb2919062007d41565b62004bc15762004bc162007efd565b601854604080516385d4cad360e01b8152905162004cb3926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c3491906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004c7e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ca491906200812b565b60646200323484603c6200808d565b62004cc162b8920062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d10573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004d36919062007d41565b62004d455762004d4562007efd565b601854604080516385d4cad360e01b8152905162004dea926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004d92573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004db891906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001c62565b62004df96301dfe20062006360565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004e48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e6e919062007d41565b62004e7d5762004e7d62007efd565b601854604080516385d4cad360e01b8152905162000811926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004eca573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ef091906200810b565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001c62565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc9362004f6c93918316921690869060040162007ed9565b6020604051808303816000875af115801562004f8c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fb2919062007d41565b62004fc15762004fc162007efd565b6018546003546040516388a772ef60e01b81526001600160a01b03918216600482015262004ffd9291909116906388a772ef9060240162001c62565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200504c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005072919062007d41565b62005081576200508162007efd565b6200508f626ebe0062006360565b60006064620050a08360086200808d565b620050ac919062008076565b620050b99060036200808d565b6064620050c884600c6200808d565b620050d4919062008076565b620050e091906200815c565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200511d92911690630bca8bcd9060240162001c62565b6200512c630127500062006360565b60646200513b8360086200808d565b62005147919062008076565b6200515490600b6200808d565b60646200516384600c6200808d565b6200516f919062008076565b6200517b91906200815c565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620051b892911690630bca8bcd9060240162001c62565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004586929190911690630bca8bcd90602401602060405180830381865afa1580156200520c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200523291906200812b565b836200608b565b601854620052729073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b03166a0422ca8b0a00a4250000006200634c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620052c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620052e7919062007d41565b620052f657620052f662007efd565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200533f939082169291169069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af11580156200535f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005385919062007d41565b62005394576200539462007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620053dd939082169291169069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af1158015620053fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005423919062007d41565b62005432576200543262007efd565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200547692911690849069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af115801562005496573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620054bc919062007d41565b620054cb57620054cb62007efd565b620054d96212750062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005528573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200554e919062007d41565b6200555d576200555d62007efd565b601854604080516385d4cad360e01b8152905162005651926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620055aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055d091906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200561a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200564091906200812b565b691969368974c05b0000006200608b565b6200565f62cb070062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620056ae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056d4919062007d41565b620056e357620056e362007efd565b601854604080516385d4cad360e01b81529051620057d7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005730573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200575691906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620057a0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057c691906200812b565b697f0e10af47c1c70000006200608b565b620057e562b8920062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005834573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200585a919062007d41565b62005869576200586962007efd565b601854604080516385d4cad360e01b815290516200595e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620058b6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058dc91906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005927573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200594d91906200812b565b69d3c21bcecceda10000006200608b565b6200596d6301dfe20062006360565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620059bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e2919062007d41565b620059f157620059f162007efd565b601854604080516385d4cad360e01b8152905162000ef6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005a3e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a6491906200810b565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005909565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005d3e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005d64919062007d41565b1562005d745762005d7462007efd565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005dc3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005de9919062007d41565b1562005df95762005df962007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005e48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005e6e919062007d41565b62005e7d5762005e7d62007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005ecc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005ef2919062007d41565b1562000ef65762000ef662007efd565b8015158215151462004586577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162005f799060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838162005fcc576040518060400160405280600581526020016466616c736560d81b81525062005fea565b604051806040016040528060048152602001637472756560e01b8152505b60405162005ff9919062008251565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200604c576040518060400160405280600581526020016466616c736560d81b8152506200606a565b604051806040016040528060048152602001637472756560e01b8152505b60405162006079919062008290565b60405180910390a16200458662006248565b80821462004586577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620060fe9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a47d83398151915281604051620061269190620080a7565b60405180910390a16000805160206200a47d83398151915282604051620060799190620080e0565b806001600160a01b0316826001600160a01b03161462004586577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620061d69060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f816040516200620f9190620082bb565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8260405162006079919062008300565b6000805160206200a43d8339815191523b156200633b576040516000906000805160206200a43d833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620062b69083906519985a5b195960d21b906001906020016200818b565b60408051601f1981840301815290829052620062d69291602001620081d2565b60408051601f1981840301815290829052620062f29162008205565b6000604051808303816000865af19150503d806000811462006331576040519150601f19603f3d011682016040523d82523d6000602084013e62006336565b606091505b505050505b6000805461ff001916610100179055565b6200635b8383836000620063fc565b505050565b6000805160206200a43d83398151915263e5d6bf026200638183426200815c565b6040518263ffffffff1660e01b8152600401620063a091815260200190565b600060405180830381600087803b15801562001cfb57600080fd5b6000620063ca84848462006605565b9050620047b56040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b81525082620067fc565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620064529162008205565b6000604051808303816000865af19150503d806000811462006491576040519150601f19603f3d011682016040523d82523d6000602084013e62006496565b606091505b50915050600081806020019051810190620064b291906200812b565b9050620064ec84620064e587620064de6370a0823160e01b620064d7600a8d6200689c565b90620068c6565b90620068e4565b906200690d565b821562000c885760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006537919062008205565b6000604051808303816000865af19150503d806000811462006576576040519150601f19603f3d011682016040523d82523d6000602084013e6200657b565b606091505b509150506000818060200190518101906200659791906200812b565b905082861015620065c257620065ae868462007f3f565b620065ba908262007f3f565b9050620065dd565b620065ce838762007f3f565b620065da90826200815c565b90505b620065fb81620064e56318160ddd60e01b620064d7600a8d6200689c565b5050505050505050565b600081831115620066835760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620066945750818411155b15620066a2575082620047b5565b6000620066b0848462007f3f565b620066bd9060016200815c565b905060038511158015620066d057508481115b15620066eb57620066e285856200815c565b915050620047b5565b620066fa600360001962007f3f565b8510158015620067165750620067138560001962007f3f565b81115b1562006736576200672a8560001962007f3f565b620066e2908462007f3f565b82851115620067985760006200674d848762007f3f565b905060006200675d838362008145565b9050806000036200677457849350505050620047b5565b60016200678282886200815c565b6200678e919062007f3f565b93505050620067f4565b83851015620067f4576000620067af868662007f3f565b90506000620067bf838362008145565b905080600003620067d657859350505050620047b5565b620067e2818662007f3f565b620067ef9060016200815c565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b03168383604051602401620068289291906200832b565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b179052516200685f919062008205565b600060405180830381855afa9150503d806000811462000c88576040519150601f19603f3d011682016040523d82523d6000602084013e62000c88565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c179055600082620068bd565b6002820180546001810182556000918252602082206001600160a01b03841691015582620068bd565b620045868282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b94600093909290918301828280156200698657602002820191906000526020600020905b81548152602001906001019080831162006971575b505050505090506000836200699b8362006c7a565b604051602001620069ae929190620081d2565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006a029186918891016200834f565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006a3d5762006a3b8762006d2e565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006a7e9187918991016200834f565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ac5919062008205565b600060405180830381855afa9150503d806000811462006b02576040519150601f19603f3d011682016040523d82523d6000602084013e62006b07565b606091505b50915062006b2490508162006b1e8860206200808d565b62006d3b565b604051630667f9d760e41b8152909250600091506000805160206200a43d8339815191529063667f9d709062006b61908b90879060040162008172565b602060405180830381865afa15801562006b7f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006ba591906200812b565b905080821462006bc95760405162461bcd60e51b81526004016200667a906200838b565b6040516370ca10bb60e01b81526000805160206200a43d833981519152906370ca10bb9062006c01908b9087908e906004016200818b565b600060405180830381600087803b15801562006c1c57600080fd5b505af115801562006c31573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006c6660028b01600062007c07565b896004016000905550505050505050505050565b606060008251602062006c8e91906200808d565b67ffffffffffffffff81111562006ca95762006ca962007d61565b6040519080825280601f01601f19166020018201604052801562006cd4576020820181803683370190505b50905060005b835181101562006d2757600084828151811062006cfb5762006cfb62007f13565b60200260200101519050808260200260200184015250808062006d1e9062008426565b91505062006cda565b5092915050565b6000620068c08262006dc5565b6000806000602085511162006d5257845162006d55565b60205b905060005b8181101562006dbb5762006d708160086200808d565b8662006d7d83886200815c565b8151811062006d905762006d9062007f13565b01602001516001600160f81b031916901c92909217918062006db28162008426565b91505062006d5a565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b94938793919290919083018282801562006e3757602002820191906000526020600020905b81548152602001906001019080831162006e22575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a168452825280832090519596509491935062006e83925085918791016200834f565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562006f22576001600160a01b0384166000908152602087815260408083206001600160e01b0319871684528252808320905190929162006ef29185918791016200834f565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b60008362006f308362007abe565b60405160200162006f43929190620081d2565b60405160208183030381529060405290506000805160206200a45d83398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562006fa257600080fd5b505af115801562006fb7573d6000803e3d6000fd5b50505050600080866001600160a01b03168360405162006fd8919062008205565b600060405180830381855afa9150503d806000811462007015576040519150601f19603f3d011682016040523d82523d6000602084013e6200701a565b606091505b50915062007037905081620070318760206200808d565b62007b6b565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a43d833981519152906365bc9481906024016000604051808303816000875af115801562007094573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620070be9190810190620084af565b5090508051600103620073855760006000805160206200a45d83398151915260001c6001600160a01b031663667f9d70898460008151811062007105576200710562007f13565b60200260200101516040518363ffffffff1660e01b81526004016200712c92919062008172565b602060405180830381865afa1580156200714a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200717091906200812b565b905080620071d4577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620071b057620071b062007f13565b602002602001015160001c604051620071cb92919062008172565b60405180910390a15b808314620071f65760405162461bcd60e51b81526004016200667a906200838b565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200722e9291906200834f565b60405160208183030381529060405280519060200120856000815181106200725a576200725a62007f13565b602002602001015160001c6040516200727794939291906200851a565b60405180910390a18160008151811062007295576200729562007f13565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c1683528452808220905192939092620072e0918a918c91016200834f565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200734a918a918c91016200834f565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007941565b600181511115620078d05760005b8151811015620078c95760006000805160206200a45d83398151915260001c6001600160a01b031663667f9d708a858581518110620073d657620073d662007f13565b60200260200101516040518363ffffffff1660e01b8152600401620073fd92919062008172565b602060405180830381865afa1580156200741b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200744191906200812b565b905080620074a4577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58984848151811062007480576200748062007f13565b602002602001015160001c6040516200749b92919062008172565b60405180910390a15b6000805160206200a45d83398151915260001c6001600160a01b03166370ca10bb8a858581518110620074db57620074db62007f13565b602002602001015161133760f01b6040518463ffffffff1660e01b815260040162007509939291906200818b565b600060405180830381600087803b1580156200752457600080fd5b505af115801562007539573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200755b919062008205565b600060405180830381855afa9150503d806000811462007598576040519150601f19603f3d011682016040523d82523d6000602084013e6200759d565b606091505b509092509050620075b581620070318b60206200808d565b9550818015620075c9575061133760f01b86145b156200781c577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620076079291906200834f565b6040516020818303038152906040528051906020012088888151811062007632576200763262007f13565b602002602001015160001c6040516200764f94939291906200851a565b60405180910390a18484815181106200766c576200766c62007f13565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620076b7918d918f91016200834f565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620077449291906200834f565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a45d83398151915260001c6001600160a01b03166370ca10bb8c878781518110620077b657620077b662007f13565b6020026020010151866040518463ffffffff1660e01b8152600401620077df939291906200818b565b600060405180830381600087803b158015620077fa57600080fd5b505af11580156200780f573d6000803e3d6000fd5b50505050505050620078c9565b6000805160206200a45d83398151915260001c6001600160a01b03166370ca10bb8c87878151811062007853576200785362007f13565b6020026020010151866040518463ffffffff1660e01b81526004016200787c939291906200818b565b600060405180830381600087803b1580156200789757600080fd5b505af1158015620078ac573d6000803e3d6000fd5b505050505050508080620078c09062008426565b91505062007393565b5062007941565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200667a565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a16845282528083209051909291620079859188918a91016200834f565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007a145760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200667a565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007a4560028a01600062007c07565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007a8b9188918a91016200834f565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007ad291906200808d565b67ffffffffffffffff81111562007aed5762007aed62007d61565b6040519080825280601f01601f19166020018201604052801562007b18576020820181803683370190505b50905060005b835181101562006d2757600084828151811062007b3f5762007b3f62007f13565b60200260200101519050808260200260200184015250808062007b629062008426565b91505062007b1e565b6000806000602085511162007b8257845162007b85565b60205b905060005b8181101562006dbb5762007ba08160086200808d565b8662007bad83886200815c565b8151811062007bc05762007bc062007f13565b01602001516001600160f81b031916901c92909217918062007be28162008426565b91505062007b8a565b61191b806200854b83390190565b6105d78062009e6683390190565b50805460008255906000526020600020908101906200081191905b8082111562007c38576000815560010162007c22565b5090565b60008060006060848603121562007c5257600080fd5b505081359360208301359350604090920135919050565b80151581146200081157600080fd5b6000806000806080858703121562007c8f57600080fd5b843593506020850135925060408501359150606085013562007cb18162007c69565b939692955090935050565b6001600160a01b03811681146200081157600080fd5b60008060006060848603121562007ce857600080fd5b83359250602084013562007cfc8162007cbc565b929592945050506040919091013590565b60006020828403121562007d2057600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007d5457600080fd5b8151620047b58162007c69565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007d9d5762007d9d62007d61565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007dcf5762007dcf62007d61565b604052919050565b600067ffffffffffffffff82111562007df45762007df462007d61565b5060051b60200190565b6000602080838503121562007e1257600080fd5b825167ffffffffffffffff81111562007e2a57600080fd5b8301601f8101851362007e3c57600080fd5b805162007e5362007e4d8262007dd7565b62007da3565b8181526060918202830184019184820191908884111562007e7357600080fd5b938501935b8385101562007ecd5780858a03121562007e925760008081fd5b62007e9c62007d77565b855162007ea98162007cbc565b81528587015187820152604080870151908201528352938401939185019162007e78565b50979650505050505050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115620068c057620068c062007f29565b600181815b8085111562007f9657816000190482111562007f7a5762007f7a62007f29565b8085161562007f8857918102915b93841c939080029062007f5a565b509250929050565b60008262007faf57506001620068c0565b8162007fbe57506000620068c0565b816001811462007fd7576002811462007fe25762008002565b6001915050620068c0565b60ff84111562007ff65762007ff662007f29565b50506001821b620068c0565b5060208310610133831016604e8410600b841016171562008027575081810a620068c0565b62008033838362007f55565b80600019048211156200804a576200804a62007f29565b029392505050565b6000620068bd838362007f9e565b634e487b7160e01b600052601260045260246000fd5b60008262008088576200808862008060565b500490565b8082028115828204841417620068c057620068c062007f29565b604081526000620080d260408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b604081526000620080d260408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200811e57600080fd5b8151620047b58162007cbc565b6000602082840312156200813e57600080fd5b5051919050565b60008262008157576200815762008060565b500690565b80820180821115620068c057620068c062007f29565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620081c9578181015183820152602001620081af565b50506000910152565b6001600160e01b0319831681528151600090620081f7816004850160208701620081ac565b919091016004019392505050565b6000825162008219818460208701620081ac565b9190910192915050565b600081518084526200823d816020860160208601620081ac565b601f01601f19169290920160200192915050565b6040815260006200827c60408301600a8152690808115e1c1958dd195960b21b602082015260400190565b828103602084015262002700818562008223565b6040815260006200827c60408301600a815269080808081058dd1d585b60b21b602082015260400190565b604081526000620082e660408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000620082e660408301600a815269080808081058dd1d585b60b21b602082015260400190565b60408152600062008340604083018562008223565b90508260208301529392505050565b825160009082906020808701845b838110156200837b578151855293820193908201906001016200835d565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b6000600182016200843b576200843b62007f29565b5060010190565b600082601f8301126200845457600080fd5b815160206200846762007e4d8362007dd7565b82815260059290921b840181019181810190868411156200848757600080fd5b8286015b84811015620084a457805183529183019183016200848b565b509695505050505050565b60008060408385031215620084c357600080fd5b825167ffffffffffffffff80821115620084dc57600080fd5b620084ea8683870162008442565b935060208501519150808211156200850157600080fd5b50620085108582860162008442565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b506040516200191b3803806200191b8339810160408190526200003491620001b2565b600080546001600160a01b03191633908117825560405190918291600080516020620018fb833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b0380851693921691600080516020620018fb83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b6080516116e762000214600039600081816101bd0152818161080f0152610bc201526116e76000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806385d4cad3116100a2578063d36862e811610071578063d36862e81461022e578063dd46706414610241578063ec20b45714610254578063f02c6d8f14610267578063f2fde38b1461027057600080fd5b806385d4cad3146101b857806388a772ef146101f75780638da5cb5b1461020a578063c7e42b1b1461021b57600080fd5b80635b904cb7116100de5780635b904cb7146101685780636f7bc9be14610170578063715018a6146101a35780637f87bbd6146101ab57600080fd5b80630bca8bcd1461011057806342714978146101365780634e71d92d1461014b57806350ad827a14610153575b600080fd5b61012361011e3660046114ba565b610283565b6040519081526020015b60405180910390f35b6101496101443660046114ba565b6103fb565b005b610149610689565b61015b610966565b60405161012d91906114dc565b6101496109e8565b61019361017e3660046114ba565b60066020526000908152604090205460ff1681565b604051901515815260200161012d565b610149610ac7565b6004546101939060ff1681565b6101df7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161012d565b6101236102053660046114ba565b610b3b565b6000546001600160a01b03166101df565b6101496102293660046114ba565b610b96565b61012361023c3660046114ba565b610f28565b61014961024f36600461153e565b610f83565b610149610262366004611557565b61101a565b61012360035481565b61014961027e3660046114ba565b6112bb565b6001600160a01b03811660009081526006602052604081205460ff1680156102ad575060045460ff165b156103ee5760006102bd836113a5565b905060006102ca84610b3b565b905080600583815481106102e0576102e0611581565b90600052602060002090600302016002015410610301575060009392505050565b60006224ea006003544261031591906115ad565b61031f91906115c6565b9050600060646103308460086115e8565b61033a91906115c6565b61034490836115e8565b606461035185600c6115e8565b61035b91906115c6565b61036591906115ff565b9050828111806103765750600b8210155b156103b2576005848154811061038e5761038e611581565b906000526020600020906003020160020154836103ab91906115ad565b90506103e5565b600584815481106103c5576103c5611581565b906000526020600020906003020160020154816103e291906115ad565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b0316331461042e5760405162461bcd60e51b815260040161042590611612565b60405180910390fd5b6001600160a01b0381166104aa5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610425565b60006104b5826113a5565b90506000600582815481106104cc576104cc611581565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600580549193509161051c916115ad565b8154811061052c5761052c611581565b90600052602060002090600302016005838154811061054d5761054d611581565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556005805483926105a3916115ad565b815481106105b3576105b3611581565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600580548061060a5761060a611647565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260069091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526006602052604090205460ff1615156001146107135760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610425565b60045460ff166107795760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610425565b600061078433610283565b9050600081116107f35760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610425565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610860573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610884919061165d565b6108e35760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610425565b60006108ee336113a5565b9050816005828154811061090457610904611581565b9060005260206000209060030201600201600082825461092491906115ff565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606005805480602002602001604051908101604052809291908181526020016000905b828210156109df576000848152602090819020604080516060810182526003860290920180546001600160a01b031683526001808201548486015260029091015491830191909152908352909201910161098a565b50505050905090565b6000546001600160a01b03163314610a125760405162461bcd60e51b815260040161042590611612565b60045460ff1615610a8b5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610425565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610af15760405162461bcd60e51b815260040161042590611612565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610b67836113a5565b905060058181548110610b7c57610b7c611581565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610bc05760405162461bcd60e51b815260040161042590611612565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c675760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610425565b6001600160a01b038116610ce35760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610425565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4e919061167f565b905060008111610dc65760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610425565b6000826001600160a01b031663a9059cbb610de96000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5a919061165d565b905080610ec45760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610425565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610ef96000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610f54836113a5565b905060058181548110610f6957610f69611581565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fad5760405162461bcd60e51b815260040161042590611612565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fdc81426115ff565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110445760405162461bcd60e51b815260040161042590611612565b6001600160a01b03821660009081526006602052604090205460ff16156110ca5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610425565b6001600160a01b0382166111465760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610425565b600081116111b45760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610425565b6001600160a01b0382811660008181526006602090815260408083208054600160ff1990911681179091558151606081018352858152928301878152838301858152600580549384018155865293517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600390930292830180546001600160a01b031916919098161790965594517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db186015590517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db290940193909355915190917f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f91a25050565b6000546001600160a01b031633146112e55760405162461bcd60e51b815260040161042590611612565b6001600160a01b03811661134a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610425565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526006602052604081205460ff1615156001146114385760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610425565b6000805b60055481101561149c57836001600160a01b03166005828154811061146357611463611581565b60009182526020909120600390910201546001600160a01b03160361148a5780915061149c565b8061149481611698565b91505061143c565b5092915050565b80356001600160a01b03811681146103f657600080fd5b6000602082840312156114cc57600080fd5b6114d5826114a3565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561153157815180516001600160a01b03168552868101518786015285015185850152606090930192908501906001016114f9565b5091979650505050505050565b60006020828403121561155057600080fd5b5035919050565b6000806040838503121561156a57600080fd5b611573836114a3565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156115c0576115c0611597565b92915050565b6000826115e357634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176115c0576115c0611597565b808201808211156115c0576115c0611597565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b60006020828403121561166f57600080fd5b815180151581146114d557600080fd5b60006020828403121561169157600080fd5b5051919050565b6000600182016116aa576116aa611597565b506001019056fea2646970667358221220157b3eae9a1ae2e7d7cc252855d7fcf62c788bb02ed633aa778f7e49daee3f3f64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea26469706673582212202284e67777fca07e29094068d3e700ce3ff463464acf1e2573fcb253960d116864736f6c634300081100330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a264697066735822122001f97d8f0115722a44b8d4dc385b0808a65cc16612d33a55c6c6022e01d8357464736f6c63430008110033", - "sourceMap": "183:21347:20:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;183:21347:20;;;;;;;;;-1:-1:-1;3048:37:19;3012:77;;;-1:-1:-1;;;;;;3012:77:19;;;;;;183:21347:20;;;;;;", + "object": "0x60806040526000805460ff191660011790553480156200001e57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b031990911617905561a76b806200005b6000396000f3fe60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000911565b6200024c6200029336600462007e5d565b62000c17565b6200024c620002aa36600462007e5d565b62000d8d565b62000261600b81565b62000261600281565b6200024c62000e9d565b6200024c62000fc7565b6200024c620011a0565b6200024c62001385565b6200024c62001e3a565b6200024c62002280565b620003156200030f36600462007e99565b620027d4565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007ef3565b62002832565b6200024c620029eb565b62000261600a81565b6200024c6200036836600462007f2e565b62003019565b62000261600481565b6200024c62003886565b6200024c62003df3565b6200024c62004042565b6200024c62004735565b620003a96200481b565b60405190151581526020016200026f565b62000315620003cb36600462007e5d565b6200494c565b6200024c620003e236600462007f2e565b62004967565b62000261600381565b6200024c6200512f565b6200024c62005446565b62000261600081565b6200024c62005cb7565b6200024c62005f10565b600054620003a99060ff1681565b6200043a62004735565b6200044462005cb7565b60025460405173853d955acef822db058eb8505911ed77f175b99e916001600160a01b031690620004759062007e0c565b6200048292919062007f48565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007f62565b600062006123565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b991908101906200801f565b9050620005c981516000620062ac565b6018546040805163022b1d8960e21b8152905162000644926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063c9190620080fa565b6000620062ac565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200068b9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620006ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006d1919062007f62565b620006e057620006e062008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000763929190911690636f7bc9be906024015b602060405180830381865afa15801562000735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200075b919062007f62565b600162006123565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620007b7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620007e191908101906200801f565b9050620007f181516001620062ac565b62000829816000815181106200080b576200080b6200814e565b6020908102919091010151516001546001600160a01b03166200636f565b6200085e816000815181106200084357620008436200814e565b602002602001015160200151678ac7230489e80000620062ac565b6200088c816000815181106200087857620008786200814e565b6020026020010151604001516000620062ac565b6018546040805163022b1d8960e21b815290516200090e926001600160a01b0316916308ac76249160048083019260209291908290030181865afa158015620008d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008ff9190620080fa565b678ac7230489e80000620062ac565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620009589390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562000978573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099e919062007f62565b620009ad57620009ad62008138565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620009e9929190911690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000a33573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000a5d91908101906200801f565b905062000a6d81516001620062ac565b62000a87816000815181106200080b576200080b6200814e565b62000aa1816000815181106200084357620008436200814e565b62000abb816000815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362000af8939082169291169060040162007f48565b6020604051808303816000875af115801562000b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b3e919062007f62565b62000b4d5762000b4d62008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000b89929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000bdd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c0791908101906200801f565b90506200090e81516000620062ac565b600082841162000c335762000c2d84846200817a565b62000c3f565b62000c3f83856200817a565b90508060000362000c505750505050565b6000841562000c60578462000c62565b835b9050600062000c7384600a62008291565b62000c8b906b033b2e3c9fd0803ce8000000620082b5565b8262000ca46b033b2e3c9fd0803ce800000086620082cc565b62000cb09190620082b5565b1090508062000d8557604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528660405162000d4b9190620082ee565b60405180910390a16000805160206200a7168339815191528560405162000d73919062008327565b60405180910390a162000d8562006469565b505050505050565b600082841162000da95762000da384846200817a565b62000db5565b62000db583856200817a565b9050818111158062000e9657604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528560405162000e5c9190620082ee565b60405180910390a16000805160206200a7168339815191528460405162000e84919062008327565b60405180910390a162000e9662006469565b5050505050565b601854604080516385d4cad360e01b8152905162000f2b926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000eea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f10919062008352565b73853d955acef822db058eb8505911ed77f175b99e6200636f565b6018546040805163f02c6d8f60e01b8152905162000f78926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200100f93908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af11580156200102f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001055919062007f62565b62001064576200106462008138565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152620010b9929190911690630bca8bcd906024015b602060405180830381865afa15801562000616573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200112e919062007f62565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200116b929190911690630bca8bcd906024016200109b565b601854604051630bca8bcd60e01b81526000600482015262000fc5916001600160a01b031690630bca8bcd906024016200109b565b6018546040805163f02c6d8f60e01b81529051620011ed926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200123a926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001289573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012af919062007f62565b620012be57620012be62008138565b6018546040805163f02c6d8f60e01b8152905162001338926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200130b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013319190620080fa565b42620062ac565b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000735573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905169d3c21bcecceda1000000926200141a926001600160a01b03909116916385d4cad3916004808201926020929091908290030181865afa158015620013e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001407919062008352565b6018546001600160a01b0316836200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200146f57600080fd5b505af115801562001484573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc9450620014c8939283169290911690869060040162008114565b6020604051808303816000875af1158015620014e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200150e919062007f62565b6200151d576200151d62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200156c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001592919062007f62565b620015a157620015a162008138565b601854604080516385d4cad360e01b8152905162001646926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001614919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024016200109b565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001695573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016bb919062007f62565b620016ca57620016ca62008138565b601854604080516385d4cad360e01b81529051620017ce926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001717573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200173d919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001787573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017ad9190620080fa565b6064620017bc84600c620082cc565b620017c89190620082b5565b620062ac565b620017dc6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200182b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001851919062007f62565b62001860576200186062008138565b601854604080516385d4cad360e01b8152905162001952926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620018ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018d3919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200191d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019439190620080fa565b6064620017bc846014620082cc565b620019606224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620019af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019d5919062007f62565b620019e457620019e462008138565b601854604080516385d4cad360e01b8152905162001ad6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a57919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001aa1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ac79190620080fa565b6064620017bc84601c620082cc565b62001ae4626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b33573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b59919062007f62565b62001b685762001b6862008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001bb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bdb919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c4b9190620080fa565b6064620017bc846034620082cc565b62001c6862dd7c0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001cb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cdd919062007f62565b62001cec5762001cec62008138565b601854604080516385d4cad360e01b8152905162001dd7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001d39573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d5f919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001daa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001dd09190620080fa565b82620062ac565b6000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e2557600080fd5b505af115801562000e96573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001e869291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001ea6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ecc919062007f62565b1562001edc5762001edc62008138565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001f289291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001f48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f6e919062007f62565b1562001f7e5762001f7e62008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001fca9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001fea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002010919062007f62565b1562002020576200202062008138565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562002078573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200209e919062008352565b6040518363ffffffff1660e01b8152600401620020bd92919062007f48565b6020604051808303816000875af1158015620020dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002103919062007f62565b1562002113576200211362008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200214c9291169060009060040162007f48565b6020604051808303816000875af11580156200216c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002192919062007f62565b15620021a257620021a262008138565b601854620021df9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6200656d565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200222b9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af11580156200224b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002271919062007f62565b62000fc55762000fc562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620022c79390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620022e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200230d919062007f62565b6200231c576200231c62008138565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002359939082169291169060040162007f48565b6020604051808303816000875af115801562002379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200239f919062007f62565b15620023af57620023af62008138565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620023e792911690849060040162007f48565b6020604051808303816000875af115801562002407573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200242d919062007f62565b156200243d576200243d62008138565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200247a939082169291169060040162007f48565b6020604051808303816000875af11580156200249a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024c0919062007f62565b620024cf57620024cf62008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200252457600080fd5b505af115801562002539573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620025d957600080fd5b505af1158015620025ee573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200263c57600080fd5b505af115801562002651573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620026f157600080fd5b505af115801562002706573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200275257600080fd5b505af115801562002767573d6000803e3d6000fd5b505050506000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620027b957600080fd5b505af1158015620027ce573d6000803e3d6000fd5b50505050565b600084158015620027e3575081155b15620027f2575060006200282a565b838303620028025750816200282a565b836200280f81856200817a565b6200281b908762008372565b62002827919062008389565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562002897573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028bd9190620080fa565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620028f09089908790602001620083a4565b60405160208183030381529060405280519060200120878562002914919062008389565b6040516001600160e01b031960e086901b1681526200293993929190600401620083bd565b600060405180830381600087803b1580156200295457600080fd5b505af115801562002969573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000d859350861691506370a0823190602401602060405180830381865afa158015620029b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029df9190620080fa565b620017c8868462008389565b601854604080516385d4cad360e01b8152905162002a7c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a5e919062008352565b6018546001600160a01b03166a0422ca8b0a00a4250000006200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562002ad157600080fd5b505af115801562002ae6573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002b8657600080fd5b505af115801562002b9b573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002bf057600080fd5b505af115801562002c05573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002c5393928316929091169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562002c73573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c99919062007f62565b62002ca85762002ca862008138565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a6d68339815191529063f28dceb390608401600060405180830381600087803b15801562002d3257600080fd5b505af115801562002d47573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d9c57600080fd5b505af115801562002db1573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002e04573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e2a919062007f62565b62002e395762002e3962008138565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002e8a57600080fd5b505af115801562002e9f573d6000803e3d6000fd5b5050505062002eb26301dfe20062006581565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002f0357600080fd5b505af115801562002f18573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002faf57600080fd5b505af115801562002fc4573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200275257600080fd5b6200303b8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062003095601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620013e1573d6000803e3d6000fd5b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b158015620030ea57600080fd5b505af1158015620030ff573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062003143939283169290911690869060040162008114565b6020604051808303816000875af115801562003163573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003189919062007f62565b62003198576200319862008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620031e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200320d919062007f62565b6200321c576200321c62008138565b601854604080516385d4cad360e01b8152905162003269926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032de919062007f62565b620032ed57620032ed62008138565b601854604080516385d4cad360e01b81529051620033fa926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003360919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620033aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033d09190620080fa565b6064620033df84600c620082cc565b620033eb9190620082b5565b670de0b6b3a764000062000d8d565b620034086224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003457573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200347d919062007f62565b6200348c576200348c62008138565b601854604080516385d4cad360e01b815290516200357e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034ff919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003549573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200356f9190620080fa565b6064620033df846014620082cc565b6200358c6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003601919062007f62565b62003610576200361062008138565b601854604080516385d4cad360e01b8152905162003702926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200365d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003683919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036f39190620080fa565b6064620033df84601c620082cc565b62003710626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200375f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003785919062007f62565b62003794576200379462008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620037e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003807919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003851573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620038779190620080fa565b6064620033df846034620082cc565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038cd9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620038ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003913919062007f62565b1562003923576200392362008138565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262003965929116908490678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003985573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620039ab919062007f62565b15620039bb57620039bb62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003a029390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003a22573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003a48919062007f62565b62003a575762003a5762008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562003aac57600080fd5b505af115801562003ac1573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003b5857600080fd5b505af115801562003b6d573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003bb29290911690678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003bcd57600080fd5b505af115801562003be2573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003c8257600080fd5b505af115801562003c97573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003cd890600090678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003cf357600080fd5b505af115801562003d08573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003da057600080fd5b505af115801562003db5573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b4579350620027379290911690600090600401620083a4565b60185462003e2a9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ec39073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003e8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003eb39190620080fa565b620017c8620f42406064620082cc565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003f0d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003f599291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562003f79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f9f919062007f62565b62003fae5762003fae62008138565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ff89073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000fc59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003e6f565b6000604051620040529062007e1a565b604051809103906000f0801580156200406f573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc93620040b8938116921690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620040d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620040fe919062007f62565b6200410d576200410d62008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200415593908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af115801562004175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200419b919062007f62565b620041aa57620041aa62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620041ed9291169085906801a055690d9db800009060040162008114565b6020604051808303816000875af11580156200420d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004233919062007f62565b62004242576200424262008138565b6018546001546040516337bde4df60e11b81526001600160a01b0391821660048201526200427e929190911690636f7bc9be9060240162000717565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620042ba929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b038381166004830152620042f0921690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200433a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200436491908101906200801f565b90506200437481516003620062ac565b6200438e816000815181106200080b576200080b6200814e565b620043a8816000815181106200084357620008436200814e565b620043c2816000815181106200087857620008786200814e565b620043fa81600181518110620043dc57620043dc6200814e565b6020908102919091010151516003546001600160a01b03166200636f565b62004430816001815181106200441457620044146200814e565b6020026020010151602001516801158e460913d00000620062ac565b6200444a816001815181106200087857620008786200814e565b62004477816002815181106200446457620044646200814e565b602002602001015160000151836200636f565b620044ad816002815181106200449157620044916200814e565b6020026020010151602001516801a055690d9db80000620062ac565b620044c7816002815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004504939082169291169060040162007f48565b6020604051808303816000875af115801562004524573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200454a919062007f62565b62004559576200455962008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262004595929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620045d1929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b03848116600483015262004607921690636f7bc9be9060240162000717565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200465b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200468591908101906200801f565b90506200469581516002620062ac565b620046af816000815181106200446457620044646200814e565b620046c9816000815181106200449157620044916200814e565b620046e3816000815181106200087857620008786200814e565b620046fd81600181518110620043dc57620043dc6200814e565b62004717816001815181106200441457620044146200814e565b62004731816001815181106200087857620008786200814e565b5050565b604051620047439062007e1a565b604051809103906000f08015801562004760573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b03929092169190911790556040516200478f9062007e1a565b604051809103906000f080158015620047ac573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620047db9062007e1a565b604051809103906000f080158015620047f8573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200483c5750600054610100900460ff1690565b60006000805160206200a6d68339815191523b1562004947576040516000906000805160206200a6d6833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620048a99083906519985a5b195960d21b90602001620083a4565b60408051601f1981840301815290829052620048c992916020016200840d565b60408051601f1981840301815290829052620048e59162008440565b6000604051808303816000865af19150503d806000811462004924576040519150601f19603f3d011682016040523d82523d6000602084013e62004929565b606091505b509150508080602001905181019062004943919062007f62565b9150505b919050565b60006200495d8484846000620027d4565b90505b9392505050565b620049898169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062004a22601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620049e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a09919062008352565b6018546001600160a01b0316620021d9846003620082cc565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004a71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a97919062007f62565b62004aa65762004aa662008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004ae59390821692911690869060040162008114565b6020604051808303816000875af115801562004b05573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004b2b919062007f62565b62004b3a5762004b3a62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004b799390821692911690869060040162008114565b6020604051808303816000875af115801562004b99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bbf919062007f62565b62004bce5762004bce62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262004c08929116908490869060040162008114565b6020604051808303816000875af115801562004c28573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c4e919062007f62565b62004c5d5762004c5d62008138565b62004c6b6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004cba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ce0919062007f62565b62004cef5762004cef62008138565b601854604080516385d4cad360e01b8152905162004d3c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b62004d4a62cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004dbf919062007f62565b62004dce5762004dce62008138565b601854604080516385d4cad360e01b8152905162004ec0926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e41919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004e8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004eb19190620080fa565b6064620033df84603c620082cc565b62004ece62b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004f1d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004f43919062007f62565b62004f525762004f5262008138565b601854604080516385d4cad360e01b8152905162004ff7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004f9f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fc5919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b620050066301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005055573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200507b919062007f62565b6200508a576200508a62008138565b601854604080516385d4cad360e01b815290516200090e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620050d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620050fd919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc936200517993918316921690869060040162008114565b6020604051808303816000875af115801562005199573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620051bf919062007f62565b620051ce57620051ce62008138565b6018546003546040516388a772ef60e01b81526001600160a01b0391821660048201526200520a9291909116906388a772ef9060240162001d8c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200527f919062007f62565b6200528e576200528e62008138565b6200529c626ebe0062006581565b60006064620052ad836008620082cc565b620052b99190620082b5565b620052c6906003620082cc565b6064620052d584600c620082cc565b620052e19190620082b5565b620052ed919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200532a92911690630bca8bcd9060240162001d8c565b62005339630127500062006581565b606462005348836008620082cc565b620053549190620082b5565b6200536190600b620082cc565b60646200537084600c620082cc565b6200537c9190620082b5565b62005388919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620053c592911690630bca8bcd9060240162001d8c565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004731929190911690630bca8bcd90602401602060405180830381865afa15801562005419573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200543f9190620080fa565b83620062ac565b601854604080516385d4cad360e01b8152905162005493926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620054e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005508919062007f62565b62005517576200551762008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362005560939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562005580573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055a6919062007f62565b620055b557620055b562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620055fe939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af11580156200561e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005644919062007f62565b62005653576200565362008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200569792911690849069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af1158015620056b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056dd919062007f62565b620056ec57620056ec62008138565b620056fa6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005749573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200576f919062007f62565b6200577e576200577e62008138565b601854604080516385d4cad360e01b8152905162005872926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620057cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057f1919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200583b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058619190620080fa565b691969368974c05b000000620062ac565b6200588062cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620058cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058f5919062007f62565b62005904576200590462008138565b601854604080516385d4cad360e01b81529051620059f8926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005951573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005977919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620059c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e79190620080fa565b697f0e10af47c1c7000000620062ac565b62005a0662b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005a55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a7b919062007f62565b62005a8a5762005a8a62008138565b601854604080516385d4cad360e01b8152905162005b7f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005ad7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005afd919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005b48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005b6e9190620080fa565b69d3c21bcecceda1000000620062ac565b62005b8e6301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005bdd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c03919062007f62565b62005c125762005c1262008138565b601854604080516385d4cad360e01b8152905162000fc5926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005c5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c85919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005b2a565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005f5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005f85919062007f62565b1562005f955762005f9562008138565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005fe4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200600a919062007f62565b156200601a576200601a62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562006069573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200608f919062007f62565b6200609e576200609e62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620060ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006113919062007f62565b1562000fc55762000fc562008138565b8015158215151462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200619a9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620061ed576040518060400160405280600581526020016466616c736560d81b8152506200620b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200621a91906200848c565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200626d576040518060400160405280600581526020016466616c736560d81b8152506200628b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200629a9190620084cb565b60405180910390a16200473162006469565b80821462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200631f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a71683398151915281604051620063479190620082ee565b60405180910390a16000805160206200a716833981519152826040516200629a919062008327565b806001600160a01b0316826001600160a01b03161462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620063f79060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620064309190620084f6565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f826040516200629a91906200853b565b6000805160206200a6d68339815191523b156200655c576040516000906000805160206200a6d6833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620064d79083906519985a5b195960d21b90600190602001620083bd565b60408051601f1981840301815290829052620064f792916020016200840d565b60408051601f1981840301815290829052620065139162008440565b6000604051808303816000865af19150503d806000811462006552576040519150601f19603f3d011682016040523d82523d6000602084013e62006557565b606091505b505050505b6000805461ff001916610100179055565b6200657c83838360006200661d565b505050565b6000805160206200a6d683398151915263e5d6bf02620065a2834262008389565b6040518263ffffffff1660e01b8152600401620065c191815260200190565b600060405180830381600087803b15801562001e2557600080fd5b6000620065eb84848462006826565b9050620049606040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262006a1d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620066739162008440565b6000604051808303816000865af19150503d8060008114620066b2576040519150601f19603f3d011682016040523d82523d6000602084013e620066b7565b606091505b50915050600081806020019051810190620066d39190620080fa565b90506200670d846200670687620066ff6370a0823160e01b620066f8600a8d62006abd565b9062006ae7565b9062006b05565b9062006b2e565b821562000d855760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006758919062008440565b6000604051808303816000865af19150503d806000811462006797576040519150601f19603f3d011682016040523d82523d6000602084013e6200679c565b606091505b50915050600081806020019051810190620067b89190620080fa565b905082861015620067e357620067cf86846200817a565b620067db90826200817a565b9050620067fe565b620067ef83876200817a565b620067fb908262008389565b90505b6200681c81620067066318160ddd60e01b620066f8600a8d62006abd565b5050505050505050565b600081831115620068a45760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620068b55750818411155b15620068c357508262004960565b6000620068d184846200817a565b620068de90600162008389565b905060038511158015620068f157508481115b156200690c5762006903858562008389565b91505062004960565b6200691b60036000196200817a565b851015801562006937575062006934856000196200817a565b81115b1562006957576200694b856000196200817a565b6200690390846200817a565b82851115620069b95760006200696e84876200817a565b905060006200697e838362008372565b905080600003620069955784935050505062004960565b6001620069a3828862008389565b620069af91906200817a565b9350505062006a15565b8385101562006a15576000620069d086866200817a565b90506000620069e0838362008372565b905080600003620069f75785935050505062004960565b62006a0381866200817a565b62006a1090600162008389565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162006a4992919062008566565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162006a80919062008440565b600060405180830381855afa9150503d806000811462000d85576040519150601f19603f3d011682016040523d82523d6000602084013e62000d85565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c17905560008262006ade565b6002820180546001810182556000918252602082206001600160a01b0384169101558262006ade565b620047318282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b946000939092909183018282801562006ba757602002820191906000526020600020905b81548152602001906001019080831162006b92575b5050505050905060008362006bbc8362006e9b565b60405160200162006bcf9291906200840d565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006c239186918891016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006c5e5762006c5c8762006f4f565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006c9f9187918991016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ce6919062008440565b600060405180830381855afa9150503d806000811462006d23576040519150601f19603f3d011682016040523d82523d6000602084013e62006d28565b606091505b50915062006d4590508162006d3f886020620082cc565b62006f5c565b604051630667f9d760e41b8152909250600091506000805160206200a6d68339815191529063667f9d709062006d82908b908790600401620083a4565b602060405180830381865afa15801562006da0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006dc69190620080fa565b905080821462006dea5760405162461bcd60e51b81526004016200689b90620085c6565b6040516370ca10bb60e01b81526000805160206200a6d6833981519152906370ca10bb9062006e22908b9087908e90600401620083bd565b600060405180830381600087803b15801562006e3d57600080fd5b505af115801562006e52573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006e8760028b01600062007e28565b896004016000905550505050505050505050565b606060008251602062006eaf9190620082cc565b67ffffffffffffffff81111562006eca5762006eca62007f82565b6040519080825280601f01601f19166020018201604052801562006ef5576020820181803683370190505b50905060005b835181101562006f4857600084828151811062006f1c5762006f1c6200814e565b60200260200101519050808260200260200184015250808062006f3f9062008661565b91505062006efb565b5092915050565b600062006ae18262006fe6565b6000806000602085511162006f7357845162006f76565b60205b905060005b8181101562006fdc5762006f91816008620082cc565b8662006f9e838862008389565b8151811062006fb15762006fb16200814e565b01602001516001600160f81b031916901c92909217918062006fd38162008661565b91505062006f7b565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156200705857602002820191906000526020600020905b81548152602001906001019080831162007043575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905195965094919350620070a4925085918791016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562007143576001600160a01b0384166000908152602087815260408083206001600160e01b03198716845282528083209051909291620071139185918791016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b600083620071518362007cdf565b604051602001620071649291906200840d565b60405160208183030381529060405290506000805160206200a6f683398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620071c357600080fd5b505af1158015620071d8573d6000803e3d6000fd5b50505050600080866001600160a01b031683604051620071f9919062008440565b600060405180830381855afa9150503d806000811462007236576040519150601f19603f3d011682016040523d82523d6000602084013e6200723b565b606091505b5091506200725890508162007252876020620082cc565b62007d8c565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a6d6833981519152906365bc9481906024016000604051808303816000875af1158015620072b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620072df9190810190620086ea565b5090508051600103620075a65760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d7089846000815181106200732657620073266200814e565b60200260200101516040518363ffffffff1660e01b81526004016200734d929190620083a4565b602060405180830381865afa1580156200736b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620073919190620080fa565b905080620073f5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620073d157620073d16200814e565b602002602001015160001c604051620073ec929190620083a4565b60405180910390a15b808314620074175760405162461bcd60e51b81526004016200689b90620085c6565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200744f9291906200858a565b60405160208183030381529060405280519060200120856000815181106200747b576200747b6200814e565b602002602001015160001c60405162007498949392919062008755565b60405180910390a181600081518110620074b657620074b66200814e565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262007501918a918c91016200858a565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200756b918a918c91016200858a565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007b62565b60018151111562007af15760005b815181101562007aea5760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d708a858581518110620075f757620075f76200814e565b60200260200101516040518363ffffffff1660e01b81526004016200761e929190620083a4565b602060405180830381865afa1580156200763c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620076629190620080fa565b905080620076c5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110620076a157620076a16200814e565b602002602001015160001c604051620076bc929190620083a4565b60405180910390a15b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8a858581518110620076fc57620076fc6200814e565b602002602001015161133760f01b6040518463ffffffff1660e01b81526004016200772a93929190620083bd565b600060405180830381600087803b1580156200774557600080fd5b505af11580156200775a573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200777c919062008440565b600060405180830381855afa9150503d8060008114620077b9576040519150601f19603f3d011682016040523d82523d6000602084013e620077be565b606091505b509092509050620077d681620072528b6020620082cc565b9550818015620077ea575061133760f01b86145b1562007a3d577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620078289291906200858a565b604051602081830303815290604052805190602001208888815181106200785357620078536200814e565b602002602001015160001c60405162007870949392919062008755565b60405180910390a18484815181106200788d576200788d6200814e565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620078d8918d918f91016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620079659291906200858a565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c878781518110620079d757620079d76200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a0093929190620083bd565b600060405180830381600087803b15801562007a1b57600080fd5b505af115801562007a30573d6000803e3d6000fd5b5050505050505062007aea565b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c87878151811062007a745762007a746200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a9d93929190620083bd565b600060405180830381600087803b15801562007ab857600080fd5b505af115801562007acd573d6000803e3d6000fd5b50505050505050808062007ae19062008661565b915050620075b4565b5062007b62565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200689b565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929162007ba69188918a91016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007c355760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200689b565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007c6660028a01600062007e28565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007cac9188918a91016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007cf39190620082cc565b67ffffffffffffffff81111562007d0e5762007d0e62007f82565b6040519080825280601f01601f19166020018201604052801562007d39576020820181803683370190505b50905060005b835181101562006f4857600084828151811062007d605762007d606200814e565b60200260200101519050808260200260200184015250808062007d839062008661565b91505062007d3f565b6000806000602085511162007da357845162007da6565b60205b905060005b8181101562006fdc5762007dc1816008620082cc565b8662007dce838862008389565b8151811062007de15762007de16200814e565b01602001516001600160f81b031916901c92909217918062007e038162008661565b91505062007dab565b61196d806200878683390190565b6105e3806200a0f383390190565b50805460008255906000526020600020908101906200090e91905b8082111562007e59576000815560010162007e43565b5090565b60008060006060848603121562007e7357600080fd5b505081359360208301359350604090920135919050565b80151581146200090e57600080fd5b6000806000806080858703121562007eb057600080fd5b843593506020850135925060408501359150606085013562007ed28162007e8a565b939692955090935050565b6001600160a01b03811681146200090e57600080fd5b60008060006060848603121562007f0957600080fd5b83359250602084013562007f1d8162007edd565b929592945050506040919091013590565b60006020828403121562007f4157600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007f7557600080fd5b8151620049608162007e8a565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007fbe5762007fbe62007f82565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007ff05762007ff062007f82565b604052919050565b600067ffffffffffffffff82111562008015576200801562007f82565b5060051b60200190565b600060208083850312156200803357600080fd5b825167ffffffffffffffff8111156200804b57600080fd5b8301601f810185136200805d57600080fd5b8051620080746200806e8262007ff8565b62007fc4565b818152606091820283018401918482019190888411156200809457600080fd5b938501935b83851015620080ee5780858a031215620080b35760008081fd5b620080bd62007f98565b8551620080ca8162007edd565b81528587015187820152604080870151908201528352938401939185019162008099565b50979650505050505050565b6000602082840312156200810d57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000828210156200818f576200818f62008164565b500390565b600181815b80851115620081d5578160001904821115620081b957620081b962008164565b80851615620081c757918102915b93841c939080029062008199565b509250929050565b600082620081ee5750600162006ae1565b81620081fd5750600062006ae1565b8160018114620082165760028114620082215762008241565b600191505062006ae1565b60ff84111562008235576200823562008164565b50506001821b62006ae1565b5060208310610133831016604e8410600b841016171562008266575081810a62006ae1565b62008272838362008194565b806000190482111562008289576200828962008164565b029392505050565b600062006ade8383620081dd565b634e487b7160e01b600052601260045260246000fd5b600082620082c757620082c76200829f565b500490565b6000816000190483118215151615620082e957620082e962008164565b500290565b6040815260006200831960408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200831960408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200836557600080fd5b8151620049608162007edd565b6000826200838457620083846200829f565b500690565b600082198211156200839f576200839f62008164565b500190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620083fb578181015183820152602001620083e1565b83811115620027ce5750506000910152565b6001600160e01b031983168152815160009062008432816004850160208701620083de565b919091016004019392505050565b6000825162008454818460208701620083de565b9190910192915050565b6000815180845262008478816020860160208601620083de565b601f01601f19169290920160200192915050565b604081526000620084b760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200282a81856200845e565b604081526000620084b760408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200852160408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200852160408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200857b60408301856200845e565b90508260208301529392505050565b825160009082906020808701845b83811015620085b65781518552938201939082019060010162008598565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b60006001820162008676576200867662008164565b5060010190565b600082601f8301126200868f57600080fd5b81516020620086a26200806e8362007ff8565b82815260059290921b84018101918181019086841115620086c257600080fd5b8286015b84811015620086df5780518352918301918301620086c6565b509695505050505050565b60008060408385031215620086fe57600080fd5b825167ffffffffffffffff808211156200871757600080fd5b62008725868387016200867d565b935060208501519150808211156200873c57600080fd5b506200874b858286016200867d565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f00330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220726833ddff7edfeffbe5c061c7811a419087855e87d5b044001d8511efb20c6c64736f6c634300080f0033", + "sourceMap": "208:21101:27:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;208:21101:27;;;;;;;;;-1:-1:-1;3122:37:26;3086:77;;;-1:-1:-1;;;;;;3086:77:26;;;;;;208:21101:27;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000814565b6200024c6200029336600462007c3c565b62000b1a565b6200024c620002aa36600462007c3c565b62000c90565b62000261600b81565b62000261600281565b6200024c62000da0565b6200024c62000ef8565b6200024c620010d1565b6200024c620012b6565b6200024c62001d10565b6200024c62002156565b620003156200030f36600462007c78565b620026aa565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007cd2565b62002708565b6200024c620028c1565b62000261600a81565b6200024c6200036836600462007d0d565b62002e97565b62000261600481565b6200024c620036db565b6200024c62003c48565b6200024c62003e97565b6200024c6200458a565b620003a962004670565b60405190151581526020016200026f565b62000315620003cb36600462007c3c565b620047a1565b6200024c620003e236600462007d0d565b620047bc565b62000261600381565b6200024c62004f22565b6200024c62005239565b62000261600081565b6200024c62005a96565b6200024c62005cef565b600054620003a99060ff1681565b6200043a6200458a565b6200044462005a96565b60025460405173c00e94cb662c3520282e6f5717214004a7f26888916001600160a01b031690620004759062007beb565b6200048292919062007d27565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007d41565b600062005f02565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b9919081019062007dfe565b9050620005c9815160006200608b565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620006109390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562000630573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000656919062007d41565b62000665576200066562007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620006e8929190911690636f7bc9be906024015b602060405180830381865afa158015620006ba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006e0919062007d41565b600162005f02565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200073c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000766919081019062007dfe565b905062000776815160016200608b565b620007ae8160008151811062000790576200079062007f13565b6020908102919091010151516001546001600160a01b03166200614e565b620007e381600081518110620007c857620007c862007f13565b602002602001015160200151678ac7230489e800006200608b565b6200081181600081518110620007fd57620007fd62007f13565b60200260200101516040015160006200608b565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200085b9390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af11580156200087b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008a1919062007d41565b620008b057620008b062007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620008ec929190911690636f7bc9be906024016200069c565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000936573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000960919081019062007dfe565b905062000970815160016200608b565b6200098a8160008151811062000790576200079062007f13565b620009a481600081518110620007c857620007c862007f13565b620009be81600081518110620007fd57620007fd62007f13565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f493620009fb939082169291169060040162007d27565b6020604051808303816000875af115801562000a1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a41919062007d41565b62000a505762000a5062007efd565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000a8c929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000ae0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000b0a919081019062007dfe565b905062000811815160006200608b565b600082841162000b365762000b30848462007f3f565b62000b42565b62000b42838562007f3f565b90508060000362000b535750505050565b6000841562000b63578462000b65565b835b9050600062000b7684600a62008052565b62000b8e906b033b2e3c9fd0803ce800000062008076565b8262000ba76b033b2e3c9fd0803ce8000000866200808d565b62000bb3919062008076565b1090508062000c8857604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a47d8339815191529181900360a00190a16000805160206200a47d8339815191528660405162000c4e9190620080a7565b60405180910390a16000805160206200a47d8339815191528560405162000c769190620080e0565b60405180910390a162000c8862006248565b505050505050565b600082841162000cac5762000ca6848462007f3f565b62000cb8565b62000cb8838562007f3f565b9050818111158062000d9957604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a47d8339815191529181900360a00190a16000805160206200a47d8339815191528560405162000d5f9190620080a7565b60405180910390a16000805160206200a47d8339815191528460405162000d879190620080e0565b60405180910390a162000d9962006248565b5050505050565b601854604080516385d4cad360e01b8152905162000e2e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000ded573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e1391906200810b565b73c00e94cb662c3520282e6f5717214004a7f268886200614e565b6018546040805163f02c6d8f60e01b8152905162000ea9926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000e7b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ea191906200812b565b60006200608b565b60185460408051633fc3ddeb60e11b8152905162000ef6926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362000f4093908216929116906801158e460913d000009060040162007ed9565b6020604051808303816000875af115801562000f60573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f86919062007d41565b62000f955762000f9562007efd565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262000fea929190911690630bca8bcd906024015b602060405180830381865afa15801562000e7b573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001039573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105f919062007d41565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200109c929190911690630bca8bcd9060240162000fcc565b601854604051630bca8bcd60e01b81526000600482015262000ef6916001600160a01b031690630bca8bcd9060240162000fcc565b6018546040805163f02c6d8f60e01b815290516200111e926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000e7b573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200116b926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620011ba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011e0919062007d41565b620011ef57620011ef62007efd565b6018546040805163f02c6d8f60e01b8152905162001269926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200123c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200126291906200812b565b426200608b565b60185460408051633fc3ddeb60e11b8152905162000ef6926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa158015620006ba573d6000803e3d6000fd5b60185469d3c21bcecceda100000090620012f09073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b0316836200634c565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b1580156200134557600080fd5b505af11580156200135a573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc94506200139e939283169290911690869060040162007ed9565b6020604051808303816000875af1158015620013be573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013e4919062007d41565b620013f357620013f362007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001442573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001468919062007d41565b62001477576200147762007efd565b601854604080516385d4cad360e01b815290516200151c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620014c4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620014ea91906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162000fcc565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200156b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001591919062007d41565b620015a057620015a062007efd565b601854604080516385d4cad360e01b81529051620016a4926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ed573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200161391906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200165d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200168391906200812b565b60646200169284600c6200808d565b6200169e919062008076565b6200608b565b620016b26224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001701573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001727919062007d41565b62001736576200173662007efd565b601854604080516385d4cad360e01b8152905162001828926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001783573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017a991906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620017f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200181991906200812b565b6064620016928460146200808d565b620018366224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001885573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018ab919062007d41565b620018ba57620018ba62007efd565b601854604080516385d4cad360e01b81529051620019ac926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001907573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200192d91906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001977573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200199d91906200812b565b60646200169284601c6200808d565b620019ba626ebe0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001a09573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a2f919062007d41565b62001a3e5762001a3e62007efd565b601854604080516385d4cad360e01b8152905162001b30926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ab191906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001afb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b2191906200812b565b6064620016928460346200808d565b62001b3e62dd7c0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bb3919062007d41565b62001bc25762001bc262007efd565b601854604080516385d4cad360e01b8152905162001cad926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001c0f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c3591906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001c80573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ca691906200812b565b826200608b565b6000805160206200a45d83398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001cfb57600080fd5b505af115801562000d99573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001d5c9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562001d7c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001da2919062007d41565b1562001db25762001db262007efd565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001dfe9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562001e1e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e44919062007d41565b1562001e545762001e5462007efd565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001ea09291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562001ec0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ee6919062007d41565b1562001ef65762001ef662007efd565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562001f4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f7491906200810b565b6040518363ffffffff1660e01b815260040162001f9392919062007d27565b6020604051808303816000875af115801562001fb3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001fd9919062007d41565b1562001fe95762001fe962007efd565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e3692620020229291169060009060040162007d27565b6020604051808303816000875af115801562002042573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002068919062007d41565b1562002078576200207862007efd565b601854620020b59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620020af620f424060646200808d565b6200634c565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e3692620021019291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562002121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002147919062007d41565b62000ef65762000ef662007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200219d9390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af1158015620021bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620021e3919062007d41565b620021f257620021f262007efd565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200222f939082169291169060040162007d27565b6020604051808303816000875af11580156200224f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002275919062007d41565b1562002285576200228562007efd565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620022bd92911690849060040162007d27565b6020604051808303816000875af1158015620022dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002303919062007d41565b1562002313576200231362007efd565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002350939082169291169060040162007d27565b6020604051808303816000875af115801562002370573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002396919062007d41565b620023a557620023a562007efd565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b158015620023fa57600080fd5b505af11580156200240f573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b158015620024af57600080fd5b505af1158015620024c4573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200251257600080fd5b505af115801562002527573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b158015620025c757600080fd5b505af1158015620025dc573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200262857600080fd5b505af11580156200263d573d6000803e3d6000fd5b505050506000805160206200a45d83398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200268f57600080fd5b505af1158015620026a4573d6000803e3d6000fd5b50505050565b600084158015620026b9575081155b15620026c85750600062002700565b838303620026d857508162002700565b83620026e5818562007f3f565b620026f1908762008145565b620026fd91906200815c565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa1580156200276d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200279391906200812b565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620027c6908990879060200162008172565b604051602081830303815290604052805190602001208785620027ea91906200815c565b6040516001600160e01b031960e086901b1681526200280f939291906004016200818b565b600060405180830381600087803b1580156200282a57600080fd5b505af11580156200283f573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000c889350861691506370a0823190602401602060405180830381865afa1580156200288f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028b591906200812b565b6200169e86846200815c565b601854620028fa9073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b03166a0422ca8b0a00a4250000006200634c565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b1580156200294f57600080fd5b505af115801562002964573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562002a0457600080fd5b505af115801562002a19573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002a6e57600080fd5b505af115801562002a83573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002ad193928316929091169069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af115801562002af1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002b17919062007d41565b62002b265762002b2662007efd565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a43d8339815191529063f28dceb390608401600060405180830381600087803b15801562002bb057600080fd5b505af115801562002bc5573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002c1a57600080fd5b505af115801562002c2f573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002c82573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ca8919062007d41565b62002cb75762002cb762007efd565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d0857600080fd5b505af115801562002d1d573d6000803e3d6000fd5b5050505062002d306301dfe20062006360565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d8157600080fd5b505af115801562002d96573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562002e2d57600080fd5b505af115801562002e42573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200262857600080fd5b62002eb98169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620063bb565b60185490915062002eea9073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b0316836200634c565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b15801562002f3f57600080fd5b505af115801562002f54573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002f98939283169290911690869060040162007ed9565b6020604051808303816000875af115801562002fb8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002fde919062007d41565b62002fed5762002fed62007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200303c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003062919062007d41565b62003071576200307162007efd565b601854604080516385d4cad360e01b81529051620030be926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620014c4573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200310d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003133919062007d41565b62003142576200314262007efd565b601854604080516385d4cad360e01b815290516200324f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200318f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620031b591906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620031ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200322591906200812b565b60646200323484600c6200808d565b62003240919062008076565b670de0b6b3a764000062000c90565b6200325d6224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032d2919062007d41565b620032e157620032e162007efd565b601854604080516385d4cad360e01b81529051620033d3926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200332e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200335491906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200339e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033c491906200812b565b6064620032348460146200808d565b620033e16224ea0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003430573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003456919062007d41565b62003465576200346562007efd565b601854604080516385d4cad360e01b8152905162003557926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034b2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034d891906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003522573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200354891906200812b565b60646200323484601c6200808d565b62003565626ebe0062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620035da919062007d41565b620035e957620035e962007efd565b601854604080516385d4cad360e01b8152905162001b30926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562003636573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200365c91906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036a6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036cc91906200812b565b6064620032348460346200808d565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620037229390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562003742573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003768919062007d41565b1562003778576200377862007efd565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620037ba929116908490678ac7230489e800009060040162007ed9565b6020604051808303816000875af1158015620037da573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003800919062007d41565b1562003810576200381062007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038579390821692911690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562003877573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200389d919062007d41565b620038ac57620038ac62007efd565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a43d833981519152906306447d5690602401600060405180830381600087803b1580156200390157600080fd5b505af115801562003916573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b158015620039ad57600080fd5b505af1158015620039c2573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003a079290911690678ac7230489e800009060040162008172565b600060405180830381600087803b15801562003a2257600080fd5b505af115801562003a37573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562003ad757600080fd5b505af115801562003aec573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003b2d90600090678ac7230489e800009060040162008172565b600060405180830381600087803b15801562003b4857600080fd5b505af115801562003b5d573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a43d833981519152925063f28dceb39150608401600060405180830381600087803b15801562003bf557600080fd5b505af115801562003c0a573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b45793506200260d929091169060009060040162008172565b60185462003c7f9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620020af620f424060646200808d565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003d189073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003ce2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003d0891906200812b565b6200169e620f424060646200808d565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003d629073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162000fcc565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003dae9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007d27565b6020604051808303816000875af115801562003dce573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003df4919062007d41565b62003e035762003e0362007efd565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003e4d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162000fcc565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000ef69073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003cc4565b600060405162003ea79062007bf9565b604051809103906000f08015801562003ec4573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc9362003f0d938116921690678ac7230489e800009060040162007ed9565b6020604051808303816000875af115801562003f2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f53919062007d41565b62003f625762003f6262007efd565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003faa93908216929116906801158e460913d000009060040162007ed9565b6020604051808303816000875af115801562003fca573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003ff0919062007d41565b62003fff5762003fff62007efd565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620040429291169085906801a055690d9db800009060040162007ed9565b6020604051808303816000875af115801562004062573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004088919062007d41565b62004097576200409762007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620040d3929190911690636f7bc9be906024016200069c565b6018546003546040516337bde4df60e11b81526001600160a01b0391821660048201526200410f929190911690636f7bc9be906024016200069c565b6018546040516337bde4df60e11b81526001600160a01b03838116600483015262004145921690636f7bc9be906024016200069c565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200418f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620041b9919081019062007dfe565b9050620041c9815160036200608b565b620041e38160008151811062000790576200079062007f13565b620041fd81600081518110620007c857620007c862007f13565b6200421781600081518110620007fd57620007fd62007f13565b6200424f8160018151811062004231576200423162007f13565b6020908102919091010151516003546001600160a01b03166200614e565b620042858160018151811062004269576200426962007f13565b6020026020010151602001516801158e460913d000006200608b565b6200429f81600181518110620007fd57620007fd62007f13565b620042cc81600281518110620042b957620042b962007f13565b602002602001015160000151836200614e565b6200430281600281518110620042e657620042e662007f13565b6020026020010151602001516801a055690d9db800006200608b565b6200431c81600281518110620007fd57620007fd62007f13565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004359939082169291169060040162007d27565b6020604051808303816000875af115801562004379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200439f919062007d41565b620043ae57620043ae62007efd565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620043ea929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b03918216600482015262004426929190911690636f7bc9be906024016200069c565b6018546040516337bde4df60e11b81526001600160a01b0384811660048301526200445c921690636f7bc9be906024016200069c565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620044b0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620044da919081019062007dfe565b9050620044ea815160026200608b565b6200450481600081518110620042b957620042b962007f13565b6200451e81600081518110620042e657620042e662007f13565b6200453881600081518110620007fd57620007fd62007f13565b620045528160018151811062004231576200423162007f13565b6200456c8160018151811062004269576200426962007f13565b6200458681600181518110620007fd57620007fd62007f13565b5050565b604051620045989062007bf9565b604051809103906000f080158015620045b5573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b0392909216919091179055604051620045e49062007bf9565b604051809103906000f08015801562004601573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620046309062007bf9565b604051809103906000f0801580156200464d573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff1615620046915750600054610100900460ff1690565b60006000805160206200a43d8339815191523b156200479c576040516000906000805160206200a43d833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620046fe9083906519985a5b195960d21b9060200162008172565b60408051601f19818403018152908290526200471e9291602001620081d2565b60408051601f19818403018152908290526200473a9162008205565b6000604051808303816000865af19150503d806000811462004779576040519150601f19603f3d011682016040523d82523d6000602084013e6200477e565b606091505b509150508080602001905181019062004798919062007d41565b9150505b919050565b6000620047b28484846000620026aa565b90505b9392505050565b620047de8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620063bb565b601854909150620048159073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b0316620020af8460036200808d565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004864573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200488a919062007d41565b62004899576200489962007efd565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620048d89390821692911690869060040162007ed9565b6020604051808303816000875af1158015620048f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200491e919062007d41565b6200492d576200492d62007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200496c9390821692911690869060040162007ed9565b6020604051808303816000875af11580156200498c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620049b2919062007d41565b620049c157620049c162007efd565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620049fb929116908490869060040162007ed9565b6020604051808303816000875af115801562004a1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a41919062007d41565b62004a505762004a5062007efd565b62004a5e6212750062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004aad573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ad3919062007d41565b62004ae25762004ae262007efd565b601854604080516385d4cad360e01b8152905162004b2f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200318f573d6000803e3d6000fd5b62004b3d62cb070062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004b8c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bb2919062007d41565b62004bc15762004bc162007efd565b601854604080516385d4cad360e01b8152905162004cb3926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c3491906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004c7e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ca491906200812b565b60646200323484603c6200808d565b62004cc162b8920062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d10573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004d36919062007d41565b62004d455762004d4562007efd565b601854604080516385d4cad360e01b8152905162004dea926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004d92573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004db891906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001c62565b62004df96301dfe20062006360565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004e48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e6e919062007d41565b62004e7d5762004e7d62007efd565b601854604080516385d4cad360e01b8152905162000811926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004eca573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ef091906200810b565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001c62565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc9362004f6c93918316921690869060040162007ed9565b6020604051808303816000875af115801562004f8c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fb2919062007d41565b62004fc15762004fc162007efd565b6018546003546040516388a772ef60e01b81526001600160a01b03918216600482015262004ffd9291909116906388a772ef9060240162001c62565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200504c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005072919062007d41565b62005081576200508162007efd565b6200508f626ebe0062006360565b60006064620050a08360086200808d565b620050ac919062008076565b620050b99060036200808d565b6064620050c884600c6200808d565b620050d4919062008076565b620050e091906200815c565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200511d92911690630bca8bcd9060240162001c62565b6200512c630127500062006360565b60646200513b8360086200808d565b62005147919062008076565b6200515490600b6200808d565b60646200516384600c6200808d565b6200516f919062008076565b6200517b91906200815c565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620051b892911690630bca8bcd9060240162001c62565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004586929190911690630bca8bcd90602401602060405180830381865afa1580156200520c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200523291906200812b565b836200608b565b601854620052729073c00e94cb662c3520282e6f5717214004a7f26888906001600160a01b03166a0422ca8b0a00a4250000006200634c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620052c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620052e7919062007d41565b620052f657620052f662007efd565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200533f939082169291169069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af11580156200535f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005385919062007d41565b62005394576200539462007efd565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620053dd939082169291169069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af1158015620053fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005423919062007d41565b62005432576200543262007efd565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200547692911690849069d3c21bcecceda10000009060040162007ed9565b6020604051808303816000875af115801562005496573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620054bc919062007d41565b620054cb57620054cb62007efd565b620054d96212750062006360565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005528573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200554e919062007d41565b6200555d576200555d62007efd565b601854604080516385d4cad360e01b8152905162005651926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620055aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055d091906200810b565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200561a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200564091906200812b565b691969368974c05b0000006200608b565b6200565f62cb070062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620056ae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056d4919062007d41565b620056e357620056e362007efd565b601854604080516385d4cad360e01b81529051620057d7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005730573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200575691906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620057a0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057c691906200812b565b697f0e10af47c1c70000006200608b565b620057e562b8920062006360565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005834573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200585a919062007d41565b62005869576200586962007efd565b601854604080516385d4cad360e01b815290516200595e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620058b6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058dc91906200810b565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005927573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200594d91906200812b565b69d3c21bcecceda10000006200608b565b6200596d6301dfe20062006360565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620059bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e2919062007d41565b620059f157620059f162007efd565b601854604080516385d4cad360e01b8152905162000ef6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005a3e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a6491906200810b565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005909565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005d3e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005d64919062007d41565b1562005d745762005d7462007efd565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005dc3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005de9919062007d41565b1562005df95762005df962007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005e48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005e6e919062007d41565b62005e7d5762005e7d62007efd565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005ecc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005ef2919062007d41565b1562000ef65762000ef662007efd565b8015158215151462004586577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162005f799060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838162005fcc576040518060400160405280600581526020016466616c736560d81b81525062005fea565b604051806040016040528060048152602001637472756560e01b8152505b60405162005ff9919062008251565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200604c576040518060400160405280600581526020016466616c736560d81b8152506200606a565b604051806040016040528060048152602001637472756560e01b8152505b60405162006079919062008290565b60405180910390a16200458662006248565b80821462004586577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620060fe9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a47d83398151915281604051620061269190620080a7565b60405180910390a16000805160206200a47d83398151915282604051620060799190620080e0565b806001600160a01b0316826001600160a01b03161462004586577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620061d69060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f816040516200620f9190620082bb565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8260405162006079919062008300565b6000805160206200a43d8339815191523b156200633b576040516000906000805160206200a43d833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620062b69083906519985a5b195960d21b906001906020016200818b565b60408051601f1981840301815290829052620062d69291602001620081d2565b60408051601f1981840301815290829052620062f29162008205565b6000604051808303816000865af19150503d806000811462006331576040519150601f19603f3d011682016040523d82523d6000602084013e62006336565b606091505b505050505b6000805461ff001916610100179055565b6200635b8383836000620063fc565b505050565b6000805160206200a43d83398151915263e5d6bf026200638183426200815c565b6040518263ffffffff1660e01b8152600401620063a091815260200190565b600060405180830381600087803b15801562001cfb57600080fd5b6000620063ca84848462006605565b9050620047b56040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b81525082620067fc565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620064529162008205565b6000604051808303816000865af19150503d806000811462006491576040519150601f19603f3d011682016040523d82523d6000602084013e62006496565b606091505b50915050600081806020019051810190620064b291906200812b565b9050620064ec84620064e587620064de6370a0823160e01b620064d7600a8d6200689c565b90620068c6565b90620068e4565b906200690d565b821562000c885760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006537919062008205565b6000604051808303816000865af19150503d806000811462006576576040519150601f19603f3d011682016040523d82523d6000602084013e6200657b565b606091505b509150506000818060200190518101906200659791906200812b565b905082861015620065c257620065ae868462007f3f565b620065ba908262007f3f565b9050620065dd565b620065ce838762007f3f565b620065da90826200815c565b90505b620065fb81620064e56318160ddd60e01b620064d7600a8d6200689c565b5050505050505050565b600081831115620066835760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620066945750818411155b15620066a2575082620047b5565b6000620066b0848462007f3f565b620066bd9060016200815c565b905060038511158015620066d057508481115b15620066eb57620066e285856200815c565b915050620047b5565b620066fa600360001962007f3f565b8510158015620067165750620067138560001962007f3f565b81115b1562006736576200672a8560001962007f3f565b620066e2908462007f3f565b82851115620067985760006200674d848762007f3f565b905060006200675d838362008145565b9050806000036200677457849350505050620047b5565b60016200678282886200815c565b6200678e919062007f3f565b93505050620067f4565b83851015620067f4576000620067af868662007f3f565b90506000620067bf838362008145565b905080600003620067d657859350505050620047b5565b620067e2818662007f3f565b620067ef9060016200815c565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b03168383604051602401620068289291906200832b565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b179052516200685f919062008205565b600060405180830381855afa9150503d806000811462000c88576040519150601f19603f3d011682016040523d82523d6000602084013e62000c88565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c179055600082620068bd565b6002820180546001810182556000918252602082206001600160a01b03841691015582620068bd565b620045868282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b94600093909290918301828280156200698657602002820191906000526020600020905b81548152602001906001019080831162006971575b505050505090506000836200699b8362006c7a565b604051602001620069ae929190620081d2565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006a029186918891016200834f565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006a3d5762006a3b8762006d2e565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006a7e9187918991016200834f565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ac5919062008205565b600060405180830381855afa9150503d806000811462006b02576040519150601f19603f3d011682016040523d82523d6000602084013e62006b07565b606091505b50915062006b2490508162006b1e8860206200808d565b62006d3b565b604051630667f9d760e41b8152909250600091506000805160206200a43d8339815191529063667f9d709062006b61908b90879060040162008172565b602060405180830381865afa15801562006b7f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006ba591906200812b565b905080821462006bc95760405162461bcd60e51b81526004016200667a906200838b565b6040516370ca10bb60e01b81526000805160206200a43d833981519152906370ca10bb9062006c01908b9087908e906004016200818b565b600060405180830381600087803b15801562006c1c57600080fd5b505af115801562006c31573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006c6660028b01600062007c07565b896004016000905550505050505050505050565b606060008251602062006c8e91906200808d565b67ffffffffffffffff81111562006ca95762006ca962007d61565b6040519080825280601f01601f19166020018201604052801562006cd4576020820181803683370190505b50905060005b835181101562006d2757600084828151811062006cfb5762006cfb62007f13565b60200260200101519050808260200260200184015250808062006d1e9062008426565b91505062006cda565b5092915050565b6000620068c08262006dc5565b6000806000602085511162006d5257845162006d55565b60205b905060005b8181101562006dbb5762006d708160086200808d565b8662006d7d83886200815c565b8151811062006d905762006d9062007f13565b01602001516001600160f81b031916901c92909217918062006db28162008426565b91505062006d5a565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b94938793919290919083018282801562006e3757602002820191906000526020600020905b81548152602001906001019080831162006e22575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a168452825280832090519596509491935062006e83925085918791016200834f565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562006f22576001600160a01b0384166000908152602087815260408083206001600160e01b0319871684528252808320905190929162006ef29185918791016200834f565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b60008362006f308362007abe565b60405160200162006f43929190620081d2565b60405160208183030381529060405290506000805160206200a45d83398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562006fa257600080fd5b505af115801562006fb7573d6000803e3d6000fd5b50505050600080866001600160a01b03168360405162006fd8919062008205565b600060405180830381855afa9150503d806000811462007015576040519150601f19603f3d011682016040523d82523d6000602084013e6200701a565b606091505b50915062007037905081620070318760206200808d565b62007b6b565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a43d833981519152906365bc9481906024016000604051808303816000875af115801562007094573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620070be9190810190620084af565b5090508051600103620073855760006000805160206200a45d83398151915260001c6001600160a01b031663667f9d70898460008151811062007105576200710562007f13565b60200260200101516040518363ffffffff1660e01b81526004016200712c92919062008172565b602060405180830381865afa1580156200714a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200717091906200812b565b905080620071d4577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620071b057620071b062007f13565b602002602001015160001c604051620071cb92919062008172565b60405180910390a15b808314620071f65760405162461bcd60e51b81526004016200667a906200838b565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200722e9291906200834f565b60405160208183030381529060405280519060200120856000815181106200725a576200725a62007f13565b602002602001015160001c6040516200727794939291906200851a565b60405180910390a18160008151811062007295576200729562007f13565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c1683528452808220905192939092620072e0918a918c91016200834f565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200734a918a918c91016200834f565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007941565b600181511115620078d05760005b8151811015620078c95760006000805160206200a45d83398151915260001c6001600160a01b031663667f9d708a858581518110620073d657620073d662007f13565b60200260200101516040518363ffffffff1660e01b8152600401620073fd92919062008172565b602060405180830381865afa1580156200741b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200744191906200812b565b905080620074a4577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58984848151811062007480576200748062007f13565b602002602001015160001c6040516200749b92919062008172565b60405180910390a15b6000805160206200a45d83398151915260001c6001600160a01b03166370ca10bb8a858581518110620074db57620074db62007f13565b602002602001015161133760f01b6040518463ffffffff1660e01b815260040162007509939291906200818b565b600060405180830381600087803b1580156200752457600080fd5b505af115801562007539573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200755b919062008205565b600060405180830381855afa9150503d806000811462007598576040519150601f19603f3d011682016040523d82523d6000602084013e6200759d565b606091505b509092509050620075b581620070318b60206200808d565b9550818015620075c9575061133760f01b86145b156200781c577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620076079291906200834f565b6040516020818303038152906040528051906020012088888151811062007632576200763262007f13565b602002602001015160001c6040516200764f94939291906200851a565b60405180910390a18484815181106200766c576200766c62007f13565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620076b7918d918f91016200834f565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620077449291906200834f565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a45d83398151915260001c6001600160a01b03166370ca10bb8c878781518110620077b657620077b662007f13565b6020026020010151866040518463ffffffff1660e01b8152600401620077df939291906200818b565b600060405180830381600087803b158015620077fa57600080fd5b505af11580156200780f573d6000803e3d6000fd5b50505050505050620078c9565b6000805160206200a45d83398151915260001c6001600160a01b03166370ca10bb8c87878151811062007853576200785362007f13565b6020026020010151866040518463ffffffff1660e01b81526004016200787c939291906200818b565b600060405180830381600087803b1580156200789757600080fd5b505af1158015620078ac573d6000803e3d6000fd5b505050505050508080620078c09062008426565b91505062007393565b5062007941565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200667a565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a16845282528083209051909291620079859188918a91016200834f565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007a145760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200667a565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007a4560028a01600062007c07565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007a8b9188918a91016200834f565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007ad291906200808d565b67ffffffffffffffff81111562007aed5762007aed62007d61565b6040519080825280601f01601f19166020018201604052801562007b18576020820181803683370190505b50905060005b835181101562006d2757600084828151811062007b3f5762007b3f62007f13565b60200260200101519050808260200260200184015250808062007b629062008426565b91505062007b1e565b6000806000602085511162007b8257845162007b85565b60205b905060005b8181101562006dbb5762007ba08160086200808d565b8662007bad83886200815c565b8151811062007bc05762007bc062007f13565b01602001516001600160f81b031916901c92909217918062007be28162008426565b91505062007b8a565b61191b806200854b83390190565b6105d78062009e6683390190565b50805460008255906000526020600020908101906200081191905b8082111562007c38576000815560010162007c22565b5090565b60008060006060848603121562007c5257600080fd5b505081359360208301359350604090920135919050565b80151581146200081157600080fd5b6000806000806080858703121562007c8f57600080fd5b843593506020850135925060408501359150606085013562007cb18162007c69565b939692955090935050565b6001600160a01b03811681146200081157600080fd5b60008060006060848603121562007ce857600080fd5b83359250602084013562007cfc8162007cbc565b929592945050506040919091013590565b60006020828403121562007d2057600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007d5457600080fd5b8151620047b58162007c69565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007d9d5762007d9d62007d61565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007dcf5762007dcf62007d61565b604052919050565b600067ffffffffffffffff82111562007df45762007df462007d61565b5060051b60200190565b6000602080838503121562007e1257600080fd5b825167ffffffffffffffff81111562007e2a57600080fd5b8301601f8101851362007e3c57600080fd5b805162007e5362007e4d8262007dd7565b62007da3565b8181526060918202830184019184820191908884111562007e7357600080fd5b938501935b8385101562007ecd5780858a03121562007e925760008081fd5b62007e9c62007d77565b855162007ea98162007cbc565b81528587015187820152604080870151908201528352938401939185019162007e78565b50979650505050505050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115620068c057620068c062007f29565b600181815b8085111562007f9657816000190482111562007f7a5762007f7a62007f29565b8085161562007f8857918102915b93841c939080029062007f5a565b509250929050565b60008262007faf57506001620068c0565b8162007fbe57506000620068c0565b816001811462007fd7576002811462007fe25762008002565b6001915050620068c0565b60ff84111562007ff65762007ff662007f29565b50506001821b620068c0565b5060208310610133831016604e8410600b841016171562008027575081810a620068c0565b62008033838362007f55565b80600019048211156200804a576200804a62007f29565b029392505050565b6000620068bd838362007f9e565b634e487b7160e01b600052601260045260246000fd5b60008262008088576200808862008060565b500490565b8082028115828204841417620068c057620068c062007f29565b604081526000620080d260408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b604081526000620080d260408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200811e57600080fd5b8151620047b58162007cbc565b6000602082840312156200813e57600080fd5b5051919050565b60008262008157576200815762008060565b500690565b80820180821115620068c057620068c062007f29565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620081c9578181015183820152602001620081af565b50506000910152565b6001600160e01b0319831681528151600090620081f7816004850160208701620081ac565b919091016004019392505050565b6000825162008219818460208701620081ac565b9190910192915050565b600081518084526200823d816020860160208601620081ac565b601f01601f19169290920160200192915050565b6040815260006200827c60408301600a8152690808115e1c1958dd195960b21b602082015260400190565b828103602084015262002700818562008223565b6040815260006200827c60408301600a815269080808081058dd1d585b60b21b602082015260400190565b604081526000620082e660408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000620082e660408301600a815269080808081058dd1d585b60b21b602082015260400190565b60408152600062008340604083018562008223565b90508260208301529392505050565b825160009082906020808701845b838110156200837b578151855293820193908201906001016200835d565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b6000600182016200843b576200843b62007f29565b5060010190565b600082601f8301126200845457600080fd5b815160206200846762007e4d8362007dd7565b82815260059290921b840181019181810190868411156200848757600080fd5b8286015b84811015620084a457805183529183019183016200848b565b509695505050505050565b60008060408385031215620084c357600080fd5b825167ffffffffffffffff80821115620084dc57600080fd5b620084ea8683870162008442565b935060208501519150808211156200850157600080fd5b50620085108582860162008442565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b506040516200191b3803806200191b8339810160408190526200003491620001b2565b600080546001600160a01b03191633908117825560405190918291600080516020620018fb833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b0380851693921691600080516020620018fb83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b6080516116e762000214600039600081816101bd0152818161080f0152610bc201526116e76000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806385d4cad3116100a2578063d36862e811610071578063d36862e81461022e578063dd46706414610241578063ec20b45714610254578063f02c6d8f14610267578063f2fde38b1461027057600080fd5b806385d4cad3146101b857806388a772ef146101f75780638da5cb5b1461020a578063c7e42b1b1461021b57600080fd5b80635b904cb7116100de5780635b904cb7146101685780636f7bc9be14610170578063715018a6146101a35780637f87bbd6146101ab57600080fd5b80630bca8bcd1461011057806342714978146101365780634e71d92d1461014b57806350ad827a14610153575b600080fd5b61012361011e3660046114ba565b610283565b6040519081526020015b60405180910390f35b6101496101443660046114ba565b6103fb565b005b610149610689565b61015b610966565b60405161012d91906114dc565b6101496109e8565b61019361017e3660046114ba565b60066020526000908152604090205460ff1681565b604051901515815260200161012d565b610149610ac7565b6004546101939060ff1681565b6101df7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161012d565b6101236102053660046114ba565b610b3b565b6000546001600160a01b03166101df565b6101496102293660046114ba565b610b96565b61012361023c3660046114ba565b610f28565b61014961024f36600461153e565b610f83565b610149610262366004611557565b61101a565b61012360035481565b61014961027e3660046114ba565b6112bb565b6001600160a01b03811660009081526006602052604081205460ff1680156102ad575060045460ff165b156103ee5760006102bd836113a5565b905060006102ca84610b3b565b905080600583815481106102e0576102e0611581565b90600052602060002090600302016002015410610301575060009392505050565b60006224ea006003544261031591906115ad565b61031f91906115c6565b9050600060646103308460086115e8565b61033a91906115c6565b61034490836115e8565b606461035185600c6115e8565b61035b91906115c6565b61036591906115ff565b9050828111806103765750600b8210155b156103b2576005848154811061038e5761038e611581565b906000526020600020906003020160020154836103ab91906115ad565b90506103e5565b600584815481106103c5576103c5611581565b906000526020600020906003020160020154816103e291906115ad565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b0316331461042e5760405162461bcd60e51b815260040161042590611612565b60405180910390fd5b6001600160a01b0381166104aa5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610425565b60006104b5826113a5565b90506000600582815481106104cc576104cc611581565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600580549193509161051c916115ad565b8154811061052c5761052c611581565b90600052602060002090600302016005838154811061054d5761054d611581565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556005805483926105a3916115ad565b815481106105b3576105b3611581565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600580548061060a5761060a611647565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260069091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526006602052604090205460ff1615156001146107135760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610425565b60045460ff166107795760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610425565b600061078433610283565b9050600081116107f35760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610425565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610860573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610884919061165d565b6108e35760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610425565b60006108ee336113a5565b9050816005828154811061090457610904611581565b9060005260206000209060030201600201600082825461092491906115ff565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606005805480602002602001604051908101604052809291908181526020016000905b828210156109df576000848152602090819020604080516060810182526003860290920180546001600160a01b031683526001808201548486015260029091015491830191909152908352909201910161098a565b50505050905090565b6000546001600160a01b03163314610a125760405162461bcd60e51b815260040161042590611612565b60045460ff1615610a8b5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610425565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610af15760405162461bcd60e51b815260040161042590611612565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610b67836113a5565b905060058181548110610b7c57610b7c611581565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610bc05760405162461bcd60e51b815260040161042590611612565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c675760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610425565b6001600160a01b038116610ce35760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610425565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4e919061167f565b905060008111610dc65760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610425565b6000826001600160a01b031663a9059cbb610de96000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5a919061165d565b905080610ec45760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610425565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610ef96000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526006602052604081205460ff16156103ee576000610f54836113a5565b905060058181548110610f6957610f69611581565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fad5760405162461bcd60e51b815260040161042590611612565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fdc81426115ff565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110445760405162461bcd60e51b815260040161042590611612565b6001600160a01b03821660009081526006602052604090205460ff16156110ca5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610425565b6001600160a01b0382166111465760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610425565b600081116111b45760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610425565b6001600160a01b0382811660008181526006602090815260408083208054600160ff1990911681179091558151606081018352858152928301878152838301858152600580549384018155865293517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600390930292830180546001600160a01b031916919098161790965594517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db186015590517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db290940193909355915190917f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f91a25050565b6000546001600160a01b031633146112e55760405162461bcd60e51b815260040161042590611612565b6001600160a01b03811661134a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610425565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526006602052604081205460ff1615156001146114385760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610425565b6000805b60055481101561149c57836001600160a01b03166005828154811061146357611463611581565b60009182526020909120600390910201546001600160a01b03160361148a5780915061149c565b8061149481611698565b91505061143c565b5092915050565b80356001600160a01b03811681146103f657600080fd5b6000602082840312156114cc57600080fd5b6114d5826114a3565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561153157815180516001600160a01b03168552868101518786015285015185850152606090930192908501906001016114f9565b5091979650505050505050565b60006020828403121561155057600080fd5b5035919050565b6000806040838503121561156a57600080fd5b611573836114a3565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156115c0576115c0611597565b92915050565b6000826115e357634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176115c0576115c0611597565b808201808211156115c0576115c0611597565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b60006020828403121561166f57600080fd5b815180151581146114d557600080fd5b60006020828403121561169157600080fd5b5051919050565b6000600182016116aa576116aa611597565b506001019056fea2646970667358221220157b3eae9a1ae2e7d7cc252855d7fcf62c788bb02ed633aa778f7e49daee3f3f64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea26469706673582212202284e67777fca07e29094068d3e700ce3ff463464acf1e2573fcb253960d116864736f6c634300081100330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a264697066735822122001f97d8f0115722a44b8d4dc385b0808a65cc16612d33a55c6c6022e01d8357464736f6c63430008110033", - "sourceMap": "183:21347:20:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;252:412;;;:::i;:::-;;5145:748;;;:::i;1671:36:19:-;;1706:1;1671:36;;;;;186:4:21;174:17;;;156:36;;144:2;129:18;1671:36:19;;;;;;;;7155:881:20;;;:::i;4666:583:19:-;;;;;;:::i;:::-;;:::i;5300:479::-;;;;;;:::i;:::-;;:::i;2104:45::-;;2147:2;2104:45;;1755:36;;1790:1;1755:36;;700:254:20;;;:::i;10208:627::-;;;:::i;1705:443::-;;;:::i;13225:1924::-;;;:::i;2243:967::-;;;:::i;5991:1102::-;;;:::i;5954:291:19:-;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:21;;;1232:2;1217:18;5954:291:19;1098:177:21;2188:45:19;;2231:2;2188:45;;4147:461;;;;;;:::i;:::-;;:::i;12058:1114:20:-;;;:::i;2018:45:19:-;;2061:2;2018:45;;17340:2006:20;;;;;;:::i;:::-;;:::i;1931:36:19:-;;1966:1;1931:36;;3923:1165:20;;;:::i;3270:563::-;;;:::i;8131:1974::-;;;:::i;3238:184:19:-;;;:::i;1819:584:0:-;;;:::i;:::-;;;2154:14:21;;2147:22;2129:41;;2117:2;2102:18;1819:584:0;1989:187:21;5787:159:19;;;;;;:::i;:::-;;:::i;19410:2115:20:-;;;;;;:::i;:::-;;:::i;1842:36:19:-;;1877:1;1842:36;;10885:1093:20;;;:::i;15199:2074::-;;;:::i;1581:36:19:-;;1616:1;1581:36;;3546:551;;;:::i;1049:596:20:-;;;:::i;1572:26:0:-;;;;;;;;;252:412:20;287:14;:12;:14::i;:::-;312:13;:11;:13::i;:::-;641:3;;384:272;;573:42;;-1:-1:-1;;;;;641:3:20;;384:272;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;374:7:20;:282;;-1:-1:-1;;;;;;374:282:20;-1:-1:-1;;;;;374:282:20;;;;;;;;;;252:412::o;5145:748::-;5251:7;;;5277:3;5251:31;;-1:-1:-1;;;5251:31:20;;-1:-1:-1;;;;;5277:3:20;;;5251:31;;;2636:51:21;5242:53:20;;5251:7;;;;;:17;;2609:18:21;;5251:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5289:5;5242:8;:53::i;:::-;5342:7;;:28;;;-1:-1:-1;;;5342:28:20;;;;5306:33;;-1:-1:-1;;;;;5342:7:20;;:26;;:28;;;;;5306:33;;5342:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5342:28:20;;;;;;;;;;;;:::i;:::-;5306:64;;5381:36;5390:7;:14;5415:1;5381:8;:36::i;:::-;5469:3;;5497:7;;5469:3;5515;5469:61;;-1:-1:-1;;;5469:61:20;;-1:-1:-1;;;;;5469:3:20;;;;:19;;:61;;5497:7;;;;5515:3;;;5521:8;;5469:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5462:69;;;;:::i;:::-;5583:7;;;5609:3;5583:31;;-1:-1:-1;;;5583:31:20;;-1:-1:-1;;;;;5609:3:20;;;5583:31;;;2636:51:21;5574:52:20;;5583:7;;;;;:17;;2609:18:21;;5583:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5621:4;5574:8;:52::i;:::-;5647:7;;;;;;;;;-1:-1:-1;;;;;5647:7:20;-1:-1:-1;;;;;5647:26:20;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5647:28:20;;;;;;;;;;;;:::i;:::-;5637:38;;5686:37;5695:7;:14;5721:1;5686:8;:37::i;:::-;5734:48;5743:7;5751:1;5743:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;5777:3;;-1:-1:-1;;;;;5777:3:20;5734:8;:48::i;:::-;5793:44;5802:7;5810:1;5802:10;;;;;;;;:::i;:::-;;;;;;;:23;;;5828:8;5793;:44::i;:::-;5848:37;5857:7;5865:1;5857:10;;;;;;;;:::i;:::-;;;;;;;:24;;;5883:1;5848:8;:37::i;:::-;5202:691;5145:748::o;7155:881::-;7287:3;;7315:7;;7287:3;7333;7287:61;;-1:-1:-1;;;7287:61:20;;-1:-1:-1;;;;;7287:3:20;;;;:19;;:61;;7315:7;;;;7333:3;;;7339:8;;7287:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7280:69;;;;:::i;:::-;7400:7;;;7426:3;7400:31;;-1:-1:-1;;;7400:31:20;;-1:-1:-1;;;;;7426:3:20;;;7400:31;;;2636:51:21;7391:52:20;;7400:7;;;;;:17;;2609:18:21;;7400:31:20;2490:203:21;7391:52:20;7490:7;;:28;;;-1:-1:-1;;;7490:28:20;;;;7454:33;;-1:-1:-1;;;;;7490:7:20;;:26;;:28;;;;;7454:33;;7490:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7490:28:20;;;;;;;;;;;;:::i;:::-;7454:64;;7529:36;7538:7;:14;7563:1;7529:8;:36::i;:::-;7576:48;7585:7;7593:1;7585:10;;;;;;;;:::i;7576:48::-;7635:44;7644:7;7652:1;7644:10;;;;;;;;:::i;7635:44::-;7690:37;7699:7;7707:1;7699:10;;;;;;;;:::i;7690:37::-;7781:3;;7812:7;;7781:3;7830;7781:54;;-1:-1:-1;;;7781:54:20;;-1:-1:-1;;;;;7781:3:20;;;;:22;;:54;;7812:7;;;;7830:3;;;7781:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7774:62;;;;:::i;:::-;7888:7;;;7914:3;7888:31;;-1:-1:-1;;;7888:31:20;;-1:-1:-1;;;;;7914:3:20;;;7888:31;;;2636:51:21;7879:53:20;;7888:7;;;;;:17;;2609:18:21;;7888:31:20;2490:203:21;7879:53:20;7953:7;;;;;;;;;-1:-1:-1;;;;;7953:7:20;-1:-1:-1;;;;;7953:26:20;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7953:28:20;;;;;;;;;;;;:::i;:::-;7943:38;;7992:36;8001:7;:14;8026:1;7992:8;:36::i;4666:583:19:-;4755:12;4778:4;4771;:11;:39;;4799:11;4806:4;4799;:11;:::i;:::-;4771:39;;;4785:11;4792:4;4785;:11;:::i;:::-;4755:55;;4825:4;4833:1;4825:9;4821:22;;4836:7;4666:583;;;:::o;4821:22::-;4855:19;4877:9;;:23;;4896:4;4877:23;;;4889:4;4877:23;4855:45;-1:-1:-1;4911:10:19;4962:14;4968:8;4962:2;:14;:::i;:::-;4956:20;;2465:8;4956:20;:::i;:::-;4940:11;4926:10;2465:8;4926:4;:10;:::i;:::-;4925:26;;;;:::i;:::-;4924:53;4911:66;;4995:5;4990:252;;5021:80;;;8139:21:21;;;8196:2;8176:18;;;8169:30;8235:34;8230:2;8215:18;;8208:62;-1:-1:-1;;;8301:3:21;8286:19;;8279:51;8397:4;8382:20;;8375:36;;;5021:80:19;;-1:-1:-1;;;;;;;;;;;5021:80:19;;;;8362:3:21;5021:80:19;;;-1:-1:-1;;;;;;;;;;;5150:4:19;5121:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5204:4:19;5175:34;;;;;;:::i;:::-;;;;;;;;5224:6;:4;:6::i;:::-;4744:505;;;4666:583;;;:::o;5300:479::-;5388:18;5416:4;5409;:11;:39;;5437:11;5444:4;5437;:11;:::i;:::-;5409:39;;;5423:11;5430:4;5423;:11;:::i;:::-;5388:60;-1:-1:-1;5472:26:19;;;;;5511:261;;5543:88;;;9668:21:21;;;9725:2;9705:18;;;9698:30;9764:34;9759:2;9744:18;;9737:62;9836:26;9830:3;9815:19;;9808:55;9930:4;9915:20;;9908:36;;;5543:88:19;;-1:-1:-1;;;;;;;;;;;5543:88:19;;;;9895:3:21;5543:88:19;;;-1:-1:-1;;;;;;;;;;;5680:4:19;5651:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5734:4:19;5705:34;;;;;;:::i;:::-;;;;;;;;5754:6;:4;:6::i;:::-;5377:402;;5300:479;;;:::o;700:254:20:-;762:7;;:20;;;-1:-1:-1;;;762:20:20;;;;753:89;;-1:-1:-1;;;;;762:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;798:42;753:8;:89::i;:::-;862:7;;:26;;;-1:-1:-1;;;862:26:20;;;;853:39;;-1:-1:-1;;;;;862:7:20;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;890:1;853:8;:39::i;:::-;912:7;;:24;;;-1:-1:-1;;;912:24:20;;;;903:43;;-1:-1:-1;;;;;912:7:20;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;903:43;700:254::o;10208:627::-;10319:3;;10347:7;;10365:3;;10319:61;;-1:-1:-1;;;10319:61:20;;-1:-1:-1;;;;;10319:3:20;;;;:19;;:61;;10347:7;;;;10365:3;;;10371:8;;10319:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10312:69;;;;:::i;:::-;10472:7;;10505:3;;10472:38;;-1:-1:-1;;;10472:38:20;;-1:-1:-1;;;;;10505:3:20;;;10472:38;;;2636:51:21;10463::20;;10472:7;;;;;:24;;2609:18:21;;10472:38:20;;;;;;;;;;;;;;;;;;;;;;;10463:51;10554:3;;10584:7;;10554:39;;-1:-1:-1;;;10554:39:20;;-1:-1:-1;;;;;10584:7:20;;;10554:39;;;2636:51:21;10554:3:20;;;:21;;2609:18:21;;10554:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10683:7:20;;;10716:3;10683:38;;-1:-1:-1;;;10683:38:20;;-1:-1:-1;;;;;10716:3:20;;;10683:38;;;2636:51:21;10674::20;;10683:7;;;;;:24;;2609:18:21;;10683:38:20;2490:203:21;10674:51:20;10787:7;;:36;;-1:-1:-1;;;10787:36:20;;:7;:36;;;2636:51:21;10778:49:20;;-1:-1:-1;;;;;10787:7:20;;:24;;2609:18:21;;10787:36:20;2490:203:21;1705:443:20;1813:7;;:26;;;-1:-1:-1;;;1813:26:20;;;;1804:39;;-1:-1:-1;;;;;1813:7:20;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;1804:39;1863:7;;:24;;;-1:-1:-1;;;1863:24:20;;;;1854:43;;-1:-1:-1;;;;;1863:7:20;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;1854:43;1951:3;;1981:7;;1951:39;;-1:-1:-1;;;1951:39:20;;-1:-1:-1;;;;;1981:7:20;;;1951:39;;;2636:51:21;1951:3:20;;;:21;;2609:18:21;;1951:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1944:47;;;;:::i;:::-;2043:7;;:26;;;-1:-1:-1;;;2043:26:20;;;;2034:53;;-1:-1:-1;;;;;2043:7:20;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2071:15;2034:8;:53::i;:::-;2107:7;;:24;;;-1:-1:-1;;;2107:24:20;;;;2098:42;;-1:-1:-1;;;;;2107:7:20;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;13225:1924;13446:7;;13302:15;;13389:75;;13394:42;;-1:-1:-1;;;;;13446:7:20;13302:15;13389:4;:75::i;:::-;13533:3;;13511:27;;-1:-1:-1;;;13511:27:20;;-1:-1:-1;;;;;13533:3:20;;;13511:27;;;2636:51:21;-1:-1:-1;;;;;;;;;;;13511:13:20;;;2609:18:21;;13511:27:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13589:3:20;;13617:7;;13635:3;;13589:60;;-1:-1:-1;;;13589:60:20;;-1:-1:-1;;;;;13589:3:20;;;;-1:-1:-1;13589:19:20;;-1:-1:-1;13589:60:20;;13617:7;;;;13635:3;;;;13641:7;;13589:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13582:68;;;;:::i;:::-;13696:3;;13726:7;;13696:39;;-1:-1:-1;;;13696:39:20;;-1:-1:-1;;;;;13726:7:20;;;13696:39;;;2636:51:21;13696:3:20;;;:21;;2609:18:21;;13696:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13689:47;;;;:::i;:::-;13793:7;;:20;;;-1:-1:-1;;;13793:20:20;;;;13777:65;;-1:-1:-1;;;;;13793:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13833:3;;13786:52;;-1:-1:-1;;;13786:52:20;;-1:-1:-1;;;;;13833:3:20;;;13786:52;;;2636:51:21;13786:38:20;;;;;2609:18:21;;13786:52:20;2490:203:21;13777:65:20;13901:3;;13923:7;;13901:31;;-1:-1:-1;;;13901:31:20;;-1:-1:-1;;;;;13923:7:20;;;13901:31;;;2636:51:21;13901:3:20;;;:13;;2609:18:21;;13901:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13894:39;;;;:::i;:::-;13991:7;;:20;;;-1:-1:-1;;;13991:20:20;;;;13975:82;;-1:-1:-1;;;;;13991:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14031:3;;13984:52;;-1:-1:-1;;;13984:52:20;;-1:-1:-1;;;;;14031:3:20;;;13984:52;;;2636:51:21;13984:38:20;;;;;2609:18:21;;13984:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14053:3;14038:12;:7;14048:2;14038:12;:::i;:::-;:18;;;;:::i;:::-;13975:8;:82::i;:::-;14095:13;14100:7;14095:4;:13::i;:::-;14167:3;;14189:7;;14167:31;;-1:-1:-1;;;14167:31:20;;-1:-1:-1;;;;;14189:7:20;;;14167:31;;;2636:51:21;14167:3:20;;;:13;;2609:18:21;;14167:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14160:39;;;;:::i;:::-;14257:7;;:20;;;-1:-1:-1;;;14257:20:20;;;;14241:82;;-1:-1:-1;;;;;14257:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14297:3;;14250:52;;-1:-1:-1;;;14250:52:20;;-1:-1:-1;;;;;14297:3:20;;;14250:52;;;2636:51:21;14250:38:20;;;;;2609:18:21;;14250:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14319:3;14304:12;:7;14314:2;14304:12;:::i;14241:82::-;14361:13;14366:7;14361:4;:13::i;:::-;14433:3;;14455:7;;14433:31;;-1:-1:-1;;;14433:31:20;;-1:-1:-1;;;;;14455:7:20;;;14433:31;;;2636:51:21;14433:3:20;;;:13;;2609:18:21;;14433:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14426:39;;;;:::i;:::-;14523:7;;:20;;;-1:-1:-1;;;14523:20:20;;;;14507:82;;-1:-1:-1;;;;;14523:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14563:3;;14516:52;;-1:-1:-1;;;14516:52:20;;-1:-1:-1;;;;;14563:3:20;;;14516:52;;;2636:51:21;14516:38:20;;;;;2609:18:21;;14516:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14585:3;14570:12;:7;14580:2;14570:12;:::i;14507:82::-;14628:14;14633:8;14628:4;:14::i;:::-;14701:3;;14723:7;;14701:31;;-1:-1:-1;;;14701:31:20;;-1:-1:-1;;;;;14723:7:20;;;14701:31;;;2636:51:21;14701:3:20;;;:13;;2609:18:21;;14701:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14694:39;;;;:::i;:::-;14791:7;;:20;;;-1:-1:-1;;;14791:20:20;;;;14775:82;;-1:-1:-1;;;;;14791:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14831:3;;14784:52;;-1:-1:-1;;;14784:52:20;;-1:-1:-1;;;;;14831:3:20;;;14784:52;;;2636:51:21;14784:38:20;;;;;2609:18:21;;14784:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14853:3;14838:12;:7;14848:2;14838:12;:::i;14775:82::-;14896:14;14901:8;14896:4;:14::i;:::-;14969:3;;14991:7;;14969:31;;-1:-1:-1;;;14969:31:20;;-1:-1:-1;;;;;14991:7:20;;;14969:31;;;2636:51:21;14969:3:20;;;:13;;2609:18:21;;14969:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14962:39;;;;:::i;:::-;15059:7;;:20;;;-1:-1:-1;;;15059:20:20;;;;15043:71;;-1:-1:-1;;;;;15059:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15099:3;;15052:52;;-1:-1:-1;;;15052:52:20;;-1:-1:-1;;;;;15099:3:20;;;15052:52;;;2636:51:21;15052:38:20;;;;;2609:18:21;;15052:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15106:7;15043:8;:71::i;:::-;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;15127:12:20;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2243:967;2379:3;;2409:7;;2379:45;;-1:-1:-1;;;2379:45:20;;-1:-1:-1;;;;;2379:3:20;;;;:21;;:45;;2409:7;;;840:42:19;;2379:45:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2378:46;2371:54;;;;:::i;:::-;2505:3;;2535:7;;2505:45;;-1:-1:-1;;;2505:45:20;;-1:-1:-1;;;;;2505:3:20;;;;:21;;:45;;2535:7;;;840:42:19;;2505:45:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2504:46;2497:54;;;;:::i;:::-;2636:3;;2666:7;;2636:45;;-1:-1:-1;;;2636:45:20;;-1:-1:-1;;;;;2636:3:20;;;;:21;;:45;;2666:7;;;840:42:19;;2636:45:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2635:46;2628:54;;;;:::i;:::-;2763:3;;2793:7;;2803:20;;;-1:-1:-1;;;2803:20:20;;;;-1:-1:-1;;;;;2763:3:20;;;;:21;;2793:7;;;;2803:18;;:20;;;;;;;;;;;;;;;2793:7;2803:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2763:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2762:62;2755:70;;;;:::i;:::-;2904:3;;2934:7;;2904:51;;-1:-1:-1;;;2904:51:20;;-1:-1:-1;;;;;2904:3:20;;;;:21;;:51;;2934:7;;;2904:3;;:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2903:52;2896:60;;;;:::i;:::-;3038:7;;3019:39;;840:42:19;;-1:-1:-1;;;;;3038:7:20;3048:9;2297:7:19;3048:3:20;:9;:::i;:::-;3019:4;:39::i;:::-;3156:3;;3186:7;;3156:45;;-1:-1:-1;;;3156:45:20;;-1:-1:-1;;;;;3156:3:20;;;;:21;;:45;;3186:7;;;840:42:19;;3156:45:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3149:53;;;;:::i;5991:1102::-;6122:3;;6150:7;;6122:3;6168;6122:61;;-1:-1:-1;;;6122:61:20;;-1:-1:-1;;;;;6122:3:20;;;;:19;;:61;;6150:7;;;;6168:3;;;6174:8;;6122:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6115:69;;;;:::i;:::-;6275:3;;6306:7;;6275:3;6324;6275:54;;-1:-1:-1;;;6275:54:20;;-1:-1:-1;;;;;6275:3:20;;;;:22;;:54;;6306:7;;;;6324:3;;;6275:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6274:55;6267:63;;;;:::i;:::-;6420:3;;6451:7;;6420:54;;-1:-1:-1;;;6420:54:20;;-1:-1:-1;;;;;6420:3:20;;;;:22;;:54;;6451:7;;;6420:3;;:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6419:55;6412:63;;;;:::i;:::-;6551:3;;6582:7;;6551:3;6600;6551:54;;-1:-1:-1;;;6551:54:20;;-1:-1:-1;;;;;6551:3:20;;;;:22;;:54;;6582:7;;;;6600:3;;;6551:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6544:62;;;;:::i;:::-;6641:3;;6619:27;;-1:-1:-1;;;6619:27:20;;-1:-1:-1;;;;;6641:3:20;;;6619:27;;;2636:51:21;-1:-1:-1;;;;;;;;;;;6619:13:20;;;2609:18:21;;6619:27:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6738:75:20;;-1:-1:-1;;;6738:75:20;;11388:2:21;6738:75:20;;;11370:21:21;11427:2;11407:18;;;11400:30;11466:34;11446:18;;;11439:62;11537:26;11517:18;;;11510:54;-1:-1:-1;;;;;;;;;;;6738:15:20;-1:-1:-1;6738:15:20;;-1:-1:-1;11581:19:21;;6738:75:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6824:7:20;;6855:3;;6824:36;;-1:-1:-1;;;6824:36:20;;-1:-1:-1;;;;;6855:3:20;;;6824:36;;;2636:51:21;6824:7:20;;;-1:-1:-1;6824:22:20;;-1:-1:-1;2609:18:21;;6824:36:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6936:77:20;;-1:-1:-1;;;6936:77:20;;11812:2:21;6936:77:20;;;11794:21:21;11851:2;11831:18;;;11824:30;11890:34;11870:18;;;11863:62;11961:28;11941:18;;;11934:56;-1:-1:-1;;;;;;;;;;;6936:15:20;-1:-1:-1;6936:15:20;;-1:-1:-1;12007:19:21;;6936:77:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7024:7:20;;:34;;-1:-1:-1;;;7024:34:20;;:7;:34;;;2636:51:21;-1:-1:-1;;;;;7024:7:20;;;;-1:-1:-1;7024:22:20;;-1:-1:-1;2609:18:21;;7024:34:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;7071:12:20;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5991:1102::o;5954:291:19:-;6054:7;6083:8;;:20;;;;;6096:7;6095:8;6083:20;6074:163;;;-1:-1:-1;6112:1:19;6105:8;;6074:163;6140:3;6133;:10;6129:108;;-1:-1:-1;6162:3:19;6155:10;;6129:108;6234:3;6221:9;6234:3;6221;:9;:::i;:::-;6214:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6207:30;;6129:108;5954:291;;;;;;:::o;4147:461::-;4225:12;4240:14;;;:6;:14;;;;;;;;:19;;;4286;;;;4330:31;;-1:-1:-1;;;4330:31:19;;-1:-1:-1;;;;;2654:32:21;;;4330:31:19;;;2636:51:21;;;;4240:19:19;;;4286;;4240;;4330:22;;2609:18:21;;4330:31:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4374:4;;4428:25;;4316:45;;-1:-1:-1;4374:4:19;;;-1:-1:-1;;;;;4374:4:19;;:10;;4399:4;;4428:25;;4439:7;;4448:4;;4428:25;;;:::i;:::-;;;;;;;;;;;;;4418:36;;;;;;4498:3;4492;:9;;;;:::i;:::-;4374:139;;-1:-1:-1;;;;;;4374:139:19;;;;;;;;;;;4484:18;4374:139;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4535:31:19;;-1:-1:-1;;;4535:31:19;;-1:-1:-1;;;;;2654:32:21;;;4535:31:19;;;2636:51:21;4526:52:19;;-1:-1:-1;4535:22:19;;;-1:-1:-1;4535:22:19;;2609:18:21;;4535:31:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4568:9;4574:3;4568;:9;:::i;12058:1114:20:-;12235:7;;12178:83;;12183:42;;-1:-1:-1;;;;;12235:7:20;12245:15;12178:4;:83::i;:::-;12331:3;;12309:27;;-1:-1:-1;;;12309:27:20;;-1:-1:-1;;;;;12331:3:20;;;12309:27;;;2636:51:21;-1:-1:-1;;;;;;;;;;;12309:13:20;;;2609:18:21;;12309:27:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12402:77:20;;-1:-1:-1;;;12402:77:20;;13114:2:21;12402:77:20;;;13096:21:21;13153:2;13133:18;;;13126:30;13192:34;13172:18;;;13165:62;13263:28;13243:18;;;13236:56;-1:-1:-1;;;;;;;;;;;12402:15:20;-1:-1:-1;12402:15:20;;-1:-1:-1;13309:19:21;;12402:77:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12490:7;;;;;;;;;-1:-1:-1;;;;;12490:7:20;-1:-1:-1;;;;;12490:13:20;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12557:3:20;;12585:7;;12603:3;;12557:68;;-1:-1:-1;;;12557:68:20;;-1:-1:-1;;;;;12557:3:20;;;;-1:-1:-1;12557:19:20;;-1:-1:-1;12557:68:20;;12585:7;;;;12603:3;;;;12609:15;;12557:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12550:76;;;;:::i;:::-;12692:62;;-1:-1:-1;;;12692:62:20;;13952:2:21;12692:62:20;;;13934:21:21;13991:2;13971:18;;;13964:30;14030:34;14010:18;;;14003:62;-1:-1:-1;;;14081:18:21;;;14074:41;-1:-1:-1;;;;;;;;;;;12692:15:20;;;14132:19:21;;12692:62:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12765:7;;;;;;;;;-1:-1:-1;;;;;12765:7:20;-1:-1:-1;;;;;12765:13:20;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12827:3:20;;12857:7;;12827:39;;-1:-1:-1;;;12827:39:20;;-1:-1:-1;;;;;12857:7:20;;;12827:39;;;2636:51:21;12827:3:20;;;-1:-1:-1;12827:21:20;;-1:-1:-1;2609:18:21;;12827:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12820:47;;;;:::i;:::-;12917:7;;;;;;;;;-1:-1:-1;;;;;12917:7:20;-1:-1:-1;;;;;12917:13:20;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12945:14;12950:8;12945:4;:14::i;:::-;13010:7;;;;;;;;;-1:-1:-1;;;;;13010:7:20;-1:-1:-1;;;;;13010:13:20;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13038:71:20;;-1:-1:-1;;;13038:71:20;;14363:2:21;13038:71:20;;;14345:21:21;14402:2;14382:18;;;14375:30;14441:34;14421:18;;;14414:62;-1:-1:-1;;;14492:18:21;;;14485:50;-1:-1:-1;;;;;;;;;;;13038:15:20;-1:-1:-1;13038:15:20;;-1:-1:-1;14552:19:21;;13038:71:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13120:7;;;;;;;;;-1:-1:-1;;;;;13120:7:20;-1:-1:-1;;;;;13120:13:20;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17340:2006;17422:48;17428:7;17437:13;17452:17;17422:5;:48::i;:::-;17599:7;;17412:58;;-1:-1:-1;17542:75:20;;17547:42;;-1:-1:-1;;;;;17599:7:20;17412:58;17542:4;:75::i;:::-;17686:3;;17664:27;;-1:-1:-1;;;17664:27:20;;-1:-1:-1;;;;;17686:3:20;;;17664:27;;;2636:51:21;-1:-1:-1;;;;;;;;;;;17664:13:20;;;2609:18:21;;17664:27:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17742:3:20;;17770:7;;17788:3;;17742:60;;-1:-1:-1;;;17742:60:20;;-1:-1:-1;;;;;17742:3:20;;;;-1:-1:-1;17742:19:20;;-1:-1:-1;17742:60:20;;17770:7;;;;17788:3;;;;17794:7;;17742:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17735:68;;;;:::i;:::-;17849:3;;17879:7;;17849:39;;-1:-1:-1;;;17849:39:20;;-1:-1:-1;;;;;17879:7:20;;;17849:39;;;2636:51:21;17849:3:20;;;:21;;2609:18:21;;17849:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17842:47;;;;:::i;:::-;17946:7;;:20;;;-1:-1:-1;;;17946:20:20;;;;17930:65;;-1:-1:-1;;;;;17946:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;17930:65;18054:3;;18076:7;;18054:31;;-1:-1:-1;;;18054:31:20;;-1:-1:-1;;;;;18076:7:20;;;18054:31;;;2636:51:21;18054:3:20;;;:13;;2609:18:21;;18054:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18047:39;;;;:::i;:::-;18146:7;;:20;;;-1:-1:-1;;;18146:20:20;;;;18128:93;;-1:-1:-1;;;;;18146:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18186:3;;18139:52;;-1:-1:-1;;;18139:52:20;;-1:-1:-1;;;;;18186:3:20;;;18139:52;;;2636:51:21;18139:38:20;;;;;2609:18:21;;18139:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18208:3;18193:12;:7;18203:2;18193:12;:::i;:::-;:18;;;;:::i;:::-;18213:7;18128:10;:93::i;:::-;18259:13;18264:7;18259:4;:13::i;:::-;18331:3;;18353:7;;18331:31;;-1:-1:-1;;;18331:31:20;;-1:-1:-1;;;;;18353:7:20;;;18331:31;;;2636:51:21;18331:3:20;;;:13;;2609:18:21;;18331:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18324:39;;;;:::i;:::-;18423:7;;:20;;;-1:-1:-1;;;18423:20:20;;;;18405:93;;-1:-1:-1;;;;;18423:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18463:3;;18416:52;;-1:-1:-1;;;18416:52:20;;-1:-1:-1;;;;;18463:3:20;;;18416:52;;;2636:51:21;18416:38:20;;;;;2609:18:21;;18416:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18485:3;18470:12;:7;18480:2;18470:12;:::i;18405:93::-;18536:13;18541:7;18536:4;:13::i;:::-;18608:3;;18630:7;;18608:31;;-1:-1:-1;;;18608:31:20;;-1:-1:-1;;;;;18630:7:20;;;18608:31;;;2636:51:21;18608:3:20;;;:13;;2609:18:21;;18608:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18601:39;;;;:::i;:::-;18700:7;;:20;;;-1:-1:-1;;;18700:20:20;;;;18682:93;;-1:-1:-1;;;;;18700:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18740:3;;18693:52;;-1:-1:-1;;;18693:52:20;;-1:-1:-1;;;;;18740:3:20;;;18693:52;;;2636:51:21;18693:38:20;;;;;2609:18:21;;18693:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18762:3;18747:12;:7;18757:2;18747:12;:::i;18682:93::-;18814:14;18819:8;18814:4;:14::i;:::-;18887:3;;18909:7;;18887:31;;-1:-1:-1;;;18887:31:20;;-1:-1:-1;;;;;18909:7:20;;;18887:31;;;2636:51:21;18887:3:20;;;:13;;2609:18:21;;18887:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18880:39;;;;:::i;:::-;18979:7;;:20;;;-1:-1:-1;;;18979:20:20;;;;18961:93;;-1:-1:-1;;;;;18979:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19019:3;;18972:52;;-1:-1:-1;;;18972:52:20;;-1:-1:-1;;;;;19019:3:20;;;18972:52;;;2636:51:21;18972:38:20;;;;;2609:18:21;;18972:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19041:3;19026:12;:7;19036:2;19026:12;:::i;3923:1165::-;4065:3;;4093:7;;4065:3;4111;4065:61;;-1:-1:-1;;;4065:61:20;;-1:-1:-1;;;;;4065:3:20;;;;:19;;:61;;4093:7;;;;4111:3;;;4117:8;;4065:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4064:62;4057:70;;;;:::i;:::-;4214:3;;4242:7;;4214:61;;-1:-1:-1;;;4214:61:20;;-1:-1:-1;;;;;4214:3:20;;;;:19;;:61;;4242:7;;;4214:3;;4266:8;;4214:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4213:62;4206:70;;;;:::i;:::-;4349:3;;4377:7;;4349:3;4395;4349:61;;-1:-1:-1;;;4349:61:20;;-1:-1:-1;;;;;4349:3:20;;;;:19;;:61;;4377:7;;;;4395:3;;;4401:8;;4349:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4342:69;;;;:::i;:::-;4446:3;;4424:27;;-1:-1:-1;;;4424:27:20;;-1:-1:-1;;;;;4446:3:20;;;4424:27;;;2636:51:21;-1:-1:-1;;;;;;;;;;;4424:13:20;;;2609:18:21;;4424:27:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4530:71:20;;-1:-1:-1;;;4530:71:20;;14783:2:21;4530:71:20;;;14765:21:21;14822:2;14802:18;;;14795:30;14861:34;14841:18;;;14834:62;-1:-1:-1;;;14912:18:21;;;14905:50;-1:-1:-1;;;;;;;;;;;4530:15:20;-1:-1:-1;4530:15:20;;-1:-1:-1;14972:19:21;;4530:71:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4612:7:20;;;4640:3;4612:43;;-1:-1:-1;;;4612:43:20;;-1:-1:-1;;;;;4612:7:20;;;;-1:-1:-1;4612:19:20;;-1:-1:-1;4612:43:20;;4640:3;;;;4646:8;;4612:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4732:75:20;;-1:-1:-1;;;4732:75:20;;15509:2:21;4732:75:20;;;15491:21:21;15548:2;15528:18;;;15521:30;15587:34;15567:18;;;15560:62;15658:26;15638:18;;;15631:54;-1:-1:-1;;;;;;;;;;;4732:15:20;-1:-1:-1;4732:15:20;;-1:-1:-1;15702:19:21;;4732:75:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4818:7:20;;:41;;-1:-1:-1;;;4818:41:20;;-1:-1:-1;;;;;4818:7:20;;;;-1:-1:-1;4818:19:20;;-1:-1:-1;4818:41:20;;:7;;4850:8;;4818:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4934:72:20;;-1:-1:-1;;;4934:72:20;;15933:2:21;4934:72:20;;;15915:21:21;15972:2;15952:18;;;15945:30;16011:34;15991:18;;;15984:62;-1:-1:-1;;;16062:18:21;;;16055:51;-1:-1:-1;;;;;;;;;;;4934:15:20;-1:-1:-1;4934:15:20;;-1:-1:-1;16123:19:21;;4934:72:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5017:7:20;;5045:3;;5017:36;;-1:-1:-1;;;5017:36:20;;-1:-1:-1;;;;;5017:7:20;;;;-1:-1:-1;5017:19:20;;-1:-1:-1;5017:36:20;;5045:3;;;;5017:7;;:36;;;:::i;3270:563::-;3359:7;;3340:39;;840:42:19;;-1:-1:-1;;;;;3359:7:20;3369:9;2297:7:19;3369:3:20;:9;:::i;3340:39::-;3460:7;;3429:40;;-1:-1:-1;;;3429:40:20;;-1:-1:-1;;;;;3460:7:20;;;3429:40;;;2636:51:21;3420:61:20;;840:42:19;;3429:22:20;;2609:18:21;;3429:40:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3471:9;2297:7:19;3471:3:20;:9;:::i;3420:61::-;3532:3;;3501:36;;-1:-1:-1;;;3501:36:20;;-1:-1:-1;;;;;3532:3:20;;;3501:36;;;2636:51:21;3492:53:20;;840:42:19;;3501:22:20;;2609:18:21;;3501:36:20;2490:203:21;3492:53:20;3612:3;;3642:7;;3612:45;;-1:-1:-1;;;3612:45:20;;-1:-1:-1;;;;;3612:3:20;;;;:21;;:45;;3642:7;;;840:42:19;;3612:45:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3605:53;;;;:::i;:::-;3740:7;;3709:40;;-1:-1:-1;;;3709:40:20;;-1:-1:-1;;;;;3740:7:20;;;3709:40;;;2636:51:21;3700:53:20;;840:42:19;;3709:22:20;;2609:18:21;;3709:40:20;2490:203:21;3700:53:20;3804:3;;3773:36;;-1:-1:-1;;;3773:36:20;;-1:-1:-1;;;;;3804:3:20;;;3773:36;;;2636:51:21;3764:61:20;;840:42:19;;3773:22:20;;2609:18:21;;3773:36:20;2490:203:21;8131:1974:20;8199:9;8211:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8296:3:20;;8324:7;;8296:3;8342;8296:61;;-1:-1:-1;;;8296:61:20;;8199:23;;-1:-1:-1;;;;;;8296:3:20;;;;:19;;:61;;8324:7;;;8342:3;;8348:8;;8296:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8289:69;;;;:::i;:::-;8376:3;;8404:7;;8422:3;;8376:61;;-1:-1:-1;;;8376:61:20;;-1:-1:-1;;;;;8376:3:20;;;;:19;;:61;;8404:7;;;;8422:3;;;8428:8;;8376:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8369:69;;;;:::i;:::-;8456:3;;8484:7;;8456:61;;-1:-1:-1;;;8456:61:20;;-1:-1:-1;;;;;8456:3:20;;;;:19;;:61;;8484:7;;;8502:3;;8508:8;;8456:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8449:69;;;;:::i;:::-;8569:7;;;8595:3;8569:31;;-1:-1:-1;;;8569:31:20;;-1:-1:-1;;;;;8595:3:20;;;8569:31;;;2636:51:21;8560:52:20;;8569:7;;;;;:17;;2609:18:21;;8569:31:20;2490:203:21;8560:52:20;8632:7;;8658:3;;8632:31;;-1:-1:-1;;;8632:31:20;;-1:-1:-1;;;;;8658:3:20;;;8632:31;;;2636:51:21;8623:52:20;;8632:7;;;;;:17;;2609:18:21;;8632:31:20;2490:203:21;8623:52:20;8695:7;;:31;;-1:-1:-1;;;8695:31:20;;-1:-1:-1;;;;;2654:32:21;;;8695:31:20;;;2636:51:21;8686:52:20;;8695:7;;:17;;2609:18:21;;8695:31:20;2490:203:21;8686:52:20;8785:7;;:28;;;-1:-1:-1;;;8785:28:20;;;;8749:33;;-1:-1:-1;;;;;8785:7:20;;:26;;:28;;;;;8749:33;;8785:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8785:28:20;;;;;;;;;;;;:::i;:::-;8749:64;;8824:36;8833:7;:14;8858:1;8824:8;:36::i;:::-;8871:48;8880:7;8888:1;8880:10;;;;;;;;:::i;8871:48::-;8930:44;8939:7;8947:1;8939:10;;;;;;;;:::i;8930:44::-;8985:37;8994:7;9002:1;8994:10;;;;;;;;:::i;8985:37::-;9033:48;9042:7;9050:1;9042:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;9076:3;;-1:-1:-1;;;;;9076:3:20;9033:8;:48::i;:::-;9092:44;9101:7;9109:1;9101:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9127:8;9092;:44::i;:::-;9147:37;9156:7;9164:1;9156:10;;;;;;;;:::i;9147:37::-;9195:48;9204:7;9212:1;9204:10;;;;;;;;:::i;:::-;;;;;;;:18;;;9238:3;9195:8;:48::i;:::-;9254:44;9263:7;9271:1;9263:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9289:8;9254;:44::i;:::-;9309:37;9318:7;9326:1;9318:10;;;;;;;;:::i;9309:37::-;9400:3;;9431:7;;9400:3;9449;9400:54;;-1:-1:-1;;;9400:54:20;;-1:-1:-1;;;;;9400:3:20;;;;:22;;:54;;9431:7;;;;9449:3;;;9400:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9393:62;;;;:::i;:::-;9507:7;;;9533:3;9507:31;;-1:-1:-1;;;9507:31:20;;-1:-1:-1;;;;;9533:3:20;;;9507:31;;;2636:51:21;9498:53:20;;9507:7;;;;;:17;;2609:18:21;;9507:31:20;2490:203:21;9498:53:20;9571:7;;9597:3;;9571:31;;-1:-1:-1;;;9571:31:20;;-1:-1:-1;;;;;9597:3:20;;;9571:31;;;2636:51:21;9562:52:20;;9571:7;;;;;:17;;2609:18:21;;9571:31:20;2490:203:21;9562:52:20;9634:7;;:31;;-1:-1:-1;;;9634:31:20;;-1:-1:-1;;;;;2654:32:21;;;9634:31:20;;;2636:51:21;9625:52:20;;9634:7;;:17;;2609:18:21;;9634:31:20;2490:203:21;9625:52:20;9698:7;;;;;;;;;-1:-1:-1;;;;;9698:7:20;-1:-1:-1;;;;;9698:26:20;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9698:28:20;;;;;;;;;;;;:::i;:::-;9688:38;;9737:36;9746:7;:14;9771:1;9737:8;:36::i;:::-;9784:48;9793:7;9801:1;9793:10;;;;;;;;:::i;9784:48::-;9843:44;9852:7;9860:1;9852:10;;;;;;;;:::i;9843:44::-;9898:37;9907:7;9915:1;9907:10;;;;;;;;:::i;9898:37::-;9946:48;9955:7;9963:1;9955:10;;;;;;;;:::i;9946:48::-;10005:44;10014:7;10022:1;10014:10;;;;;;;;:::i;10005:44::-;10060:37;10069:7;10077:1;10069:10;;;;;;;;:::i;10060:37::-;8188:1917;;8131:1974::o;3238:184:19:-;3286:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3280:3:19;:17;;-1:-1:-1;;;;;;3280:17:19;-1:-1:-1;;;;;3280:17:19;;;;;;;;;;3327:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3321:3:19;:17;;-1:-1:-1;;;;;;3321:17:19;-1:-1:-1;;;;;3321:17:19;;;;;;;;;;3394:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3388:3:19;:17;;-1:-1:-1;;;;;;3388:17:19;-1:-1:-1;;;;;3388:17:19;;;;;;;;;;3238:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;1980:374;;2196:43;;2023:20;;-1:-1:-1;;;;;;;;;;;1671:64:0;2135:34;;2196:43;;1671:64;;-1:-1:-1;;;2221:17:0;2196:43;;;:::i;:::-;;;;-1:-1:-1;;2196:43:0;;;;;;;;;;2086:175;;;2196:43;2086:175;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5787:159:19:-;5873:7;5900:38;5917:3;5922;5927;5932:5;5900:16;:38::i;:::-;5893:45;;5787:159;;;;;;:::o;19410:2115:20:-;19492:48;19498:7;19507:13;19522:17;19492:5;:48::i;:::-;19669:7;;19482:58;;-1:-1:-1;19612:79:20;;19617:42;;-1:-1:-1;;;;;19669:7:20;19679:11;19482:58;19689:1;19679:11;:::i;19612:79::-;19737:3;;19767:7;;19737:39;;-1:-1:-1;;;19737:39:20;;-1:-1:-1;;;;;19767:7:20;;;19737:39;;;2636:51:21;19737:3:20;;;:21;;2609:18:21;;19737:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19730:47;;;;:::i;:::-;19886:3;;19914:7;;19932:3;;19886:60;;-1:-1:-1;;;19886:60:20;;-1:-1:-1;;;;;19886:3:20;;;;:19;;:60;;19914:7;;;;19932:3;;;19938:7;;19886:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19879:68;;;;:::i;:::-;19999:3;;20027:7;;19999:3;20045;19999:60;;-1:-1:-1;;;19999:60:20;;-1:-1:-1;;;;;19999:3:20;;;;:19;;:60;;20027:7;;;;20045:3;;;20051:7;;19999:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19992:68;;;;:::i;:::-;20112:3;;20140:7;;20112:60;;-1:-1:-1;;;20112:60:20;;-1:-1:-1;;;;;20112:3:20;;;;:19;;:60;;20140:7;;;20112:3;;20164:7;;20112:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20105:68;;;;:::i;:::-;20248:13;20253:7;20248:4;:13::i;:::-;20279:3;;20301:7;;20279:31;;-1:-1:-1;;;20279:31:20;;-1:-1:-1;;;;;20301:7:20;;;20279:31;;;2636:51:21;20279:3:20;;;:13;;2609:18:21;;20279:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20272:39;;;;:::i;:::-;20406:7;;:20;;;-1:-1:-1;;;20406:20:20;;;;20388:95;;-1:-1:-1;;;;;20406:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;20388:95;20548:14;20553:8;20548:4;:14::i;:::-;20634:3;;20656:7;;20634:31;;-1:-1:-1;;;20634:31:20;;-1:-1:-1;;;;;20656:7:20;;;20634:31;;;2636:51:21;20634:3:20;;;:13;;2609:18:21;;20634:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20627:39;;;;:::i;:::-;20761:7;;:20;;;-1:-1:-1;;;20761:20:20;;;;20743:95;;-1:-1:-1;;;;;20761:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20801:3;;20754:52;;-1:-1:-1;;;20754:52:20;;-1:-1:-1;;;;;20801:3:20;;;20754:52;;;2636:51:21;20754:38:20;;;;;2609:18:21;;20754:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20824:3;20809:12;:7;20819:2;20809:12;:::i;20743:95::-;20904:14;20909:8;20904:4;:14::i;:::-;21016:3;;21038:7;;21016:31;;-1:-1:-1;;;21016:31:20;;-1:-1:-1;;;;;21038:7:20;;;21016:31;;;2636:51:21;21016:3:20;;;:13;;2609:18:21;;21016:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21009:39;;;;:::i;:::-;21130:7;;:20;;;-1:-1:-1;;;21130:20:20;;;;21114:71;;-1:-1:-1;;;;;21130:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21170:3;;21123:52;;-1:-1:-1;;;21123:52:20;;-1:-1:-1;;;;;21170:3:20;;;21123:52;;;2636:51:21;21123:38:20;;;;;2609:18:21;;21123:52:20;2490:203:21;21114:71:20;21230:14;21235:8;21230:4;:14::i;:::-;21338:3;;21360:7;;21338:31;;-1:-1:-1;;;21338:31:20;;-1:-1:-1;;;;;21360:7:20;;;21338:31;;;2636:51:21;21338:3:20;;;:13;;2609:18:21;;21338:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21331:39;;;;:::i;:::-;21460:7;;:20;;;-1:-1:-1;;;21460:20:20;;;;21444:71;;-1:-1:-1;;;;;21460:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21500:3;;21453:52;;-1:-1:-1;;;21453:52:20;;-1:-1:-1;;;;;21500:3:20;;;21453:52;;;2636:51:21;21453:38:20;;;;;2609:18:21;;21453:52:20;2490:203:21;10885:1093:20;11092:3;;11120:7;;11138:3;;11092:60;;-1:-1:-1;;;11092:60:20;;11028:15;;-1:-1:-1;;;;;11092:3:20;;;;:19;;:60;;11120:7;;;;11138:3;;11028:15;;11092:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11085:68;;;;:::i;:::-;11218:7;;11250:3;;11218:37;;-1:-1:-1;;;11218:37:20;;-1:-1:-1;;;;;11250:3:20;;;11218:37;;;2636:51:21;11209:56:20;;11218:7;;;;;:23;;2609:18:21;;11218:37:20;2490:203:21;11209:56:20;11312:3;;11342:7;;11312:39;;-1:-1:-1;;;11312:39:20;;-1:-1:-1;;;;;11342:7:20;;;11312:39;;;2636:51:21;11312:3:20;;;:21;;2609:18:21;;11312:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11305:47;;;;:::i;:::-;11391:14;11396:8;11391:4;:14::i;:::-;11471:15;11532:3;11518:11;:7;11528:1;11518:11;:::i;:::-;:17;;;;:::i;:::-;11513:23;;:1;:23;:::i;:::-;11505:3;11490:12;:7;11500:2;11490:12;:::i;:::-;:18;;;;:::i;:::-;11489:48;;;;:::i;:::-;11557:7;;11590:3;;11557:38;;-1:-1:-1;;;11557:38:20;;-1:-1:-1;;;;;11590:3:20;;;11557:38;;;2636:51:21;11471:66:20;;-1:-1:-1;11548:57:20;;11557:7;;;:24;;2609:18:21;;11557:38:20;2490:203:21;11548:57:20;11694:14;11699:8;11694:4;:14::i;:::-;11829:3;11815:11;:7;11825:1;11815:11;:::i;:::-;:17;;;;:::i;:::-;11809:24;;:2;:24;:::i;:::-;11801:3;11786:12;:7;11796:2;11786:12;:::i;:::-;:18;;;;:::i;:::-;11785:49;;;;:::i;:::-;11854:7;;11887:3;;11854:38;;-1:-1:-1;;;11854:38:20;;-1:-1:-1;;;;;11887:3:20;;;11854:38;;;2636:51:21;11775:59:20;;-1:-1:-1;11845:57:20;;11854:7;;;:24;;2609:18:21;;11854:38:20;2490:203:21;11845:57:20;11922:7;;11955:3;;11922:38;;-1:-1:-1;;;11922:38:20;;-1:-1:-1;;;;;11955:3:20;;;11922:38;;;2636:51:21;11913:57:20;;11922:7;;;;;:24;;2609:18:21;;11922:38:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11962:7;11913:8;:57::i;15199:2074::-;15374:7;;15317:83;;15322:42;;-1:-1:-1;;;;;15374:7:20;15384:15;15317:4;:83::i;:::-;15446:3;;15476:7;;15446:39;;-1:-1:-1;;;15446:39:20;;-1:-1:-1;;;;;15476:7:20;;;15446:39;;;2636:51:21;15446:3:20;;;:21;;2609:18:21;;15446:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15439:47;;;;:::i;:::-;15595:3;;15623:7;;15641:3;;15595:68;;-1:-1:-1;;;15595:68:20;;-1:-1:-1;;;;;15595:3:20;;;;:19;;:68;;15623:7;;;;15641:3;;;15647:15;;15595:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15588:76;;;;:::i;:::-;15716:3;;15744:7;;15716:3;15762;15716:68;;-1:-1:-1;;;15716:68:20;;-1:-1:-1;;;;;15716:3:20;;;;:19;;:68;;15744:7;;;;15762:3;;;15768:15;;15716:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15709:76;;;;:::i;:::-;15837:3;;15865:7;;15837:68;;-1:-1:-1;;;15837:68:20;;-1:-1:-1;;;;;15837:3:20;;;;:19;;:68;;15865:7;;;15837:3;;15889:15;;15837:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15830:76;;;;:::i;:::-;15981:13;15986:7;15981:4;:13::i;:::-;16012:3;;16034:7;;16012:31;;-1:-1:-1;;;16012:31:20;;-1:-1:-1;;;;;16034:7:20;;;16012:31;;;2636:51:21;16012:3:20;;;:13;;2609:18:21;;16012:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16005:39;;;;:::i;:::-;16137:7;;:20;;;-1:-1:-1;;;16137:20:20;;;;16121:93;;-1:-1:-1;;;;;16137:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16177:3;;16130:52;;-1:-1:-1;;;16130:52:20;;-1:-1:-1;;;;;16177:3:20;;;16130:52;;;2636:51:21;16130:38:20;;;;;2609:18:21;;16130:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16185:26;16121:8;:93::i;:::-;16279:14;16284:8;16279:4;:14::i;:::-;16365:3;;16387:7;;16365:31;;-1:-1:-1;;;16365:31:20;;-1:-1:-1;;;;;16387:7:20;;;16365:31;;;2636:51:21;16365:3:20;;;:13;;2609:18:21;;16365:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16358:39;;;;:::i;:::-;16490:7;;:20;;;-1:-1:-1;;;16490:20:20;;;;16474:92;;-1:-1:-1;;;;;16490:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16530:3;;16483:52;;-1:-1:-1;;;16483:52:20;;-1:-1:-1;;;;;16530:3:20;;;16483:52;;;2636:51:21;16483:38:20;;;;;2609:18:21;;16483:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16538:26;16474:8;:92::i;:::-;16632:14;16637:8;16632:4;:14::i;:::-;16744:3;;16766:7;;16744:31;;-1:-1:-1;;;16744:31:20;;-1:-1:-1;;;;;16766:7:20;;;16744:31;;;2636:51:21;16744:3:20;;;:13;;2609:18:21;;16744:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16737:39;;;;:::i;:::-;16858:7;;:20;;;-1:-1:-1;;;16858:20:20;;;;16842:81;;-1:-1:-1;;;;;16858:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16898:3;;16851:52;;-1:-1:-1;;;16851:52:20;;-1:-1:-1;;;;;16898:3:20;;;16851:52;;;2636:51:21;16851:38:20;;;;;2609:18:21;;16851:52:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16906:15;16842:8;:81::i;:::-;16968:14;16973:8;16968:4;:14::i;:::-;17076:3;;17098:7;;17076:31;;-1:-1:-1;;;17076:31:20;;-1:-1:-1;;;;;17098:7:20;;;17076:31;;;2636:51:21;17076:3:20;;;:13;;2609:18:21;;17076:31:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17069:39;;;;:::i;:::-;17198:7;;:20;;;-1:-1:-1;;;17198:20:20;;;;17182:81;;-1:-1:-1;;;;;17198:7:20;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17238:3;;17191:52;;-1:-1:-1;;;17191:52:20;;-1:-1:-1;;;;;17238:3:20;;;17191:52;;;2636:51:21;17191:38:20;;;;;2609:18:21;;17191:52:20;2490:203:21;3546:551:19;3589:6;:14;;;:26;;-1:-1:-1;;;;;;3589:26:19;;;840:42;3589:26;;;;3648:1;3626:19;:23;3662:13;:24;;;;914:42;3662:24;;;3718:1;3697:18;:22;3730:18;:63;;;;3751:42;3730:63;;;3806:14;:26;;;;988:42;3806:26;;;3865:1;3843:19;:23;3877:19;:64;;;;3899:42;3877:64;;;-1:-1:-1;;;3589:14:19;3954;;;;:26;;;;1062:42;3954:26;;;3991:19;:23;4025:19;:64;;;;;4047:42;4025:64;;;3546:551::o;1049:596:20:-;1185:3;;1215:7;;1185:39;;-1:-1:-1;;;1185:39:20;;-1:-1:-1;;;;;1215:7:20;;;1185:39;;;2636:51:21;1185:3:20;;;:21;;2609:18:21;;1185:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1184:40;1177:48;;;;:::i;:::-;1305:3;;1335:7;;1305:39;;-1:-1:-1;;;1305:39:20;;-1:-1:-1;;;;;1335:7:20;;;1305:39;;;2636:51:21;1305:3:20;;;:21;;2609:18:21;;1305:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1304:40;1297:48;;;;:::i;:::-;1440:3;;1470:7;;1440:39;;-1:-1:-1;;;1440:39:20;;-1:-1:-1;;;;;1470:7:20;;;1440:39;;;2636:51:21;1440:3:20;;;:21;;2609:18:21;;1440:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1433:47;;;;:::i;:::-;1597:3;;1627:7;;1597:39;;-1:-1:-1;;;1597:39:20;;-1:-1:-1;;;;;1627:7:20;;;1597:39;;;2636:51:21;1597:3:20;;;:21;;2609:18:21;;1597:39:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1596:40;1589:48;;;;:::i;789:312:2:-;859:1;854:6;;:1;:6;;;850:245;;881:41;;;;;18264:2:21;18246:21;;;18303:2;18283:18;;;18276:30;18342:34;18337:2;18322:18;;18315:62;-1:-1:-1;;;18408:2:21;18393:18;;18386:32;18450:3;18435:19;;18062:398;881:41:2;;;;;;;;941:52;972:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;941:52;;;;;;:::i;:::-;;;;;;;;1012;1043:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;1012:52;;;;;;:::i;:::-;;;;;;;;1078:6;:4;:6::i;5202:262:0:-;5264:1;5259;:6;5255:203;;5286:41;;;;;19833:2:21;19815:21;;;19872:2;19852:18;;;19845:30;19911:34;19906:2;19891:18;;19884:62;-1:-1:-1;;;19977:2:21;19962:18;;19955:32;20019:3;20004:19;;19631:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:0;:1;-1:-1:-1;;;;;3678:6:0;;3674:212;;3705:44;;;;;20236:2:21;20218:21;;;20275:2;20255:18;;;20248:30;20314:34;20309:2;20294:18;;20287:62;-1:-1:-1;;;20380:2:21;20365:18;;20358:35;20425:3;20410:19;;20034:401;3705:44:0;;;;;;;;3768:34;3800:1;3768:34;;;;;;:::i;:::-;;;;;;;;3821;3853:1;3821:34;;;;;;:::i;2410:424::-;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;2445:359;;2645:67;;2482:11;;-1:-1:-1;;;;;;;;;;;1671:64:0;2579:43;;2645:67;;1671:64;;-1:-1:-1;;;2670:17:0;2705:4;;2645:67;;;:::i;:::-;;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;19453:117:4:-;19535:28;19540:5;19547:2;19551:4;19557:5;19535:4;:28::i;:::-;19453:117;;;:::o;17530:93::-;-1:-1:-1;;;;;;;;;;;17585:7:4;17593:22;17611:4;17593:15;:22;:::i;:::-;17585:31;;;;;;;;;;;;;1244:25:21;;1232:2;1217:18;;1098:177;17585:31:4;;;;;;;;;;;;;;;;;;;;1880:190:9;1963:14;1998:19;2005:1;2008:3;2013;1998:6;:19::i;:::-;1989:28;;2027:36;;;;;;;;;;;;;;-1:-1:-1;;;2027:36:9;;;2056:6;2027:12;:36::i;19576:825:4:-;19740:38;;;-1:-1:-1;;;;;2654:32:21;;;19740:38:4;;;;2636:51:21;;;;19740:38:4;;;;;;;;;;2609:18:21;;;;19740:38:4;;;;;;;-1:-1:-1;;;;;19740:38:4;-1:-1:-1;;;19740:38:4;;;19729:50;;19705:20;;19729:10;;;:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19702:77;;;19789:15;19818:7;19807:30;;;;;;;;;;;;:::i;:::-;19789:48;-1:-1:-1;19874:71:4;19940:4;19874:51;19922:2;19874:38;-1:-1:-1;;;19874:22:4;:8;19890:5;19874:15;:22::i;:::-;:26;;:38::i;:::-;:47;;:51::i;:::-;:65;;:71::i;:::-;19991:6;19987:408;;;20054:34;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20054:34:4;-1:-1:-1;;;20054:34:4;;;20043:46;;20016:23;;-1:-1:-1;;;;;20043:10:4;;;:46;;20054:34;20043:46;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20013:76;;;20103:14;20131:10;20120:33;;;;;;;;;;;;:::i;:::-;20103:50;;20178:7;20171:4;:14;20167:144;;;20216:14;20226:4;20216:7;:14;:::i;:::-;20205:26;;;;:::i;:::-;;;20167:144;;;20281:14;20288:7;20281:4;:14;:::i;:::-;20270:26;;;;:::i;:::-;;;20167:144;20324:60;20377:6;20324:38;-1:-1:-1;;;20324:22:4;:8;20340:5;20324:15;:22::i;:60::-;19999:396;;19661:740;;19576:825;;;;:::o;611:1263:9:-;695:14;736:3;729;:10;;721:85;;;;-1:-1:-1;;;721:85:9;;21400:2:21;721:85:9;;;21382:21:21;21439:2;21419:18;;;21412:30;21478:34;21458:18;;;21451:62;21549:32;21529:18;;;21522:60;21599:19;;721:85:9;;;;;;;;;1040:3;1035:1;:8;;:20;;;;;1052:3;1047:1;:8;;1035:20;1031:34;;;-1:-1:-1;1064:1:9;1057:8;;1031:34;1076:12;1091:9;1097:3;1091;:9;:::i;:::-;:13;;1103:1;1091:13;:::i;:::-;1076:28;;1299:1;1294;:6;;:18;;;;;1311:1;1304:4;:8;1294:18;1290:38;;;1321:7;1327:1;1321:3;:7;:::i;:::-;1314:14;;;;;1290:38;1347:15;1361:1;-1:-1:-1;;1347:15:9;:::i;:::-;1342:1;:20;;:46;;;;-1:-1:-1;1373:15:9;1387:1;-1:-1:-1;;1373:15:9;:::i;:::-;1366:4;:22;1342:46;1338:82;;;1404:15;1418:1;-1:-1:-1;;1404:15:9;:::i;:::-;1397:23;;:3;:23;:::i;1338:82::-;1524:3;1520:1;:7;1516:352;;;1543:12;1558:7;1562:3;1558:1;:7;:::i;:::-;1543:22;-1:-1:-1;1579:11:9;1593;1600:4;1543:22;1593:11;:::i;:::-;1579:25;;1622:3;1629:1;1622:8;1618:24;;1639:3;1632:10;;;;;;;1618:24;1677:1;1665:9;1671:3;1665;:9;:::i;:::-;:13;;;;:::i;:::-;1656:22;;1529:160;;1516:352;;;1703:3;1699:1;:7;1695:173;;;1722:12;1737:7;1743:1;1737:3;:7;:::i;:::-;1722:22;-1:-1:-1;1758:11:9;1772;1779:4;1722:22;1772:11;:::i;:::-;1758:25;;1801:3;1808:1;1801:8;1797:24;;1818:3;1811:10;;;;;;;1797:24;1844:9;1850:3;1844;:9;:::i;:::-;:13;;1856:1;1844:13;:::i;:::-;1835:22;;1708:160;;1695:173;711:1163;611:1263;;;;;:::o;6307:207::-;6383:11;297:42;-1:-1:-1;;;;;6399:36:9;6483:2;6487;6436:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6436:54:9;;;;;;;;;;;;;;-1:-1:-1;;;;;6436:54:9;-1:-1:-1;;;6436:54:9;;;6399:92;;;6436:54;6399:92;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7708:156:8;4581:12;;;:22;;-1:-1:-1;;;;;;4581:22:8;-1:-1:-1;;;;;4581:22:8;;;;;-1:-1:-1;4581:12:8;7821:36;7814:43;;7708:156;;;;;:::o;7870:143::-;4736:9;;;:16;;-1:-1:-1;;4736:16:8;;;;;;;;-1:-1:-1;4736:9:8;7976:30;4637:143;8175:152;5052:10;;;:47;;;;;;;8249:18;5052:47;;;;;;-1:-1:-1;;;;;5076:21:8;;5052:47;;;8310:4;8286:34;4948:179;8951:120;9031:33;9045:4;9059:3;9399:12;;;;9435:9;;;;9476:11;;;;9520:10;;;9497:33;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9399:12:8;;;;9435:9;;;;;;9385:11;;9497:33;;9520:10;;9497:33;;9520:10;9497:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9541:17;9578:4;9584:12;9592:3;9584:7;:12::i;:::-;9561:36;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;9561:36:8;;;;;;;;;-1:-1:-1;;;;;9612:15:8;;;;;;:10;;;9561:36;9612:15;;;;;;-1:-1:-1;;;;;;9612:21:8;;;;;;;;;9561:36;;-1:-1:-1;9612:21:8;;:15;;9644:34;;9661:3;;9666:11;;9644:34;;:::i;:::-;;;;-1:-1:-1;;9644:34:8;;;;;;;;;9634:45;;9644:34;9634:45;;;;9612:68;;;;;;;;;;-1:-1:-1;9612:68:8;;;;9607:110;;9696:10;9701:4;9696;:10::i;:::-;;9607:110;-1:-1:-1;;;;;9749:15:8;;9726:12;9749:15;;;;;;;;;;;-1:-1:-1;;;;;;9749:21:8;;;;;;;;;9781:34;;9749:21;;9726:12;;9781:34;;9798:3;;9803:11;;9781:34;;:::i;:::-;;;;;;;;;;;;;9771:45;;;;;;9749:68;;;;;;;;;;;;9741:77;;9726:92;;9829:12;9868:17;9889:3;-1:-1:-1;;;;;9889:14:8;9904:4;9889:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9865:44:8;-1:-1:-1;9930:38:8;;-1:-1:-1;9865:44:8;9951:16;9956:11;9951:2;:16;:::i;:::-;9930:14;:38::i;:::-;10003:18;;-1:-1:-1;;;10003:18:8;;9923:45;;-1:-1:-1;9988:12:8;;-1:-1:-1;;;;;;;;;;;;10003:7:8;;;:18;;10011:3;;10016:4;;10003:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9988:33;;10044:4;10036;:12;10032:218;;10064:175;;-1:-1:-1;;;10064:175:8;;;;;;;:::i;:::-;10259:24;;-1:-1:-1;;;10259:24:8;;-1:-1:-1;;;;;;;;;;;10259:8:8;;;:24;;10268:3;;10273:4;;10279:3;;10259:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;10300:12:8;;;10293:19;;-1:-1:-1;;;;;;10293:19:8;;;-1:-1:-1;10329:9:8;;;10322:16;;-1:-1:-1;;10322:16:8;;;10348:17;-1:-1:-1;10355:10:8;;10300:12;10348:17;:::i;:::-;10382:4;:11;;10375:18;;;9375:1025;;;;;;;;9305:1095;;:::o;11479:393::-;11538:12;11562:19;11594:1;:8;11605:2;11594:13;;;;:::i;:::-;11584:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11584:24:8;;11562:46;;11623:9;11618:224;11642:1;:8;11638:1;:12;11618:224;;;11671:9;11683:1;11685;11683:4;;;;;;;;:::i;:::-;;;;;;;11671:16;;11816:1;11810;11806:2;11802:10;11798:2;11794:19;11786:6;11782:32;11775:43;11757:75;11652:3;;;;;:::i;:::-;;;;11618:224;;;-1:-1:-1;11859:6:8;11479:393;-1:-1:-1;;11479:393:8:o;7587:115::-;7644:7;7670:25;7690:4;7670:19;:25::i;11118:304::-;11196:7;11215:11;11237;11262:2;11251:1;:8;:13;:29;;11272:1;:8;11251:29;;;11267:2;11251:29;11237:43;;11295:9;11290:106;11314:3;11310:1;:7;11290:106;;;11379:5;:1;11383;11379:5;:::i;:::-;11353:1;11355:10;11364:1;11355:6;:10;:::i;:::-;11353:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;11353:13:8;11345:40;;11338:47;;;;;11319:3;;;;:::i;:::-;;;;11290:106;;;-1:-1:-1;11412:3:8;;11118:304;-1:-1:-1;;;;11118:304:8:o;1264:3205::-;1354:12;;;;1390:9;;;;1431:11;;;;1475:10;;;1452:33;;;;;;;;;;;;;;;;;;;1321:7;;-1:-1:-1;;;;;1354:12:8;;1390:9;;;1431:11;1321:7;;1452:33;;1475:10;;1452:33;;;1475:10;1452:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;1536:15:8;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;1536:21:8;;;;;;;;;1568:34;;1452:33;;-1:-1:-1;1536:21:8;:15;;-1:-1:-1;1568:34:8;;-1:-1:-1;1452:33:8;;1590:11;;1568:34;;:::i;:::-;;;;-1:-1:-1;;1568:34:8;;;;;;;;;1558:45;;1568:34;1558:45;;;;1536:68;;;;;;;;;;-1:-1:-1;1536:68:8;;;;1532:174;;;-1:-1:-1;;;;;1627:15:8;;:10;:15;;;;;;;;;;;-1:-1:-1;;;;;;1627:21:8;;;;;;;;;1659:34;;1627:21;;:10;1659:34;;1676:3;;1681:11;;1659:34;;:::i;:::-;;;;;;;;;;;;;1649:45;;;;;;1627:68;;;;;;;;;;;;1620:75;;;;;;1264:3205;;;:::o;1532:174::-;1715:17;1752:4;1758:12;1766:3;1758:7;:12::i;:::-;1735:36;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1715:56;;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;1781:9:8;;:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1802:12;1841:17;1862:3;-1:-1:-1;;;;;1862:14:8;1877:4;1862:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1838:44:8;-1:-1:-1;1903:38:8;;-1:-1:-1;1838:44:8;1924:16;1929:11;1924:2;:16;:::i;:::-;1903:14;:38::i;:::-;1990:25;;-1:-1:-1;;;1990:25:8;;-1:-1:-1;;;;;2654:32:21;;1990:25:8;;;2636:51:21;1896:45:8;;-1:-1:-1;1963:22:8;;-1:-1:-1;;;;;;;;;;;;1990:11:8;;;2609:18:21;;1990:25:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1990:25:8;;;;;;;;;;;;:::i;:::-;1962:53;;;2029:5;:12;2045:1;2029:17;2025:2068;;2062:12;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;2077:7:8;;2085:3;2090:5;2096:1;2090:8;;;;;;;;:::i;:::-;;;;;;;2077:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2062:37;-1:-1:-1;2062:37:8;2113:106;;2160:44;2181:3;2194:5;2200:1;2194:8;;;;;;;;:::i;:::-;;;;;;;2186:17;;2160:44;;;;;;;:::i;:::-;;;;;;;;2113:106;2244:4;2236;:12;2232:238;;2268:187;;-1:-1:-1;;;2268:187:8;;;;;;;:::i;:::-;2488:86;2498:3;2503:4;2536:3;2541:11;2519:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2509:45;;;;;;2564:5;2570:1;2564:8;;;;;;;;:::i;:::-;;;;;;;2556:17;;2488:86;;;;;;;;;:::i;:::-;;;;;;;;2667:5;2673:1;2667:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;2588:15:8;;2659:17;2588:15;;;;;;;;;;-1:-1:-1;;;;;;2588:21:8;;;;;;;;;2620:34;;2667:8;;2588:21;;2620:34;;2637:3;;2642:11;;2620:34;;:::i;:::-;;;;-1:-1:-1;;2620:34:8;;;;;;;;;2610:45;;2620:34;2610:45;;;;2588:68;;;;;;;;;;;;-1:-1:-1;2588:68:8;;;:88;;;;-1:-1:-1;;;;;2690:15:8;;;;2761:4;2690:10;;;:15;;;;;-1:-1:-1;;;;;;2690:21:8;;;;;;;;;2722:34;;2761:4;;-1:-1:-1;2722:34:8;;2739:3;;2744:11;;2722:34;;:::i;:::-;;;;;;;-1:-1:-1;;2722:34:8;;;;;;2712:45;;2722:34;2712:45;;;;2690:68;;;;;;;;;;-1:-1:-1;2690:68:8;:75;;-1:-1:-1;;2690:75:8;;;;;;;;;;-1:-1:-1;2025:2068:8;;;2801:1;2786:5;:12;:16;2782:1311;;;2823:9;2818:1152;2842:5;:12;2838:1;:16;2818:1152;;;2879:12;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;2894:7:8;;2902:3;2907:5;2913:1;2907:8;;;;;;;;:::i;:::-;;;;;;;2894:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2879:37;-1:-1:-1;2879:37:8;2934:114;;2985:44;3006:3;3019:5;3025:1;3019:8;;;;;;;;:::i;:::-;;;;;;;3011:17;;2985:44;;;;;;;:::i;:::-;;;;;;;;2934:114;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3090:8:8;;3099:3;3104:5;3110:1;3104:8;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;3090:43:8;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3151:12;3181:17;3256:3;-1:-1:-1;;;;;3256:14:8;3271:4;3256:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3238:38:8;;-1:-1:-1;3238:38:8;-1:-1:-1;3305:38:8;3238;3326:16;3331:11;3326:2;:16;:::i;3305:38::-;3298:45;;3384:7;:37;;;;;-1:-1:-1;;;3395:4:8;:26;3384:37;3380:529;;;3519:86;3529:3;3534:4;3567:3;3572:11;3550:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3540:45;;;;;;3595:5;3601:1;3595:8;;;;;;;;:::i;:::-;;;;;;;3587:17;;3519:86;;;;;;;;;:::i;:::-;;;;;;;;3706:5;3712:1;3706:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;3627:15:8;;3698:17;3627:15;;;;;;;;;;-1:-1:-1;;;;;;3627:21:8;;;;;;;;;3659:34;;3706:8;;3627:21;;3659:34;;3676:3;;3681:11;;3659:34;;:::i;:::-;;;;;;;;;;;;;3649:45;;;;;;3627:68;;;;;;;;;;;:88;;;;3808:4;3737;:10;;:15;3748:3;-1:-1:-1;;;;;3737:15:8;-1:-1:-1;;;;;3737:15:8;;;;;;;;;;;;:21;3753:4;-1:-1:-1;;;;;3737:21:8;;-1:-1:-1;;;;;3737:21:8;;;;;;;;;;;;;:68;3786:3;3791:11;3769:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3759:45;;;;;;3737:68;;;;;;;;;;;;:75;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3834:8:8;;3843:3;3848:5;3854:1;3848:8;;;;;;;;:::i;:::-;;;;;;;3858:4;3834:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3885:5;;;;;3380:529;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3926:8:8;;3935:3;3940:5;3946:1;3940:8;;;;;;;;:::i;:::-;;;;;;;3950:4;3926:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2861:1109;;;2856:3;;;;;:::i;:::-;;;;2818:1152;;;;2782:1311;;;4000:82;;;-1:-1:-1;;;4000:82:8;;25370:2:21;4000:82:8;;;25352:21:21;25389:18;;;25382:30;;;;25448:34;25428:18;;;25421:62;25519:34;25499:18;;;25492:62;25571:19;;4000:82:8;25168:428:21;4000:82:8;-1:-1:-1;;;;;4124:15:8;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;4124:21:8;;;;;;;;;4156:34;;4124:21;;:15;4156:34;;4173:3;;4178:11;;4156:34;;:::i;:::-;;;;-1:-1:-1;;4156:34:8;;;;;;;;;4146:45;;4156:34;4146:45;;;;4124:68;;;;;;;;;;-1:-1:-1;4124:68:8;;;;4103:162;;;;-1:-1:-1;;;4103:162:8;;25803:2:21;4103:162:8;;;25785:21:21;25842:2;25822:18;;;25815:30;25881:34;25861:18;;;25854:62;-1:-1:-1;;;25932:18:21;;;25925:45;25987:19;;4103:162:8;25601:411:21;4103:162:8;4283:12;;;4276:19;;-1:-1:-1;;;;;;4276:19:8;;;4312:9;;;4305:16;;-1:-1:-1;;4305:16:8;;;4331:17;-1:-1:-1;4338:10:8;;4283:12;4331:17;:::i;:::-;4358:18;4365:11;;;4358:18;;;-1:-1:-1;;;;;4394:15:8;;;;;;;;;;;;-1:-1:-1;;;;;;4394:21:8;;;;;;;;;4426:34;;4394:21;;4358:18;4426:34;;4443:3;;4448:11;;4426:34;;:::i;:::-;;;;;;;;;;;;;4416:45;;;;;;4394:68;;;;;;;;;;;;4387:75;;;;;;;;;1264:3205;;;:::o;6950:393::-;7009:12;7033:19;7065:1;:8;7076:2;7065:13;;;;:::i;:::-;7055:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7055:24:8;;7033:46;;7094:9;7089:224;7113:1;:8;7109:1;:12;7089:224;;;7142:9;7154:1;7156;7154:4;;;;;;;;:::i;:::-;;;;;;;7142:16;;7287:1;7281;7277:2;7273:10;7269:2;7265:19;7257:6;7253:32;7246:43;7228:75;7123:3;;;;;:::i;:::-;;;;7089:224;;6640:304;6718:7;6737:11;6759;6784:2;6773:1;:8;:13;:29;;6794:1;:8;6773:29;;;6789:2;6773:29;6759:43;;6817:9;6812:106;6836:3;6832:1;:7;6812:106;;;6901:5;:1;6905;6901:5;:::i;:::-;6875:1;6877:10;6886:1;6877:6;:10;:::i;:::-;6875:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6875:13:8;6867:40;;6860:47;;;;;6841:3;;;;:::i;:::-;;;;6812:106;;-1:-1:-1;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;203:316:21:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:21;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:21;494:18;;;481:32;;203:316;-1:-1:-1;203:316:21:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;647:446;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:21;;-1:-1:-1;;647:446:21:o;1280:131::-;-1:-1:-1;;;;;1355:31:21;;1345:42;;1335:70;;1401:1;1398;1391:12;1416:383;1493:6;1501;1509;1562:2;1550:9;1541:7;1537:23;1533:32;1530:52;;;1578:1;1575;1568:12;1530:52;1614:9;1601:23;1591:33;;1674:2;1663:9;1659:18;1646:32;1687:31;1712:5;1687:31;:::i;:::-;1416:383;;1737:5;;-1:-1:-1;;;1789:2:21;1774:18;;;;1761:32;;1416:383::o;1804:180::-;1863:6;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;-1:-1:-1;1955:23:21;;1804:180;-1:-1:-1;1804:180:21:o;2181:304::-;-1:-1:-1;;;;;2411:15:21;;;2393:34;;2463:15;;2458:2;2443:18;;2436:43;2343:2;2328:18;;2181:304::o;2698:245::-;2765:6;2818:2;2806:9;2797:7;2793:23;2789:32;2786:52;;;2834:1;2831;2824:12;2786:52;2866:9;2860:16;2885:28;2907:5;2885:28;:::i;2948:127::-;3009:10;3004:3;3000:20;2997:1;2990:31;3040:4;3037:1;3030:15;3064:4;3061:1;3054:15;3080:253;3152:2;3146:9;3194:4;3182:17;;3229:18;3214:34;;3250:22;;;3211:62;3208:88;;;3276:18;;:::i;:::-;3312:2;3305:22;3080:253;:::o;3338:275::-;3409:2;3403:9;3474:2;3455:13;;-1:-1:-1;;3451:27:21;3439:40;;3509:18;3494:34;;3530:22;;;3491:62;3488:88;;;3556:18;;:::i;:::-;3592:2;3585:22;3338:275;;-1:-1:-1;3338:275:21:o;3618:191::-;3686:4;3719:18;3711:6;3708:30;3705:56;;;3741:18;;:::i;:::-;-1:-1:-1;3786:1:21;3782:14;3798:4;3778:25;;3618:191::o;3814:1368::-;3936:6;3967:2;4010;3998:9;3989:7;3985:23;3981:32;3978:52;;;4026:1;4023;4016:12;3978:52;4059:9;4053:16;4092:18;4084:6;4081:30;4078:50;;;4124:1;4121;4114:12;4078:50;4147:22;;4200:4;4192:13;;4188:27;-1:-1:-1;4178:55:21;;4229:1;4226;4219:12;4178:55;4258:2;4252:9;4281:68;4297:51;4345:2;4297:51;:::i;:::-;4281:68;:::i;:::-;4383:15;;;4445:4;4484:11;;;4476:20;;4472:29;;;4414:12;;;;4371:3;4513:19;;;4510:39;;;4545:1;4542;4535:12;4510:39;4569:11;;;;4589:563;4605:6;4600:3;4597:15;4589:563;;;4685:2;4679:3;4670:7;4666:17;4662:26;4659:116;;;4729:1;4758:2;4754;4747:14;4659:116;4801:22;;:::i;:::-;4857:3;4851:10;4874:33;4899:7;4874:33;:::i;:::-;4920:22;;4984:12;;;4978:19;4962:14;;;4955:43;5021:2;5065:12;;;5059:19;5043:14;;;5036:43;5092:18;;4622:12;;;;5130;;;;4589:563;;;-1:-1:-1;5171:5:21;3814:1368;-1:-1:-1;;;;;;;3814:1368:21:o;5187:402::-;-1:-1:-1;;;;;5472:15:21;;;5454:34;;5524:15;;;;5519:2;5504:18;;5497:43;5571:2;5556:18;;5549:34;;;;5404:2;5389:18;;5187:402::o;5594:127::-;5655:10;5650:3;5646:20;5643:1;5636:31;5686:4;5683:1;5676:15;5710:4;5707:1;5700:15;5726:127;5787:10;5782:3;5778:20;5775:1;5768:31;5818:4;5815:1;5808:15;5842:4;5839:1;5832:15;5858:127;5919:10;5914:3;5910:20;5907:1;5900:31;5950:4;5947:1;5940:15;5974:4;5971:1;5964:15;5990:128;6057:9;;;6078:11;;;6075:37;;;6092:18;;:::i;6123:422::-;6212:1;6255:5;6212:1;6269:270;6290:7;6280:8;6277:21;6269:270;;;6349:4;6345:1;6341:6;6337:17;6331:4;6328:27;6325:53;;;6358:18;;:::i;:::-;6408:7;6398:8;6394:22;6391:55;;;6428:16;;;;6391:55;6507:22;;;;6467:15;;;;6269:270;;;6273:3;6123:422;;;;;:::o;6550:806::-;6599:5;6629:8;6619:80;;-1:-1:-1;6670:1:21;6684:5;;6619:80;6718:4;6708:76;;-1:-1:-1;6755:1:21;6769:5;;6708:76;6800:4;6818:1;6813:59;;;;6886:1;6881:130;;;;6793:218;;6813:59;6843:1;6834:10;;6857:5;;;6881:130;6918:3;6908:8;6905:17;6902:43;;;6925:18;;:::i;:::-;-1:-1:-1;;6981:1:21;6967:16;;6996:5;;6793:218;;7095:2;7085:8;7082:16;7076:3;7070:4;7067:13;7063:36;7057:2;7047:8;7044:16;7039:2;7033:4;7030:12;7026:35;7023:77;7020:159;;;-1:-1:-1;7132:19:21;;;7164:5;;7020:159;7211:34;7236:8;7230:4;7211:34;:::i;:::-;7281:6;7277:1;7273:6;7269:19;7260:7;7257:32;7254:58;;;7292:18;;:::i;:::-;7330:20;;6550:806;-1:-1:-1;;;6550:806:21:o;7361:131::-;7421:5;7450:36;7477:8;7471:4;7450:36;:::i;7497:127::-;7558:10;7553:3;7549:20;7546:1;7539:31;7589:4;7586:1;7579:15;7613:4;7610:1;7603:15;7629:120;7669:1;7695;7685:35;;7700:18;;:::i;:::-;-1:-1:-1;7734:9:21;;7629:120::o;7754:168::-;7827:9;;;7858;;7875:15;;;7869:22;;7855:37;7845:71;;7896:18;;:::i;8586:348::-;8816:2;8805:9;8798:21;8779:4;8836:49;8881:2;8870:9;8866:18;8499:2;8487:15;;-1:-1:-1;;;8527:4:21;8518:14;;8511:36;8572:2;8563:12;;8422:159;8836:49;8828:57;;8921:6;8916:2;8905:9;8901:18;8894:34;8586:348;;;;:::o;9103:::-;9333:2;9322:9;9315:21;9296:4;9353:49;9398:2;9387:9;9383:18;9016:2;9004:15;;-1:-1:-1;;;9044:4:21;9035:14;;9028:36;9089:2;9080:12;;8939:159;9955:251;10025:6;10078:2;10066:9;10057:7;10053:23;10049:32;10046:52;;;10094:1;10091;10084:12;10046:52;10126:9;10120:16;10145:31;10170:5;10145:31;:::i;10211:184::-;10281:6;10334:2;10322:9;10313:7;10309:23;10305:32;10302:52;;;10350:1;10347;10340:12;10302:52;-1:-1:-1;10373:16:21;;10211:184;-1:-1:-1;10211:184:21:o;12037:112::-;12069:1;12095;12085:35;;12100:18;;:::i;:::-;-1:-1:-1;12134:9:21;;12037:112::o;12154:125::-;12219:9;;;12240:10;;;12237:36;;;12253:18;;:::i;12284:274::-;-1:-1:-1;;;;;12476:32:21;;;;12458:51;;12540:2;12525:18;;12518:34;12446:2;12431:18;;12284:274::o;12563:345::-;-1:-1:-1;;;;;12783:32:21;;;;12765:51;;12847:2;12832:18;;12825:34;;;;12890:2;12875:18;;12868:34;12753:2;12738:18;;12563:345::o;17126:250::-;17211:1;17221:113;17235:6;17232:1;17229:13;17221:113;;;17311:11;;;17305:18;17292:11;;;17285:39;17257:2;17250:10;17221:113;;;-1:-1:-1;;17368:1:21;17350:16;;17343:27;17126:250::o;17381:384::-;-1:-1:-1;;;;;;17566:33:21;;17554:46;;17623:13;;17536:3;;17645:74;17623:13;17708:1;17699:11;;17692:4;17680:17;;17645:74;:::i;:::-;17739:16;;;;17757:1;17735:24;;17381:384;-1:-1:-1;;;17381:384:21:o;17770:287::-;17899:3;17937:6;17931:13;17953:66;18012:6;18007:3;18000:4;17992:6;17988:17;17953:66;:::i;:::-;18035:16;;;;;17770:287;-1:-1:-1;;17770:287:21:o;18465:271::-;18507:3;18545:5;18539:12;18572:6;18567:3;18560:19;18588:76;18657:6;18650:4;18645:3;18641:14;18634:4;18627:5;18623:16;18588:76;:::i;:::-;18718:2;18697:15;-1:-1:-1;;18693:29:21;18684:39;;;;18725:4;18680:50;;18465:271;-1:-1:-1;;18465:271:21:o;18741:440::-;18991:2;18980:9;18973:21;18954:4;19017:49;19062:2;19051:9;19047:18;8499:2;8487:15;;-1:-1:-1;;;8527:4:21;8518:14;;8511:36;8572:2;8563:12;;8422:159;19017:49;19114:9;19106:6;19102:22;19097:2;19086:9;19082:18;19075:50;19142:33;19168:6;19160;19142:33;:::i;19186:440::-;19436:2;19425:9;19418:21;19399:4;19462:49;19507:2;19496:9;19492:18;9016:2;9004:15;;-1:-1:-1;;;9044:4:21;9035:14;;9028:36;9089:2;9080:12;;8939:159;20440:374;20670:2;20659:9;20652:21;20633:4;20690:49;20735:2;20724:9;20720:18;8499:2;8487:15;;-1:-1:-1;;;8527:4:21;8518:14;;8511:36;8572:2;8563:12;;8422:159;20690:49;-1:-1:-1;;;;;20775:32:21;;;;20770:2;20755:18;;;;20748:60;;;;-1:-1:-1;20682:57:21;20440:374::o;20819:::-;21049:2;21038:9;21031:21;21012:4;21069:49;21114:2;21103:9;21099:18;9016:2;9004:15;;-1:-1:-1;;;9044:4:21;9035:14;;9028:36;9089:2;9080:12;;8939:159;21629:291;21806:2;21795:9;21788:21;21769:4;21826:45;21867:2;21856:9;21852:18;21844:6;21826:45;:::i;:::-;21818:53;;21907:6;21902:2;21891:9;21887:18;21880:34;21629:291;;;;;:::o;21925:610::-;22171:13;;22114:3;;22145;;22224:4;22251:15;;;22114:3;22294:175;22308:6;22305:1;22302:13;22294:175;;;22371:13;;22357:28;;22407:14;;;;22444:15;;;;22330:1;22323:9;22294:175;;;-1:-1:-1;;22478:21:21;;;-1:-1:-1;22515:14:21;;;;;-1:-1:-1;;;21925:610:21:o;22729:556::-;22931:2;22913:21;;;22970:3;22950:18;;;22943:31;23010:34;23005:2;22990:18;;22983:62;23081:34;23076:2;23061:18;;23054:62;23153:34;23147:3;23132:19;;23125:63;-1:-1:-1;;;23219:3:21;23204:19;;23197:46;23275:3;23260:19;;22729:556::o;23290:135::-;23329:3;23350:17;;;23347:43;;23370:18;;:::i;:::-;-1:-1:-1;23417:1:21;23406:13;;23290:135::o;23430:667::-;23495:5;23548:3;23541:4;23533:6;23529:17;23525:27;23515:55;;23566:1;23563;23556:12;23515:55;23595:6;23589:13;23621:4;23645:68;23661:51;23709:2;23661:51;:::i;23645:68::-;23747:15;;;23833:1;23829:10;;;;23817:23;;23813:32;;;23778:12;;;;23857:15;;;23854:35;;;23885:1;23882;23875:12;23854:35;23921:2;23913:6;23909:15;23933:135;23949:6;23944:3;23941:15;23933:135;;;24015:10;;24003:23;;24046:12;;;;23966;;23933:135;;;-1:-1:-1;24086:5:21;23430:667;-1:-1:-1;;;;;;23430:667:21:o;24102:614::-;24231:6;24239;24292:2;24280:9;24271:7;24267:23;24263:32;24260:52;;;24308:1;24305;24298:12;24260:52;24341:9;24335:16;24370:18;24411:2;24403:6;24400:14;24397:34;;;24427:1;24424;24417:12;24397:34;24450:72;24514:7;24505:6;24494:9;24490:22;24450:72;:::i;:::-;24440:82;;24568:2;24557:9;24553:18;24547:25;24531:41;;24597:2;24587:8;24584:16;24581:36;;;24613:1;24610;24603:12;24581:36;;24636:74;24702:7;24691:8;24680:9;24676:24;24636:74;:::i;:::-;24626:84;;;24102:614;;;;;:::o;24721:442::-;-1:-1:-1;;;;;24968:32:21;;;;24950:51;;-1:-1:-1;;;;;;25037:33:21;;;;25032:2;25017:18;;25010:61;25102:2;25087:18;;25080:34;25145:2;25130:18;;25123:34;24937:3;24922:19;;24721:442::o", + "object": "0x60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000911565b6200024c6200029336600462007e5d565b62000c17565b6200024c620002aa36600462007e5d565b62000d8d565b62000261600b81565b62000261600281565b6200024c62000e9d565b6200024c62000fc7565b6200024c620011a0565b6200024c62001385565b6200024c62001e3a565b6200024c62002280565b620003156200030f36600462007e99565b620027d4565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007ef3565b62002832565b6200024c620029eb565b62000261600a81565b6200024c6200036836600462007f2e565b62003019565b62000261600481565b6200024c62003886565b6200024c62003df3565b6200024c62004042565b6200024c62004735565b620003a96200481b565b60405190151581526020016200026f565b62000315620003cb36600462007e5d565b6200494c565b6200024c620003e236600462007f2e565b62004967565b62000261600381565b6200024c6200512f565b6200024c62005446565b62000261600081565b6200024c62005cb7565b6200024c62005f10565b600054620003a99060ff1681565b6200043a62004735565b6200044462005cb7565b60025460405173853d955acef822db058eb8505911ed77f175b99e916001600160a01b031690620004759062007e0c565b6200048292919062007f48565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007f62565b600062006123565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b991908101906200801f565b9050620005c981516000620062ac565b6018546040805163022b1d8960e21b8152905162000644926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063c9190620080fa565b6000620062ac565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200068b9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620006ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006d1919062007f62565b620006e057620006e062008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000763929190911690636f7bc9be906024015b602060405180830381865afa15801562000735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200075b919062007f62565b600162006123565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620007b7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620007e191908101906200801f565b9050620007f181516001620062ac565b62000829816000815181106200080b576200080b6200814e565b6020908102919091010151516001546001600160a01b03166200636f565b6200085e816000815181106200084357620008436200814e565b602002602001015160200151678ac7230489e80000620062ac565b6200088c816000815181106200087857620008786200814e565b6020026020010151604001516000620062ac565b6018546040805163022b1d8960e21b815290516200090e926001600160a01b0316916308ac76249160048083019260209291908290030181865afa158015620008d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008ff9190620080fa565b678ac7230489e80000620062ac565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620009589390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562000978573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099e919062007f62565b620009ad57620009ad62008138565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620009e9929190911690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000a33573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000a5d91908101906200801f565b905062000a6d81516001620062ac565b62000a87816000815181106200080b576200080b6200814e565b62000aa1816000815181106200084357620008436200814e565b62000abb816000815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362000af8939082169291169060040162007f48565b6020604051808303816000875af115801562000b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b3e919062007f62565b62000b4d5762000b4d62008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000b89929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000bdd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c0791908101906200801f565b90506200090e81516000620062ac565b600082841162000c335762000c2d84846200817a565b62000c3f565b62000c3f83856200817a565b90508060000362000c505750505050565b6000841562000c60578462000c62565b835b9050600062000c7384600a62008291565b62000c8b906b033b2e3c9fd0803ce8000000620082b5565b8262000ca46b033b2e3c9fd0803ce800000086620082cc565b62000cb09190620082b5565b1090508062000d8557604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528660405162000d4b9190620082ee565b60405180910390a16000805160206200a7168339815191528560405162000d73919062008327565b60405180910390a162000d8562006469565b505050505050565b600082841162000da95762000da384846200817a565b62000db5565b62000db583856200817a565b9050818111158062000e9657604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528560405162000e5c9190620082ee565b60405180910390a16000805160206200a7168339815191528460405162000e84919062008327565b60405180910390a162000e9662006469565b5050505050565b601854604080516385d4cad360e01b8152905162000f2b926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000eea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f10919062008352565b73853d955acef822db058eb8505911ed77f175b99e6200636f565b6018546040805163f02c6d8f60e01b8152905162000f78926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200100f93908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af11580156200102f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001055919062007f62565b62001064576200106462008138565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152620010b9929190911690630bca8bcd906024015b602060405180830381865afa15801562000616573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200112e919062007f62565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200116b929190911690630bca8bcd906024016200109b565b601854604051630bca8bcd60e01b81526000600482015262000fc5916001600160a01b031690630bca8bcd906024016200109b565b6018546040805163f02c6d8f60e01b81529051620011ed926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200123a926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001289573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012af919062007f62565b620012be57620012be62008138565b6018546040805163f02c6d8f60e01b8152905162001338926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200130b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013319190620080fa565b42620062ac565b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000735573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905169d3c21bcecceda1000000926200141a926001600160a01b03909116916385d4cad3916004808201926020929091908290030181865afa158015620013e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001407919062008352565b6018546001600160a01b0316836200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200146f57600080fd5b505af115801562001484573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc9450620014c8939283169290911690869060040162008114565b6020604051808303816000875af1158015620014e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200150e919062007f62565b6200151d576200151d62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200156c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001592919062007f62565b620015a157620015a162008138565b601854604080516385d4cad360e01b8152905162001646926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001614919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024016200109b565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001695573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016bb919062007f62565b620016ca57620016ca62008138565b601854604080516385d4cad360e01b81529051620017ce926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001717573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200173d919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001787573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017ad9190620080fa565b6064620017bc84600c620082cc565b620017c89190620082b5565b620062ac565b620017dc6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200182b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001851919062007f62565b62001860576200186062008138565b601854604080516385d4cad360e01b8152905162001952926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620018ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018d3919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200191d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019439190620080fa565b6064620017bc846014620082cc565b620019606224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620019af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019d5919062007f62565b620019e457620019e462008138565b601854604080516385d4cad360e01b8152905162001ad6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a57919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001aa1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ac79190620080fa565b6064620017bc84601c620082cc565b62001ae4626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b33573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b59919062007f62565b62001b685762001b6862008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001bb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bdb919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c4b9190620080fa565b6064620017bc846034620082cc565b62001c6862dd7c0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001cb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cdd919062007f62565b62001cec5762001cec62008138565b601854604080516385d4cad360e01b8152905162001dd7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001d39573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d5f919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001daa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001dd09190620080fa565b82620062ac565b6000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e2557600080fd5b505af115801562000e96573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001e869291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001ea6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ecc919062007f62565b1562001edc5762001edc62008138565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001f289291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001f48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f6e919062007f62565b1562001f7e5762001f7e62008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001fca9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001fea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002010919062007f62565b1562002020576200202062008138565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562002078573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200209e919062008352565b6040518363ffffffff1660e01b8152600401620020bd92919062007f48565b6020604051808303816000875af1158015620020dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002103919062007f62565b1562002113576200211362008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200214c9291169060009060040162007f48565b6020604051808303816000875af11580156200216c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002192919062007f62565b15620021a257620021a262008138565b601854620021df9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6200656d565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200222b9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af11580156200224b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002271919062007f62565b62000fc55762000fc562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620022c79390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620022e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200230d919062007f62565b6200231c576200231c62008138565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002359939082169291169060040162007f48565b6020604051808303816000875af115801562002379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200239f919062007f62565b15620023af57620023af62008138565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620023e792911690849060040162007f48565b6020604051808303816000875af115801562002407573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200242d919062007f62565b156200243d576200243d62008138565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200247a939082169291169060040162007f48565b6020604051808303816000875af11580156200249a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024c0919062007f62565b620024cf57620024cf62008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200252457600080fd5b505af115801562002539573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620025d957600080fd5b505af1158015620025ee573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200263c57600080fd5b505af115801562002651573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620026f157600080fd5b505af115801562002706573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200275257600080fd5b505af115801562002767573d6000803e3d6000fd5b505050506000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620027b957600080fd5b505af1158015620027ce573d6000803e3d6000fd5b50505050565b600084158015620027e3575081155b15620027f2575060006200282a565b838303620028025750816200282a565b836200280f81856200817a565b6200281b908762008372565b62002827919062008389565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562002897573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028bd9190620080fa565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620028f09089908790602001620083a4565b60405160208183030381529060405280519060200120878562002914919062008389565b6040516001600160e01b031960e086901b1681526200293993929190600401620083bd565b600060405180830381600087803b1580156200295457600080fd5b505af115801562002969573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000d859350861691506370a0823190602401602060405180830381865afa158015620029b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029df9190620080fa565b620017c8868462008389565b601854604080516385d4cad360e01b8152905162002a7c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a5e919062008352565b6018546001600160a01b03166a0422ca8b0a00a4250000006200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562002ad157600080fd5b505af115801562002ae6573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002b8657600080fd5b505af115801562002b9b573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002bf057600080fd5b505af115801562002c05573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002c5393928316929091169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562002c73573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c99919062007f62565b62002ca85762002ca862008138565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a6d68339815191529063f28dceb390608401600060405180830381600087803b15801562002d3257600080fd5b505af115801562002d47573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d9c57600080fd5b505af115801562002db1573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002e04573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e2a919062007f62565b62002e395762002e3962008138565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002e8a57600080fd5b505af115801562002e9f573d6000803e3d6000fd5b5050505062002eb26301dfe20062006581565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002f0357600080fd5b505af115801562002f18573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002faf57600080fd5b505af115801562002fc4573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200275257600080fd5b6200303b8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062003095601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620013e1573d6000803e3d6000fd5b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b158015620030ea57600080fd5b505af1158015620030ff573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062003143939283169290911690869060040162008114565b6020604051808303816000875af115801562003163573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003189919062007f62565b62003198576200319862008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620031e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200320d919062007f62565b6200321c576200321c62008138565b601854604080516385d4cad360e01b8152905162003269926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032de919062007f62565b620032ed57620032ed62008138565b601854604080516385d4cad360e01b81529051620033fa926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003360919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620033aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033d09190620080fa565b6064620033df84600c620082cc565b620033eb9190620082b5565b670de0b6b3a764000062000d8d565b620034086224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003457573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200347d919062007f62565b6200348c576200348c62008138565b601854604080516385d4cad360e01b815290516200357e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034ff919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003549573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200356f9190620080fa565b6064620033df846014620082cc565b6200358c6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003601919062007f62565b62003610576200361062008138565b601854604080516385d4cad360e01b8152905162003702926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200365d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003683919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036f39190620080fa565b6064620033df84601c620082cc565b62003710626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200375f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003785919062007f62565b62003794576200379462008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620037e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003807919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003851573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620038779190620080fa565b6064620033df846034620082cc565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038cd9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620038ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003913919062007f62565b1562003923576200392362008138565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262003965929116908490678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003985573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620039ab919062007f62565b15620039bb57620039bb62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003a029390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003a22573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003a48919062007f62565b62003a575762003a5762008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562003aac57600080fd5b505af115801562003ac1573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003b5857600080fd5b505af115801562003b6d573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003bb29290911690678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003bcd57600080fd5b505af115801562003be2573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003c8257600080fd5b505af115801562003c97573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003cd890600090678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003cf357600080fd5b505af115801562003d08573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003da057600080fd5b505af115801562003db5573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b4579350620027379290911690600090600401620083a4565b60185462003e2a9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ec39073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003e8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003eb39190620080fa565b620017c8620f42406064620082cc565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003f0d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003f599291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562003f79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f9f919062007f62565b62003fae5762003fae62008138565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ff89073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000fc59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003e6f565b6000604051620040529062007e1a565b604051809103906000f0801580156200406f573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc93620040b8938116921690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620040d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620040fe919062007f62565b6200410d576200410d62008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200415593908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af115801562004175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200419b919062007f62565b620041aa57620041aa62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620041ed9291169085906801a055690d9db800009060040162008114565b6020604051808303816000875af11580156200420d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004233919062007f62565b62004242576200424262008138565b6018546001546040516337bde4df60e11b81526001600160a01b0391821660048201526200427e929190911690636f7bc9be9060240162000717565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620042ba929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b038381166004830152620042f0921690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200433a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200436491908101906200801f565b90506200437481516003620062ac565b6200438e816000815181106200080b576200080b6200814e565b620043a8816000815181106200084357620008436200814e565b620043c2816000815181106200087857620008786200814e565b620043fa81600181518110620043dc57620043dc6200814e565b6020908102919091010151516003546001600160a01b03166200636f565b62004430816001815181106200441457620044146200814e565b6020026020010151602001516801158e460913d00000620062ac565b6200444a816001815181106200087857620008786200814e565b62004477816002815181106200446457620044646200814e565b602002602001015160000151836200636f565b620044ad816002815181106200449157620044916200814e565b6020026020010151602001516801a055690d9db80000620062ac565b620044c7816002815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004504939082169291169060040162007f48565b6020604051808303816000875af115801562004524573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200454a919062007f62565b62004559576200455962008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262004595929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620045d1929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b03848116600483015262004607921690636f7bc9be9060240162000717565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200465b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200468591908101906200801f565b90506200469581516002620062ac565b620046af816000815181106200446457620044646200814e565b620046c9816000815181106200449157620044916200814e565b620046e3816000815181106200087857620008786200814e565b620046fd81600181518110620043dc57620043dc6200814e565b62004717816001815181106200441457620044146200814e565b62004731816001815181106200087857620008786200814e565b5050565b604051620047439062007e1a565b604051809103906000f08015801562004760573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b03929092169190911790556040516200478f9062007e1a565b604051809103906000f080158015620047ac573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620047db9062007e1a565b604051809103906000f080158015620047f8573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200483c5750600054610100900460ff1690565b60006000805160206200a6d68339815191523b1562004947576040516000906000805160206200a6d6833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620048a99083906519985a5b195960d21b90602001620083a4565b60408051601f1981840301815290829052620048c992916020016200840d565b60408051601f1981840301815290829052620048e59162008440565b6000604051808303816000865af19150503d806000811462004924576040519150601f19603f3d011682016040523d82523d6000602084013e62004929565b606091505b509150508080602001905181019062004943919062007f62565b9150505b919050565b60006200495d8484846000620027d4565b90505b9392505050565b620049898169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062004a22601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620049e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a09919062008352565b6018546001600160a01b0316620021d9846003620082cc565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004a71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a97919062007f62565b62004aa65762004aa662008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004ae59390821692911690869060040162008114565b6020604051808303816000875af115801562004b05573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004b2b919062007f62565b62004b3a5762004b3a62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004b799390821692911690869060040162008114565b6020604051808303816000875af115801562004b99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bbf919062007f62565b62004bce5762004bce62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262004c08929116908490869060040162008114565b6020604051808303816000875af115801562004c28573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c4e919062007f62565b62004c5d5762004c5d62008138565b62004c6b6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004cba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ce0919062007f62565b62004cef5762004cef62008138565b601854604080516385d4cad360e01b8152905162004d3c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b62004d4a62cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004dbf919062007f62565b62004dce5762004dce62008138565b601854604080516385d4cad360e01b8152905162004ec0926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e41919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004e8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004eb19190620080fa565b6064620033df84603c620082cc565b62004ece62b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004f1d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004f43919062007f62565b62004f525762004f5262008138565b601854604080516385d4cad360e01b8152905162004ff7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004f9f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fc5919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b620050066301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005055573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200507b919062007f62565b6200508a576200508a62008138565b601854604080516385d4cad360e01b815290516200090e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620050d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620050fd919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc936200517993918316921690869060040162008114565b6020604051808303816000875af115801562005199573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620051bf919062007f62565b620051ce57620051ce62008138565b6018546003546040516388a772ef60e01b81526001600160a01b0391821660048201526200520a9291909116906388a772ef9060240162001d8c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200527f919062007f62565b6200528e576200528e62008138565b6200529c626ebe0062006581565b60006064620052ad836008620082cc565b620052b99190620082b5565b620052c6906003620082cc565b6064620052d584600c620082cc565b620052e19190620082b5565b620052ed919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200532a92911690630bca8bcd9060240162001d8c565b62005339630127500062006581565b606462005348836008620082cc565b620053549190620082b5565b6200536190600b620082cc565b60646200537084600c620082cc565b6200537c9190620082b5565b62005388919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620053c592911690630bca8bcd9060240162001d8c565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004731929190911690630bca8bcd90602401602060405180830381865afa15801562005419573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200543f9190620080fa565b83620062ac565b601854604080516385d4cad360e01b8152905162005493926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620054e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005508919062007f62565b62005517576200551762008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362005560939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562005580573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055a6919062007f62565b620055b557620055b562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620055fe939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af11580156200561e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005644919062007f62565b62005653576200565362008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200569792911690849069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af1158015620056b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056dd919062007f62565b620056ec57620056ec62008138565b620056fa6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005749573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200576f919062007f62565b6200577e576200577e62008138565b601854604080516385d4cad360e01b8152905162005872926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620057cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057f1919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200583b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058619190620080fa565b691969368974c05b000000620062ac565b6200588062cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620058cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058f5919062007f62565b62005904576200590462008138565b601854604080516385d4cad360e01b81529051620059f8926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005951573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005977919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620059c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e79190620080fa565b697f0e10af47c1c7000000620062ac565b62005a0662b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005a55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a7b919062007f62565b62005a8a5762005a8a62008138565b601854604080516385d4cad360e01b8152905162005b7f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005ad7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005afd919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005b48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005b6e9190620080fa565b69d3c21bcecceda1000000620062ac565b62005b8e6301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005bdd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c03919062007f62565b62005c125762005c1262008138565b601854604080516385d4cad360e01b8152905162000fc5926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005c5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c85919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005b2a565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005f5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005f85919062007f62565b1562005f955762005f9562008138565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005fe4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200600a919062007f62565b156200601a576200601a62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562006069573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200608f919062007f62565b6200609e576200609e62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620060ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006113919062007f62565b1562000fc55762000fc562008138565b8015158215151462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200619a9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620061ed576040518060400160405280600581526020016466616c736560d81b8152506200620b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200621a91906200848c565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200626d576040518060400160405280600581526020016466616c736560d81b8152506200628b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200629a9190620084cb565b60405180910390a16200473162006469565b80821462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200631f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a71683398151915281604051620063479190620082ee565b60405180910390a16000805160206200a716833981519152826040516200629a919062008327565b806001600160a01b0316826001600160a01b03161462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620063f79060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620064309190620084f6565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f826040516200629a91906200853b565b6000805160206200a6d68339815191523b156200655c576040516000906000805160206200a6d6833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620064d79083906519985a5b195960d21b90600190602001620083bd565b60408051601f1981840301815290829052620064f792916020016200840d565b60408051601f1981840301815290829052620065139162008440565b6000604051808303816000865af19150503d806000811462006552576040519150601f19603f3d011682016040523d82523d6000602084013e62006557565b606091505b505050505b6000805461ff001916610100179055565b6200657c83838360006200661d565b505050565b6000805160206200a6d683398151915263e5d6bf02620065a2834262008389565b6040518263ffffffff1660e01b8152600401620065c191815260200190565b600060405180830381600087803b15801562001e2557600080fd5b6000620065eb84848462006826565b9050620049606040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262006a1d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620066739162008440565b6000604051808303816000865af19150503d8060008114620066b2576040519150601f19603f3d011682016040523d82523d6000602084013e620066b7565b606091505b50915050600081806020019051810190620066d39190620080fa565b90506200670d846200670687620066ff6370a0823160e01b620066f8600a8d62006abd565b9062006ae7565b9062006b05565b9062006b2e565b821562000d855760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006758919062008440565b6000604051808303816000865af19150503d806000811462006797576040519150601f19603f3d011682016040523d82523d6000602084013e6200679c565b606091505b50915050600081806020019051810190620067b89190620080fa565b905082861015620067e357620067cf86846200817a565b620067db90826200817a565b9050620067fe565b620067ef83876200817a565b620067fb908262008389565b90505b6200681c81620067066318160ddd60e01b620066f8600a8d62006abd565b5050505050505050565b600081831115620068a45760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620068b55750818411155b15620068c357508262004960565b6000620068d184846200817a565b620068de90600162008389565b905060038511158015620068f157508481115b156200690c5762006903858562008389565b91505062004960565b6200691b60036000196200817a565b851015801562006937575062006934856000196200817a565b81115b1562006957576200694b856000196200817a565b6200690390846200817a565b82851115620069b95760006200696e84876200817a565b905060006200697e838362008372565b905080600003620069955784935050505062004960565b6001620069a3828862008389565b620069af91906200817a565b9350505062006a15565b8385101562006a15576000620069d086866200817a565b90506000620069e0838362008372565b905080600003620069f75785935050505062004960565b62006a0381866200817a565b62006a1090600162008389565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162006a4992919062008566565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162006a80919062008440565b600060405180830381855afa9150503d806000811462000d85576040519150601f19603f3d011682016040523d82523d6000602084013e62000d85565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c17905560008262006ade565b6002820180546001810182556000918252602082206001600160a01b0384169101558262006ade565b620047318282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b946000939092909183018282801562006ba757602002820191906000526020600020905b81548152602001906001019080831162006b92575b5050505050905060008362006bbc8362006e9b565b60405160200162006bcf9291906200840d565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006c239186918891016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006c5e5762006c5c8762006f4f565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006c9f9187918991016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ce6919062008440565b600060405180830381855afa9150503d806000811462006d23576040519150601f19603f3d011682016040523d82523d6000602084013e62006d28565b606091505b50915062006d4590508162006d3f886020620082cc565b62006f5c565b604051630667f9d760e41b8152909250600091506000805160206200a6d68339815191529063667f9d709062006d82908b908790600401620083a4565b602060405180830381865afa15801562006da0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006dc69190620080fa565b905080821462006dea5760405162461bcd60e51b81526004016200689b90620085c6565b6040516370ca10bb60e01b81526000805160206200a6d6833981519152906370ca10bb9062006e22908b9087908e90600401620083bd565b600060405180830381600087803b15801562006e3d57600080fd5b505af115801562006e52573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006e8760028b01600062007e28565b896004016000905550505050505050505050565b606060008251602062006eaf9190620082cc565b67ffffffffffffffff81111562006eca5762006eca62007f82565b6040519080825280601f01601f19166020018201604052801562006ef5576020820181803683370190505b50905060005b835181101562006f4857600084828151811062006f1c5762006f1c6200814e565b60200260200101519050808260200260200184015250808062006f3f9062008661565b91505062006efb565b5092915050565b600062006ae18262006fe6565b6000806000602085511162006f7357845162006f76565b60205b905060005b8181101562006fdc5762006f91816008620082cc565b8662006f9e838862008389565b8151811062006fb15762006fb16200814e565b01602001516001600160f81b031916901c92909217918062006fd38162008661565b91505062006f7b565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156200705857602002820191906000526020600020905b81548152602001906001019080831162007043575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905195965094919350620070a4925085918791016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562007143576001600160a01b0384166000908152602087815260408083206001600160e01b03198716845282528083209051909291620071139185918791016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b600083620071518362007cdf565b604051602001620071649291906200840d565b60405160208183030381529060405290506000805160206200a6f683398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620071c357600080fd5b505af1158015620071d8573d6000803e3d6000fd5b50505050600080866001600160a01b031683604051620071f9919062008440565b600060405180830381855afa9150503d806000811462007236576040519150601f19603f3d011682016040523d82523d6000602084013e6200723b565b606091505b5091506200725890508162007252876020620082cc565b62007d8c565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a6d6833981519152906365bc9481906024016000604051808303816000875af1158015620072b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620072df9190810190620086ea565b5090508051600103620075a65760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d7089846000815181106200732657620073266200814e565b60200260200101516040518363ffffffff1660e01b81526004016200734d929190620083a4565b602060405180830381865afa1580156200736b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620073919190620080fa565b905080620073f5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620073d157620073d16200814e565b602002602001015160001c604051620073ec929190620083a4565b60405180910390a15b808314620074175760405162461bcd60e51b81526004016200689b90620085c6565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200744f9291906200858a565b60405160208183030381529060405280519060200120856000815181106200747b576200747b6200814e565b602002602001015160001c60405162007498949392919062008755565b60405180910390a181600081518110620074b657620074b66200814e565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262007501918a918c91016200858a565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200756b918a918c91016200858a565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007b62565b60018151111562007af15760005b815181101562007aea5760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d708a858581518110620075f757620075f76200814e565b60200260200101516040518363ffffffff1660e01b81526004016200761e929190620083a4565b602060405180830381865afa1580156200763c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620076629190620080fa565b905080620076c5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110620076a157620076a16200814e565b602002602001015160001c604051620076bc929190620083a4565b60405180910390a15b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8a858581518110620076fc57620076fc6200814e565b602002602001015161133760f01b6040518463ffffffff1660e01b81526004016200772a93929190620083bd565b600060405180830381600087803b1580156200774557600080fd5b505af11580156200775a573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200777c919062008440565b600060405180830381855afa9150503d8060008114620077b9576040519150601f19603f3d011682016040523d82523d6000602084013e620077be565b606091505b509092509050620077d681620072528b6020620082cc565b9550818015620077ea575061133760f01b86145b1562007a3d577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620078289291906200858a565b604051602081830303815290604052805190602001208888815181106200785357620078536200814e565b602002602001015160001c60405162007870949392919062008755565b60405180910390a18484815181106200788d576200788d6200814e565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620078d8918d918f91016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620079659291906200858a565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c878781518110620079d757620079d76200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a0093929190620083bd565b600060405180830381600087803b15801562007a1b57600080fd5b505af115801562007a30573d6000803e3d6000fd5b5050505050505062007aea565b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c87878151811062007a745762007a746200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a9d93929190620083bd565b600060405180830381600087803b15801562007ab857600080fd5b505af115801562007acd573d6000803e3d6000fd5b50505050505050808062007ae19062008661565b915050620075b4565b5062007b62565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200689b565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929162007ba69188918a91016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007c355760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200689b565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007c6660028a01600062007e28565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007cac9188918a91016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007cf39190620082cc565b67ffffffffffffffff81111562007d0e5762007d0e62007f82565b6040519080825280601f01601f19166020018201604052801562007d39576020820181803683370190505b50905060005b835181101562006f4857600084828151811062007d605762007d606200814e565b60200260200101519050808260200260200184015250808062007d839062008661565b91505062007d3f565b6000806000602085511162007da357845162007da6565b60205b905060005b8181101562006fdc5762007dc1816008620082cc565b8662007dce838862008389565b8151811062007de15762007de16200814e565b01602001516001600160f81b031916901c92909217918062007e038162008661565b91505062007dab565b61196d806200878683390190565b6105e3806200a0f383390190565b50805460008255906000526020600020908101906200090e91905b8082111562007e59576000815560010162007e43565b5090565b60008060006060848603121562007e7357600080fd5b505081359360208301359350604090920135919050565b80151581146200090e57600080fd5b6000806000806080858703121562007eb057600080fd5b843593506020850135925060408501359150606085013562007ed28162007e8a565b939692955090935050565b6001600160a01b03811681146200090e57600080fd5b60008060006060848603121562007f0957600080fd5b83359250602084013562007f1d8162007edd565b929592945050506040919091013590565b60006020828403121562007f4157600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007f7557600080fd5b8151620049608162007e8a565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007fbe5762007fbe62007f82565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007ff05762007ff062007f82565b604052919050565b600067ffffffffffffffff82111562008015576200801562007f82565b5060051b60200190565b600060208083850312156200803357600080fd5b825167ffffffffffffffff8111156200804b57600080fd5b8301601f810185136200805d57600080fd5b8051620080746200806e8262007ff8565b62007fc4565b818152606091820283018401918482019190888411156200809457600080fd5b938501935b83851015620080ee5780858a031215620080b35760008081fd5b620080bd62007f98565b8551620080ca8162007edd565b81528587015187820152604080870151908201528352938401939185019162008099565b50979650505050505050565b6000602082840312156200810d57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000828210156200818f576200818f62008164565b500390565b600181815b80851115620081d5578160001904821115620081b957620081b962008164565b80851615620081c757918102915b93841c939080029062008199565b509250929050565b600082620081ee5750600162006ae1565b81620081fd5750600062006ae1565b8160018114620082165760028114620082215762008241565b600191505062006ae1565b60ff84111562008235576200823562008164565b50506001821b62006ae1565b5060208310610133831016604e8410600b841016171562008266575081810a62006ae1565b62008272838362008194565b806000190482111562008289576200828962008164565b029392505050565b600062006ade8383620081dd565b634e487b7160e01b600052601260045260246000fd5b600082620082c757620082c76200829f565b500490565b6000816000190483118215151615620082e957620082e962008164565b500290565b6040815260006200831960408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200831960408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200836557600080fd5b8151620049608162007edd565b6000826200838457620083846200829f565b500690565b600082198211156200839f576200839f62008164565b500190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620083fb578181015183820152602001620083e1565b83811115620027ce5750506000910152565b6001600160e01b031983168152815160009062008432816004850160208701620083de565b919091016004019392505050565b6000825162008454818460208701620083de565b9190910192915050565b6000815180845262008478816020860160208601620083de565b601f01601f19169290920160200192915050565b604081526000620084b760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200282a81856200845e565b604081526000620084b760408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200852160408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200852160408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200857b60408301856200845e565b90508260208301529392505050565b825160009082906020808701845b83811015620085b65781518552938201939082019060010162008598565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b60006001820162008676576200867662008164565b5060010190565b600082601f8301126200868f57600080fd5b81516020620086a26200806e8362007ff8565b82815260059290921b84018101918181019086841115620086c257600080fd5b8286015b84811015620086df5780518352918301918301620086c6565b509695505050505050565b60008060408385031215620086fe57600080fd5b825167ffffffffffffffff808211156200871757600080fd5b62008725868387016200867d565b935060208501519150808211156200873c57600080fd5b506200874b858286016200867d565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f00330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220726833ddff7edfeffbe5c061c7811a419087855e87d5b044001d8511efb20c6c64736f6c634300080f0033", + "sourceMap": "208:21101:27:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;277:210;;;:::i;:::-;;4921:861;;;:::i;1745:36:26:-;;1780:1;1745:36;;;;;186:4:28;174:17;;;156:36;;144:2;129:18;1745:36:26;;;;;;;;7044:881:27;;;:::i;4740:583:26:-;;;;;;:::i;:::-;;:::i;5374:479::-;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;523:207:27;;;:::i;10097:627::-;;;:::i;1481:443::-;;;:::i;13092:1902::-;;;:::i;2019:967::-;;;:::i;5880:1102::-;;;:::i;6028:291:26:-;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:28;;;1232:2;1217:18;6028:291:26;1098:177:28;2262:45:26;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;11947:1092:27:-;;;:::i;2092:45:26:-;;2135:2;2092:45;;17163:1984:27;;;;;;:::i;:::-;;:::i;2005:36:26:-;;2040:1;2005:36;;3699:1165:27;;;:::i;3046:563::-;;;:::i;8020:1974::-;;;:::i;3312:184:26:-;;;:::i;1819:584:0:-;;;:::i;:::-;;;2154:14:28;;2147:22;2129:41;;2117:2;2102:18;1819:584:0;1989:187:28;5861:159:26;;;;;;:::i;:::-;;:::i;19211:2093:27:-;;;;;;:::i;:::-;;:::i;1916:36:26:-;;1951:1;1916:36;;10774:1093:27;;;:::i;15044:2052::-;;;:::i;1655:36:26:-;;1690:1;1655:36;;3620:551;;;:::i;825:596:27:-;;;:::i;1572:26:0:-;;;;;;;;;277:210:27;312:14;:12;:14::i;:::-;337:13;:11;:13::i;:::-;464:3;;409:70;;1136:42:26;;-1:-1:-1;;;;;464:3:27;;409:70;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;399:7:27;:80;;-1:-1:-1;;;;;;399:80:27;-1:-1:-1;;;;;399:80:27;;;;;;;;;;277:210::o;4921:861::-;5027:7;;;5053:3;5027:31;;-1:-1:-1;;;5027:31:27;;-1:-1:-1;;;;;5053:3:27;;;5027:31;;;2636:51:28;5018:53:27;;5027:7;;;;;:17;;2609:18:28;;5027:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5065:5;5018:8;:53::i;:::-;5118:7;;:28;;;-1:-1:-1;;;5118:28:27;;;;5082:33;;-1:-1:-1;;;;;5118:7:27;;:26;;:28;;;;;5082:33;;5118:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5118:28:27;;;;;;;;;;;;:::i;:::-;5082:64;;5157:36;5166:7;:14;5191:1;5157:8;:36::i;:::-;5213:7;;:28;;;-1:-1:-1;;;5213:28:27;;;;5204:41;;-1:-1:-1;;;;;5213:7:27;;:26;;:28;;;;;;;;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5243:1;5204:8;:41::i;:::-;5297:3;;5325:7;;5297:3;5343;5297:61;;-1:-1:-1;;;5297:61:27;;-1:-1:-1;;;;;5297:3:27;;;;:19;;:61;;5325:7;;;;5343:3;;;5349:8;;5297:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5290:69;;;;:::i;:::-;5411:7;;;5437:3;5411:31;;-1:-1:-1;;;5411:31:27;;-1:-1:-1;;;;;5437:3:27;;;5411:31;;;2636:51:28;5402:52:27;;5411:7;;;;;:17;;2609:18:28;;5411:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5449:4;5402:8;:52::i;:::-;5475:7;;;;;;;;;-1:-1:-1;;;;;5475:7:27;-1:-1:-1;;;;;5475:26:27;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5475:28:27;;;;;;;;;;;;:::i;:::-;5465:38;;5514:37;5523:7;:14;5549:1;5514:8;:37::i;:::-;5562:48;5571:7;5579:1;5571:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;5605:3;;-1:-1:-1;;;;;5605:3:27;5562:8;:48::i;:::-;5621:44;5630:7;5638:1;5630:10;;;;;;;;:::i;:::-;;;;;;;:23;;;5656:8;5621;:44::i;:::-;5676:37;5685:7;5693:1;5685:10;;;;;;;;:::i;:::-;;;;;;;:24;;;5711:1;5676:8;:37::i;:::-;5735:7;;:28;;;-1:-1:-1;;;5735:28:27;;;;5726:48;;-1:-1:-1;;;;;5735:7:27;;:26;;:28;;;;;;;;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5765:8;5726;:48::i;:::-;4978:804;4921:861::o;7044:881::-;7176:3;;7204:7;;7176:3;7222;7176:61;;-1:-1:-1;;;7176:61:27;;-1:-1:-1;;;;;7176:3:27;;;;:19;;:61;;7204:7;;;;7222:3;;;7228:8;;7176:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7169:69;;;;:::i;:::-;7289:7;;;7315:3;7289:31;;-1:-1:-1;;;7289:31:27;;-1:-1:-1;;;;;7315:3:27;;;7289:31;;;2636:51:28;7280:52:27;;7289:7;;;;;:17;;2609:18:28;;7289:31:27;2490:203:28;7280:52:27;7379:7;;:28;;;-1:-1:-1;;;7379:28:27;;;;7343:33;;-1:-1:-1;;;;;7379:7:27;;:26;;:28;;;;;7343:33;;7379:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7379:28:27;;;;;;;;;;;;:::i;:::-;7343:64;;7418:36;7427:7;:14;7452:1;7418:8;:36::i;:::-;7465:48;7474:7;7482:1;7474:10;;;;;;;;:::i;7465:48::-;7524:44;7533:7;7541:1;7533:10;;;;;;;;:::i;7524:44::-;7579:37;7588:7;7596:1;7588:10;;;;;;;;:::i;7579:37::-;7670:3;;7701:7;;7670:3;7719;7670:54;;-1:-1:-1;;;7670:54:27;;-1:-1:-1;;;;;7670:3:27;;;;:22;;:54;;7701:7;;;;7719:3;;;7670:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7663:62;;;;:::i;:::-;7777:7;;;7803:3;7777:31;;-1:-1:-1;;;7777:31:27;;-1:-1:-1;;;;;7803:3:27;;;7777:31;;;2636:51:28;7768:53:27;;7777:7;;;;;:17;;2609:18:28;;7777:31:27;2490:203:28;7768:53:27;7842:7;;;;;;;;;-1:-1:-1;;;;;7842:7:27;-1:-1:-1;;;;;7842:26:27;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7842:28:27;;;;;;;;;;;;:::i;:::-;7832:38;;7881:36;7890:7;:14;7915:1;7881:8;:36::i;4740:583:26:-;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:26;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;8325:21:28;;;8382:2;8362:18;;;8355:30;8421:34;8416:2;8401:18;;8394:62;-1:-1:-1;;;8487:3:28;8472:19;;8465:51;8583:4;8568:20;;8561:36;;;5095:80:26;;-1:-1:-1;;;;;;;;;;;5095:80:26;;;;8548:3:28;5095:80:26;;;-1:-1:-1;;;;;;;;;;;5224:4:26;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:26;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:26;;;;;5585:261;;5617:88;;;9854:21:28;;;9911:2;9891:18;;;9884:30;9950:34;9945:2;9930:18;;9923:62;10022:26;10016:3;10001:19;;9994:55;10116:4;10101:20;;10094:36;;;5617:88:26;;-1:-1:-1;;;;;;;;;;;5617:88:26;;;;10081:3:28;5617:88:26;;;-1:-1:-1;;;;;;;;;;;5754:4:26;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:26;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;523:207:27:-;585:7;;:20;;;-1:-1:-1;;;585:20:27;;;;576:42;;-1:-1:-1;;;;;585:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1136:42:26;576:8:27;:42::i;:::-;638:7;;:26;;;-1:-1:-1;;;638:26:27;;;;629:39;;-1:-1:-1;;;;;638:7:27;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;629:39;688:7;;:24;;;-1:-1:-1;;;688:24:27;;;;679:43;;-1:-1:-1;;;;;688:7:27;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;679:43;523:207::o;10097:627::-;10208:3;;10236:7;;10254:3;;10208:61;;-1:-1:-1;;;10208:61:27;;-1:-1:-1;;;;;10208:3:27;;;;:19;;:61;;10236:7;;;;10254:3;;;10260:8;;10208:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10201:69;;;;:::i;:::-;10361:7;;10394:3;;10361:38;;-1:-1:-1;;;10361:38:27;;-1:-1:-1;;;;;10394:3:27;;;10361:38;;;2636:51:28;10352::27;;10361:7;;;;;:24;;2609:18:28;;10361:38:27;;;;;;;;;;;;;;;;;;;;;;;10352:51;10443:3;;10473:7;;10443:39;;-1:-1:-1;;;10443:39:27;;-1:-1:-1;;;;;10473:7:27;;;10443:39;;;2636:51:28;10443:3:27;;;:21;;2609:18:28;;10443:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10572:7:27;;;10605:3;10572:38;;-1:-1:-1;;;10572:38:27;;-1:-1:-1;;;;;10605:3:27;;;10572:38;;;2636:51:28;10563::27;;10572:7;;;;;:24;;2609:18:28;;10572:38:27;2490:203:28;10563:51:27;10676:7;;:36;;-1:-1:-1;;;10676:36:27;;:7;:36;;;2636:51:28;10667:49:27;;-1:-1:-1;;;;;10676:7:27;;:24;;2609:18:28;;10676:36:27;2490:203:28;1481:443:27;1589:7;;:26;;;-1:-1:-1;;;1589:26:27;;;;1580:39;;-1:-1:-1;;;;;1589:7:27;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;1580:39;1639:7;;:24;;;-1:-1:-1;;;1639:24:27;;;;1630:43;;-1:-1:-1;;;;;1639:7:27;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;1630:43;1727:3;;1757:7;;1727:39;;-1:-1:-1;;;1727:39:27;;-1:-1:-1;;;;;1757:7:27;;;1727:39;;;2636:51:28;1727:3:27;;;:21;;2609:18:28;;1727:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1720:47;;;;:::i;:::-;1819:7;;:26;;;-1:-1:-1;;;1819:26:27;;;;1810:53;;-1:-1:-1;;;;;1819:7:27;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1847:15;1810:8;:53::i;:::-;1883:7;;:24;;;-1:-1:-1;;;1883:24:27;;;;1874:42;;-1:-1:-1;;;;;1883:7:27;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;13092:1902;13261:7;;:20;;;-1:-1:-1;;;13261:20:27;;;;13169:15;;13256:53;;-1:-1:-1;;;;;13261:7:27;;;;:18;;:20;;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13291:7;;-1:-1:-1;;;;;13291:7:27;13301;13256:4;:53::i;:::-;13378:3;;13356:27;;-1:-1:-1;;;13356:27:27;;-1:-1:-1;;;;;13378:3:27;;;13356:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;13356:13:27;;;2609:18:28;;13356:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13434:3:27;;13462:7;;13480:3;;13434:60;;-1:-1:-1;;;13434:60:27;;-1:-1:-1;;;;;13434:3:27;;;;-1:-1:-1;13434:19:27;;-1:-1:-1;13434:60:27;;13462:7;;;;13480:3;;;;13486:7;;13434:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13427:68;;;;:::i;:::-;13541:3;;13571:7;;13541:39;;-1:-1:-1;;;13541:39:27;;-1:-1:-1;;;;;13571:7:27;;;13541:39;;;2636:51:28;13541:3:27;;;:21;;2609:18:28;;13541:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13534:47;;;;:::i;:::-;13638:7;;:20;;;-1:-1:-1;;;13638:20:27;;;;13622:65;;-1:-1:-1;;;;;13638:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13678:3;;13631:52;;-1:-1:-1;;;13631:52:27;;-1:-1:-1;;;;;13678:3:27;;;13631:52;;;2636:51:28;13631:38:27;;;;;2609:18:28;;13631:52:27;2490:203:28;13622:65:27;13746:3;;13768:7;;13746:31;;-1:-1:-1;;;13746:31:27;;-1:-1:-1;;;;;13768:7:27;;;13746:31;;;2636:51:28;13746:3:27;;;:13;;2609:18:28;;13746:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13739:39;;;;:::i;:::-;13836:7;;:20;;;-1:-1:-1;;;13836:20:27;;;;13820:82;;-1:-1:-1;;;;;13836:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13876:3;;13829:52;;-1:-1:-1;;;13829:52:27;;-1:-1:-1;;;;;13876:3:27;;;13829:52;;;2636:51:28;13829:38:27;;;;;2609:18:28;;13829:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13898:3;13883:12;:7;13893:2;13883:12;:::i;:::-;:18;;;;:::i;:::-;13820:8;:82::i;:::-;13940:13;13945:7;13940:4;:13::i;:::-;14012:3;;14034:7;;14012:31;;-1:-1:-1;;;14012:31:27;;-1:-1:-1;;;;;14034:7:27;;;14012:31;;;2636:51:28;14012:3:27;;;:13;;2609:18:28;;14012:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14005:39;;;;:::i;:::-;14102:7;;:20;;;-1:-1:-1;;;14102:20:27;;;;14086:82;;-1:-1:-1;;;;;14102:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14142:3;;14095:52;;-1:-1:-1;;;14095:52:27;;-1:-1:-1;;;;;14142:3:27;;;14095:52;;;2636:51:28;14095:38:27;;;;;2609:18:28;;14095:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14164:3;14149:12;:7;14159:2;14149:12;:::i;14086:82::-;14206:13;14211:7;14206:4;:13::i;:::-;14278:3;;14300:7;;14278:31;;-1:-1:-1;;;14278:31:27;;-1:-1:-1;;;;;14300:7:27;;;14278:31;;;2636:51:28;14278:3:27;;;:13;;2609:18:28;;14278:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14271:39;;;;:::i;:::-;14368:7;;:20;;;-1:-1:-1;;;14368:20:27;;;;14352:82;;-1:-1:-1;;;;;14368:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14408:3;;14361:52;;-1:-1:-1;;;14361:52:27;;-1:-1:-1;;;;;14408:3:27;;;14361:52;;;2636:51:28;14361:38:27;;;;;2609:18:28;;14361:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14430:3;14415:12;:7;14425:2;14415:12;:::i;14352:82::-;14473:14;14478:8;14473:4;:14::i;:::-;14546:3;;14568:7;;14546:31;;-1:-1:-1;;;14546:31:27;;-1:-1:-1;;;;;14568:7:27;;;14546:31;;;2636:51:28;14546:3:27;;;:13;;2609:18:28;;14546:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14539:39;;;;:::i;:::-;14636:7;;:20;;;-1:-1:-1;;;14636:20:27;;;;14620:82;;-1:-1:-1;;;;;14636:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14676:3;;14629:52;;-1:-1:-1;;;14629:52:27;;-1:-1:-1;;;;;14676:3:27;;;14629:52;;;2636:51:28;14629:38:27;;;;;2609:18:28;;14629:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14698:3;14683:12;:7;14693:2;14683:12;:::i;14620:82::-;14741:14;14746:8;14741:4;:14::i;:::-;14814:3;;14836:7;;14814:31;;-1:-1:-1;;;14814:31:27;;-1:-1:-1;;;;;14836:7:27;;;14814:31;;;2636:51:28;14814:3:27;;;:13;;2609:18:28;;14814:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14807:39;;;;:::i;:::-;14904:7;;:20;;;-1:-1:-1;;;14904:20:27;;;;14888:71;;-1:-1:-1;;;;;14904:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14944:3;;14897:52;;-1:-1:-1;;;14897:52:27;;-1:-1:-1;;;;;14944:3:27;;;14897:52;;;2636:51:28;14897:38:27;;;;;2609:18:28;;14897:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14951:7;14888:8;:71::i;:::-;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;14972:12:27;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2019:967;2155:3;;2185:7;;2155:45;;-1:-1:-1;;;2155:45:27;;-1:-1:-1;;;;;2155:3:27;;;;:21;;:45;;2185:7;;;840:42:26;;2155:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2154:46;2147:54;;;;:::i;:::-;2281:3;;2311:7;;2281:45;;-1:-1:-1;;;2281:45:27;;-1:-1:-1;;;;;2281:3:27;;;;:21;;:45;;2311:7;;;840:42:26;;2281:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2280:46;2273:54;;;;:::i;:::-;2412:3;;2442:7;;2412:45;;-1:-1:-1;;;2412:45:27;;-1:-1:-1;;;;;2412:3:27;;;;:21;;:45;;2442:7;;;840:42:26;;2412:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2411:46;2404:54;;;;:::i;:::-;2539:3;;2569:7;;2579:20;;;-1:-1:-1;;;2579:20:27;;;;-1:-1:-1;;;;;2539:3:27;;;;:21;;2569:7;;;;2579:18;;:20;;;;;;;;;;;;;;;2569:7;2579:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2539:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2538:62;2531:70;;;;:::i;:::-;2680:3;;2710:7;;2680:51;;-1:-1:-1;;;2680:51:27;;-1:-1:-1;;;;;2680:3:27;;;;:21;;:51;;2710:7;;;2680:3;;:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2679:52;2672:60;;;;:::i;:::-;2814:7;;2795:39;;840:42:26;;-1:-1:-1;;;;;2814:7:27;2824:9;2371:7:26;2824:3:27;:9;:::i;:::-;2795:4;:39::i;:::-;2932:3;;2962:7;;2932:45;;-1:-1:-1;;;2932:45:27;;-1:-1:-1;;;;;2932:3:27;;;;:21;;:45;;2962:7;;;840:42:26;;2932:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2925:53;;;;:::i;5880:1102::-;6011:3;;6039:7;;6011:3;6057;6011:61;;-1:-1:-1;;;6011:61:27;;-1:-1:-1;;;;;6011:3:27;;;;:19;;:61;;6039:7;;;;6057:3;;;6063:8;;6011:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6004:69;;;;:::i;:::-;6164:3;;6195:7;;6164:3;6213;6164:54;;-1:-1:-1;;;6164:54:27;;-1:-1:-1;;;;;6164:3:27;;;;:22;;:54;;6195:7;;;;6213:3;;;6164:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6163:55;6156:63;;;;:::i;:::-;6309:3;;6340:7;;6309:54;;-1:-1:-1;;;6309:54:27;;-1:-1:-1;;;;;6309:3:27;;;;:22;;:54;;6340:7;;;6309:3;;:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6308:55;6301:63;;;;:::i;:::-;6440:3;;6471:7;;6440:3;6489;6440:54;;-1:-1:-1;;;6440:54:27;;-1:-1:-1;;;;;6440:3:27;;;;:22;;:54;;6471:7;;;;6489:3;;;6440:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6433:62;;;;:::i;:::-;6530:3;;6508:27;;-1:-1:-1;;;6508:27:27;;-1:-1:-1;;;;;6530:3:27;;;6508:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;6508:13:27;;;2609:18:28;;6508:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6627:75:27;;-1:-1:-1;;;6627:75:27;;11385:2:28;6627:75:27;;;11367:21:28;11424:2;11404:18;;;11397:30;11463:34;11443:18;;;11436:62;11534:26;11514:18;;;11507:54;-1:-1:-1;;;;;;;;;;;6627:15:27;-1:-1:-1;6627:15:27;;-1:-1:-1;11578:19:28;;6627:75:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6713:7:27;;6744:3;;6713:36;;-1:-1:-1;;;6713:36:27;;-1:-1:-1;;;;;6744:3:27;;;6713:36;;;2636:51:28;6713:7:27;;;-1:-1:-1;6713:22:27;;-1:-1:-1;2609:18:28;;6713:36:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6825:77:27;;-1:-1:-1;;;6825:77:27;;11809:2:28;6825:77:27;;;11791:21:28;11848:2;11828:18;;;11821:30;11887:34;11867:18;;;11860:62;11958:28;11938:18;;;11931:56;-1:-1:-1;;;;;;;;;;;6825:15:27;-1:-1:-1;6825:15:27;;-1:-1:-1;12004:19:28;;6825:77:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6913:7:27;;:34;;-1:-1:-1;;;6913:34:27;;:7;:34;;;2636:51:28;-1:-1:-1;;;;;6913:7:27;;;;-1:-1:-1;6913:22:27;;-1:-1:-1;2609:18:28;;6913:34:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;6960:12:27;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5880:1102::o;6028:291:26:-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:26;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:26;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:26;;-1:-1:-1;;;;;2654:32:28;;;4404:31:26;;;2636:51:28;;;;4314:19:26;;;4360;;4314;;4404:22;;2609:18:28;;4404:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;4390:45;;-1:-1:-1;4448:4:26;;;-1:-1:-1;;;;;4448:4:26;;:10;;4473:4;;4502:25;;4513:7;;4522:4;;4502:25;;;:::i;:::-;;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;-1:-1:-1;;;;;;4448:139:26;;;;;;;;;;;4558:18;4448:139;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:26;;-1:-1:-1;;;4609:31:26;;-1:-1:-1;;;;;2654:32:28;;;4609:31:26;;;2636:51:28;4600:52:26;;-1:-1:-1;4609:22:26;;;-1:-1:-1;4609:22:26;;2609:18:28;;4609:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;11947:1092:27:-;12072:7;;:20;;;-1:-1:-1;;;12072:20:27;;;;12067:61;;-1:-1:-1;;;;;12072:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12102:7;;-1:-1:-1;;;;;12102:7:27;12112:15;12067:4;:61::i;:::-;12198:3;;12176:27;;-1:-1:-1;;;12176:27:27;;-1:-1:-1;;;;;12198:3:27;;;12176:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;12176:13:27;;;2609:18:28;;12176:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12269:77:27;;-1:-1:-1;;;12269:77:27;;13114:2:28;12269:77:27;;;13096:21:28;13153:2;13133:18;;;13126:30;13192:34;13172:18;;;13165:62;13263:28;13243:18;;;13236:56;-1:-1:-1;;;;;;;;;;;12269:15:27;-1:-1:-1;12269:15:27;;-1:-1:-1;13309:19:28;;12269:77:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12357:7;;;;;;;;;-1:-1:-1;;;;;12357:7:27;-1:-1:-1;;;;;12357:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12424:3:27;;12452:7;;12470:3;;12424:68;;-1:-1:-1;;;12424:68:27;;-1:-1:-1;;;;;12424:3:27;;;;-1:-1:-1;12424:19:27;;-1:-1:-1;12424:68:27;;12452:7;;;;12470:3;;;;12476:15;;12424:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12417:76;;;;:::i;:::-;12559:62;;-1:-1:-1;;;12559:62:27;;13952:2:28;12559:62:27;;;13934:21:28;13991:2;13971:18;;;13964:30;14030:34;14010:18;;;14003:62;-1:-1:-1;;;14081:18:28;;;14074:41;-1:-1:-1;;;;;;;;;;;12559:15:27;;;14132:19:28;;12559:62:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12632:7;;;;;;;;;-1:-1:-1;;;;;12632:7:27;-1:-1:-1;;;;;12632:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12694:3:27;;12724:7;;12694:39;;-1:-1:-1;;;12694:39:27;;-1:-1:-1;;;;;12724:7:27;;;12694:39;;;2636:51:28;12694:3:27;;;-1:-1:-1;12694:21:27;;-1:-1:-1;2609:18:28;;12694:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12687:47;;;;:::i;:::-;12784:7;;;;;;;;;-1:-1:-1;;;;;12784:7:27;-1:-1:-1;;;;;12784:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12812:14;12817:8;12812:4;:14::i;:::-;12877:7;;;;;;;;;-1:-1:-1;;;;;12877:7:27;-1:-1:-1;;;;;12877:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12905:71:27;;-1:-1:-1;;;12905:71:27;;14363:2:28;12905:71:27;;;14345:21:28;14402:2;14382:18;;;14375:30;14441:34;14421:18;;;14414:62;-1:-1:-1;;;14492:18:28;;;14485:50;-1:-1:-1;;;;;;;;;;;12905:15:27;-1:-1:-1;12905:15:27;;-1:-1:-1;14552:19:28;;12905:71:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12987:7;;;;;;;;;-1:-1:-1;;;;;12987:7:27;-1:-1:-1;;;;;12987:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17163:1984;17245:48;17251:7;17260:13;17275:17;17245:5;:48::i;:::-;17235:58;;17365:53;17370:7;;;;;;;;;-1:-1:-1;;;;;17370:7:27;-1:-1:-1;;;;;17370:18:27;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17365:53;17487:3;;17465:27;;-1:-1:-1;;;17465:27:27;;-1:-1:-1;;;;;17487:3:27;;;17465:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;17465:13:27;;;2609:18:28;;17465:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17543:3:27;;17571:7;;17589:3;;17543:60;;-1:-1:-1;;;17543:60:27;;-1:-1:-1;;;;;17543:3:27;;;;-1:-1:-1;17543:19:27;;-1:-1:-1;17543:60:27;;17571:7;;;;17589:3;;;;17595:7;;17543:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17536:68;;;;:::i;:::-;17650:3;;17680:7;;17650:39;;-1:-1:-1;;;17650:39:27;;-1:-1:-1;;;;;17680:7:27;;;17650:39;;;2636:51:28;17650:3:27;;;:21;;2609:18:28;;17650:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17643:47;;;;:::i;:::-;17747:7;;:20;;;-1:-1:-1;;;17747:20:27;;;;17731:65;;-1:-1:-1;;;;;17747:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;17731:65;17855:3;;17877:7;;17855:31;;-1:-1:-1;;;17855:31:27;;-1:-1:-1;;;;;17877:7:27;;;17855:31;;;2636:51:28;17855:3:27;;;:13;;2609:18:28;;17855:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17848:39;;;;:::i;:::-;17947:7;;:20;;;-1:-1:-1;;;17947:20:27;;;;17929:93;;-1:-1:-1;;;;;17947:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17987:3;;17940:52;;-1:-1:-1;;;17940:52:27;;-1:-1:-1;;;;;17987:3:27;;;17940:52;;;2636:51:28;17940:38:27;;;;;2609:18:28;;17940:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18009:3;17994:12;:7;18004:2;17994:12;:::i;:::-;:18;;;;:::i;:::-;18014:7;17929:10;:93::i;:::-;18060:13;18065:7;18060:4;:13::i;:::-;18132:3;;18154:7;;18132:31;;-1:-1:-1;;;18132:31:27;;-1:-1:-1;;;;;18154:7:27;;;18132:31;;;2636:51:28;18132:3:27;;;:13;;2609:18:28;;18132:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18125:39;;;;:::i;:::-;18224:7;;:20;;;-1:-1:-1;;;18224:20:27;;;;18206:93;;-1:-1:-1;;;;;18224:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18264:3;;18217:52;;-1:-1:-1;;;18217:52:27;;-1:-1:-1;;;;;18264:3:27;;;18217:52;;;2636:51:28;18217:38:27;;;;;2609:18:28;;18217:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18286:3;18271:12;:7;18281:2;18271:12;:::i;18206:93::-;18337:13;18342:7;18337:4;:13::i;:::-;18409:3;;18431:7;;18409:31;;-1:-1:-1;;;18409:31:27;;-1:-1:-1;;;;;18431:7:27;;;18409:31;;;2636:51:28;18409:3:27;;;:13;;2609:18:28;;18409:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18402:39;;;;:::i;:::-;18501:7;;:20;;;-1:-1:-1;;;18501:20:27;;;;18483:93;;-1:-1:-1;;;;;18501:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18541:3;;18494:52;;-1:-1:-1;;;18494:52:27;;-1:-1:-1;;;;;18541:3:27;;;18494:52;;;2636:51:28;18494:38:27;;;;;2609:18:28;;18494:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18563:3;18548:12;:7;18558:2;18548:12;:::i;18483:93::-;18615:14;18620:8;18615:4;:14::i;:::-;18688:3;;18710:7;;18688:31;;-1:-1:-1;;;18688:31:27;;-1:-1:-1;;;;;18710:7:27;;;18688:31;;;2636:51:28;18688:3:27;;;:13;;2609:18:28;;18688:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18681:39;;;;:::i;:::-;18780:7;;:20;;;-1:-1:-1;;;18780:20:27;;;;18762:93;;-1:-1:-1;;;;;18780:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18820:3;;18773:52;;-1:-1:-1;;;18773:52:27;;-1:-1:-1;;;;;18820:3:27;;;18773:52;;;2636:51:28;18773:38:27;;;;;2609:18:28;;18773:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18842:3;18827:12;:7;18837:2;18827:12;:::i;3699:1165::-;3841:3;;3869:7;;3841:3;3887;3841:61;;-1:-1:-1;;;3841:61:27;;-1:-1:-1;;;;;3841:3:27;;;;:19;;:61;;3869:7;;;;3887:3;;;3893:8;;3841:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3840:62;3833:70;;;;:::i;:::-;3990:3;;4018:7;;3990:61;;-1:-1:-1;;;3990:61:27;;-1:-1:-1;;;;;3990:3:27;;;;:19;;:61;;4018:7;;;3990:3;;4042:8;;3990:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3989:62;3982:70;;;;:::i;:::-;4125:3;;4153:7;;4125:3;4171;4125:61;;-1:-1:-1;;;4125:61:27;;-1:-1:-1;;;;;4125:3:27;;;;:19;;:61;;4153:7;;;;4171:3;;;4177:8;;4125:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4118:69;;;;:::i;:::-;4222:3;;4200:27;;-1:-1:-1;;;4200:27:27;;-1:-1:-1;;;;;4222:3:27;;;4200:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;4200:13:27;;;2609:18:28;;4200:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4306:71:27;;-1:-1:-1;;;4306:71:27;;14783:2:28;4306:71:27;;;14765:21:28;14822:2;14802:18;;;14795:30;14861:34;14841:18;;;14834:62;-1:-1:-1;;;14912:18:28;;;14905:50;-1:-1:-1;;;;;;;;;;;4306:15:27;-1:-1:-1;4306:15:27;;-1:-1:-1;14972:19:28;;4306:71:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4388:7:27;;;4416:3;4388:43;;-1:-1:-1;;;4388:43:27;;-1:-1:-1;;;;;4388:7:27;;;;-1:-1:-1;4388:19:27;;-1:-1:-1;4388:43:27;;4416:3;;;;4422:8;;4388:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4508:75:27;;-1:-1:-1;;;4508:75:27;;15509:2:28;4508:75:27;;;15491:21:28;15548:2;15528:18;;;15521:30;15587:34;15567:18;;;15560:62;15658:26;15638:18;;;15631:54;-1:-1:-1;;;;;;;;;;;4508:15:27;-1:-1:-1;4508:15:27;;-1:-1:-1;15702:19:28;;4508:75:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4594:7:27;;:41;;-1:-1:-1;;;4594:41:27;;-1:-1:-1;;;;;4594:7:27;;;;-1:-1:-1;4594:19:27;;-1:-1:-1;4594:41:27;;:7;;4626:8;;4594:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4710:72:27;;-1:-1:-1;;;4710:72:27;;15933:2:28;4710:72:27;;;15915:21:28;15972:2;15952:18;;;15945:30;16011:34;15991:18;;;15984:62;-1:-1:-1;;;16062:18:28;;;16055:51;-1:-1:-1;;;;;;;;;;;4710:15:27;-1:-1:-1;4710:15:27;;-1:-1:-1;16123:19:28;;4710:72:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4793:7:27;;4821:3;;4793:36;;-1:-1:-1;;;4793:36:27;;-1:-1:-1;;;;;4793:7:27;;;;-1:-1:-1;4793:19:27;;-1:-1:-1;4793:36:27;;4821:3;;;;4793:7;;:36;;;:::i;3046:563::-;3135:7;;3116:39;;840:42:26;;-1:-1:-1;;;;;3135:7:27;3145:9;2371:7:26;3145:3:27;:9;:::i;3116:39::-;3236:7;;3205:40;;-1:-1:-1;;;3205:40:27;;-1:-1:-1;;;;;3236:7:27;;;3205:40;;;2636:51:28;3196:61:27;;840:42:26;;3205:22:27;;2609:18:28;;3205:40:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3247:9;2371:7:26;3247:3:27;:9;:::i;3196:61::-;3308:3;;3277:36;;-1:-1:-1;;;3277:36:27;;-1:-1:-1;;;;;3308:3:27;;;3277:36;;;2636:51:28;3268:53:27;;840:42:26;;3277:22:27;;2609:18:28;;3277:36:27;2490:203:28;3268:53:27;3388:3;;3418:7;;3388:45;;-1:-1:-1;;;3388:45:27;;-1:-1:-1;;;;;3388:3:27;;;;:21;;:45;;3418:7;;;840:42:26;;3388:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3381:53;;;;:::i;:::-;3516:7;;3485:40;;-1:-1:-1;;;3485:40:27;;-1:-1:-1;;;;;3516:7:27;;;3485:40;;;2636:51:28;3476:53:27;;840:42:26;;3485:22:27;;2609:18:28;;3485:40:27;2490:203:28;3476:53:27;3580:3;;3549:36;;-1:-1:-1;;;3549:36:27;;-1:-1:-1;;;;;3580:3:27;;;3549:36;;;2636:51:28;3540:61:27;;840:42:26;;3549:22:27;;2609:18:28;;3549:36:27;2490:203:28;8020:1974:27;8088:9;8100:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8185:3:27;;8213:7;;8185:3;8231;8185:61;;-1:-1:-1;;;8185:61:27;;8088:23;;-1:-1:-1;;;;;;8185:3:27;;;;:19;;:61;;8213:7;;;8231:3;;8237:8;;8185:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8178:69;;;;:::i;:::-;8265:3;;8293:7;;8311:3;;8265:61;;-1:-1:-1;;;8265:61:27;;-1:-1:-1;;;;;8265:3:27;;;;:19;;:61;;8293:7;;;;8311:3;;;8317:8;;8265:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8258:69;;;;:::i;:::-;8345:3;;8373:7;;8345:61;;-1:-1:-1;;;8345:61:27;;-1:-1:-1;;;;;8345:3:27;;;;:19;;:61;;8373:7;;;8391:3;;8397:8;;8345:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8338:69;;;;:::i;:::-;8458:7;;;8484:3;8458:31;;-1:-1:-1;;;8458:31:27;;-1:-1:-1;;;;;8484:3:27;;;8458:31;;;2636:51:28;8449:52:27;;8458:7;;;;;:17;;2609:18:28;;8458:31:27;2490:203:28;8449:52:27;8521:7;;8547:3;;8521:31;;-1:-1:-1;;;8521:31:27;;-1:-1:-1;;;;;8547:3:27;;;8521:31;;;2636:51:28;8512:52:27;;8521:7;;;;;:17;;2609:18:28;;8521:31:27;2490:203:28;8512:52:27;8584:7;;:31;;-1:-1:-1;;;8584:31:27;;-1:-1:-1;;;;;2654:32:28;;;8584:31:27;;;2636:51:28;8575:52:27;;8584:7;;:17;;2609:18:28;;8584:31:27;2490:203:28;8575:52:27;8674:7;;:28;;;-1:-1:-1;;;8674:28:27;;;;8638:33;;-1:-1:-1;;;;;8674:7:27;;:26;;:28;;;;;8638:33;;8674:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8674:28:27;;;;;;;;;;;;:::i;:::-;8638:64;;8713:36;8722:7;:14;8747:1;8713:8;:36::i;:::-;8760:48;8769:7;8777:1;8769:10;;;;;;;;:::i;8760:48::-;8819:44;8828:7;8836:1;8828:10;;;;;;;;:::i;8819:44::-;8874:37;8883:7;8891:1;8883:10;;;;;;;;:::i;8874:37::-;8922:48;8931:7;8939:1;8931:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;8965:3;;-1:-1:-1;;;;;8965:3:27;8922:8;:48::i;:::-;8981:44;8990:7;8998:1;8990:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9016:8;8981;:44::i;:::-;9036:37;9045:7;9053:1;9045:10;;;;;;;;:::i;9036:37::-;9084:48;9093:7;9101:1;9093:10;;;;;;;;:::i;:::-;;;;;;;:18;;;9127:3;9084:8;:48::i;:::-;9143:44;9152:7;9160:1;9152:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9178:8;9143;:44::i;:::-;9198:37;9207:7;9215:1;9207:10;;;;;;;;:::i;9198:37::-;9289:3;;9320:7;;9289:3;9338;9289:54;;-1:-1:-1;;;9289:54:27;;-1:-1:-1;;;;;9289:3:27;;;;:22;;:54;;9320:7;;;;9338:3;;;9289:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9282:62;;;;:::i;:::-;9396:7;;;9422:3;9396:31;;-1:-1:-1;;;9396:31:27;;-1:-1:-1;;;;;9422:3:27;;;9396:31;;;2636:51:28;9387:53:27;;9396:7;;;;;:17;;2609:18:28;;9396:31:27;2490:203:28;9387:53:27;9460:7;;9486:3;;9460:31;;-1:-1:-1;;;9460:31:27;;-1:-1:-1;;;;;9486:3:27;;;9460:31;;;2636:51:28;9451:52:27;;9460:7;;;;;:17;;2609:18:28;;9460:31:27;2490:203:28;9451:52:27;9523:7;;:31;;-1:-1:-1;;;9523:31:27;;-1:-1:-1;;;;;2654:32:28;;;9523:31:27;;;2636:51:28;9514:52:27;;9523:7;;:17;;2609:18:28;;9523:31:27;2490:203:28;9514:52:27;9587:7;;;;;;;;;-1:-1:-1;;;;;9587:7:27;-1:-1:-1;;;;;9587:26:27;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9587:28:27;;;;;;;;;;;;:::i;:::-;9577:38;;9626:36;9635:7;:14;9660:1;9626:8;:36::i;:::-;9673:48;9682:7;9690:1;9682:10;;;;;;;;:::i;9673:48::-;9732:44;9741:7;9749:1;9741:10;;;;;;;;:::i;9732:44::-;9787:37;9796:7;9804:1;9796:10;;;;;;;;:::i;9787:37::-;9835:48;9844:7;9852:1;9844:10;;;;;;;;:::i;9835:48::-;9894:44;9903:7;9911:1;9903:10;;;;;;;;:::i;9894:44::-;9949:37;9958:7;9966:1;9958:10;;;;;;;;:::i;9949:37::-;8077:1917;;8020:1974::o;3312:184:26:-;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:26;:17;;-1:-1:-1;;;;;;3354:17:26;-1:-1:-1;;;;;3354:17:26;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:26;:17;;-1:-1:-1;;;;;;3395:17:26;-1:-1:-1;;;;;3395:17:26;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:26;:17;;-1:-1:-1;;;;;;3462:17:26;-1:-1:-1;;;;;3462:17:26;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;1980:374;;2196:43;;2023:20;;-1:-1:-1;;;;;;;;;;;1671:64:0;2135:34;;2196:43;;1671:64;;-1:-1:-1;;;2221:17:0;2196:43;;;:::i;:::-;;;;-1:-1:-1;;2196:43:0;;;;;;;;;;2086:175;;;2196:43;2086:175;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:26:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;:::-;5967:45;;5861:159;;;;;;:::o;19211:2093:27:-;19293:48;19299:7;19308:13;19323:17;19293:5;:48::i;:::-;19283:58;;19413:57;19418:7;;;;;;;;;-1:-1:-1;;;;;19418:7:27;-1:-1:-1;;;;;19418:18:27;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19448:7;;-1:-1:-1;;;;;19448:7:27;19458:11;:7;19468:1;19458:11;:::i;19413:57::-;19516:3;;19546:7;;19516:39;;-1:-1:-1;;;19516:39:27;;-1:-1:-1;;;;;19546:7:27;;;19516:39;;;2636:51:28;19516:3:27;;;:21;;2609:18:28;;19516:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19509:47;;;;:::i;:::-;19665:3;;19693:7;;19711:3;;19665:60;;-1:-1:-1;;;19665:60:27;;-1:-1:-1;;;;;19665:3:27;;;;:19;;:60;;19693:7;;;;19711:3;;;19717:7;;19665:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19658:68;;;;:::i;:::-;19778:3;;19806:7;;19778:3;19824;19778:60;;-1:-1:-1;;;19778:60:27;;-1:-1:-1;;;;;19778:3:27;;;;:19;;:60;;19806:7;;;;19824:3;;;19830:7;;19778:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19771:68;;;;:::i;:::-;19891:3;;19919:7;;19891:60;;-1:-1:-1;;;19891:60:27;;-1:-1:-1;;;;;19891:3:27;;;;:19;;:60;;19919:7;;;19891:3;;19943:7;;19891:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19884:68;;;;:::i;:::-;20027:13;20032:7;20027:4;:13::i;:::-;20058:3;;20080:7;;20058:31;;-1:-1:-1;;;20058:31:27;;-1:-1:-1;;;;;20080:7:27;;;20058:31;;;2636:51:28;20058:3:27;;;:13;;2609:18:28;;20058:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20051:39;;;;:::i;:::-;20185:7;;:20;;;-1:-1:-1;;;20185:20:27;;;;20167:95;;-1:-1:-1;;;;;20185:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;20167:95;20327:14;20332:8;20327:4;:14::i;:::-;20413:3;;20435:7;;20413:31;;-1:-1:-1;;;20413:31:27;;-1:-1:-1;;;;;20435:7:27;;;20413:31;;;2636:51:28;20413:3:27;;;:13;;2609:18:28;;20413:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20406:39;;;;:::i;:::-;20540:7;;:20;;;-1:-1:-1;;;20540:20:27;;;;20522:95;;-1:-1:-1;;;;;20540:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20580:3;;20533:52;;-1:-1:-1;;;20533:52:27;;-1:-1:-1;;;;;20580:3:27;;;20533:52;;;2636:51:28;20533:38:27;;;;;2609:18:28;;20533:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20603:3;20588:12;:7;20598:2;20588:12;:::i;20522:95::-;20683:14;20688:8;20683:4;:14::i;:::-;20795:3;;20817:7;;20795:31;;-1:-1:-1;;;20795:31:27;;-1:-1:-1;;;;;20817:7:27;;;20795:31;;;2636:51:28;20795:3:27;;;:13;;2609:18:28;;20795:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20788:39;;;;:::i;:::-;20909:7;;:20;;;-1:-1:-1;;;20909:20:27;;;;20893:71;;-1:-1:-1;;;;;20909:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20949:3;;20902:52;;-1:-1:-1;;;20902:52:27;;-1:-1:-1;;;;;20949:3:27;;;20902:52;;;2636:51:28;20902:38:27;;;;;2609:18:28;;20902:52:27;2490:203:28;20893:71:27;21009:14;21014:8;21009:4;:14::i;:::-;21117:3;;21139:7;;21117:31;;-1:-1:-1;;;21117:31:27;;-1:-1:-1;;;;;21139:7:27;;;21117:31;;;2636:51:28;21117:3:27;;;:13;;2609:18:28;;21117:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21110:39;;;;:::i;:::-;21239:7;;:20;;;-1:-1:-1;;;21239:20:27;;;;21223:71;;-1:-1:-1;;;;;21239:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21279:3;;21232:52;;-1:-1:-1;;;21232:52:27;;-1:-1:-1;;;;;21279:3:27;;;21232:52;;;2636:51:28;21232:38:27;;;;;2609:18:28;;21232:52:27;2490:203:28;10774:1093:27;10981:3;;11009:7;;11027:3;;10981:60;;-1:-1:-1;;;10981:60:27;;10917:15;;-1:-1:-1;;;;;10981:3:27;;;;:19;;:60;;11009:7;;;;11027:3;;10917:15;;10981:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10974:68;;;;:::i;:::-;11107:7;;11139:3;;11107:37;;-1:-1:-1;;;11107:37:27;;-1:-1:-1;;;;;11139:3:27;;;11107:37;;;2636:51:28;11098:56:27;;11107:7;;;;;:23;;2609:18:28;;11107:37:27;2490:203:28;11098:56:27;11201:3;;11231:7;;11201:39;;-1:-1:-1;;;11201:39:27;;-1:-1:-1;;;;;11231:7:27;;;11201:39;;;2636:51:28;11201:3:27;;;:21;;2609:18:28;;11201:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11194:47;;;;:::i;:::-;11280:14;11285:8;11280:4;:14::i;:::-;11360:15;11421:3;11407:11;:7;11417:1;11407:11;:::i;:::-;:17;;;;:::i;:::-;11402:23;;:1;:23;:::i;:::-;11394:3;11379:12;:7;11389:2;11379:12;:::i;:::-;:18;;;;:::i;:::-;11378:48;;;;:::i;:::-;11446:7;;11479:3;;11446:38;;-1:-1:-1;;;11446:38:27;;-1:-1:-1;;;;;11479:3:27;;;11446:38;;;2636:51:28;11360:66:27;;-1:-1:-1;11437:57:27;;11446:7;;;:24;;2609:18:28;;11446:38:27;2490:203:28;11437:57:27;11583:14;11588:8;11583:4;:14::i;:::-;11718:3;11704:11;:7;11714:1;11704:11;:::i;:::-;:17;;;;:::i;:::-;11698:24;;:2;:24;:::i;:::-;11690:3;11675:12;:7;11685:2;11675:12;:::i;:::-;:18;;;;:::i;:::-;11674:49;;;;:::i;:::-;11743:7;;11776:3;;11743:38;;-1:-1:-1;;;11743:38:27;;-1:-1:-1;;;;;11776:3:27;;;11743:38;;;2636:51:28;11664:59:27;;-1:-1:-1;11734:57:27;;11743:7;;;:24;;2609:18:28;;11743:38:27;2490:203:28;11734:57:27;11811:7;;11844:3;;11811:38;;-1:-1:-1;;;11811:38:27;;-1:-1:-1;;;;;11844:3:27;;;11811:38;;;2636:51:28;11802:57:27;;11811:7;;;;;:24;;2609:18:28;;11811:38:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11851:7;11802:8;:57::i;15044:2052::-;15167:7;;:20;;;-1:-1:-1;;;15167:20:27;;;;15162:61;;-1:-1:-1;;;;;15167:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;15162:61;15269:3;;15299:7;;15269:39;;-1:-1:-1;;;15269:39:27;;-1:-1:-1;;;;;15299:7:27;;;15269:39;;;2636:51:28;15269:3:27;;;:21;;2609:18:28;;15269:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15262:47;;;;:::i;:::-;15418:3;;15446:7;;15464:3;;15418:68;;-1:-1:-1;;;15418:68:27;;-1:-1:-1;;;;;15418:3:27;;;;:19;;:68;;15446:7;;;;15464:3;;;15470:15;;15418:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15411:76;;;;:::i;:::-;15539:3;;15567:7;;15539:3;15585;15539:68;;-1:-1:-1;;;15539:68:27;;-1:-1:-1;;;;;15539:3:27;;;;:19;;:68;;15567:7;;;;15585:3;;;15591:15;;15539:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15532:76;;;;:::i;:::-;15660:3;;15688:7;;15660:68;;-1:-1:-1;;;15660:68:27;;-1:-1:-1;;;;;15660:3:27;;;;:19;;:68;;15688:7;;;15660:3;;15712:15;;15660:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15653:76;;;;:::i;:::-;15804:13;15809:7;15804:4;:13::i;:::-;15835:3;;15857:7;;15835:31;;-1:-1:-1;;;15835:31:27;;-1:-1:-1;;;;;15857:7:27;;;15835:31;;;2636:51:28;15835:3:27;;;:13;;2609:18:28;;15835:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15828:39;;;;:::i;:::-;15960:7;;:20;;;-1:-1:-1;;;15960:20:27;;;;15944:93;;-1:-1:-1;;;;;15960:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16000:3;;15953:52;;-1:-1:-1;;;15953:52:27;;-1:-1:-1;;;;;16000:3:27;;;15953:52;;;2636:51:28;15953:38:27;;;;;2609:18:28;;15953:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16008:26;15944:8;:93::i;:::-;16102:14;16107:8;16102:4;:14::i;:::-;16188:3;;16210:7;;16188:31;;-1:-1:-1;;;16188:31:27;;-1:-1:-1;;;;;16210:7:27;;;16188:31;;;2636:51:28;16188:3:27;;;:13;;2609:18:28;;16188:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16181:39;;;;:::i;:::-;16313:7;;:20;;;-1:-1:-1;;;16313:20:27;;;;16297:92;;-1:-1:-1;;;;;16313:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16353:3;;16306:52;;-1:-1:-1;;;16306:52:27;;-1:-1:-1;;;;;16353:3:27;;;16306:52;;;2636:51:28;16306:38:27;;;;;2609:18:28;;16306:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16361:26;16297:8;:92::i;:::-;16455:14;16460:8;16455:4;:14::i;:::-;16567:3;;16589:7;;16567:31;;-1:-1:-1;;;16567:31:27;;-1:-1:-1;;;;;16589:7:27;;;16567:31;;;2636:51:28;16567:3:27;;;:13;;2609:18:28;;16567:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16560:39;;;;:::i;:::-;16681:7;;:20;;;-1:-1:-1;;;16681:20:27;;;;16665:81;;-1:-1:-1;;;;;16681:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16721:3;;16674:52;;-1:-1:-1;;;16674:52:27;;-1:-1:-1;;;;;16721:3:27;;;16674:52;;;2636:51:28;16674:38:27;;;;;2609:18:28;;16674:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16729:15;16665:8;:81::i;:::-;16791:14;16796:8;16791:4;:14::i;:::-;16899:3;;16921:7;;16899:31;;-1:-1:-1;;;16899:31:27;;-1:-1:-1;;;;;16921:7:27;;;16899:31;;;2636:51:28;16899:3:27;;;:13;;2609:18:28;;16899:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16892:39;;;;:::i;:::-;17021:7;;:20;;;-1:-1:-1;;;17021:20:27;;;;17005:81;;-1:-1:-1;;;;;17021:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17061:3;;17014:52;;-1:-1:-1;;;17014:52:27;;-1:-1:-1;;;;;17061:3:27;;;17014:52;;;2636:51:28;17014:38:27;;;;;2609:18:28;;17014:52:27;2490:203:28;3620:551:26;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:26;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:26;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551::o;825:596:27:-;961:3;;991:7;;961:39;;-1:-1:-1;;;961:39:27;;-1:-1:-1;;;;;991:7:27;;;961:39;;;2636:51:28;961:3:27;;;:21;;2609:18:28;;961:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;960:40;953:48;;;;:::i;:::-;1081:3;;1111:7;;1081:39;;-1:-1:-1;;;1081:39:27;;-1:-1:-1;;;;;1111:7:27;;;1081:39;;;2636:51:28;1081:3:27;;;:21;;2609:18:28;;1081:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1080:40;1073:48;;;;:::i;:::-;1216:3;;1246:7;;1216:39;;-1:-1:-1;;;1216:39:27;;-1:-1:-1;;;;;1246:7:27;;;1216:39;;;2636:51:28;1216:3:27;;;:21;;2609:18:28;;1216:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1209:47;;;;:::i;:::-;1373:3;;1403:7;;1373:39;;-1:-1:-1;;;1373:39:27;;-1:-1:-1;;;;;1403:7:27;;;1373:39;;;2636:51:28;1373:3:27;;;:21;;2609:18:28;;1373:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1372:40;1365:48;;;;:::i;789:312:2:-;859:1;854:6;;:1;:6;;;850:245;;881:41;;;;;18246:2:28;18228:21;;;18285:2;18265:18;;;18258:30;18324:34;18319:2;18304:18;;18297:62;-1:-1:-1;;;18390:2:28;18375:18;;18368:32;18432:3;18417:19;;18044:398;881:41:2;;;;;;;;941:52;972:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;941:52;;;;;;:::i;:::-;;;;;;;;1012;1043:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;1012:52;;;;;;:::i;:::-;;;;;;;;1078:6;:4;:6::i;5202:262:0:-;5264:1;5259;:6;5255:203;;5286:41;;;;;19802:2:28;19784:21;;;19841:2;19821:18;;;19814:30;19880:34;19875:2;19860:18;;19853:62;-1:-1:-1;;;19946:2:28;19931:18;;19924:32;19988:3;19973:19;;19600:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:0;:1;-1:-1:-1;;;;;3678:6:0;;3674:212;;3705:44;;;;;20205:2:28;20187:21;;;20244:2;20224:18;;;20217:30;20283:34;20278:2;20263:18;;20256:62;-1:-1:-1;;;20349:2:28;20334:18;;20327:35;20394:3;20379:19;;20003:401;3705:44:0;;;;;;;;3768:34;3800:1;3768:34;;;;;;:::i;:::-;;;;;;;;3821;3853:1;3821:34;;;;;;:::i;2410:424::-;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;2445:359;;2645:67;;2482:11;;-1:-1:-1;;;;;;;;;;;1671:64:0;2579:43;;2645:67;;1671:64;;-1:-1:-1;;;2670:17:0;2705:4;;2645:67;;;:::i;:::-;;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;19453:117:4:-;19535:28;19540:5;19547:2;19551:4;19557:5;19535:4;:28::i;:::-;19453:117;;;:::o;17530:93::-;-1:-1:-1;;;;;;;;;;;17585:7:4;17593:22;17611:4;17593:15;:22;:::i;:::-;17585:31;;;;;;;;;;;;;1244:25:28;;1232:2;1217:18;;1098:177;17585:31:4;;;;;;;;;;;;;;;;;;;;1880:190:9;1963:14;1998:19;2005:1;2008:3;2013;1998:6;:19::i;:::-;1989:28;;2027:36;;;;;;;;;;;;;;-1:-1:-1;;;2027:36:9;;;2056:6;2027:12;:36::i;19576:825:4:-;19740:38;;;-1:-1:-1;;;;;2654:32:28;;;19740:38:4;;;;2636:51:28;;;;19740:38:4;;;;;;;;;;2609:18:28;;;;19740:38:4;;;;;;;-1:-1:-1;;;;;19740:38:4;-1:-1:-1;;;19740:38:4;;;19729:50;;19705:20;;19729:10;;;:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19702:77;;;19789:15;19818:7;19807:30;;;;;;;;;;;;:::i;:::-;19789:48;-1:-1:-1;19874:71:4;19940:4;19874:51;19922:2;19874:38;-1:-1:-1;;;19874:22:4;:8;19890:5;19874:15;:22::i;:::-;:26;;:38::i;:::-;:47;;:51::i;:::-;:65;;:71::i;:::-;19991:6;19987:408;;;20054:34;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20054:34:4;-1:-1:-1;;;20054:34:4;;;20043:46;;20016:23;;-1:-1:-1;;;;;20043:10:4;;;:46;;20054:34;20043:46;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20013:76;;;20103:14;20131:10;20120:33;;;;;;;;;;;;:::i;:::-;20103:50;;20178:7;20171:4;:14;20167:144;;;20216:14;20226:4;20216:7;:14;:::i;:::-;20205:26;;;;:::i;:::-;;;20167:144;;;20281:14;20288:7;20281:4;:14;:::i;:::-;20270:26;;;;:::i;:::-;;;20167:144;20324:60;20377:6;20324:38;-1:-1:-1;;;20324:22:4;:8;20340:5;20324:15;:22::i;:60::-;19999:396;;19661:740;;19576:825;;;;:::o;611:1263:9:-;695:14;736:3;729;:10;;721:85;;;;-1:-1:-1;;;721:85:9;;21369:2:28;721:85:9;;;21351:21:28;21408:2;21388:18;;;21381:30;21447:34;21427:18;;;21420:62;21518:32;21498:18;;;21491:60;21568:19;;721:85:9;;;;;;;;;1040:3;1035:1;:8;;:20;;;;;1052:3;1047:1;:8;;1035:20;1031:34;;;-1:-1:-1;1064:1:9;1057:8;;1031:34;1076:12;1091:9;1097:3;1091;:9;:::i;:::-;:13;;1103:1;1091:13;:::i;:::-;1076:28;;1299:1;1294;:6;;:18;;;;;1311:1;1304:4;:8;1294:18;1290:38;;;1321:7;1327:1;1321:3;:7;:::i;:::-;1314:14;;;;;1290:38;1347:15;1361:1;-1:-1:-1;;1347:15:9;:::i;:::-;1342:1;:20;;:46;;;;-1:-1:-1;1373:15:9;1387:1;-1:-1:-1;;1373:15:9;:::i;:::-;1366:4;:22;1342:46;1338:82;;;1404:15;1418:1;-1:-1:-1;;1404:15:9;:::i;:::-;1397:23;;:3;:23;:::i;1338:82::-;1524:3;1520:1;:7;1516:352;;;1543:12;1558:7;1562:3;1558:1;:7;:::i;:::-;1543:22;-1:-1:-1;1579:11:9;1593;1600:4;1543:22;1593:11;:::i;:::-;1579:25;;1622:3;1629:1;1622:8;1618:24;;1639:3;1632:10;;;;;;;1618:24;1677:1;1665:9;1671:3;1665;:9;:::i;:::-;:13;;;;:::i;:::-;1656:22;;1529:160;;1516:352;;;1703:3;1699:1;:7;1695:173;;;1722:12;1737:7;1743:1;1737:3;:7;:::i;:::-;1722:22;-1:-1:-1;1758:11:9;1772;1779:4;1722:22;1772:11;:::i;:::-;1758:25;;1801:3;1808:1;1801:8;1797:24;;1818:3;1811:10;;;;;;;1797:24;1844:9;1850:3;1844;:9;:::i;:::-;:13;;1856:1;1844:13;:::i;:::-;1835:22;;1708:160;;1695:173;711:1163;611:1263;;;;;:::o;6307:207::-;6383:11;297:42;-1:-1:-1;;;;;6399:36:9;6483:2;6487;6436:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6436:54:9;;;;;;;;;;;;;;-1:-1:-1;;;;;6436:54:9;-1:-1:-1;;;6436:54:9;;;6399:92;;;6436:54;6399:92;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7708:156:8;4581:12;;;:22;;-1:-1:-1;;;;;;4581:22:8;-1:-1:-1;;;;;4581:22:8;;;;;-1:-1:-1;4581:12:8;7821:36;7814:43;;7708:156;;;;;:::o;7870:143::-;4736:9;;;:16;;-1:-1:-1;;4736:16:8;;;;;;;;-1:-1:-1;4736:9:8;7976:30;4637:143;8175:152;5052:10;;;:47;;;;;;;8249:18;5052:47;;;;;;-1:-1:-1;;;;;5076:21:8;;5052:47;;;8310:4;8286:34;4948:179;8951:120;9031:33;9045:4;9059:3;9399:12;;;;9435:9;;;;9476:11;;;;9520:10;;;9497:33;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9399:12:8;;;;9435:9;;;;;;9385:11;;9497:33;;9520:10;;9497:33;;9520:10;9497:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9541:17;9578:4;9584:12;9592:3;9584:7;:12::i;:::-;9561:36;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;9561:36:8;;;;;;;;;-1:-1:-1;;;;;9612:15:8;;;;;;:10;;;9561:36;9612:15;;;;;;-1:-1:-1;;;;;;9612:21:8;;;;;;;;;9561:36;;-1:-1:-1;9612:21:8;;:15;;9644:34;;9661:3;;9666:11;;9644:34;;:::i;:::-;;;;-1:-1:-1;;9644:34:8;;;;;;;;;9634:45;;9644:34;9634:45;;;;9612:68;;;;;;;;;;-1:-1:-1;9612:68:8;;;;9607:110;;9696:10;9701:4;9696;:10::i;:::-;;9607:110;-1:-1:-1;;;;;9749:15:8;;9726:12;9749:15;;;;;;;;;;;-1:-1:-1;;;;;;9749:21:8;;;;;;;;;9781:34;;9749:21;;9726:12;;9781:34;;9798:3;;9803:11;;9781:34;;:::i;:::-;;;;;;;;;;;;;9771:45;;;;;;9749:68;;;;;;;;;;;;9741:77;;9726:92;;9829:12;9868:17;9889:3;-1:-1:-1;;;;;9889:14:8;9904:4;9889:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9865:44:8;-1:-1:-1;9930:38:8;;-1:-1:-1;9865:44:8;9951:16;9956:11;9951:2;:16;:::i;:::-;9930:14;:38::i;:::-;10003:18;;-1:-1:-1;;;10003:18:8;;9923:45;;-1:-1:-1;9988:12:8;;-1:-1:-1;;;;;;;;;;;;10003:7:8;;;:18;;10011:3;;10016:4;;10003:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9988:33;;10044:4;10036;:12;10032:218;;10064:175;;-1:-1:-1;;;10064:175:8;;;;;;;:::i;:::-;10259:24;;-1:-1:-1;;;10259:24:8;;-1:-1:-1;;;;;;;;;;;10259:8:8;;;:24;;10268:3;;10273:4;;10279:3;;10259:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;10300:12:8;;;10293:19;;-1:-1:-1;;;;;;10293:19:8;;;-1:-1:-1;10329:9:8;;;10322:16;;-1:-1:-1;;10322:16:8;;;10348:17;-1:-1:-1;10355:10:8;;10300:12;10348:17;:::i;:::-;10382:4;:11;;10375:18;;;9375:1025;;;;;;;;9305:1095;;:::o;11479:393::-;11538:12;11562:19;11594:1;:8;11605:2;11594:13;;;;:::i;:::-;11584:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11584:24:8;;11562:46;;11623:9;11618:224;11642:1;:8;11638:1;:12;11618:224;;;11671:9;11683:1;11685;11683:4;;;;;;;;:::i;:::-;;;;;;;11671:16;;11816:1;11810;11806:2;11802:10;11798:2;11794:19;11786:6;11782:32;11775:43;11757:75;11652:3;;;;;:::i;:::-;;;;11618:224;;;-1:-1:-1;11859:6:8;11479:393;-1:-1:-1;;11479:393:8:o;7587:115::-;7644:7;7670:25;7690:4;7670:19;:25::i;11118:304::-;11196:7;11215:11;11237;11262:2;11251:1;:8;:13;:29;;11272:1;:8;11251:29;;;11267:2;11251:29;11237:43;;11295:9;11290:106;11314:3;11310:1;:7;11290:106;;;11379:5;:1;11383;11379:5;:::i;:::-;11353:1;11355:10;11364:1;11355:6;:10;:::i;:::-;11353:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;11353:13:8;11345:40;;11338:47;;;;;11319:3;;;;:::i;:::-;;;;11290:106;;;-1:-1:-1;11412:3:8;;11118:304;-1:-1:-1;;;;11118:304:8:o;1264:3205::-;1354:12;;;;1390:9;;;;1431:11;;;;1475:10;;;1452:33;;;;;;;;;;;;;;;;;;;1321:7;;-1:-1:-1;;;;;1354:12:8;;1390:9;;;1431:11;1321:7;;1452:33;;1475:10;;1452:33;;;1475:10;1452:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;1536:15:8;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;1536:21:8;;;;;;;;;1568:34;;1452:33;;-1:-1:-1;1536:21:8;:15;;-1:-1:-1;1568:34:8;;-1:-1:-1;1452:33:8;;1590:11;;1568:34;;:::i;:::-;;;;-1:-1:-1;;1568:34:8;;;;;;;;;1558:45;;1568:34;1558:45;;;;1536:68;;;;;;;;;;-1:-1:-1;1536:68:8;;;;1532:174;;;-1:-1:-1;;;;;1627:15:8;;:10;:15;;;;;;;;;;;-1:-1:-1;;;;;;1627:21:8;;;;;;;;;1659:34;;1627:21;;:10;1659:34;;1676:3;;1681:11;;1659:34;;:::i;:::-;;;;;;;;;;;;;1649:45;;;;;;1627:68;;;;;;;;;;;;1620:75;;;;;;1264:3205;;;:::o;1532:174::-;1715:17;1752:4;1758:12;1766:3;1758:7;:12::i;:::-;1735:36;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1715:56;;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;1781:9:8;;:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1802:12;1841:17;1862:3;-1:-1:-1;;;;;1862:14:8;1877:4;1862:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1838:44:8;-1:-1:-1;1903:38:8;;-1:-1:-1;1838:44:8;1924:16;1929:11;1924:2;:16;:::i;:::-;1903:14;:38::i;:::-;1990:25;;-1:-1:-1;;;1990:25:8;;-1:-1:-1;;;;;2654:32:28;;1990:25:8;;;2636:51:28;1896:45:8;;-1:-1:-1;1963:22:8;;-1:-1:-1;;;;;;;;;;;;1990:11:8;;;2609:18:28;;1990:25:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1990:25:8;;;;;;;;;;;;:::i;:::-;1962:53;;;2029:5;:12;2045:1;2029:17;2025:2068;;2062:12;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;2077:7:8;;2085:3;2090:5;2096:1;2090:8;;;;;;;;:::i;:::-;;;;;;;2077:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2062:37;-1:-1:-1;2062:37:8;2113:106;;2160:44;2181:3;2194:5;2200:1;2194:8;;;;;;;;:::i;:::-;;;;;;;2186:17;;2160:44;;;;;;;:::i;:::-;;;;;;;;2113:106;2244:4;2236;:12;2232:238;;2268:187;;-1:-1:-1;;;2268:187:8;;;;;;;:::i;:::-;2488:86;2498:3;2503:4;2536:3;2541:11;2519:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2509:45;;;;;;2564:5;2570:1;2564:8;;;;;;;;:::i;:::-;;;;;;;2556:17;;2488:86;;;;;;;;;:::i;:::-;;;;;;;;2667:5;2673:1;2667:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;2588:15:8;;2659:17;2588:15;;;;;;;;;;-1:-1:-1;;;;;;2588:21:8;;;;;;;;;2620:34;;2667:8;;2588:21;;2620:34;;2637:3;;2642:11;;2620:34;;:::i;:::-;;;;-1:-1:-1;;2620:34:8;;;;;;;;;2610:45;;2620:34;2610:45;;;;2588:68;;;;;;;;;;;;-1:-1:-1;2588:68:8;;;:88;;;;-1:-1:-1;;;;;2690:15:8;;;;2761:4;2690:10;;;:15;;;;;-1:-1:-1;;;;;;2690:21:8;;;;;;;;;2722:34;;2761:4;;-1:-1:-1;2722:34:8;;2739:3;;2744:11;;2722:34;;:::i;:::-;;;;;;;-1:-1:-1;;2722:34:8;;;;;;2712:45;;2722:34;2712:45;;;;2690:68;;;;;;;;;;-1:-1:-1;2690:68:8;:75;;-1:-1:-1;;2690:75:8;;;;;;;;;;-1:-1:-1;2025:2068:8;;;2801:1;2786:5;:12;:16;2782:1311;;;2823:9;2818:1152;2842:5;:12;2838:1;:16;2818:1152;;;2879:12;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;2894:7:8;;2902:3;2907:5;2913:1;2907:8;;;;;;;;:::i;:::-;;;;;;;2894:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2879:37;-1:-1:-1;2879:37:8;2934:114;;2985:44;3006:3;3019:5;3025:1;3019:8;;;;;;;;:::i;:::-;;;;;;;3011:17;;2985:44;;;;;;;:::i;:::-;;;;;;;;2934:114;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3090:8:8;;3099:3;3104:5;3110:1;3104:8;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;3090:43:8;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3151:12;3181:17;3256:3;-1:-1:-1;;;;;3256:14:8;3271:4;3256:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3238:38:8;;-1:-1:-1;3238:38:8;-1:-1:-1;3305:38:8;3238;3326:16;3331:11;3326:2;:16;:::i;3305:38::-;3298:45;;3384:7;:37;;;;;-1:-1:-1;;;3395:4:8;:26;3384:37;3380:529;;;3519:86;3529:3;3534:4;3567:3;3572:11;3550:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3540:45;;;;;;3595:5;3601:1;3595:8;;;;;;;;:::i;:::-;;;;;;;3587:17;;3519:86;;;;;;;;;:::i;:::-;;;;;;;;3706:5;3712:1;3706:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;3627:15:8;;3698:17;3627:15;;;;;;;;;;-1:-1:-1;;;;;;3627:21:8;;;;;;;;;3659:34;;3706:8;;3627:21;;3659:34;;3676:3;;3681:11;;3659:34;;:::i;:::-;;;;;;;;;;;;;3649:45;;;;;;3627:68;;;;;;;;;;;:88;;;;3808:4;3737;:10;;:15;3748:3;-1:-1:-1;;;;;3737:15:8;-1:-1:-1;;;;;3737:15:8;;;;;;;;;;;;:21;3753:4;-1:-1:-1;;;;;3737:21:8;;-1:-1:-1;;;;;3737:21:8;;;;;;;;;;;;;:68;3786:3;3791:11;3769:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3759:45;;;;;;3737:68;;;;;;;;;;;;:75;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3834:8:8;;3843:3;3848:5;3854:1;3848:8;;;;;;;;:::i;:::-;;;;;;;3858:4;3834:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3885:5;;;;;3380:529;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3926:8:8;;3935:3;3940:5;3946:1;3940:8;;;;;;;;:::i;:::-;;;;;;;3950:4;3926:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2861:1109;;;2856:3;;;;;:::i;:::-;;;;2818:1152;;;;2782:1311;;;4000:82;;;-1:-1:-1;;;4000:82:8;;25339:2:28;4000:82:8;;;25321:21:28;25358:18;;;25351:30;;;;25417:34;25397:18;;;25390:62;25488:34;25468:18;;;25461:62;25540:19;;4000:82:8;25137:428:28;4000:82:8;-1:-1:-1;;;;;4124:15:8;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;4124:21:8;;;;;;;;;4156:34;;4124:21;;:15;4156:34;;4173:3;;4178:11;;4156:34;;:::i;:::-;;;;-1:-1:-1;;4156:34:8;;;;;;;;;4146:45;;4156:34;4146:45;;;;4124:68;;;;;;;;;;-1:-1:-1;4124:68:8;;;;4103:162;;;;-1:-1:-1;;;4103:162:8;;25772:2:28;4103:162:8;;;25754:21:28;25811:2;25791:18;;;25784:30;25850:34;25830:18;;;25823:62;-1:-1:-1;;;25901:18:28;;;25894:45;25956:19;;4103:162:8;25570:411:28;4103:162:8;4283:12;;;4276:19;;-1:-1:-1;;;;;;4276:19:8;;;4312:9;;;4305:16;;-1:-1:-1;;4305:16:8;;;4331:17;-1:-1:-1;4338:10:8;;4283:12;4331:17;:::i;:::-;4358:18;4365:11;;;4358:18;;;-1:-1:-1;;;;;4394:15:8;;;;;;;;;;;;-1:-1:-1;;;;;;4394:21:8;;;;;;;;;4426:34;;4394:21;;4358:18;4426:34;;4443:3;;4448:11;;4426:34;;:::i;:::-;;;;;;;;;;;;;4416:45;;;;;;4394:68;;;;;;;;;;;;4387:75;;;;;;;;;1264:3205;;;:::o;6950:393::-;7009:12;7033:19;7065:1;:8;7076:2;7065:13;;;;:::i;:::-;7055:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7055:24:8;;7033:46;;7094:9;7089:224;7113:1;:8;7109:1;:12;7089:224;;;7142:9;7154:1;7156;7154:4;;;;;;;;:::i;:::-;;;;;;;7142:16;;7287:1;7281;7277:2;7273:10;7269:2;7265:19;7257:6;7253:32;7246:43;7228:75;7123:3;;;;;:::i;:::-;;;;7089:224;;6640:304;6718:7;6737:11;6759;6784:2;6773:1;:8;:13;:29;;6794:1;:8;6773:29;;;6789:2;6773:29;6759:43;;6817:9;6812:106;6836:3;6832:1;:7;6812:106;;;6901:5;:1;6905;6901:5;:::i;:::-;6875:1;6877:10;6886:1;6877:6;:10;:::i;:::-;6875:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6875:13:8;6867:40;;6860:47;;;;;6841:3;;;;:::i;:::-;;;;6812:106;;-1:-1:-1;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;203:316:28:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:28;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:28;494:18;;;481:32;;203:316;-1:-1:-1;203:316:28:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;647:446;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:28;;-1:-1:-1;;647:446:28:o;1280:131::-;-1:-1:-1;;;;;1355:31:28;;1345:42;;1335:70;;1401:1;1398;1391:12;1416:383;1493:6;1501;1509;1562:2;1550:9;1541:7;1537:23;1533:32;1530:52;;;1578:1;1575;1568:12;1530:52;1614:9;1601:23;1591:33;;1674:2;1663:9;1659:18;1646:32;1687:31;1712:5;1687:31;:::i;:::-;1416:383;;1737:5;;-1:-1:-1;;;1789:2:28;1774:18;;;;1761:32;;1416:383::o;1804:180::-;1863:6;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;-1:-1:-1;1955:23:28;;1804:180;-1:-1:-1;1804:180:28:o;2181:304::-;-1:-1:-1;;;;;2411:15:28;;;2393:34;;2463:15;;2458:2;2443:18;;2436:43;2343:2;2328:18;;2181:304::o;2698:245::-;2765:6;2818:2;2806:9;2797:7;2793:23;2789:32;2786:52;;;2834:1;2831;2824:12;2786:52;2866:9;2860:16;2885:28;2907:5;2885:28;:::i;2948:127::-;3009:10;3004:3;3000:20;2997:1;2990:31;3040:4;3037:1;3030:15;3064:4;3061:1;3054:15;3080:253;3152:2;3146:9;3194:4;3182:17;;3229:18;3214:34;;3250:22;;;3211:62;3208:88;;;3276:18;;:::i;:::-;3312:2;3305:22;3080:253;:::o;3338:275::-;3409:2;3403:9;3474:2;3455:13;;-1:-1:-1;;3451:27:28;3439:40;;3509:18;3494:34;;3530:22;;;3491:62;3488:88;;;3556:18;;:::i;:::-;3592:2;3585:22;3338:275;;-1:-1:-1;3338:275:28:o;3618:191::-;3686:4;3719:18;3711:6;3708:30;3705:56;;;3741:18;;:::i;:::-;-1:-1:-1;3786:1:28;3782:14;3798:4;3778:25;;3618:191::o;3814:1368::-;3936:6;3967:2;4010;3998:9;3989:7;3985:23;3981:32;3978:52;;;4026:1;4023;4016:12;3978:52;4059:9;4053:16;4092:18;4084:6;4081:30;4078:50;;;4124:1;4121;4114:12;4078:50;4147:22;;4200:4;4192:13;;4188:27;-1:-1:-1;4178:55:28;;4229:1;4226;4219:12;4178:55;4258:2;4252:9;4281:68;4297:51;4345:2;4297:51;:::i;:::-;4281:68;:::i;:::-;4383:15;;;4445:4;4484:11;;;4476:20;;4472:29;;;4414:12;;;;4371:3;4513:19;;;4510:39;;;4545:1;4542;4535:12;4510:39;4569:11;;;;4589:563;4605:6;4600:3;4597:15;4589:563;;;4685:2;4679:3;4670:7;4666:17;4662:26;4659:116;;;4729:1;4758:2;4754;4747:14;4659:116;4801:22;;:::i;:::-;4857:3;4851:10;4874:33;4899:7;4874:33;:::i;:::-;4920:22;;4984:12;;;4978:19;4962:14;;;4955:43;5021:2;5065:12;;;5059:19;5043:14;;;5036:43;5092:18;;4622:12;;;;5130;;;;4589:563;;;-1:-1:-1;5171:5:28;3814:1368;-1:-1:-1;;;;;;;3814:1368:28:o;5187:184::-;5257:6;5310:2;5298:9;5289:7;5285:23;5281:32;5278:52;;;5326:1;5323;5316:12;5278:52;-1:-1:-1;5349:16:28;;5187:184;-1:-1:-1;5187:184:28:o;5376:402::-;-1:-1:-1;;;;;5661:15:28;;;5643:34;;5713:15;;;;5708:2;5693:18;;5686:43;5760:2;5745:18;;5738:34;;;;5593:2;5578:18;;5376:402::o;5783:127::-;5844:10;5839:3;5835:20;5832:1;5825:31;5875:4;5872:1;5865:15;5899:4;5896:1;5889:15;5915:127;5976:10;5971:3;5967:20;5964:1;5957:31;6007:4;6004:1;5997:15;6031:4;6028:1;6021:15;6047:127;6108:10;6103:3;6099:20;6096:1;6089:31;6139:4;6136:1;6129:15;6163:4;6160:1;6153:15;6179:125;6219:4;6247:1;6244;6241:8;6238:34;;;6252:18;;:::i;:::-;-1:-1:-1;6289:9:28;;6179:125::o;6309:422::-;6398:1;6441:5;6398:1;6455:270;6476:7;6466:8;6463:21;6455:270;;;6535:4;6531:1;6527:6;6523:17;6517:4;6514:27;6511:53;;;6544:18;;:::i;:::-;6594:7;6584:8;6580:22;6577:55;;;6614:16;;;;6577:55;6693:22;;;;6653:15;;;;6455:270;;;6459:3;6309:422;;;;;:::o;6736:806::-;6785:5;6815:8;6805:80;;-1:-1:-1;6856:1:28;6870:5;;6805:80;6904:4;6894:76;;-1:-1:-1;6941:1:28;6955:5;;6894:76;6986:4;7004:1;6999:59;;;;7072:1;7067:130;;;;6979:218;;6999:59;7029:1;7020:10;;7043:5;;;7067:130;7104:3;7094:8;7091:17;7088:43;;;7111:18;;:::i;:::-;-1:-1:-1;;7167:1:28;7153:16;;7182:5;;6979:218;;7281:2;7271:8;7268:16;7262:3;7256:4;7253:13;7249:36;7243:2;7233:8;7230:16;7225:2;7219:4;7216:12;7212:35;7209:77;7206:159;;;-1:-1:-1;7318:19:28;;;7350:5;;7206:159;7397:34;7422:8;7416:4;7397:34;:::i;:::-;7467:6;7463:1;7459:6;7455:19;7446:7;7443:32;7440:58;;;7478:18;;:::i;:::-;7516:20;;6736:806;-1:-1:-1;;;6736:806:28:o;7547:131::-;7607:5;7636:36;7663:8;7657:4;7636:36;:::i;7683:127::-;7744:10;7739:3;7735:20;7732:1;7725:31;7775:4;7772:1;7765:15;7799:4;7796:1;7789:15;7815:120;7855:1;7881;7871:35;;7886:18;;:::i;:::-;-1:-1:-1;7920:9:28;;7815:120::o;7940:168::-;7980:7;8046:1;8042;8038:6;8034:14;8031:1;8028:21;8023:1;8016:9;8009:17;8005:45;8002:71;;;8053:18;;:::i;:::-;-1:-1:-1;8093:9:28;;7940:168::o;8772:348::-;9002:2;8991:9;8984:21;8965:4;9022:49;9067:2;9056:9;9052:18;8685:2;8673:15;;-1:-1:-1;;;8713:4:28;8704:14;;8697:36;8758:2;8749:12;;8608:159;9022:49;9014:57;;9107:6;9102:2;9091:9;9087:18;9080:34;8772:348;;;;:::o;9289:::-;9519:2;9508:9;9501:21;9482:4;9539:49;9584:2;9573:9;9569:18;9202:2;9190:15;;-1:-1:-1;;;9230:4:28;9221:14;;9214:36;9275:2;9266:12;;9125:159;10141:251;10211:6;10264:2;10252:9;10243:7;10239:23;10235:32;10232:52;;;10280:1;10277;10270:12;10232:52;10312:9;10306:16;10331:31;10356:5;10331:31;:::i;12034:112::-;12066:1;12092;12082:35;;12097:18;;:::i;:::-;-1:-1:-1;12131:9:28;;12034:112::o;12151:128::-;12191:3;12222:1;12218:6;12215:1;12212:13;12209:39;;;12228:18;;:::i;:::-;-1:-1:-1;12264:9:28;;12151:128::o;12284:274::-;-1:-1:-1;;;;;12476:32:28;;;;12458:51;;12540:2;12525:18;;12518:34;12446:2;12431:18;;12284:274::o;12563:345::-;-1:-1:-1;;;;;12783:32:28;;;;12765:51;;12847:2;12832:18;;12825:34;;;;12890:2;12875:18;;12868:34;12753:2;12738:18;;12563:345::o;17126:258::-;17198:1;17208:113;17222:6;17219:1;17216:13;17208:113;;;17298:11;;;17292:18;17279:11;;;17272:39;17244:2;17237:10;17208:113;;;17339:6;17336:1;17333:13;17330:48;;;-1:-1:-1;;17374:1:28;17356:16;;17349:27;17126:258::o;17389:371::-;-1:-1:-1;;;;;;17574:33:28;;17562:46;;17631:13;;17544:3;;17653:61;17631:13;17703:1;17694:11;;17687:4;17675:17;;17653:61;:::i;:::-;17734:16;;;;17752:1;17730:24;;17389:371;-1:-1:-1;;;17389:371:28:o;17765:274::-;17894:3;17932:6;17926:13;17948:53;17994:6;17989:3;17982:4;17974:6;17970:17;17948:53;:::i;:::-;18017:16;;;;;17765:274;-1:-1:-1;;17765:274:28:o;18447:258::-;18489:3;18527:5;18521:12;18554:6;18549:3;18542:19;18570:63;18626:6;18619:4;18614:3;18610:14;18603:4;18596:5;18592:16;18570:63;:::i;:::-;18687:2;18666:15;-1:-1:-1;;18662:29:28;18653:39;;;;18694:4;18649:50;;18447:258;-1:-1:-1;;18447:258:28:o;18710:440::-;18960:2;18949:9;18942:21;18923:4;18986:49;19031:2;19020:9;19016:18;8685:2;8673:15;;-1:-1:-1;;;8713:4:28;8704:14;;8697:36;8758:2;8749:12;;8608:159;18986:49;19083:9;19075:6;19071:22;19066:2;19055:9;19051:18;19044:50;19111:33;19137:6;19129;19111:33;:::i;19155:440::-;19405:2;19394:9;19387:21;19368:4;19431:49;19476:2;19465:9;19461:18;9202:2;9190:15;;-1:-1:-1;;;9230:4:28;9221:14;;9214:36;9275:2;9266:12;;9125:159;20409:374;20639:2;20628:9;20621:21;20602:4;20659:49;20704:2;20693:9;20689:18;8685:2;8673:15;;-1:-1:-1;;;8713:4:28;8704:14;;8697:36;8758:2;8749:12;;8608:159;20659:49;-1:-1:-1;;;;;20744:32:28;;;;20739:2;20724:18;;;;20717:60;;;;-1:-1:-1;20651:57:28;20409:374::o;20788:::-;21018:2;21007:9;21000:21;20981:4;21038:49;21083:2;21072:9;21068:18;9202:2;9190:15;;-1:-1:-1;;;9230:4:28;9221:14;;9214:36;9275:2;9266:12;;9125:159;21598:291;21775:2;21764:9;21757:21;21738:4;21795:45;21836:2;21825:9;21821:18;21813:6;21795:45;:::i;:::-;21787:53;;21876:6;21871:2;21860:9;21856:18;21849:34;21598:291;;;;;:::o;21894:610::-;22140:13;;22083:3;;22114;;22193:4;22220:15;;;22083:3;22263:175;22277:6;22274:1;22271:13;22263:175;;;22340:13;;22326:28;;22376:14;;;;22413:15;;;;22299:1;22292:9;22263:175;;;-1:-1:-1;;22447:21:28;;;-1:-1:-1;22484:14:28;;;;;-1:-1:-1;;;21894:610:28:o;22698:556::-;22900:2;22882:21;;;22939:3;22919:18;;;22912:31;22979:34;22974:2;22959:18;;22952:62;23050:34;23045:2;23030:18;;23023:62;23122:34;23116:3;23101:19;;23094:63;-1:-1:-1;;;23188:3:28;23173:19;;23166:46;23244:3;23229:19;;22698:556::o;23259:135::-;23298:3;23319:17;;;23316:43;;23339:18;;:::i;:::-;-1:-1:-1;23386:1:28;23375:13;;23259:135::o;23399:667::-;23464:5;23517:3;23510:4;23502:6;23498:17;23494:27;23484:55;;23535:1;23532;23525:12;23484:55;23564:6;23558:13;23590:4;23614:68;23630:51;23678:2;23630:51;:::i;23614:68::-;23716:15;;;23802:1;23798:10;;;;23786:23;;23782:32;;;23747:12;;;;23826:15;;;23823:35;;;23854:1;23851;23844:12;23823:35;23890:2;23882:6;23878:15;23902:135;23918:6;23913:3;23910:15;23902:135;;;23984:10;;23972:23;;24015:12;;;;23935;;23902:135;;;-1:-1:-1;24055:5:28;23399:667;-1:-1:-1;;;;;;23399:667:28:o;24071:614::-;24200:6;24208;24261:2;24249:9;24240:7;24236:23;24232:32;24229:52;;;24277:1;24274;24267:12;24229:52;24310:9;24304:16;24339:18;24380:2;24372:6;24369:14;24366:34;;;24396:1;24393;24386:12;24366:34;24419:72;24483:7;24474:6;24463:9;24459:22;24419:72;:::i;:::-;24409:82;;24537:2;24526:9;24522:18;24516:25;24500:41;;24566:2;24556:8;24553:16;24550:36;;;24582:1;24579;24572:12;24550:36;;24605:74;24671:7;24660:8;24649:9;24645:24;24605:74;:::i;:::-;24595:84;;;24071:614;;;;;:::o;24690:442::-;-1:-1:-1;;;;;24937:32:28;;;;24919:51;;-1:-1:-1;;;;;;25006:33:28;;;;25001:2;24986:18;;24979:61;25071:2;25056:18;;25049:34;25114:2;25099:18;;25092:34;24906:3;24891:19;;24690:442::o", "linkReferences": {} }, "methodIdentifiers": { @@ -902,1110 +902,21 @@ "withinDiff(uint256,uint256,uint256)": "344b1478", "withinPrecision(uint256,uint256,uint256)": "30f7c5c3" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"INTEREST_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LATEFEE_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PREMIUM_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"nonZero\",\"type\":\"bool\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createActors\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"symbol\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUpTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_addInvestor_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_addInvestor_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_claim_edge_cases\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"test_vesting_claim_fuzzing1\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"test_vesting_claim_fuzzing2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_claim_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_claim_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_enableVesting_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_enableVesting_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_getAmountToClaim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_getAmountToClaim_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_init_state\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_removeInvestor_largeArray\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_removeInvestor_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_removeInvestor_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_withdrawErc20_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_withdrawErc20_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expectedDiff\",\"type\":\"uint256\"}],\"name\":\"withinDiff\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accuracy\",\"type\":\"uint256\"}],\"name\":\"withinPrecision\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"test_vesting_addInvestor_restrictions()\":{\"details\":\"Verifies addInvestor restrictions\"},\"test_vesting_addInvestor_state_changes()\":{\"details\":\"Verifies addInvestor state changes\"},\"test_vesting_claim_edge_cases()\":{\"details\":\"Verifies claim() edge cases\"},\"test_vesting_claim_fuzzing1(uint256)\":{\"details\":\"Verifies claim() state changes using fuzzing\"},\"test_vesting_claim_fuzzing2(uint256)\":{\"details\":\"Verifies claim() edge cases using fuzzing\"},\"test_vesting_claim_restrictions()\":{\"details\":\"Verifies claim() restrictions\"},\"test_vesting_claim_state_changes()\":{\"details\":\"Verifies claim() state changes\"},\"test_vesting_enableVesting_restrictions()\":{\"details\":\"Verifies enableVesting restrictions.\"},\"test_vesting_enableVesting_state_changes()\":{\"details\":\"Verifies enableVesting state changes.\"},\"test_vesting_getAmountToClaim()\":{\"details\":\"Verifies getAmountToClaim()\"},\"test_vesting_getAmountToClaim_restrictions()\":{\"details\":\"Verifies getAmountToClaim() restrictions\"},\"test_vesting_removeInvestor_largeArray()\":{\"details\":\"Verifies removeInvestor() pops elements correctly from investorLibrary[]\"},\"test_vesting_removeInvestor_restrictions()\":{\"details\":\"Verifies removeInvestor() restrictions\"},\"test_vesting_removeInvestor_state_changes()\":{\"details\":\"Verifies removeInvestor() state changes\"},\"test_vesting_withdrawErc20_restrictions()\":{\"details\":\"Verifies withdrawErc20 restrictions.\"},\"test_vesting_withdrawErc20_state_changes()\":{\"details\":\"Verifies withdrawErc20 state changes.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Vesting.t.sol\":\"VestingTest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/Vesting.sol\":{\"keccak256\":\"0x9bbba0177c1e6e33919153caf168a978cea4140158713283ddf39e8f9efd5b4a\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://2b3e9f85c2c9b104be07aed03ae1f719d3a6712a8447fc37e1efd73e3c07dcd8\",\"dweb:/ipfs/QmewoBQ8Uu8VRfVFuizmPYgsWNKFfaQQqaSDjMMNhNJzaC\"]},\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]},\"src/interfaces/Interfaces.sol\":{\"keccak256\":\"0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7\",\"dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a\",\"dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb\"]},\"test/Utility.sol\":{\"keccak256\":\"0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775\",\"dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds\"]},\"test/Vesting.t.sol\":{\"keccak256\":\"0x02f8343a68c319fb9bc7f4af32804b4ed81d71233cf64e2122e9f9ea846e9ca6\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://0a25cbe0d6551eb7f8427c3ff95ffed7872ed88b22be8ced21fd441247489089\",\"dweb:/ipfs/QmREkZYB6NUpmUoo9Prpe9723FaA71K2xZHhqe3vniGuuq\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "address", - "name": "", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "bool", - "name": "", - "type": "bool", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - }, - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "Debug", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "val", - "type": "uint256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256[]", - "name": "val", - "type": "int256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "val", - "type": "address[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address", - "name": "val", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_named_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256[]", - "name": "val", - "type": "uint256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256[]", - "name": "val", - "type": "int256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address[]", - "name": "val", - "type": "address[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes", - "name": "val", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes32", - "name": "val", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "string", - "name": "val", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_named_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "logs", - "anonymous": false - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "CL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "DL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "FL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "INTEREST_CALC_TYPE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "IS_TEST", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "LATEFEE_CALC_TYPE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "LL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "PREMIUM_CALC_TYPE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "SL_FACTORY", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "min", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "max", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "nonZero", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "constrictToRange", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "min", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "max", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "constrictToRange", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "createActors" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "failed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "symbol", - "type": "bytes32" - }, - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amt", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "mint" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "setUp" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "setUpTokens" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_addInvestor_restrictions" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_addInvestor_state_changes" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_claim_edge_cases" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_claim_fuzzing1" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_claim_fuzzing2" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_claim_restrictions" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_claim_state_changes" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_enableVesting_restrictions" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_enableVesting_state_changes" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_getAmountToClaim" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_getAmountToClaim_restrictions" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_init_state" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_removeInvestor_largeArray" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_removeInvestor_restrictions" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_removeInvestor_state_changes" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_withdrawErc20_restrictions" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "test_vesting_withdrawErc20_state_changes" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val0", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "val1", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "expectedDiff", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "withinDiff" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "val0", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "val1", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "accuracy", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "withinPrecision" - } - ], - "devdoc": { - "kind": "dev", - "methods": { - "test_vesting_addInvestor_restrictions()": { - "details": "Verifies addInvestor restrictions" - }, - "test_vesting_addInvestor_state_changes()": { - "details": "Verifies addInvestor state changes" - }, - "test_vesting_claim_edge_cases()": { - "details": "Verifies claim() edge cases" - }, - "test_vesting_claim_fuzzing1(uint256)": { - "details": "Verifies claim() state changes using fuzzing" - }, - "test_vesting_claim_fuzzing2(uint256)": { - "details": "Verifies claim() edge cases using fuzzing" - }, - "test_vesting_claim_restrictions()": { - "details": "Verifies claim() restrictions" - }, - "test_vesting_claim_state_changes()": { - "details": "Verifies claim() state changes" - }, - "test_vesting_enableVesting_restrictions()": { - "details": "Verifies enableVesting restrictions." - }, - "test_vesting_enableVesting_state_changes()": { - "details": "Verifies enableVesting state changes." - }, - "test_vesting_getAmountToClaim()": { - "details": "Verifies getAmountToClaim()" - }, - "test_vesting_getAmountToClaim_restrictions()": { - "details": "Verifies getAmountToClaim() restrictions" - }, - "test_vesting_removeInvestor_largeArray()": { - "details": "Verifies removeInvestor() pops elements correctly from investorLibrary[]" - }, - "test_vesting_removeInvestor_restrictions()": { - "details": "Verifies removeInvestor() restrictions" - }, - "test_vesting_removeInvestor_state_changes()": { - "details": "Verifies removeInvestor() state changes" - }, - "test_vesting_withdrawErc20_restrictions()": { - "details": "Verifies withdrawErc20 restrictions." - }, - "test_vesting_withdrawErc20_state_changes()": { - "details": "Verifies withdrawErc20 state changes." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "test/Vesting.t.sol": "VestingTest" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/lib/ds-test/src/test.sol": { - "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", - "urls": [ - "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", - "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" - ], - "license": "GPL-3.0-or-later" - }, - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdAssertions.sol": { - "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", - "urls": [ - "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", - "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdError.sol": { - "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", - "urls": [ - "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", - "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Test.sol": { - "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", - "urls": [ - "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", - "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - }, - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - }, - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - }, - "src/Vesting.sol": { - "keccak256": "0x9bbba0177c1e6e33919153caf168a978cea4140158713283ddf39e8f9efd5b4a", - "urls": [ - "bzz-raw://2b3e9f85c2c9b104be07aed03ae1f719d3a6712a8447fc37e1efd73e3c07dcd8", - "dweb:/ipfs/QmewoBQ8Uu8VRfVFuizmPYgsWNKFfaQQqaSDjMMNhNJzaC" - ], - "license": "UNLICENSED" - }, - "src/extensions/Context.sol": { - "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", - "urls": [ - "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", - "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" - ], - "license": "MIT" - }, - "src/extensions/Ownable.sol": { - "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", - "urls": [ - "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", - "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" - ], - "license": "MIT" - }, - "src/interfaces/Interfaces.sol": { - "keccak256": "0x741b318f522ba8451f4a2e40afcf59e995484318fabe7c57adeba3124bbd7e04", - "urls": [ - "bzz-raw://dba0a37a10519080f892d5c8b87a0ec026ef73492195a901e49f74766b5915f7", - "dweb:/ipfs/QmduauRea8YdqJaMeHiYH2tRtbydoqgVirSaTzbXMoEjYX" - ], - "license": "GPL-3.0-or-later" - }, - "src/users/Actor.sol": { - "keccak256": "0x4d9d9176a043f8212d9f383afa33565fcc83845346ae77d6b4bd80a5ece31b5e", - "urls": [ - "bzz-raw://6c9d789e1e106682d4ee38523b8b8af1b02903aba1079e5dc2ec31ecf709f96a", - "dweb:/ipfs/QmSuGiTD8dPDXBLU4B3EoJK2zyQz3MQ9GKYiWzPyJnasRb" - ], - "license": "AGPL-3.0-or-later" - }, - "test/Utility.sol": { - "keccak256": "0xcea126c8754daffe443e2328ce2424b7b3dcafec7f3bb73c1f85c1502849552f", - "urls": [ - "bzz-raw://386bb899985ba398a7e34cc5a15c99c73c3a55b4d40356aa01f1147a8b377775", - "dweb:/ipfs/QmSQE7R4iNQhVyNSWj9Gs839udCrTm2EiuvezJLuwS7vds" - ], - "license": "AGPL-3.0-or-later" - }, - "test/Vesting.t.sol": { - "keccak256": "0x02f8343a68c319fb9bc7f4af32804b4ed81d71233cf64e2122e9f9ea846e9ca6", - "urls": [ - "bzz-raw://0a25cbe0d6551eb7f8427c3ff95ffed7872ed88b22be8ced21fd441247489089", - "dweb:/ipfs/QmREkZYB6NUpmUoo9Prpe9723FaA71K2xZHhqe3vniGuuq" - ], - "license": "UNLICENSED" - } - }, - "version": 1 - }, "ast": { "absolutePath": "test/Vesting.t.sol", - "id": 30102, + "id": 32766, "exportedSymbols": { "Actor": [ - 27329 + 29769 ], "DSTest": [ 1786 ], "Hevm": [ - 27348 + 29991 ], "IERC20": [ - 26369 + 29102 ], "StdAssertions": [ 2671 @@ -2029,16 +940,16 @@ 1843 ], "User": [ - 27356 + 29999 ], "Utility": [ - 27876 + 30522 ], "Vesting": [ - 26061 + 28040 ], "VestingTest": [ - 30101 + 32765 ], "Vm": [ 9315 @@ -2063,13 +974,12 @@ ] }, "nodeType": "SourceUnit", - "src": "40:21492:20", + "src": "40:21271:27", "nodes": [ { - "id": 27878, + "id": 30524, "nodeType": "PragmaDirective", - "src": "40:24:20", - "nodes": [], + "src": "40:24:27", "literals": [ "solidity", "^", @@ -2078,50 +988,47 @@ ] }, { - "id": 27879, + "id": 30525, "nodeType": "ImportDirective", - "src": "68:39:20", - "nodes": [], + "src": "68:39:27", "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 30102, + "scope": 32766, "sourceUnit": 8159, "symbolAliases": [], "unitAlias": "" }, { - "id": 27880, + "id": 30526, "nodeType": "ImportDirective", - "src": "109:23:20", - "nodes": [], + "src": "109:23:27", "absolutePath": "test/Utility.sol", "file": "./Utility.sol", "nameLocation": "-1:-1:-1", - "scope": 30102, - "sourceUnit": 27877, + "scope": 32766, + "sourceUnit": 30523, "symbolAliases": [], "unitAlias": "" }, { - "id": 27882, + "id": 30528, "nodeType": "ImportDirective", - "src": "134:45:20", - "nodes": [], + "src": "158:46:27", "absolutePath": "src/Vesting.sol", "file": "../src/Vesting.sol", "nameLocation": "-1:-1:-1", - "scope": 30102, - "sourceUnit": 26062, + "scope": 32766, + "sourceUnit": 28041, "symbolAliases": [ { "foreign": { - "id": 27881, + "id": 30527, "name": "Vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26061, - "src": "143:7:20", + "referencedDeclaration": 28040, + "src": "167:7:27", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" @@ -2130,147 +1037,139 @@ "unitAlias": "" }, { - "id": 30101, + "id": 32765, "nodeType": "ContractDefinition", - "src": "183:21347:20", + "src": "208:21101:27", "nodes": [ { - "id": 27889, + "id": 30535, "nodeType": "VariableDeclaration", - "src": "228:15:20", - "nodes": [], + "src": "253:15:27", "constant": false, "mutability": "mutable", "name": "vesting", - "nameLocation": "236:7:20", - "scope": 30101, + "nameLocation": "261:7:27", + "scope": 32765, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" }, "typeName": { - "id": 27888, + "id": 30534, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27887, + "id": 30533, "name": "Vesting", - "nameLocations": [ - "228:7:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26061, - "src": "228:7:20" + "referencedDeclaration": 28040, + "src": "253:7:27" }, - "referencedDeclaration": 26061, - "src": "228:7:20", + "referencedDeclaration": 28040, + "src": "253:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, "visibility": "internal" }, { - "id": 27914, + "id": 30557, "nodeType": "FunctionDefinition", - "src": "252:412:20", - "nodes": [], + "src": "277:210:27", "body": { - "id": 27913, + "id": 30556, "nodeType": "Block", - "src": "276:388:20", - "nodes": [], + "src": "301:186:27", "statements": [ { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27892, + "id": 30538, "name": "createActors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27546, - "src": "287:12:20", + "referencedDeclaration": 30192, + "src": "312:12:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27893, + "id": 30539, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "287:14:20", + "src": "312:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27894, + "id": 30540, "nodeType": "ExpressionStatement", - "src": "287:14:20" + "src": "312:14:27" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27895, + "id": 30541, "name": "setUpTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27627, - "src": "312:11:20", + "referencedDeclaration": 30273, + "src": "337:11:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27896, + "id": 30542, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "312:13:20", + "src": "337:13:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27897, + "id": 30543, "nodeType": "ExpressionStatement", - "src": "312:13:20" + "src": "337:13:27" }, { "expression": { - "id": 27911, + "id": 30554, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27898, + "id": 30544, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "374:7:20", + "referencedDeclaration": 30535, + "src": "399:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, @@ -2279,61 +1178,12 @@ "rightHandSide": { "arguments": [ { - "arguments": [ - { - "hexValue": "307863303065393443623636324333353230323832453666353731373231343030344137663236383838", - "id": 27904, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "573:42:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xc00e94Cb662C3520282E6f5717214004A7f26888" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 27903, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "565:7:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 27902, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "565:7:20", - "typeDescriptions": {} - } - }, - "id": 27905, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "565:51:20", - "tryCall": false, + "id": 30548, + "name": "FRAX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30028, + "src": "435:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2342,14 +1192,14 @@ { "arguments": [ { - "id": 27908, + "id": 30551, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "641:3:20", + "referencedDeclaration": 30010, + "src": "464:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -2357,39 +1207,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 27907, + "id": 30550, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "633:7:20", + "src": "456:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27906, + "id": 30549, "name": "address", "nodeType": "ElementaryTypeName", - "src": "633:7:20", + "src": "456:7:27", "typeDescriptions": {} } }, - "id": 27909, + "id": 30552, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "633:12:20", + "src": "456:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -2408,63 +1257,59 @@ "typeString": "address" } ], - "id": 27901, + "id": 30547, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "384:11:20", + "src": "409:11:27", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_address_$_t_address_$returns$_t_contract$_Vesting_$26061_$", + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$_t_address_$returns$_t_contract$_Vesting_$28040_$", "typeString": "function (address,address) returns (contract Vesting)" }, "typeName": { - "id": 27900, + "id": 30546, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27899, + "id": 30545, "name": "Vesting", - "nameLocations": [ - "388:7:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 26061, - "src": "388:7:20" + "referencedDeclaration": 28040, + "src": "413:7:27" }, - "referencedDeclaration": 26061, - "src": "388:7:20", + "referencedDeclaration": 28040, + "src": "413:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } }, - "id": 27910, + "id": 30553, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "384:272:20", + "src": "409:70:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "src": "374:282:20", + "src": "399:80:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 27912, + "id": 30555, "nodeType": "ExpressionStatement", - "src": "374:282:20" + "src": "399:80:27" } ] }, @@ -2473,34 +1318,32 @@ "kind": "function", "modifiers": [], "name": "setUp", - "nameLocation": "261:5:20", + "nameLocation": "286:5:27", "parameters": { - "id": 27890, + "id": 30536, "nodeType": "ParameterList", "parameters": [], - "src": "266:2:20" + "src": "291:2:27" }, "returnParameters": { - "id": 27891, + "id": 30537, "nodeType": "ParameterList", "parameters": [], - "src": "276:0:20" + "src": "301:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27942, + "id": 30582, "nodeType": "FunctionDefinition", - "src": "700:254:20", - "nodes": [], + "src": "523:207:27", "body": { - "id": 27941, + "id": 30581, "nodeType": "Block", - "src": "742:212:20", - "nodes": [], + "src": "565:165:27", "statements": [ { "expression": { @@ -2510,108 +1353,57 @@ "expression": { "argumentTypes": [], "expression": { - "id": 27918, + "id": 30561, "name": "vesting", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "762:7:20", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", - "typeString": "contract Vesting" - } - }, - "id": 27919, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "770:10:20", - "memberName": "proveToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "762:18:20", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 27920, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "762:20:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "307863303065393443623636324333353230323832453666353731373231343030344137663236383838", - "id": 27923, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "798:42:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xc00e94Cb662C3520282E6f5717214004A7f26888" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30535, + "src": "585:7:27", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" } - ], - "id": 27922, + }, + "id": 30562, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "790:7:20", + "memberName": "proveToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 27449, + "src": "585:18:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 27921, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "790:7:20", - "typeDescriptions": {} + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" } }, - "id": 27924, + "id": 30563, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "typeConversion", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "790:51:20", + "src": "585:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } + }, + { + "id": 30564, + "name": "FRAX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30028, + "src": "613:4:27", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } } ], "expression": { @@ -2625,7 +1417,7 @@ "typeString": "address" } ], - "id": 27917, + "id": 30560, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2651,31 +1443,30 @@ 1674 ], "referencedDeclaration": 320, - "src": "753:8:20", + "src": "576:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 27925, + "id": 30565, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "753:89:20", + "src": "576:42:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27926, + "id": 30566, "nodeType": "ExpressionStatement", - "src": "753:89:20" + "src": "576:42:27" }, { "expression": { @@ -2685,42 +1476,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 27928, + "id": 30568, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "862:7:20", + "referencedDeclaration": 30535, + "src": "638:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 27929, + "id": 30569, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "870:16:20", "memberName": "vestingStartUnix", "nodeType": "MemberAccess", - "referencedDeclaration": 25488, - "src": "862:24:20", + "referencedDeclaration": 27452, + "src": "638:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 27930, + "id": 30570, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "862:26:20", + "src": "638:26:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2729,14 +1518,14 @@ }, { "hexValue": "30", - "id": 27931, + "id": 30571, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "890:1:20", + "src": "666:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -2755,7 +1544,7 @@ "typeString": "int_const 0" } ], - "id": 27927, + "id": 30567, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2781,31 +1570,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "853:8:20", + "src": "629:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 27932, + "id": 30572, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "853:39:20", + "src": "629:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27933, + "id": 30573, "nodeType": "ExpressionStatement", - "src": "853:39:20" + "src": "629:39:27" }, { "expression": { @@ -2815,42 +1603,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 27935, + "id": 30575, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "912:7:20", + "referencedDeclaration": 30535, + "src": "688:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 27936, + "id": 30576, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "920:14:20", "memberName": "vestingEnabled", "nodeType": "MemberAccess", - "referencedDeclaration": 25491, - "src": "912:22:20", + "referencedDeclaration": 27455, + "src": "688:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bool_$", "typeString": "function () view external returns (bool)" } }, - "id": 27937, + "id": 30577, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "912:24:20", + "src": "688:24:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2859,14 +1645,14 @@ }, { "hexValue": "66616c7365", - "id": 27938, + "id": 30578, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "940:5:20", + "src": "716:5:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2885,7 +1671,7 @@ "typeString": "bool" } ], - "id": 27934, + "id": 30574, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2911,31 +1697,30 @@ 1674 ], "referencedDeclaration": 1974, - "src": "903:8:20", + "src": "679:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 27939, + "id": 30579, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "903:43:20", + "src": "679:43:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27940, + "id": 30580, "nodeType": "ExpressionStatement", - "src": "903:43:20" + "src": "679:43:27" } ] }, @@ -2944,40 +1729,38 @@ "kind": "function", "modifiers": [], "name": "test_vesting_init_state", - "nameLocation": "709:23:20", + "nameLocation": "532:23:27", "parameters": { - "id": 27915, + "id": 30558, "nodeType": "ParameterList", "parameters": [], - "src": "732:2:20" + "src": "555:2:27" }, "returnParameters": { - "id": 27916, + "id": 30559, "nodeType": "ParameterList", "parameters": [], - "src": "742:0:20" + "src": "565:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27990, + "id": 30630, "nodeType": "FunctionDefinition", - "src": "1049:596:20", - "nodes": [], + "src": "825:596:27", "body": { - "id": 27989, + "id": 30629, "nodeType": "Block", - "src": "1107:538:20", - "nodes": [], + "src": "883:538:27", "statements": [ { "expression": { "arguments": [ { - "id": 27954, + "id": 30594, "isConstant": false, "isLValue": false, "isPure": false, @@ -2985,20 +1768,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1184:40:20", + "src": "960:40:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 27951, + "id": 30591, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "1215:7:20", + "referencedDeclaration": 30535, + "src": "991:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -3006,39 +1789,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 27950, + "id": 30590, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1207:7:20", + "src": "983:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27949, + "id": 30589, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1207:7:20", + "src": "983:7:27", "typeDescriptions": {} } }, - "id": 27952, + "id": 30592, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1207:16:20", + "src": "983:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3054,42 +1836,40 @@ } ], "expression": { - "id": 27947, + "id": 30587, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "1185:3:20", + "referencedDeclaration": 30013, + "src": "961:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 27948, + "id": 30588, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1189:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "1185:21:20", + "referencedDeclaration": 29622, + "src": "961:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 27953, + "id": 30593, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1185:39:20", + "src": "961:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3109,42 +1889,41 @@ "typeString": "bool" } ], - "id": 27946, + "id": 30586, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1177:6:20", + "src": "953:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 27955, + "id": 30595, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1177:48:20", + "src": "953:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27956, + "id": 30596, "nodeType": "ExpressionStatement", - "src": "1177:48:20" + "src": "953:48:27" }, { "expression": { "arguments": [ { - "id": 27965, + "id": 30605, "isConstant": false, "isLValue": false, "isPure": false, @@ -3152,20 +1931,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1304:40:20", + "src": "1080:40:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 27962, + "id": 30602, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "1335:7:20", + "referencedDeclaration": 30535, + "src": "1111:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -3173,39 +1952,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 27961, + "id": 30601, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1327:7:20", + "src": "1103:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27960, + "id": 30600, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1327:7:20", + "src": "1103:7:27", "typeDescriptions": {} } }, - "id": 27963, + "id": 30603, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1327:16:20", + "src": "1103:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3221,42 +1999,40 @@ } ], "expression": { - "id": 27958, + "id": 30598, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "1305:3:20", + "referencedDeclaration": 30007, + "src": "1081:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 27959, + "id": 30599, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1309:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "1305:21:20", + "referencedDeclaration": 29622, + "src": "1081:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 27964, + "id": 30604, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1305:39:20", + "src": "1081:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3276,36 +2052,35 @@ "typeString": "bool" } ], - "id": 27957, + "id": 30597, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1297:6:20", + "src": "1073:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 27966, + "id": 30606, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1297:48:20", + "src": "1073:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27967, + "id": 30607, "nodeType": "ExpressionStatement", - "src": "1297:48:20" + "src": "1073:48:27" }, { "expression": { @@ -3315,14 +2090,14 @@ { "arguments": [ { - "id": 27973, + "id": 30613, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "1470:7:20", + "referencedDeclaration": 30535, + "src": "1246:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -3330,39 +2105,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 27972, + "id": 30612, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1462:7:20", + "src": "1238:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27971, + "id": 30611, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1462:7:20", + "src": "1238:7:27", "typeDescriptions": {} } }, - "id": 27974, + "id": 30614, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1462:16:20", + "src": "1238:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3378,42 +2152,40 @@ } ], "expression": { - "id": 27969, + "id": 30609, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "1440:3:20", + "referencedDeclaration": 30010, + "src": "1216:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 27970, + "id": 30610, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1444:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "1440:21:20", + "referencedDeclaration": 29622, + "src": "1216:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 27975, + "id": 30615, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1440:39:20", + "src": "1216:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3428,42 +2200,41 @@ "typeString": "bool" } ], - "id": 27968, + "id": 30608, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1433:6:20", + "src": "1209:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 27976, + "id": 30616, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1433:47:20", + "src": "1209:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27977, + "id": 30617, "nodeType": "ExpressionStatement", - "src": "1433:47:20" + "src": "1209:47:27" }, { "expression": { "arguments": [ { - "id": 27986, + "id": 30626, "isConstant": false, "isLValue": false, "isPure": false, @@ -3471,20 +2242,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1596:40:20", + "src": "1372:40:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 27983, + "id": 30623, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "1627:7:20", + "referencedDeclaration": 30535, + "src": "1403:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -3492,39 +2263,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 27982, + "id": 30622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1619:7:20", + "src": "1395:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27981, + "id": 30621, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1619:7:20", + "src": "1395:7:27", "typeDescriptions": {} } }, - "id": 27984, + "id": 30624, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1619:16:20", + "src": "1395:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3540,42 +2310,40 @@ } ], "expression": { - "id": 27979, + "id": 30619, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "1597:3:20", + "referencedDeclaration": 30010, + "src": "1373:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 27980, + "id": 30620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1601:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "1597:21:20", + "referencedDeclaration": 29622, + "src": "1373:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 27985, + "id": 30625, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1597:39:20", + "src": "1373:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3595,43 +2363,42 @@ "typeString": "bool" } ], - "id": 27978, + "id": 30618, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1589:6:20", + "src": "1365:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 27987, + "id": 30627, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1589:48:20", + "src": "1365:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27988, + "id": 30628, "nodeType": "ExpressionStatement", - "src": "1589:48:20" + "src": "1365:48:27" } ] }, "documentation": { - "id": 27943, + "id": 30583, "nodeType": "StructuredDocumentation", - "src": "998:45:20", + "src": "774:45:27", "text": "@dev Verifies enableVesting restrictions." }, "functionSelector": "f4ceccba", @@ -3639,34 +2406,32 @@ "kind": "function", "modifiers": [], "name": "test_vesting_enableVesting_restrictions", - "nameLocation": "1058:39:20", + "nameLocation": "834:39:27", "parameters": { - "id": 27944, + "id": 30584, "nodeType": "ParameterList", "parameters": [], - "src": "1097:2:20" + "src": "873:2:27" }, "returnParameters": { - "id": 27945, + "id": 30585, "nodeType": "ParameterList", "parameters": [], - "src": "1107:0:20" + "src": "883:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28034, + "id": 30674, "nodeType": "FunctionDefinition", - "src": "1705:443:20", - "nodes": [], + "src": "1481:443:27", "body": { - "id": 28033, + "id": 30673, "nodeType": "Block", - "src": "1764:384:20", - "nodes": [], + "src": "1540:384:27", "statements": [ { "expression": { @@ -3676,42 +2441,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 27995, + "id": 30635, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "1813:7:20", + "referencedDeclaration": 30535, + "src": "1589:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 27996, + "id": 30636, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1821:16:20", "memberName": "vestingStartUnix", "nodeType": "MemberAccess", - "referencedDeclaration": 25488, - "src": "1813:24:20", + "referencedDeclaration": 27452, + "src": "1589:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 27997, + "id": 30637, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1813:26:20", + "src": "1589:26:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3720,14 +2483,14 @@ }, { "hexValue": "30", - "id": 27998, + "id": 30638, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1841:1:20", + "src": "1617:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -3746,7 +2509,7 @@ "typeString": "int_const 0" } ], - "id": 27994, + "id": 30634, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3772,31 +2535,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "1804:8:20", + "src": "1580:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 27999, + "id": 30639, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1804:39:20", + "src": "1580:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28000, + "id": 30640, "nodeType": "ExpressionStatement", - "src": "1804:39:20" + "src": "1580:39:27" }, { "expression": { @@ -3806,42 +2568,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28002, + "id": 30642, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "1863:7:20", + "referencedDeclaration": 30535, + "src": "1639:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28003, + "id": 30643, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1871:14:20", "memberName": "vestingEnabled", "nodeType": "MemberAccess", - "referencedDeclaration": 25491, - "src": "1863:22:20", + "referencedDeclaration": 27455, + "src": "1639:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bool_$", "typeString": "function () view external returns (bool)" } }, - "id": 28004, + "id": 30644, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1863:24:20", + "src": "1639:24:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3850,14 +2610,14 @@ }, { "hexValue": "66616c7365", - "id": 28005, + "id": 30645, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1891:5:20", + "src": "1667:5:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3876,7 +2636,7 @@ "typeString": "bool" } ], - "id": 28001, + "id": 30641, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3902,31 +2662,30 @@ 1674 ], "referencedDeclaration": 1974, - "src": "1854:8:20", + "src": "1630:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28006, + "id": 30646, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1854:43:20", + "src": "1630:43:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28007, + "id": 30647, "nodeType": "ExpressionStatement", - "src": "1854:43:20" + "src": "1630:43:27" }, { "expression": { @@ -3936,14 +2695,14 @@ { "arguments": [ { - "id": 28013, + "id": 30653, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "1981:7:20", + "referencedDeclaration": 30535, + "src": "1757:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -3951,39 +2710,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28012, + "id": 30652, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1973:7:20", + "src": "1749:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28011, + "id": 30651, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1973:7:20", + "src": "1749:7:27", "typeDescriptions": {} } }, - "id": 28014, + "id": 30654, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1973:16:20", + "src": "1749:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3999,42 +2757,40 @@ } ], "expression": { - "id": 28009, + "id": 30649, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "1951:3:20", + "referencedDeclaration": 30010, + "src": "1727:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28010, + "id": 30650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "1955:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "1951:21:20", + "referencedDeclaration": 29622, + "src": "1727:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 28015, + "id": 30655, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1951:39:20", + "src": "1727:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4049,36 +2805,35 @@ "typeString": "bool" } ], - "id": 28008, + "id": 30648, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1944:6:20", + "src": "1720:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28016, + "id": 30656, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1944:47:20", + "src": "1720:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28017, + "id": 30657, "nodeType": "ExpressionStatement", - "src": "1944:47:20" + "src": "1720:47:27" }, { "expression": { @@ -4088,42 +2843,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28019, + "id": 30659, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2043:7:20", + "referencedDeclaration": 30535, + "src": "1819:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28020, + "id": 30660, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2051:16:20", "memberName": "vestingStartUnix", "nodeType": "MemberAccess", - "referencedDeclaration": 25488, - "src": "2043:24:20", + "referencedDeclaration": 27452, + "src": "1819:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 28021, + "id": 30661, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2043:26:20", + "src": "1819:26:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4132,26 +2885,25 @@ }, { "expression": { - "id": 28022, + "id": 30662, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "2071:5:20", + "src": "1847:5:27", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 28023, + "id": 30663, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2077:9:20", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "2071:15:20", + "src": "1847:15:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4169,7 +2921,7 @@ "typeString": "uint256" } ], - "id": 28018, + "id": 30658, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4195,31 +2947,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "2034:8:20", + "src": "1810:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28024, + "id": 30664, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2034:53:20", + "src": "1810:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28025, + "id": 30665, "nodeType": "ExpressionStatement", - "src": "2034:53:20" + "src": "1810:53:27" }, { "expression": { @@ -4229,42 +2980,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28027, + "id": 30667, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2107:7:20", + "referencedDeclaration": 30535, + "src": "1883:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28028, + "id": 30668, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2115:14:20", "memberName": "vestingEnabled", "nodeType": "MemberAccess", - "referencedDeclaration": 25491, - "src": "2107:22:20", + "referencedDeclaration": 27455, + "src": "1883:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bool_$", "typeString": "function () view external returns (bool)" } }, - "id": 28029, + "id": 30669, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2107:24:20", + "src": "1883:24:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4273,14 +3022,14 @@ }, { "hexValue": "74727565", - "id": 28030, + "id": 30670, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2135:4:20", + "src": "1911:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4299,7 +3048,7 @@ "typeString": "bool" } ], - "id": 28026, + "id": 30666, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4325,38 +3074,37 @@ 1674 ], "referencedDeclaration": 1974, - "src": "2098:8:20", + "src": "1874:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28031, + "id": 30671, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2098:42:20", + "src": "1874:42:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28032, + "id": 30672, "nodeType": "ExpressionStatement", - "src": "2098:42:20" + "src": "1874:42:27" } ] }, "documentation": { - "id": 27991, + "id": 30631, "nodeType": "StructuredDocumentation", - "src": "1653:46:20", + "src": "1429:46:27", "text": "@dev Verifies enableVesting state changes." }, "functionSelector": "5f18f116", @@ -4364,40 +3112,38 @@ "kind": "function", "modifiers": [], "name": "test_vesting_enableVesting_state_changes", - "nameLocation": "1714:40:20", + "nameLocation": "1490:40:27", "parameters": { - "id": 27992, + "id": 30632, "nodeType": "ParameterList", "parameters": [], - "src": "1754:2:20" + "src": "1530:2:27" }, "returnParameters": { - "id": 27993, + "id": 30633, "nodeType": "ParameterList", "parameters": [], - "src": "1764:0:20" + "src": "1540:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28126, + "id": 30766, "nodeType": "FunctionDefinition", - "src": "2243:967:20", - "nodes": [], + "src": "2019:967:27", "body": { - "id": 28125, + "id": 30765, "nodeType": "Block", - "src": "2301:909:20", - "nodes": [], + "src": "2077:909:27", "statements": [ { "expression": { "arguments": [ { - "id": 28047, + "id": 30687, "isConstant": false, "isLValue": false, "isPure": false, @@ -4405,20 +3151,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2378:46:20", + "src": "2154:46:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28043, + "id": 30683, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2409:7:20", + "referencedDeclaration": 30535, + "src": "2185:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -4426,39 +3172,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28042, + "id": 30682, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2401:7:20", + "src": "2177:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28041, + "id": 30681, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2401:7:20", + "src": "2177:7:27", "typeDescriptions": {} } }, - "id": 28044, + "id": 30684, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2401:16:20", + "src": "2177:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4466,12 +3211,12 @@ } }, { - "id": 28045, + "id": 30685, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "2419:4:20", + "referencedDeclaration": 30016, + "src": "2195:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4490,42 +3235,40 @@ } ], "expression": { - "id": 28039, + "id": 30679, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "2379:3:20", + "referencedDeclaration": 30013, + "src": "2155:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28040, + "id": 30680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2383:17:20", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 27211, - "src": "2379:21:20", + "referencedDeclaration": 29651, + "src": "2155:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28046, + "id": 30686, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2379:45:20", + "src": "2155:45:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4545,42 +3288,41 @@ "typeString": "bool" } ], - "id": 28038, + "id": 30678, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2371:6:20", + "src": "2147:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28048, + "id": 30688, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2371:54:20", + "src": "2147:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28049, + "id": 30689, "nodeType": "ExpressionStatement", - "src": "2371:54:20" + "src": "2147:54:27" }, { "expression": { "arguments": [ { - "id": 28059, + "id": 30699, "isConstant": false, "isLValue": false, "isPure": false, @@ -4588,20 +3330,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2504:46:20", + "src": "2280:46:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28055, + "id": 30695, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2535:7:20", + "referencedDeclaration": 30535, + "src": "2311:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -4609,39 +3351,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28054, + "id": 30694, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2527:7:20", + "src": "2303:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28053, + "id": 30693, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2527:7:20", + "src": "2303:7:27", "typeDescriptions": {} } }, - "id": 28056, + "id": 30696, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2527:16:20", + "src": "2303:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4649,12 +3390,12 @@ } }, { - "id": 28057, + "id": 30697, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "2545:4:20", + "referencedDeclaration": 30016, + "src": "2321:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4673,42 +3414,40 @@ } ], "expression": { - "id": 28051, + "id": 30691, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "2505:3:20", + "referencedDeclaration": 30007, + "src": "2281:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28052, + "id": 30692, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2509:17:20", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 27211, - "src": "2505:21:20", + "referencedDeclaration": 29651, + "src": "2281:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28058, + "id": 30698, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2505:45:20", + "src": "2281:45:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4728,42 +3467,41 @@ "typeString": "bool" } ], - "id": 28050, + "id": 30690, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2497:6:20", + "src": "2273:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28060, + "id": 30700, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2497:54:20", + "src": "2273:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28061, + "id": 30701, "nodeType": "ExpressionStatement", - "src": "2497:54:20" + "src": "2273:54:27" }, { "expression": { "arguments": [ { - "id": 28071, + "id": 30711, "isConstant": false, "isLValue": false, "isPure": false, @@ -4771,20 +3509,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2635:46:20", + "src": "2411:46:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28067, + "id": 30707, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2666:7:20", + "referencedDeclaration": 30535, + "src": "2442:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -4792,39 +3530,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28066, + "id": 30706, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2658:7:20", + "src": "2434:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28065, + "id": 30705, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2658:7:20", + "src": "2434:7:27", "typeDescriptions": {} } }, - "id": 28068, + "id": 30708, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2658:16:20", + "src": "2434:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4832,12 +3569,12 @@ } }, { - "id": 28069, + "id": 30709, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "2676:4:20", + "referencedDeclaration": 30016, + "src": "2452:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4856,42 +3593,40 @@ } ], "expression": { - "id": 28063, + "id": 30703, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "2636:3:20", + "referencedDeclaration": 30010, + "src": "2412:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28064, + "id": 30704, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2640:17:20", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 27211, - "src": "2636:21:20", + "referencedDeclaration": 29651, + "src": "2412:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28070, + "id": 30710, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2636:45:20", + "src": "2412:45:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4911,42 +3646,41 @@ "typeString": "bool" } ], - "id": 28062, + "id": 30702, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2628:6:20", + "src": "2404:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28072, + "id": 30712, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2628:54:20", + "src": "2404:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28073, + "id": 30713, "nodeType": "ExpressionStatement", - "src": "2628:54:20" + "src": "2404:54:27" }, { "expression": { "arguments": [ { - "id": 28085, + "id": 30725, "isConstant": false, "isLValue": false, "isPure": false, @@ -4954,20 +3688,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2762:62:20", + "src": "2538:62:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28079, + "id": 30719, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2793:7:20", + "referencedDeclaration": 30535, + "src": "2569:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -4975,39 +3709,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28078, + "id": 30718, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2785:7:20", + "src": "2561:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28077, + "id": 30717, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2785:7:20", + "src": "2561:7:27", "typeDescriptions": {} } }, - "id": 28080, + "id": 30720, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2785:16:20", + "src": "2561:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5019,42 +3752,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28081, + "id": 30721, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2803:7:20", + "referencedDeclaration": 30535, + "src": "2579:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28082, + "id": 30722, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2811:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "2803:18:20", + "referencedDeclaration": 27449, + "src": "2579:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 28083, + "id": 30723, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2803:20:20", + "src": "2579:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5074,42 +3805,40 @@ } ], "expression": { - "id": 28075, + "id": 30715, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "2763:3:20", + "referencedDeclaration": 30010, + "src": "2539:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28076, + "id": 30716, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2767:17:20", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 27211, - "src": "2763:21:20", + "referencedDeclaration": 29651, + "src": "2539:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28084, + "id": 30724, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2763:61:20", + "src": "2539:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5129,42 +3858,41 @@ "typeString": "bool" } ], - "id": 28074, + "id": 30714, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2755:6:20", + "src": "2531:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28086, + "id": 30726, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2755:70:20", + "src": "2531:70:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28087, + "id": 30727, "nodeType": "ExpressionStatement", - "src": "2755:70:20" + "src": "2531:70:27" }, { "expression": { "arguments": [ { - "id": 28100, + "id": 30740, "isConstant": false, "isLValue": false, "isPure": false, @@ -5172,20 +3900,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2903:52:20", + "src": "2679:52:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28093, + "id": 30733, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "2934:7:20", + "referencedDeclaration": 30535, + "src": "2710:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -5193,39 +3921,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28092, + "id": 30732, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2926:7:20", + "src": "2702:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28091, + "id": 30731, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2926:7:20", + "src": "2702:7:27", "typeDescriptions": {} } }, - "id": 28094, + "id": 30734, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2926:16:20", + "src": "2702:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5236,14 +3963,14 @@ "arguments": [ { "hexValue": "30", - "id": 28097, + "id": 30737, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2952:1:20", + "src": "2728:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -5258,35 +3985,34 @@ "typeString": "int_const 0" } ], - "id": 28096, + "id": 30736, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2944:7:20", + "src": "2720:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28095, + "id": 30735, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2944:7:20", + "src": "2720:7:27", "typeDescriptions": {} } }, - "id": 28098, + "id": 30738, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2944:10:20", + "src": "2720:10:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5306,42 +4032,40 @@ } ], "expression": { - "id": 28089, + "id": 30729, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "2904:3:20", + "referencedDeclaration": 30010, + "src": "2680:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28090, + "id": 30730, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2908:17:20", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 27211, - "src": "2904:21:20", + "referencedDeclaration": 29651, + "src": "2680:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28099, + "id": 30739, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2904:51:20", + "src": "2680:51:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5361,47 +4085,46 @@ "typeString": "bool" } ], - "id": 28088, + "id": 30728, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2896:6:20", + "src": "2672:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28101, + "id": 30741, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2896:60:20", + "src": "2672:60:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28102, + "id": 30742, "nodeType": "ExpressionStatement", - "src": "2896:60:20" + "src": "2672:60:27" }, { "expression": { "arguments": [ { - "id": 28104, + "id": 30744, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3024:4:20", + "referencedDeclaration": 30016, + "src": "2800:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5410,14 +4133,14 @@ { "arguments": [ { - "id": 28107, + "id": 30747, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "3038:7:20", + "referencedDeclaration": 30535, + "src": "2814:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -5425,39 +4148,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28106, + "id": 30746, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3030:7:20", + "src": "2806:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28105, + "id": 30745, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3030:7:20", + "src": "2806:7:27", "typeDescriptions": {} } }, - "id": 28108, + "id": 30748, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3030:16:20", + "src": "2806:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5469,21 +4191,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28111, + "id": 30751, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 28109, + "id": 30749, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3048:3:20", + "src": "2824:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -5493,18 +4215,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28110, + "id": 30750, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27441, - "src": "3054:3:20", + "referencedDeclaration": 30087, + "src": "2830:3:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3048:9:20", + "src": "2824:9:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5526,7 +4248,7 @@ "typeString": "uint256" } ], - "id": 28103, + "id": 30743, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5535,31 +4257,30 @@ 5143 ], "referencedDeclaration": 5040, - "src": "3019:4:20", + "src": "2795:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28112, + "id": 30752, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3019:39:20", + "src": "2795:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28113, + "id": 30753, "nodeType": "ExpressionStatement", - "src": "3019:39:20" + "src": "2795:39:27" }, { "expression": { @@ -5569,14 +4290,14 @@ { "arguments": [ { - "id": 28119, + "id": 30759, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "3186:7:20", + "referencedDeclaration": 30535, + "src": "2962:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -5584,39 +4305,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28118, + "id": 30758, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3178:7:20", + "src": "2954:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28117, + "id": 30757, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3178:7:20", + "src": "2954:7:27", "typeDescriptions": {} } }, - "id": 28120, + "id": 30760, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3178:16:20", + "src": "2954:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5624,12 +4344,12 @@ } }, { - "id": 28121, + "id": 30761, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3196:4:20", + "referencedDeclaration": 30016, + "src": "2972:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5648,42 +4368,40 @@ } ], "expression": { - "id": 28115, + "id": 30755, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "3156:3:20", + "referencedDeclaration": 30010, + "src": "2932:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28116, + "id": 30756, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3160:17:20", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 27211, - "src": "3156:21:20", + "referencedDeclaration": 29651, + "src": "2932:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28122, + "id": 30762, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3156:45:20", + "src": "2932:45:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5698,43 +4416,42 @@ "typeString": "bool" } ], - "id": 28114, + "id": 30754, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3149:6:20", + "src": "2925:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28123, + "id": 30763, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3149:53:20", + "src": "2925:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28124, + "id": 30764, "nodeType": "ExpressionStatement", - "src": "3149:53:20" + "src": "2925:53:27" } ] }, "documentation": { - "id": 28035, + "id": 30675, "nodeType": "StructuredDocumentation", - "src": "2192:45:20", + "src": "1968:45:27", "text": "@dev Verifies withdrawErc20 restrictions." }, "functionSelector": "65dfbcb3", @@ -5742,45 +4459,43 @@ "kind": "function", "modifiers": [], "name": "test_vesting_withdrawErc20_restrictions", - "nameLocation": "2252:39:20", + "nameLocation": "2028:39:27", "parameters": { - "id": 28036, + "id": 30676, "nodeType": "ParameterList", "parameters": [], - "src": "2291:2:20" + "src": "2067:2:27" }, "returnParameters": { - "id": 28037, + "id": 30677, "nodeType": "ParameterList", "parameters": [], - "src": "2301:0:20" + "src": "2077:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28209, + "id": 30849, "nodeType": "FunctionDefinition", - "src": "3270:563:20", - "nodes": [], + "src": "3046:563:27", "body": { - "id": 28208, + "id": 30848, "nodeType": "Block", - "src": "3329:504:20", - "nodes": [], + "src": "3105:504:27", "statements": [ { "expression": { "arguments": [ { - "id": 28131, + "id": 30771, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3345:4:20", + "referencedDeclaration": 30016, + "src": "3121:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5789,14 +4504,14 @@ { "arguments": [ { - "id": 28134, + "id": 30774, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "3359:7:20", + "referencedDeclaration": 30535, + "src": "3135:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -5804,39 +4519,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28133, + "id": 30773, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3351:7:20", + "src": "3127:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28132, + "id": 30772, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3351:7:20", + "src": "3127:7:27", "typeDescriptions": {} } }, - "id": 28135, + "id": 30775, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3351:16:20", + "src": "3127:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5848,21 +4562,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28138, + "id": 30778, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 28136, + "id": 30776, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3369:3:20", + "src": "3145:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -5872,18 +4586,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28137, + "id": 30777, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27441, - "src": "3375:3:20", + "referencedDeclaration": 30087, + "src": "3151:3:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3369:9:20", + "src": "3145:9:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5905,7 +4619,7 @@ "typeString": "uint256" } ], - "id": 28130, + "id": 30770, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5914,31 +4628,30 @@ 5143 ], "referencedDeclaration": 5040, - "src": "3340:4:20", + "src": "3116:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28139, + "id": 30779, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3340:39:20", + "src": "3116:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28140, + "id": 30780, "nodeType": "ExpressionStatement", - "src": "3340:39:20" + "src": "3116:39:27" }, { "expression": { @@ -5948,14 +4661,14 @@ { "arguments": [ { - "id": 28148, + "id": 30788, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "3460:7:20", + "referencedDeclaration": 30535, + "src": "3236:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -5963,39 +4676,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28147, + "id": 30787, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3452:7:20", + "src": "3228:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28146, + "id": 30786, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3452:7:20", + "src": "3228:7:27", "typeDescriptions": {} } }, - "id": 28149, + "id": 30789, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3452:16:20", + "src": "3228:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6013,12 +4725,12 @@ "expression": { "arguments": [ { - "id": 28143, + "id": 30783, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3436:4:20", + "referencedDeclaration": 30016, + "src": "3212:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6032,58 +4744,55 @@ "typeString": "address" } ], - "id": 28142, + "id": 30782, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "3429:6:20", + "referencedDeclaration": 29102, + "src": "3205:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 28144, + "id": 30784, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3429:12:20", + "src": "3205:12:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 28145, + "id": 30785, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3442:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "3429:22:20", + "referencedDeclaration": 29041, + "src": "3205:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 28150, + "id": 30790, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3429:40:20", + "src": "3205:40:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6095,21 +4804,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28153, + "id": 30793, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 28151, + "id": 30791, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3471:3:20", + "src": "3247:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -6119,18 +4828,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28152, + "id": 30792, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27441, - "src": "3477:3:20", + "referencedDeclaration": 30087, + "src": "3253:3:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3471:9:20", + "src": "3247:9:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6148,7 +4857,7 @@ "typeString": "uint256" } ], - "id": 28141, + "id": 30781, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6174,31 +4883,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "3420:8:20", + "src": "3196:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28154, + "id": 30794, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3420:61:20", + "src": "3196:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28155, + "id": 30795, "nodeType": "ExpressionStatement", - "src": "3420:61:20" + "src": "3196:61:27" }, { "expression": { @@ -6208,14 +4916,14 @@ { "arguments": [ { - "id": 28163, + "id": 30803, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "3532:3:20", + "referencedDeclaration": 30010, + "src": "3308:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -6223,39 +4931,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28162, + "id": 30802, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3524:7:20", + "src": "3300:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28161, + "id": 30801, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3524:7:20", + "src": "3300:7:27", "typeDescriptions": {} } }, - "id": 28164, + "id": 30804, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3524:12:20", + "src": "3300:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6273,12 +4980,12 @@ "expression": { "arguments": [ { - "id": 28158, + "id": 30798, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3508:4:20", + "referencedDeclaration": 30016, + "src": "3284:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6292,58 +4999,55 @@ "typeString": "address" } ], - "id": 28157, + "id": 30797, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "3501:6:20", + "referencedDeclaration": 29102, + "src": "3277:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 28159, + "id": 30799, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3501:12:20", + "src": "3277:12:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 28160, + "id": 30800, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3514:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "3501:22:20", + "referencedDeclaration": 29041, + "src": "3277:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 28165, + "id": 30805, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3501:36:20", + "src": "3277:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6352,14 +5056,14 @@ }, { "hexValue": "30", - "id": 28166, + "id": 30806, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3543:1:20", + "src": "3319:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -6378,7 +5082,7 @@ "typeString": "int_const 0" } ], - "id": 28156, + "id": 30796, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6404,31 +5108,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "3492:8:20", + "src": "3268:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28167, + "id": 30807, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3492:53:20", + "src": "3268:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28168, + "id": 30808, "nodeType": "ExpressionStatement", - "src": "3492:53:20" + "src": "3268:53:27" }, { "expression": { @@ -6438,14 +5141,14 @@ { "arguments": [ { - "id": 28174, + "id": 30814, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "3642:7:20", + "referencedDeclaration": 30535, + "src": "3418:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -6453,39 +5156,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28173, + "id": 30813, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3634:7:20", + "src": "3410:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28172, + "id": 30812, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3634:7:20", + "src": "3410:7:27", "typeDescriptions": {} } }, - "id": 28175, + "id": 30815, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3634:16:20", + "src": "3410:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6493,12 +5195,12 @@ } }, { - "id": 28176, + "id": 30816, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3652:4:20", + "referencedDeclaration": 30016, + "src": "3428:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6517,42 +5219,40 @@ } ], "expression": { - "id": 28170, + "id": 30810, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "3612:3:20", + "referencedDeclaration": 30010, + "src": "3388:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28171, + "id": 30811, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3616:17:20", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 27211, - "src": "3612:21:20", + "referencedDeclaration": 29651, + "src": "3388:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28177, + "id": 30817, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3612:45:20", + "src": "3388:45:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6567,36 +5267,35 @@ "typeString": "bool" } ], - "id": 28169, + "id": 30809, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3605:6:20", + "src": "3381:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28178, + "id": 30818, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3605:53:20", + "src": "3381:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28179, + "id": 30819, "nodeType": "ExpressionStatement", - "src": "3605:53:20" + "src": "3381:53:27" }, { "expression": { @@ -6606,14 +5305,14 @@ { "arguments": [ { - "id": 28187, + "id": 30827, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "3740:7:20", + "referencedDeclaration": 30535, + "src": "3516:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -6621,39 +5320,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28186, + "id": 30826, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3732:7:20", + "src": "3508:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28185, + "id": 30825, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3732:7:20", + "src": "3508:7:27", "typeDescriptions": {} } }, - "id": 28188, + "id": 30828, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3732:16:20", + "src": "3508:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6671,12 +5369,12 @@ "expression": { "arguments": [ { - "id": 28182, + "id": 30822, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3716:4:20", + "referencedDeclaration": 30016, + "src": "3492:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6690,58 +5388,55 @@ "typeString": "address" } ], - "id": 28181, + "id": 30821, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "3709:6:20", + "referencedDeclaration": 29102, + "src": "3485:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 28183, + "id": 30823, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3709:12:20", + "src": "3485:12:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 28184, + "id": 30824, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3722:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "3709:22:20", + "referencedDeclaration": 29041, + "src": "3485:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 28189, + "id": 30829, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3709:40:20", + "src": "3485:40:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6750,14 +5445,14 @@ }, { "hexValue": "30", - "id": 28190, + "id": 30830, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3751:1:20", + "src": "3527:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -6776,7 +5471,7 @@ "typeString": "int_const 0" } ], - "id": 28180, + "id": 30820, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6802,31 +5497,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "3700:8:20", + "src": "3476:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28191, + "id": 30831, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3700:53:20", + "src": "3476:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28192, + "id": 30832, "nodeType": "ExpressionStatement", - "src": "3700:53:20" + "src": "3476:53:27" }, { "expression": { @@ -6836,14 +5530,14 @@ { "arguments": [ { - "id": 28200, + "id": 30840, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "3804:3:20", + "referencedDeclaration": 30010, + "src": "3580:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -6851,39 +5545,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28199, + "id": 30839, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3796:7:20", + "src": "3572:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28198, + "id": 30838, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3796:7:20", + "src": "3572:7:27", "typeDescriptions": {} } }, - "id": 28201, + "id": 30841, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3796:12:20", + "src": "3572:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6901,12 +5594,12 @@ "expression": { "arguments": [ { - "id": 28195, + "id": 30835, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27373, - "src": "3780:4:20", + "referencedDeclaration": 30016, + "src": "3556:4:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6920,58 +5613,55 @@ "typeString": "address" } ], - "id": 28194, + "id": 30834, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "3773:6:20", + "referencedDeclaration": 29102, + "src": "3549:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 28196, + "id": 30836, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3773:12:20", + "src": "3549:12:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 28197, + "id": 30837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "3786:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "3773:22:20", + "referencedDeclaration": 29041, + "src": "3549:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 28202, + "id": 30842, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3773:36:20", + "src": "3549:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6983,21 +5673,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28205, + "id": 30845, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 28203, + "id": 30843, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3815:3:20", + "src": "3591:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -7007,18 +5697,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28204, + "id": 30844, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27441, - "src": "3821:3:20", + "referencedDeclaration": 30087, + "src": "3597:3:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3815:9:20", + "src": "3591:9:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7036,7 +5726,7 @@ "typeString": "uint256" } ], - "id": 28193, + "id": 30833, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7062,38 +5752,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "3764:8:20", + "src": "3540:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28206, + "id": 30846, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3764:61:20", + "src": "3540:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28207, + "id": 30847, "nodeType": "ExpressionStatement", - "src": "3764:61:20" + "src": "3540:61:27" } ] }, "documentation": { - "id": 28127, + "id": 30767, "nodeType": "StructuredDocumentation", - "src": "3218:46:20", + "src": "2994:46:27", "text": "@dev Verifies withdrawErc20 state changes." }, "functionSelector": "b1857efe", @@ -7101,40 +5790,38 @@ "kind": "function", "modifiers": [], "name": "test_vesting_withdrawErc20_state_changes", - "nameLocation": "3279:40:20", + "nameLocation": "3055:40:27", "parameters": { - "id": 28128, + "id": 30768, "nodeType": "ParameterList", "parameters": [], - "src": "3319:2:20" + "src": "3095:2:27" }, "returnParameters": { - "id": 28129, + "id": 30769, "nodeType": "ParameterList", "parameters": [], - "src": "3329:0:20" + "src": "3105:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28323, + "id": 30963, "nodeType": "FunctionDefinition", - "src": "3923:1165:20", - "nodes": [], + "src": "3699:1165:27", "body": { - "id": 28322, + "id": 30962, "nodeType": "Block", - "src": "3979:1109:20", - "nodes": [], + "src": "3755:1109:27", "statements": [ { "expression": { "arguments": [ { - "id": 28226, + "id": 30866, "isConstant": false, "isLValue": false, "isPure": false, @@ -7142,20 +5829,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4064:62:20", + "src": "3840:62:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28218, + "id": 30858, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "4093:7:20", + "referencedDeclaration": 30535, + "src": "3869:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -7163,39 +5850,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28217, + "id": 30857, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4085:7:20", + "src": "3861:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28216, + "id": 30856, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4085:7:20", + "src": "3861:7:27", "typeDescriptions": {} } }, - "id": 28219, + "id": 30859, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4085:16:20", + "src": "3861:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7205,14 +5891,14 @@ { "arguments": [ { - "id": 28222, + "id": 30862, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "4111:3:20", + "referencedDeclaration": 30007, + "src": "3887:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -7220,39 +5906,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28221, + "id": 30861, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4103:7:20", + "src": "3879:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28220, + "id": 30860, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4103:7:20", + "src": "3879:7:27", "typeDescriptions": {} } }, - "id": 28223, + "id": 30863, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4103:12:20", + "src": "3879:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7261,14 +5946,14 @@ }, { "hexValue": "3130", - "id": 28224, + "id": 30864, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4117:8:20", + "src": "3893:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -7293,42 +5978,40 @@ } ], "expression": { - "id": 28214, + "id": 30854, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "4065:3:20", + "referencedDeclaration": 30013, + "src": "3841:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28215, + "id": 30855, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4069:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "4065:19:20", + "referencedDeclaration": 29684, + "src": "3841:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28225, + "id": 30865, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4065:61:20", + "src": "3841:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7348,42 +6031,41 @@ "typeString": "bool" } ], - "id": 28213, + "id": 30853, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "4057:6:20", + "src": "3833:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28227, + "id": 30867, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4057:70:20", + "src": "3833:70:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28228, + "id": 30868, "nodeType": "ExpressionStatement", - "src": "4057:70:20" + "src": "3833:70:27" }, { "expression": { "arguments": [ { - "id": 28242, + "id": 30882, "isConstant": false, "isLValue": false, "isPure": false, @@ -7391,20 +6073,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4213:62:20", + "src": "3989:62:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28234, + "id": 30874, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "4242:7:20", + "referencedDeclaration": 30535, + "src": "4018:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -7412,39 +6094,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28233, + "id": 30873, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4234:7:20", + "src": "4010:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28232, + "id": 30872, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4234:7:20", + "src": "4010:7:27", "typeDescriptions": {} } }, - "id": 28235, + "id": 30875, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4234:16:20", + "src": "4010:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7454,14 +6135,14 @@ { "arguments": [ { - "id": 28238, + "id": 30878, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "4260:3:20", + "referencedDeclaration": 30007, + "src": "4036:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -7469,39 +6150,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28237, + "id": 30877, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4252:7:20", + "src": "4028:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28236, + "id": 30876, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4252:7:20", + "src": "4028:7:27", "typeDescriptions": {} } }, - "id": 28239, + "id": 30879, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4252:12:20", + "src": "4028:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7510,14 +6190,14 @@ }, { "hexValue": "3130", - "id": 28240, + "id": 30880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4266:8:20", + "src": "4042:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -7542,42 +6222,40 @@ } ], "expression": { - "id": 28230, + "id": 30870, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "4214:3:20", + "referencedDeclaration": 30007, + "src": "3990:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28231, + "id": 30871, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4218:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "4214:19:20", + "referencedDeclaration": 29684, + "src": "3990:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28241, + "id": 30881, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4214:61:20", + "src": "3990:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7597,36 +6275,35 @@ "typeString": "bool" } ], - "id": 28229, + "id": 30869, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "4206:6:20", + "src": "3982:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28243, + "id": 30883, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4206:70:20", + "src": "3982:70:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28244, + "id": 30884, "nodeType": "ExpressionStatement", - "src": "4206:70:20" + "src": "3982:70:27" }, { "expression": { @@ -7636,14 +6313,14 @@ { "arguments": [ { - "id": 28250, + "id": 30890, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "4377:7:20", + "referencedDeclaration": 30535, + "src": "4153:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -7651,39 +6328,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28249, + "id": 30889, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4369:7:20", + "src": "4145:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28248, + "id": 30888, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4369:7:20", + "src": "4145:7:27", "typeDescriptions": {} } }, - "id": 28251, + "id": 30891, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4369:16:20", + "src": "4145:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7693,14 +6369,14 @@ { "arguments": [ { - "id": 28254, + "id": 30894, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "4395:3:20", + "referencedDeclaration": 30007, + "src": "4171:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -7708,39 +6384,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28253, + "id": 30893, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4387:7:20", + "src": "4163:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28252, + "id": 30892, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4387:7:20", + "src": "4163:7:27", "typeDescriptions": {} } }, - "id": 28255, + "id": 30895, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4387:12:20", + "src": "4163:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7749,14 +6424,14 @@ }, { "hexValue": "3130", - "id": 28256, + "id": 30896, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4401:8:20", + "src": "4177:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -7781,42 +6456,40 @@ } ], "expression": { - "id": 28246, + "id": 30886, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "4349:3:20", + "referencedDeclaration": 30010, + "src": "4125:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28247, + "id": 30887, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4353:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "4349:19:20", + "referencedDeclaration": 29684, + "src": "4125:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28257, + "id": 30897, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4349:61:20", + "src": "4125:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7831,36 +6504,35 @@ "typeString": "bool" } ], - "id": 28245, + "id": 30885, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "4342:6:20", + "src": "4118:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28258, + "id": 30898, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4342:69:20", + "src": "4118:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28259, + "id": 30899, "nodeType": "ExpressionStatement", - "src": "4342:69:20" + "src": "4118:69:27" }, { "expression": { @@ -7868,14 +6540,14 @@ { "arguments": [ { - "id": 28265, + "id": 30905, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "4446:3:20", + "referencedDeclaration": 30010, + "src": "4222:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -7883,39 +6555,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28264, + "id": 30904, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4438:7:20", + "src": "4214:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28263, + "id": 30903, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4438:7:20", + "src": "4214:7:27", "typeDescriptions": {} } }, - "id": 28266, + "id": 30906, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4438:12:20", + "src": "4214:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7931,65 +6602,63 @@ } ], "expression": { - "id": 28260, + "id": 30900, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4424:2:20", + "src": "4200:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28262, + "id": 30902, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4427:10:20", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9043, - "src": "4424:13:20", + "src": "4200:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 28267, + "id": 30907, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4424:27:20", + "src": "4200:27:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28268, + "id": 30908, "nodeType": "ExpressionStatement", - "src": "4424:27:20" + "src": "4200:27:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f72282920696e766573746f7220697320616c7265616479206164646564", - "id": 28272, + "id": 30912, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4546:54:20", + "src": "4322:54:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ac8b3365ec58116f79763809b4a76f0b400571fe8055cd18bc01fd9ea666875f", "typeString": "literal_string \"Vesting.sol::addInvestor() investor is already added\"" @@ -8005,51 +6674,49 @@ } ], "expression": { - "id": 28269, + "id": 30909, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4530:2:20", + "src": "4306:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28271, + "id": 30911, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4533:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "4530:15:20", + "src": "4306:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 28273, + "id": 30913, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4530:71:20", + "src": "4306:71:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28274, + "id": 30914, "nodeType": "ExpressionStatement", - "src": "4530:71:20" + "src": "4306:71:27" }, { "expression": { @@ -8057,14 +6724,14 @@ { "arguments": [ { - "id": 28280, + "id": 30920, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "4640:3:20", + "referencedDeclaration": 30007, + "src": "4416:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -8072,39 +6739,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28279, + "id": 30919, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4632:7:20", + "src": "4408:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28278, + "id": 30918, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4632:7:20", + "src": "4408:7:27", "typeDescriptions": {} } }, - "id": 28281, + "id": 30921, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4632:12:20", + "src": "4408:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -8113,14 +6779,14 @@ }, { "hexValue": "3130", - "id": 28282, + "id": 30922, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4646:8:20", + "src": "4422:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -8141,65 +6807,63 @@ } ], "expression": { - "id": 28275, + "id": 30915, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "4612:7:20", + "referencedDeclaration": 30535, + "src": "4388:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28277, + "id": 30917, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4620:11:20", "memberName": "addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 25683, - "src": "4612:19:20", + "referencedDeclaration": 27653, + "src": "4388:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256) external" } }, - "id": 28283, + "id": 30923, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4612:43:20", + "src": "4388:43:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28284, + "id": 30924, "nodeType": "ExpressionStatement", - "src": "4612:43:20" + "src": "4388:43:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f756e742063616e6e6f742062652061646472657373283029", - "id": 28288, + "id": 30928, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4748:58:20", + "src": "4524:58:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_43a7576cc71999d5991f16be987a98bc7d178f59df62ec343336a603751a8636", "typeString": "literal_string \"Vesting.sol::addInvestor() _account cannot be address(0)\"" @@ -8215,51 +6879,49 @@ } ], "expression": { - "id": 28285, + "id": 30925, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4732:2:20", + "src": "4508:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28287, + "id": 30927, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4735:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "4732:15:20", + "src": "4508:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 28289, + "id": 30929, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4732:75:20", + "src": "4508:75:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28290, + "id": 30930, "nodeType": "ExpressionStatement", - "src": "4732:75:20" + "src": "4508:75:27" }, { "expression": { @@ -8268,14 +6930,14 @@ "arguments": [ { "hexValue": "30", - "id": 28296, + "id": 30936, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4846:1:20", + "src": "4622:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -8290,35 +6952,34 @@ "typeString": "int_const 0" } ], - "id": 28295, + "id": 30935, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4838:7:20", + "src": "4614:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28294, + "id": 30934, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4838:7:20", + "src": "4614:7:27", "typeDescriptions": {} } }, - "id": 28297, + "id": 30937, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4838:10:20", + "src": "4614:10:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -8327,14 +6988,14 @@ }, { "hexValue": "3130", - "id": 28298, + "id": 30938, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4850:8:20", + "src": "4626:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -8355,65 +7016,63 @@ } ], "expression": { - "id": 28291, + "id": 30931, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "4818:7:20", + "referencedDeclaration": 30535, + "src": "4594:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28293, + "id": 30933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4826:11:20", "memberName": "addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 25683, - "src": "4818:19:20", + "referencedDeclaration": 27653, + "src": "4594:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256) external" } }, - "id": 28299, + "id": 30939, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4818:41:20", + "src": "4594:41:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28300, + "id": 30940, "nodeType": "ExpressionStatement", - "src": "4818:41:20" + "src": "4594:41:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b656e73546f56657374206d7573742062652067742030", - "id": 28304, + "id": 30944, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4950:55:20", + "src": "4726:55:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6c29cccc352d3a7eba90af13be2b3943b9e81df521048af1ca34057bc8661bb8", "typeString": "literal_string \"Vesting.sol::addInvestor() _tokensToVest must be gt 0\"" @@ -8429,51 +7088,49 @@ } ], "expression": { - "id": 28301, + "id": 30941, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4934:2:20", + "src": "4710:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28303, + "id": 30943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4937:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "4934:15:20", + "src": "4710:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 28305, + "id": 30945, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4934:72:20", + "src": "4710:72:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28306, + "id": 30946, "nodeType": "ExpressionStatement", - "src": "4934:72:20" + "src": "4710:72:27" }, { "expression": { @@ -8481,14 +7138,14 @@ { "arguments": [ { - "id": 28312, + "id": 30952, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "5045:3:20", + "referencedDeclaration": 30013, + "src": "4821:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -8496,39 +7153,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28311, + "id": 30951, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5037:7:20", + "src": "4813:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28310, + "id": 30950, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5037:7:20", + "src": "4813:7:27", "typeDescriptions": {} } }, - "id": 28313, + "id": 30953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5037:12:20", + "src": "4813:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -8537,14 +7193,14 @@ }, { "hexValue": "30", - "id": 28314, + "id": 30954, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5051:1:20", + "src": "4827:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -8564,51 +7220,49 @@ } ], "expression": { - "id": 28307, + "id": 30947, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "5017:7:20", + "referencedDeclaration": 30535, + "src": "4793:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28309, + "id": 30949, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5025:11:20", "memberName": "addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 25683, - "src": "5017:19:20", + "referencedDeclaration": 27653, + "src": "4793:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256) external" } }, - "id": 28315, + "id": 30955, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5017:36:20", + "src": "4793:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28316, + "id": 30956, "nodeType": "ExpressionStatement", - "src": "5017:36:20" + "src": "4793:36:27" }, { "expression": { @@ -8616,58 +7270,56 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28317, + "id": 30957, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "5066:2:20", + "src": "4842:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28319, + "id": 30959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5069:9:20", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9060, - "src": "5066:12:20", + "src": "4842:12:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 28320, + "id": 30960, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5066:14:20", + "src": "4842:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28321, + "id": 30961, "nodeType": "ExpressionStatement", - "src": "5066:14:20" + "src": "4842:14:27" } ] }, "documentation": { - "id": 28210, + "id": 30850, "nodeType": "StructuredDocumentation", - "src": "3875:42:20", + "src": "3651:42:27", "text": "@dev Verifies addInvestor restrictions" }, "functionSelector": "a641e8dc", @@ -8675,34 +7327,32 @@ "kind": "function", "modifiers": [], "name": "test_vesting_addInvestor_restrictions", - "nameLocation": "3932:37:20", + "nameLocation": "3708:37:27", "parameters": { - "id": 28211, + "id": 30851, "nodeType": "ParameterList", "parameters": [], - "src": "3969:2:20" + "src": "3745:2:27" }, "returnParameters": { - "id": 28212, + "id": 30852, "nodeType": "ParameterList", "parameters": [], - "src": "3979:0:20" + "src": "3755:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28420, + "id": 31074, "nodeType": "FunctionDefinition", - "src": "5145:748:20", - "nodes": [], + "src": "4921:861:27", "body": { - "id": 28419, + "id": 31073, "nodeType": "Block", - "src": "5202:691:20", - "nodes": [], + "src": "4978:804:27", "statements": [ { "expression": { @@ -8712,14 +7362,14 @@ { "arguments": [ { - "id": 28332, + "id": 30972, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "5277:3:20", + "referencedDeclaration": 30007, + "src": "5053:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -8727,39 +7377,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28331, + "id": 30971, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5269:7:20", + "src": "5045:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28330, + "id": 30970, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5269:7:20", + "src": "5045:7:27", "typeDescriptions": {} } }, - "id": 28333, + "id": 30973, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5269:12:20", + "src": "5045:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -8775,42 +7424,40 @@ } ], "expression": { - "id": 28328, + "id": 30968, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "5251:7:20", + "referencedDeclaration": 30535, + "src": "5027:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28329, + "id": 30969, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5259:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "5251:17:20", + "referencedDeclaration": 27473, + "src": "5027:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28334, + "id": 30974, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5251:31:20", + "src": "5027:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -8819,14 +7466,14 @@ }, { "hexValue": "66616c7365", - "id": 28335, + "id": 30975, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5289:5:20", + "src": "5065:5:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8845,7 +7492,7 @@ "typeString": "bool" } ], - "id": 28327, + "id": 30967, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -8871,161 +7518,280 @@ 1674 ], "referencedDeclaration": 1974, - "src": "5242:8:20", + "src": "5018:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28336, + "id": 30976, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5242:53:20", + "src": "5018:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28337, + "id": 30977, "nodeType": "ExpressionStatement", - "src": "5242:53:20" + "src": "5018:53:27" }, { "assignments": [ - 28343 + 30983 ], "declarations": [ { "constant": false, - "id": 28343, + "id": 30983, "mutability": "mutable", "name": "tempArr", - "nameLocation": "5332:7:20", + "nameLocation": "5108:7:27", "nodeType": "VariableDeclaration", - "scope": 28419, - "src": "5306:33:20", + "scope": 31073, + "src": "5082:33:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 28341, + "id": 30981, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 28340, + "id": 30980, "name": "Vesting.Investor", - "nameLocations": [ - "5306:7:20", - "5314:8:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 25503, - "src": "5306:16:20" + "referencedDeclaration": 27469, + "src": "5082:16:27" }, - "referencedDeclaration": 25503, - "src": "5306:16:20", + "referencedDeclaration": 27469, + "src": "5082:16:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 28342, + "id": 30982, "nodeType": "ArrayTypeName", - "src": "5306:18:20", + "src": "5082:18:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "id": 28347, + "id": 30987, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 28344, + "id": 30984, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "5342:7:20", + "referencedDeclaration": 30535, + "src": "5118:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28345, + "id": 30985, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5350:18:20", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 26060, - "src": "5342:26:20", + "referencedDeclaration": 28039, + "src": "5118:26:27", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 28346, + "id": 30986, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5342:28:20", + "src": "5118:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "5306:64:20" + "src": "5082:64:27" }, { "expression": { "arguments": [ { "expression": { - "id": 28349, + "id": 30989, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28343, - "src": "5390:7:20", + "referencedDeclaration": 30983, + "src": "5166:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28350, + "id": 30990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5398:6:20", "memberName": "length", "nodeType": "MemberAccess", - "src": "5390:14:20", + "src": "5166:14:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 30991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5191:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 30988, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "5157:8:27", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5157:36:27", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30993, + "nodeType": "ExpressionStatement", + "src": "5157:36:27" + }, + { + "expression": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30995, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30535, + "src": "5213:7:27", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 30996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAllVestedTokens", + "nodeType": "MemberAccess", + "referencedDeclaration": 27822, + "src": "5213:26:27", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", + "typeString": "function () view external returns (uint256)" + } + }, + "id": 30997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5213:28:27", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9033,14 +7799,14 @@ }, { "hexValue": "30", - "id": 28351, + "id": 30998, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5415:1:20", + "src": "5243:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -9059,7 +7825,7 @@ "typeString": "int_const 0" } ], - "id": 28348, + "id": 30994, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9085,31 +7851,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "5381:8:20", + "src": "5204:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28352, + "id": 30999, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5381:36:20", + "src": "5204:41:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28353, + "id": 31000, "nodeType": "ExpressionStatement", - "src": "5381:36:20" + "src": "5204:41:27" }, { "expression": { @@ -9119,14 +7884,14 @@ { "arguments": [ { - "id": 28359, + "id": 31006, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "5497:7:20", + "referencedDeclaration": 30535, + "src": "5325:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -9134,39 +7899,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28358, + "id": 31005, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5489:7:20", + "src": "5317:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28357, + "id": 31004, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5489:7:20", + "src": "5317:7:27", "typeDescriptions": {} } }, - "id": 28360, + "id": 31007, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5489:16:20", + "src": "5317:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9176,14 +7940,14 @@ { "arguments": [ { - "id": 28363, + "id": 31010, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "5515:3:20", + "referencedDeclaration": 30007, + "src": "5343:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -9191,39 +7955,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28362, + "id": 31009, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5507:7:20", + "src": "5335:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28361, + "id": 31008, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5507:7:20", + "src": "5335:7:27", "typeDescriptions": {} } }, - "id": 28364, + "id": 31011, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5507:12:20", + "src": "5335:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9232,14 +7995,14 @@ }, { "hexValue": "3130", - "id": 28365, + "id": 31012, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5521:8:20", + "src": "5349:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -9264,42 +8027,40 @@ } ], "expression": { - "id": 28355, + "id": 31002, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "5469:3:20", + "referencedDeclaration": 30010, + "src": "5297:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28356, + "id": 31003, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5473:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "5469:19:20", + "referencedDeclaration": 29684, + "src": "5297:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28366, + "id": 31013, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5469:61:20", + "src": "5297:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9314,36 +8075,35 @@ "typeString": "bool" } ], - "id": 28354, + "id": 31001, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "5462:6:20", + "src": "5290:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28367, + "id": 31014, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5462:69:20", + "src": "5290:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28368, + "id": 31015, "nodeType": "ExpressionStatement", - "src": "5462:69:20" + "src": "5290:69:27" }, { "expression": { @@ -9353,14 +8113,14 @@ { "arguments": [ { - "id": 28374, + "id": 31021, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "5609:3:20", + "referencedDeclaration": 30007, + "src": "5437:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -9368,39 +8128,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28373, + "id": 31020, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5601:7:20", + "src": "5429:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28372, + "id": 31019, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5601:7:20", + "src": "5429:7:27", "typeDescriptions": {} } }, - "id": 28375, + "id": 31022, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5601:12:20", + "src": "5429:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9416,42 +8175,40 @@ } ], "expression": { - "id": 28370, + "id": 31017, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "5583:7:20", + "referencedDeclaration": 30535, + "src": "5411:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28371, + "id": 31018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5591:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "5583:17:20", + "referencedDeclaration": 27473, + "src": "5411:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28376, + "id": 31023, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5583:31:20", + "src": "5411:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9460,14 +8217,14 @@ }, { "hexValue": "74727565", - "id": 28377, + "id": 31024, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5621:4:20", + "src": "5449:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9486,7 +8243,7 @@ "typeString": "bool" } ], - "id": 28369, + "id": 31016, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9512,48 +8269,47 @@ 1674 ], "referencedDeclaration": 1974, - "src": "5574:8:20", + "src": "5402:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28378, + "id": 31025, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5574:52:20", + "src": "5402:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28379, + "id": 31026, "nodeType": "ExpressionStatement", - "src": "5574:52:20" + "src": "5402:52:27" }, { "expression": { - "id": 28384, + "id": 31031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28380, + "id": 31027, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28343, - "src": "5637:7:20", + "referencedDeclaration": 30983, + "src": "5465:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, @@ -9564,83 +8320,80 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28381, + "id": 31028, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "5647:7:20", + "referencedDeclaration": 30535, + "src": "5475:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28382, + "id": 31029, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5655:18:20", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 26060, - "src": "5647:26:20", + "referencedDeclaration": 28039, + "src": "5475:26:27", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 28383, + "id": 31030, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5647:28:20", + "src": "5475:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "src": "5637:38:20", + "src": "5465:38:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28385, + "id": 31032, "nodeType": "ExpressionStatement", - "src": "5637:38:20" + "src": "5465:38:27" }, { "expression": { "arguments": [ { "expression": { - "id": 28387, + "id": 31034, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28343, - "src": "5695:7:20", + "referencedDeclaration": 30983, + "src": "5523:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28388, + "id": 31035, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5703:6:20", "memberName": "length", "nodeType": "MemberAccess", - "src": "5695:14:20", + "src": "5523:14:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9648,14 +8401,14 @@ }, { "hexValue": "31", - "id": 28389, + "id": 31036, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5721:1:20", + "src": "5549:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -9674,7 +8427,7 @@ "typeString": "int_const 1" } ], - "id": 28386, + "id": 31033, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9700,31 +8453,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "5686:8:20", + "src": "5514:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28390, + "id": 31037, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5686:37:20", + "src": "5514:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28391, + "id": 31038, "nodeType": "ExpressionStatement", - "src": "5686:37:20" + "src": "5514:37:27" }, { "expression": { @@ -9732,28 +8484,28 @@ { "expression": { "baseExpression": { - "id": 28393, + "id": 31040, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28343, - "src": "5743:7:20", + "referencedDeclaration": 30983, + "src": "5571:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28395, + "id": 31042, "indexExpression": { "hexValue": "30", - "id": 28394, + "id": 31041, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5751:1:20", + "src": "5579:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -9765,22 +8517,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5743:10:20", + "src": "5571:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28396, + "id": 31043, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5754:7:20", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25498, - "src": "5743:18:20", + "referencedDeclaration": 27464, + "src": "5571:18:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9789,14 +8540,14 @@ { "arguments": [ { - "id": 28399, + "id": 31046, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "5777:3:20", + "referencedDeclaration": 30007, + "src": "5605:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -9804,58 +8555,196 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28398, + "id": 31045, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5769:7:20", + "src": "5597:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28397, + "id": 31044, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5769:7:20", + "src": "5597:7:27", "typeDescriptions": {} } }, - "id": 28400, + "id": 31047, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5769:12:20", + "src": "5597:12:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 31039, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 320, + "src": "5562:8:27", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 31048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5562:48:27", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 31049, + "nodeType": "ExpressionStatement", + "src": "5562:48:27" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "baseExpression": { + "id": 31051, + "name": "tempArr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30983, + "src": "5630:7:27", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeString": "struct Vesting.Investor memory[] memory" + } + }, + "id": 31053, + "indexExpression": { + "hexValue": "30", + "id": 31052, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5638:1:27", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5630:10:27", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeString": "struct Vesting.Investor memory" + } + }, + "id": 31054, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "tokensToVest", + "nodeType": "MemberAccess", + "referencedDeclaration": 27466, + "src": "5630:23:27", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3130", + "id": 31055, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5656:8:27", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_10000000000000000000_by_1", + "typeString": "int_const 10000000000000000000" + }, + "value": "10" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_rational_10000000000000000000_by_1", + "typeString": "int_const 10000000000000000000" } ], - "id": 28392, + "id": 31050, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9880,32 +8769,31 @@ 1639, 1674 ], - "referencedDeclaration": 320, - "src": "5734:8:20", + "referencedDeclaration": 514, + "src": "5621:8:27", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" } }, - "id": 28401, + "id": 31056, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5734:48:20", + "src": "5621:44:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28402, + "id": 31057, "nodeType": "ExpressionStatement", - "src": "5734:48:20" + "src": "5621:44:27" }, { "expression": { @@ -9913,28 +8801,28 @@ { "expression": { "baseExpression": { - "id": 28404, + "id": 31059, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28343, - "src": "5802:7:20", + "referencedDeclaration": 30983, + "src": "5685:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28406, + "id": 31061, "indexExpression": { "hexValue": "30", - "id": 28405, + "id": 31060, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5810:1:20", + "src": "5693:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -9946,43 +8834,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5802:10:20", + "src": "5685:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28407, + "id": 31062, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5813:12:20", - "memberName": "tokensToVest", + "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25500, - "src": "5802:23:20", + "referencedDeclaration": 27468, + "src": "5685:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "hexValue": "3130", - "id": 28408, + "hexValue": "30", + "id": 31063, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5828:8:20", - "subdenomination": "ether", + "src": "5711:1:27", "typeDescriptions": { - "typeIdentifier": "t_rational_10000000000000000000_by_1", - "typeString": "int_const 10000000000000000000" + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" }, - "value": "10" + "value": "0" } ], "expression": { @@ -9992,11 +8878,11 @@ "typeString": "uint256" }, { - "typeIdentifier": "t_rational_10000000000000000000_by_1", - "typeString": "int_const 10000000000000000000" + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" } ], - "id": 28403, + "id": 31058, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -10022,107 +8908,95 @@ 1674 ], "referencedDeclaration": 514, - "src": "5793:8:20", + "src": "5676:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28409, + "id": 31064, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5793:44:20", + "src": "5676:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28410, + "id": 31065, "nodeType": "ExpressionStatement", - "src": "5793:44:20" + "src": "5676:37:27" }, { "expression": { "arguments": [ { + "arguments": [], "expression": { - "baseExpression": { - "id": 28412, - "name": "tempArr", + "argumentTypes": [], + "expression": { + "id": 31067, + "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28343, - "src": "5857:7:20", + "referencedDeclaration": 30535, + "src": "5735:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", - "typeString": "struct Vesting.Investor memory[] memory" + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" } }, - "id": 28414, - "indexExpression": { - "hexValue": "30", - "id": 28413, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5865:1:20", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, + "id": 31068, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5857:10:20", + "memberName": "getAllVestedTokens", + "nodeType": "MemberAccess", + "referencedDeclaration": 27822, + "src": "5735:26:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", - "typeString": "struct Vesting.Investor memory" + "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", + "typeString": "function () view external returns (uint256)" } }, - "id": 28415, + "id": 31069, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberLocation": "5868:13:20", - "memberName": "tokensClaimed", - "nodeType": "MemberAccess", - "referencedDeclaration": 25502, - "src": "5857:24:20", + "names": [], + "nodeType": "FunctionCall", + "src": "5735:28:27", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "hexValue": "30", - "id": 28416, + "hexValue": "3130", + "id": 31070, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5883:1:20", + "src": "5765:8:27", + "subdenomination": "ether", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "typeIdentifier": "t_rational_10000000000000000000_by_1", + "typeString": "int_const 10000000000000000000" }, - "value": "0" + "value": "10" } ], "expression": { @@ -10132,11 +9006,11 @@ "typeString": "uint256" }, { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "typeIdentifier": "t_rational_10000000000000000000_by_1", + "typeString": "int_const 10000000000000000000" } ], - "id": 28411, + "id": 31066, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -10162,38 +9036,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "5848:8:20", + "src": "5726:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28417, + "id": 31071, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5848:37:20", + "src": "5726:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28418, + "id": 31072, "nodeType": "ExpressionStatement", - "src": "5848:37:20" + "src": "5726:48:27" } ] }, "documentation": { - "id": 28324, + "id": 30964, "nodeType": "StructuredDocumentation", - "src": "5096:43:20", + "src": "4872:43:27", "text": "@dev Verifies addInvestor state changes" }, "functionSelector": "12223997", @@ -10201,34 +9074,32 @@ "kind": "function", "modifiers": [], "name": "test_vesting_addInvestor_state_changes", - "nameLocation": "5154:38:20", + "nameLocation": "4930:38:27", "parameters": { - "id": 28325, + "id": 30965, "nodeType": "ParameterList", "parameters": [], - "src": "5192:2:20" + "src": "4968:2:27" }, "returnParameters": { - "id": 28326, + "id": 30966, "nodeType": "ParameterList", "parameters": [], - "src": "5202:0:20" + "src": "4978:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28528, + "id": 31182, "nodeType": "FunctionDefinition", - "src": "5991:1102:20", - "nodes": [], + "src": "5880:1102:27", "body": { - "id": 28527, + "id": 31181, "nodeType": "Block", - "src": "6050:1043:20", - "nodes": [], + "src": "5939:1043:27", "statements": [ { "expression": { @@ -10238,14 +9109,14 @@ { "arguments": [ { - "id": 28429, + "id": 31083, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "6150:7:20", + "referencedDeclaration": 30535, + "src": "6039:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -10253,39 +9124,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28428, + "id": 31082, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6142:7:20", + "src": "6031:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28427, + "id": 31081, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6142:7:20", + "src": "6031:7:27", "typeDescriptions": {} } }, - "id": 28430, + "id": 31084, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6142:16:20", + "src": "6031:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10295,14 +9165,14 @@ { "arguments": [ { - "id": 28433, + "id": 31087, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "6168:3:20", + "referencedDeclaration": 30007, + "src": "6057:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -10310,39 +9180,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28432, + "id": 31086, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6160:7:20", + "src": "6049:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28431, + "id": 31085, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6160:7:20", + "src": "6049:7:27", "typeDescriptions": {} } }, - "id": 28434, + "id": 31088, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6160:12:20", + "src": "6049:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10351,14 +9220,14 @@ }, { "hexValue": "3130", - "id": 28435, + "id": 31089, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6174:8:20", + "src": "6063:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -10383,42 +9252,40 @@ } ], "expression": { - "id": 28425, + "id": 31079, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "6122:3:20", + "referencedDeclaration": 30010, + "src": "6011:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28426, + "id": 31080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6126:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "6122:19:20", + "referencedDeclaration": 29684, + "src": "6011:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28436, + "id": 31090, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6122:61:20", + "src": "6011:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -10433,42 +9300,41 @@ "typeString": "bool" } ], - "id": 28424, + "id": 31078, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6115:6:20", + "src": "6004:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28437, + "id": 31091, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6115:69:20", + "src": "6004:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28438, + "id": 31092, "nodeType": "ExpressionStatement", - "src": "6115:69:20" + "src": "6004:69:27" }, { "expression": { "arguments": [ { - "id": 28451, + "id": 31105, "isConstant": false, "isLValue": false, "isPure": false, @@ -10476,20 +9342,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6274:55:20", + "src": "6163:55:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28444, + "id": 31098, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "6306:7:20", + "referencedDeclaration": 30535, + "src": "6195:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -10497,39 +9363,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28443, + "id": 31097, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6298:7:20", + "src": "6187:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28442, + "id": 31096, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6298:7:20", + "src": "6187:7:27", "typeDescriptions": {} } }, - "id": 28445, + "id": 31099, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6298:16:20", + "src": "6187:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10539,14 +9404,14 @@ { "arguments": [ { - "id": 28448, + "id": 31102, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "6324:3:20", + "referencedDeclaration": 30007, + "src": "6213:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -10554,39 +9419,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28447, + "id": 31101, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6316:7:20", + "src": "6205:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28446, + "id": 31100, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6316:7:20", + "src": "6205:7:27", "typeDescriptions": {} } }, - "id": 28449, + "id": 31103, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6316:12:20", + "src": "6205:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10606,42 +9470,40 @@ } ], "expression": { - "id": 28440, + "id": 31094, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "6275:3:20", + "referencedDeclaration": 30013, + "src": "6164:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28441, + "id": 31095, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6279:18:20", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27273, - "src": "6275:22:20", + "referencedDeclaration": 29713, + "src": "6164:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28450, + "id": 31104, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6275:54:20", + "src": "6164:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -10661,42 +9523,41 @@ "typeString": "bool" } ], - "id": 28439, + "id": 31093, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6267:6:20", + "src": "6156:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28452, + "id": 31106, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6267:63:20", + "src": "6156:63:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28453, + "id": 31107, "nodeType": "ExpressionStatement", - "src": "6267:63:20" + "src": "6156:63:27" }, { "expression": { "arguments": [ { - "id": 28466, + "id": 31120, "isConstant": false, "isLValue": false, "isPure": false, @@ -10704,20 +9565,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6419:55:20", + "src": "6308:55:27", "subExpression": { "arguments": [ { "arguments": [ { - "id": 28459, + "id": 31113, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "6451:7:20", + "referencedDeclaration": 30535, + "src": "6340:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -10725,39 +9586,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28458, + "id": 31112, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6443:7:20", + "src": "6332:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28457, + "id": 31111, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6443:7:20", + "src": "6332:7:27", "typeDescriptions": {} } }, - "id": 28460, + "id": 31114, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6443:16:20", + "src": "6332:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10767,14 +9627,14 @@ { "arguments": [ { - "id": 28463, + "id": 31117, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "6469:3:20", + "referencedDeclaration": 30007, + "src": "6358:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -10782,39 +9642,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28462, + "id": 31116, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6461:7:20", + "src": "6350:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28461, + "id": 31115, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6461:7:20", + "src": "6350:7:27", "typeDescriptions": {} } }, - "id": 28464, + "id": 31118, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6461:12:20", + "src": "6350:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10834,42 +9693,40 @@ } ], "expression": { - "id": 28455, + "id": 31109, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "6420:3:20", + "referencedDeclaration": 30007, + "src": "6309:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28456, + "id": 31110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6424:18:20", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27273, - "src": "6420:22:20", + "referencedDeclaration": 29713, + "src": "6309:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28465, + "id": 31119, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6420:54:20", + "src": "6309:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -10889,36 +9746,35 @@ "typeString": "bool" } ], - "id": 28454, + "id": 31108, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6412:6:20", + "src": "6301:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28467, + "id": 31121, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6412:63:20", + "src": "6301:63:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28468, + "id": 31122, "nodeType": "ExpressionStatement", - "src": "6412:63:20" + "src": "6301:63:27" }, { "expression": { @@ -10928,14 +9784,14 @@ { "arguments": [ { - "id": 28474, + "id": 31128, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "6582:7:20", + "referencedDeclaration": 30535, + "src": "6471:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -10943,39 +9799,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28473, + "id": 31127, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6574:7:20", + "src": "6463:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28472, + "id": 31126, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6574:7:20", + "src": "6463:7:27", "typeDescriptions": {} } }, - "id": 28475, + "id": 31129, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6574:16:20", + "src": "6463:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10985,14 +9840,14 @@ { "arguments": [ { - "id": 28478, + "id": 31132, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "6600:3:20", + "referencedDeclaration": 30007, + "src": "6489:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -11000,39 +9855,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28477, + "id": 31131, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6592:7:20", + "src": "6481:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28476, + "id": 31130, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6592:7:20", + "src": "6481:7:27", "typeDescriptions": {} } }, - "id": 28479, + "id": 31133, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6592:12:20", + "src": "6481:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11052,42 +9906,40 @@ } ], "expression": { - "id": 28470, + "id": 31124, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "6551:3:20", + "referencedDeclaration": 30010, + "src": "6440:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28471, + "id": 31125, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6555:18:20", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27273, - "src": "6551:22:20", + "referencedDeclaration": 29713, + "src": "6440:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28480, + "id": 31134, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6551:54:20", + "src": "6440:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11102,36 +9954,35 @@ "typeString": "bool" } ], - "id": 28469, + "id": 31123, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6544:6:20", + "src": "6433:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28481, + "id": 31135, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6544:62:20", + "src": "6433:62:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28482, + "id": 31136, "nodeType": "ExpressionStatement", - "src": "6544:62:20" + "src": "6433:62:27" }, { "expression": { @@ -11139,14 +9990,14 @@ { "arguments": [ { - "id": 28488, + "id": 31142, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "6641:3:20", + "referencedDeclaration": 30010, + "src": "6530:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -11154,39 +10005,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28487, + "id": 31141, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6633:7:20", + "src": "6522:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28486, + "id": 31140, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6633:7:20", + "src": "6522:7:27", "typeDescriptions": {} } }, - "id": 28489, + "id": 31143, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6633:12:20", + "src": "6522:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11202,65 +10052,63 @@ } ], "expression": { - "id": 28483, + "id": 31137, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "6619:2:20", + "src": "6508:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28485, + "id": 31139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6622:10:20", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9043, - "src": "6619:13:20", + "src": "6508:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 28490, + "id": 31144, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6619:27:20", + "src": "6508:27:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28491, + "id": 31145, "nodeType": "ExpressionStatement", - "src": "6619:27:20" + "src": "6508:27:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a6c6f63617465496e766573746f722829206163636f756e74206973206e6f7420616e20696e766573746f72", - "id": 28495, + "id": 31149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6754:58:20", + "src": "6643:58:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c7d5b975a38bc7e0b558417843062c4383bc48f01017af3fb1a433530c55d36", "typeString": "literal_string \"Vesting.sol::locateInvestor() account is not an investor\"" @@ -11276,51 +10124,49 @@ } ], "expression": { - "id": 28492, + "id": 31146, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "6738:2:20", + "src": "6627:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28494, + "id": 31148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6741:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "6738:15:20", + "src": "6627:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 28496, + "id": 31150, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6738:75:20", + "src": "6627:75:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28497, + "id": 31151, "nodeType": "ExpressionStatement", - "src": "6738:75:20" + "src": "6627:75:27" }, { "expression": { @@ -11328,14 +10174,14 @@ { "arguments": [ { - "id": 28503, + "id": 31157, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "6855:3:20", + "referencedDeclaration": 30013, + "src": "6744:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -11343,39 +10189,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28502, + "id": 31156, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6847:7:20", + "src": "6736:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28501, + "id": 31155, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6847:7:20", + "src": "6736:7:27", "typeDescriptions": {} } }, - "id": 28504, + "id": 31158, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6847:12:20", + "src": "6736:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11391,65 +10236,63 @@ } ], "expression": { - "id": 28498, + "id": 31152, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "6824:7:20", + "referencedDeclaration": 30535, + "src": "6713:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28500, + "id": 31154, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6832:14:20", "memberName": "removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 25750, - "src": "6824:22:20", + "referencedDeclaration": 27720, + "src": "6713:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 28505, + "id": 31159, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6824:36:20", + "src": "6713:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28506, + "id": 31160, "nodeType": "ExpressionStatement", - "src": "6824:36:20" + "src": "6713:36:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a72656d6f7665496e766573746f722829206163636f756e742063616e6e6f742062652061646472657373283029", - "id": 28510, + "id": 31164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6952:60:20", + "src": "6841:60:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6b2ef8fa4a278f0c633eee5173cf5b45c06af3207fcf59338db6e0d4ebe3ce85", "typeString": "literal_string \"Vesting.sol::removeInvestor() account cannot be address(0)\"" @@ -11465,51 +10308,49 @@ } ], "expression": { - "id": 28507, + "id": 31161, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "6936:2:20", + "src": "6825:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28509, + "id": 31163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6939:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "6936:15:20", + "src": "6825:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 28511, + "id": 31165, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6936:77:20", + "src": "6825:77:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28512, + "id": 31166, "nodeType": "ExpressionStatement", - "src": "6936:77:20" + "src": "6825:77:27" }, { "expression": { @@ -11518,14 +10359,14 @@ "arguments": [ { "hexValue": "30", - "id": 28518, + "id": 31172, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7055:1:20", + "src": "6944:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -11540,35 +10381,34 @@ "typeString": "int_const 0" } ], - "id": 28517, + "id": 31171, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7047:7:20", + "src": "6936:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28516, + "id": 31170, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7047:7:20", + "src": "6936:7:27", "typeDescriptions": {} } }, - "id": 28519, + "id": 31173, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7047:10:20", + "src": "6936:10:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11584,51 +10424,49 @@ } ], "expression": { - "id": 28513, + "id": 31167, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "7024:7:20", + "referencedDeclaration": 30535, + "src": "6913:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28515, + "id": 31169, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7032:14:20", "memberName": "removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 25750, - "src": "7024:22:20", + "referencedDeclaration": 27720, + "src": "6913:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 28520, + "id": 31174, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7024:34:20", + "src": "6913:34:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28521, + "id": 31175, "nodeType": "ExpressionStatement", - "src": "7024:34:20" + "src": "6913:34:27" }, { "expression": { @@ -11636,58 +10474,56 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28522, + "id": 31176, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "7071:2:20", + "src": "6960:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 28524, + "id": 31178, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7074:9:20", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9060, - "src": "7071:12:20", + "src": "6960:12:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 28525, + "id": 31179, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7071:14:20", + "src": "6960:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28526, + "id": 31180, "nodeType": "ExpressionStatement", - "src": "7071:14:20" + "src": "6960:14:27" } ] }, "documentation": { - "id": 28421, + "id": 31075, "nodeType": "StructuredDocumentation", - "src": "5938:47:20", + "src": "5827:47:27", "text": "@dev Verifies removeInvestor() restrictions" }, "functionSelector": "69e58f0d", @@ -11695,34 +10531,32 @@ "kind": "function", "modifiers": [], "name": "test_vesting_removeInvestor_restrictions", - "nameLocation": "6000:40:20", + "nameLocation": "5889:40:27", "parameters": { - "id": 28422, + "id": 31076, "nodeType": "ParameterList", "parameters": [], - "src": "6040:2:20" + "src": "5929:2:27" }, "returnParameters": { - "id": 28423, + "id": 31077, "nodeType": "ParameterList", "parameters": [], - "src": "6050:0:20" + "src": "5939:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28639, + "id": 31293, "nodeType": "FunctionDefinition", - "src": "7155:881:20", - "nodes": [], + "src": "7044:881:27", "body": { - "id": 28638, + "id": 31292, "nodeType": "Block", - "src": "7215:821:20", - "nodes": [], + "src": "7104:821:27", "statements": [ { "expression": { @@ -11732,14 +10566,14 @@ { "arguments": [ { - "id": 28537, + "id": 31191, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "7315:7:20", + "referencedDeclaration": 30535, + "src": "7204:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -11747,39 +10581,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28536, + "id": 31190, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7307:7:20", + "src": "7196:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28535, + "id": 31189, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7307:7:20", + "src": "7196:7:27", "typeDescriptions": {} } }, - "id": 28538, + "id": 31192, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7307:16:20", + "src": "7196:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11789,14 +10622,14 @@ { "arguments": [ { - "id": 28541, + "id": 31195, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "7333:3:20", + "referencedDeclaration": 30007, + "src": "7222:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -11804,39 +10637,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28540, + "id": 31194, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7325:7:20", + "src": "7214:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28539, + "id": 31193, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7325:7:20", + "src": "7214:7:27", "typeDescriptions": {} } }, - "id": 28542, + "id": 31196, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7325:12:20", + "src": "7214:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11845,14 +10677,14 @@ }, { "hexValue": "3130", - "id": 28543, + "id": 31197, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7339:8:20", + "src": "7228:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -11877,42 +10709,40 @@ } ], "expression": { - "id": 28533, + "id": 31187, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "7287:3:20", + "referencedDeclaration": 30010, + "src": "7176:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28534, + "id": 31188, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7291:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "7287:19:20", + "referencedDeclaration": 29684, + "src": "7176:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28544, + "id": 31198, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7287:61:20", + "src": "7176:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11927,36 +10757,35 @@ "typeString": "bool" } ], - "id": 28532, + "id": 31186, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "7280:6:20", + "src": "7169:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28545, + "id": 31199, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7280:69:20", + "src": "7169:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28546, + "id": 31200, "nodeType": "ExpressionStatement", - "src": "7280:69:20" + "src": "7169:69:27" }, { "expression": { @@ -11966,14 +10795,14 @@ { "arguments": [ { - "id": 28552, + "id": 31206, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "7426:3:20", + "referencedDeclaration": 30007, + "src": "7315:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -11981,39 +10810,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28551, + "id": 31205, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7418:7:20", + "src": "7307:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28550, + "id": 31204, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7418:7:20", + "src": "7307:7:27", "typeDescriptions": {} } }, - "id": 28553, + "id": 31207, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7418:12:20", + "src": "7307:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12029,42 +10857,40 @@ } ], "expression": { - "id": 28548, + "id": 31202, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "7400:7:20", + "referencedDeclaration": 30535, + "src": "7289:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28549, + "id": 31203, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7408:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "7400:17:20", + "referencedDeclaration": 27473, + "src": "7289:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28554, + "id": 31208, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7400:31:20", + "src": "7289:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -12073,14 +10899,14 @@ }, { "hexValue": "74727565", - "id": 28555, + "id": 31209, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7438:4:20", + "src": "7327:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12099,7 +10925,7 @@ "typeString": "bool" } ], - "id": 28547, + "id": 31201, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12125,161 +10951,153 @@ 1674 ], "referencedDeclaration": 1974, - "src": "7391:8:20", + "src": "7280:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28556, + "id": 31210, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7391:52:20", + "src": "7280:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28557, + "id": 31211, "nodeType": "ExpressionStatement", - "src": "7391:52:20" + "src": "7280:52:27" }, { "assignments": [ - 28563 + 31217 ], "declarations": [ { "constant": false, - "id": 28563, + "id": 31217, "mutability": "mutable", "name": "tempArr", - "nameLocation": "7480:7:20", + "nameLocation": "7369:7:27", "nodeType": "VariableDeclaration", - "scope": 28638, - "src": "7454:33:20", + "scope": 31292, + "src": "7343:33:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 28561, + "id": 31215, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 28560, + "id": 31214, "name": "Vesting.Investor", - "nameLocations": [ - "7454:7:20", - "7462:8:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 25503, - "src": "7454:16:20" + "referencedDeclaration": 27469, + "src": "7343:16:27" }, - "referencedDeclaration": 25503, - "src": "7454:16:20", + "referencedDeclaration": 27469, + "src": "7343:16:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 28562, + "id": 31216, "nodeType": "ArrayTypeName", - "src": "7454:18:20", + "src": "7343:18:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "id": 28567, + "id": 31221, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 28564, + "id": 31218, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "7490:7:20", + "referencedDeclaration": 30535, + "src": "7379:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28565, + "id": 31219, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7498:18:20", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 26060, - "src": "7490:26:20", + "referencedDeclaration": 28039, + "src": "7379:26:27", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 28566, + "id": 31220, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7490:28:20", + "src": "7379:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "7454:64:20" + "src": "7343:64:27" }, { "expression": { "arguments": [ { "expression": { - "id": 28569, + "id": 31223, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28563, - "src": "7538:7:20", + "referencedDeclaration": 31217, + "src": "7427:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28570, + "id": 31224, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7546:6:20", "memberName": "length", "nodeType": "MemberAccess", - "src": "7538:14:20", + "src": "7427:14:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12287,14 +11105,14 @@ }, { "hexValue": "31", - "id": 28571, + "id": 31225, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7563:1:20", + "src": "7452:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -12313,7 +11131,7 @@ "typeString": "int_const 1" } ], - "id": 28568, + "id": 31222, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12339,31 +11157,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "7529:8:20", + "src": "7418:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28572, + "id": 31226, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7529:36:20", + "src": "7418:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28573, + "id": 31227, "nodeType": "ExpressionStatement", - "src": "7529:36:20" + "src": "7418:36:27" }, { "expression": { @@ -12371,28 +11188,28 @@ { "expression": { "baseExpression": { - "id": 28575, + "id": 31229, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28563, - "src": "7585:7:20", + "referencedDeclaration": 31217, + "src": "7474:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28577, + "id": 31231, "indexExpression": { "hexValue": "30", - "id": 28576, + "id": 31230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7593:1:20", + "src": "7482:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -12404,22 +11221,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7585:10:20", + "src": "7474:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28578, + "id": 31232, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7596:7:20", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25498, - "src": "7585:18:20", + "referencedDeclaration": 27464, + "src": "7474:18:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12428,14 +11244,14 @@ { "arguments": [ { - "id": 28581, + "id": 31235, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "7619:3:20", + "referencedDeclaration": 30007, + "src": "7508:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -12443,39 +11259,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28580, + "id": 31234, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7611:7:20", + "src": "7500:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28579, + "id": 31233, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7611:7:20", + "src": "7500:7:27", "typeDescriptions": {} } }, - "id": 28582, + "id": 31236, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7611:12:20", + "src": "7500:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12494,7 +11309,7 @@ "typeString": "address" } ], - "id": 28574, + "id": 31228, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12520,31 +11335,30 @@ 1674 ], "referencedDeclaration": 320, - "src": "7576:8:20", + "src": "7465:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28583, + "id": 31237, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7576:48:20", + "src": "7465:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28584, + "id": 31238, "nodeType": "ExpressionStatement", - "src": "7576:48:20" + "src": "7465:48:27" }, { "expression": { @@ -12552,28 +11366,28 @@ { "expression": { "baseExpression": { - "id": 28586, + "id": 31240, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28563, - "src": "7644:7:20", + "referencedDeclaration": 31217, + "src": "7533:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28588, + "id": 31242, "indexExpression": { "hexValue": "30", - "id": 28587, + "id": 31241, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7652:1:20", + "src": "7541:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -12585,22 +11399,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7644:10:20", + "src": "7533:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28589, + "id": 31243, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7655:12:20", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 25500, - "src": "7644:23:20", + "referencedDeclaration": 27466, + "src": "7533:23:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12608,14 +11421,14 @@ }, { "hexValue": "3130", - "id": 28590, + "id": 31244, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7670:8:20", + "src": "7559:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -12635,7 +11448,7 @@ "typeString": "int_const 10000000000000000000" } ], - "id": 28585, + "id": 31239, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12661,31 +11474,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "7635:8:20", + "src": "7524:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28591, + "id": 31245, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7635:44:20", + "src": "7524:44:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28592, + "id": 31246, "nodeType": "ExpressionStatement", - "src": "7635:44:20" + "src": "7524:44:27" }, { "expression": { @@ -12693,28 +11505,28 @@ { "expression": { "baseExpression": { - "id": 28594, + "id": 31248, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28563, - "src": "7699:7:20", + "referencedDeclaration": 31217, + "src": "7588:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28596, + "id": 31250, "indexExpression": { "hexValue": "30", - "id": 28595, + "id": 31249, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7707:1:20", + "src": "7596:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -12726,22 +11538,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7699:10:20", + "src": "7588:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28597, + "id": 31251, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "7710:13:20", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25502, - "src": "7699:24:20", + "referencedDeclaration": 27468, + "src": "7588:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12749,14 +11560,14 @@ }, { "hexValue": "30", - "id": 28598, + "id": 31252, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7725:1:20", + "src": "7614:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -12775,7 +11586,7 @@ "typeString": "int_const 0" } ], - "id": 28593, + "id": 31247, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12801,31 +11612,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "7690:8:20", + "src": "7579:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28599, + "id": 31253, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7690:37:20", + "src": "7579:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28600, + "id": 31254, "nodeType": "ExpressionStatement", - "src": "7690:37:20" + "src": "7579:37:27" }, { "expression": { @@ -12835,14 +11645,14 @@ { "arguments": [ { - "id": 28606, + "id": 31260, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "7812:7:20", + "referencedDeclaration": 30535, + "src": "7701:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -12850,39 +11660,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28605, + "id": 31259, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7804:7:20", + "src": "7693:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28604, + "id": 31258, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7804:7:20", + "src": "7693:7:27", "typeDescriptions": {} } }, - "id": 28607, + "id": 31261, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7804:16:20", + "src": "7693:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12892,14 +11701,14 @@ { "arguments": [ { - "id": 28610, + "id": 31264, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "7830:3:20", + "referencedDeclaration": 30007, + "src": "7719:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -12907,39 +11716,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28609, + "id": 31263, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7822:7:20", + "src": "7711:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28608, + "id": 31262, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7822:7:20", + "src": "7711:7:27", "typeDescriptions": {} } }, - "id": 28611, + "id": 31265, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7822:12:20", + "src": "7711:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12959,42 +11767,40 @@ } ], "expression": { - "id": 28602, + "id": 31256, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "7781:3:20", + "referencedDeclaration": 30010, + "src": "7670:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28603, + "id": 31257, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7785:18:20", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27273, - "src": "7781:22:20", + "referencedDeclaration": 29713, + "src": "7670:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28612, + "id": 31266, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7781:54:20", + "src": "7670:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13009,36 +11815,35 @@ "typeString": "bool" } ], - "id": 28601, + "id": 31255, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "7774:6:20", + "src": "7663:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28613, + "id": 31267, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7774:62:20", + "src": "7663:62:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28614, + "id": 31268, "nodeType": "ExpressionStatement", - "src": "7774:62:20" + "src": "7663:62:27" }, { "expression": { @@ -13048,14 +11853,14 @@ { "arguments": [ { - "id": 28620, + "id": 31274, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "7914:3:20", + "referencedDeclaration": 30007, + "src": "7803:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -13063,39 +11868,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28619, + "id": 31273, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7906:7:20", + "src": "7795:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28618, + "id": 31272, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7906:7:20", + "src": "7795:7:27", "typeDescriptions": {} } }, - "id": 28621, + "id": 31275, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7906:12:20", + "src": "7795:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13111,42 +11915,40 @@ } ], "expression": { - "id": 28616, + "id": 31270, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "7888:7:20", + "referencedDeclaration": 30535, + "src": "7777:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28617, + "id": 31271, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7896:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "7888:17:20", + "referencedDeclaration": 27473, + "src": "7777:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28622, + "id": 31276, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7888:31:20", + "src": "7777:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13155,14 +11957,14 @@ }, { "hexValue": "66616c7365", - "id": 28623, + "id": 31277, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7926:5:20", + "src": "7815:5:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13181,7 +11983,7 @@ "typeString": "bool" } ], - "id": 28615, + "id": 31269, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -13207,48 +12009,47 @@ 1674 ], "referencedDeclaration": 1974, - "src": "7879:8:20", + "src": "7768:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28624, + "id": 31278, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7879:53:20", + "src": "7768:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28625, + "id": 31279, "nodeType": "ExpressionStatement", - "src": "7879:53:20" + "src": "7768:53:27" }, { "expression": { - "id": 28630, + "id": 31284, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28626, + "id": 31280, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28563, - "src": "7943:7:20", + "referencedDeclaration": 31217, + "src": "7832:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, @@ -13259,83 +12060,80 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28627, + "id": 31281, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "7953:7:20", + "referencedDeclaration": 30535, + "src": "7842:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28628, + "id": 31282, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7961:18:20", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 26060, - "src": "7953:26:20", + "referencedDeclaration": 28039, + "src": "7842:26:27", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 28629, + "id": 31283, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7953:28:20", + "src": "7842:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "src": "7943:38:20", + "src": "7832:38:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28631, + "id": 31285, "nodeType": "ExpressionStatement", - "src": "7943:38:20" + "src": "7832:38:27" }, { "expression": { "arguments": [ { "expression": { - "id": 28633, + "id": 31287, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28563, - "src": "8001:7:20", + "referencedDeclaration": 31217, + "src": "7890:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28634, + "id": 31288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8009:6:20", "memberName": "length", "nodeType": "MemberAccess", - "src": "8001:14:20", + "src": "7890:14:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13343,14 +12141,14 @@ }, { "hexValue": "30", - "id": 28635, + "id": 31289, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8026:1:20", + "src": "7915:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -13369,7 +12167,7 @@ "typeString": "int_const 0" } ], - "id": 28632, + "id": 31286, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -13395,38 +12193,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "7992:8:20", + "src": "7881:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28636, + "id": 31290, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7992:36:20", + "src": "7881:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28637, + "id": 31291, "nodeType": "ExpressionStatement", - "src": "7992:36:20" + "src": "7881:36:27" } ] }, "documentation": { - "id": 28529, + "id": 31183, "nodeType": "StructuredDocumentation", - "src": "7101:48:20", + "src": "6990:48:27", "text": "@dev Verifies removeInvestor() state changes" }, "functionSelector": "2ef9ccdf", @@ -13434,133 +12231,124 @@ "kind": "function", "modifiers": [], "name": "test_vesting_removeInvestor_state_changes", - "nameLocation": "7164:41:20", + "nameLocation": "7053:41:27", "parameters": { - "id": 28530, + "id": 31184, "nodeType": "ParameterList", "parameters": [], - "src": "7205:2:20" + "src": "7094:2:27" }, "returnParameters": { - "id": 28531, + "id": 31185, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:20" + "src": "7104:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28940, + "id": 31594, "nodeType": "FunctionDefinition", - "src": "8131:1974:20", - "nodes": [], + "src": "8020:1974:27", "body": { - "id": 28939, + "id": 31593, "nodeType": "Block", - "src": "8188:1917:20", - "nodes": [], + "src": "8077:1917:27", "statements": [ { "assignments": [ - 28645 + 31299 ], "declarations": [ { "constant": false, - "id": 28645, + "id": 31299, "mutability": "mutable", "name": "tim", - "nameLocation": "8205:3:20", + "nameLocation": "8094:3:27", "nodeType": "VariableDeclaration", - "scope": 28939, - "src": "8199:9:20", + "scope": 31593, + "src": "8088:9:27", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" }, "typeName": { - "id": 28644, + "id": 31298, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 28643, + "id": 31297, "name": "Actor", - "nameLocations": [ - "8199:5:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27329, - "src": "8199:5:20" + "referencedDeclaration": 29769, + "src": "8088:5:27" }, - "referencedDeclaration": 27329, - "src": "8199:5:20", + "referencedDeclaration": 29769, + "src": "8088:5:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, "visibility": "internal" } ], - "id": 28650, + "id": 31304, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28648, + "id": 31302, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "8211:9:20", + "src": "8100:9:27", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$27329_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$29769_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 28647, + "id": 31301, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 28646, + "id": 31300, "name": "Actor", - "nameLocations": [ - "8215:5:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27329, - "src": "8215:5:20" + "referencedDeclaration": 29769, + "src": "8104:5:27" }, - "referencedDeclaration": 27329, - "src": "8215:5:20", + "referencedDeclaration": 29769, + "src": "8104:5:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } }, - "id": 28649, + "id": 31303, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8211:11:20", + "src": "8100:11:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, "nodeType": "VariableDeclarationStatement", - "src": "8199:23:20" + "src": "8088:23:27" }, { "expression": { @@ -13570,14 +12358,14 @@ { "arguments": [ { - "id": 28656, + "id": 31310, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "8324:7:20", + "referencedDeclaration": 30535, + "src": "8213:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -13585,39 +12373,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28655, + "id": 31309, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8316:7:20", + "src": "8205:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28654, + "id": 31308, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8316:7:20", + "src": "8205:7:27", "typeDescriptions": {} } }, - "id": 28657, + "id": 31311, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8316:16:20", + "src": "8205:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13627,14 +12414,14 @@ { "arguments": [ { - "id": 28660, + "id": 31314, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "8342:3:20", + "referencedDeclaration": 30007, + "src": "8231:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -13642,39 +12429,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28659, + "id": 31313, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8334:7:20", + "src": "8223:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28658, + "id": 31312, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8334:7:20", + "src": "8223:7:27", "typeDescriptions": {} } }, - "id": 28661, + "id": 31315, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8334:12:20", + "src": "8223:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13683,14 +12469,14 @@ }, { "hexValue": "3130", - "id": 28662, + "id": 31316, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8348:8:20", + "src": "8237:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -13715,42 +12501,40 @@ } ], "expression": { - "id": 28652, + "id": 31306, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "8296:3:20", + "referencedDeclaration": 30010, + "src": "8185:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28653, + "id": 31307, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8300:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "8296:19:20", + "referencedDeclaration": 29684, + "src": "8185:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28663, + "id": 31317, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8296:61:20", + "src": "8185:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13765,36 +12549,35 @@ "typeString": "bool" } ], - "id": 28651, + "id": 31305, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "8289:6:20", + "src": "8178:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28664, + "id": 31318, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8289:69:20", + "src": "8178:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28665, + "id": 31319, "nodeType": "ExpressionStatement", - "src": "8289:69:20" + "src": "8178:69:27" }, { "expression": { @@ -13804,14 +12587,14 @@ { "arguments": [ { - "id": 28671, + "id": 31325, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "8404:7:20", + "referencedDeclaration": 30535, + "src": "8293:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -13819,39 +12602,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28670, + "id": 31324, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8396:7:20", + "src": "8285:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28669, + "id": 31323, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8396:7:20", + "src": "8285:7:27", "typeDescriptions": {} } }, - "id": 28672, + "id": 31326, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8396:16:20", + "src": "8285:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13861,14 +12643,14 @@ { "arguments": [ { - "id": 28675, + "id": 31329, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "8422:3:20", + "referencedDeclaration": 30013, + "src": "8311:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -13876,39 +12658,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28674, + "id": 31328, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8414:7:20", + "src": "8303:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28673, + "id": 31327, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8414:7:20", + "src": "8303:7:27", "typeDescriptions": {} } }, - "id": 28676, + "id": 31330, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8414:12:20", + "src": "8303:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13917,14 +12698,14 @@ }, { "hexValue": "3230", - "id": 28677, + "id": 31331, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8428:8:20", + "src": "8317:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -13949,42 +12730,40 @@ } ], "expression": { - "id": 28667, + "id": 31321, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "8376:3:20", + "referencedDeclaration": 30010, + "src": "8265:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28668, + "id": 31322, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8380:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "8376:19:20", + "referencedDeclaration": 29684, + "src": "8265:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28678, + "id": 31332, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8376:61:20", + "src": "8265:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13999,36 +12778,35 @@ "typeString": "bool" } ], - "id": 28666, + "id": 31320, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "8369:6:20", + "src": "8258:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28679, + "id": 31333, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8369:69:20", + "src": "8258:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28680, + "id": 31334, "nodeType": "ExpressionStatement", - "src": "8369:69:20" + "src": "8258:69:27" }, { "expression": { @@ -14038,14 +12816,14 @@ { "arguments": [ { - "id": 28686, + "id": 31340, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "8484:7:20", + "referencedDeclaration": 30535, + "src": "8373:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -14053,39 +12831,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28685, + "id": 31339, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8476:7:20", + "src": "8365:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28684, + "id": 31338, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8476:7:20", + "src": "8365:7:27", "typeDescriptions": {} } }, - "id": 28687, + "id": 31341, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8476:16:20", + "src": "8365:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -14095,14 +12872,14 @@ { "arguments": [ { - "id": 28690, + "id": 31344, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28645, - "src": "8502:3:20", + "referencedDeclaration": 31299, + "src": "8391:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -14110,39 +12887,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28689, + "id": 31343, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8494:7:20", + "src": "8383:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28688, + "id": 31342, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8494:7:20", + "src": "8383:7:27", "typeDescriptions": {} } }, - "id": 28691, + "id": 31345, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8494:12:20", + "src": "8383:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -14151,14 +12927,14 @@ }, { "hexValue": "3330", - "id": 28692, + "id": 31346, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8508:8:20", + "src": "8397:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_30000000000000000000_by_1", @@ -14183,42 +12959,40 @@ } ], "expression": { - "id": 28682, + "id": 31336, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "8456:3:20", + "referencedDeclaration": 30010, + "src": "8345:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28683, + "id": 31337, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8460:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "8456:19:20", + "referencedDeclaration": 29684, + "src": "8345:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28693, + "id": 31347, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8456:61:20", + "src": "8345:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -14233,36 +13007,35 @@ "typeString": "bool" } ], - "id": 28681, + "id": 31335, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "8449:6:20", + "src": "8338:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28694, + "id": 31348, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8449:69:20", + "src": "8338:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28695, + "id": 31349, "nodeType": "ExpressionStatement", - "src": "8449:69:20" + "src": "8338:69:27" }, { "expression": { @@ -14272,14 +13045,14 @@ { "arguments": [ { - "id": 28701, + "id": 31355, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "8595:3:20", + "referencedDeclaration": 30007, + "src": "8484:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -14287,39 +13060,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28700, + "id": 31354, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8587:7:20", + "src": "8476:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28699, + "id": 31353, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8587:7:20", + "src": "8476:7:27", "typeDescriptions": {} } }, - "id": 28702, + "id": 31356, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8587:12:20", + "src": "8476:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -14335,42 +13107,40 @@ } ], "expression": { - "id": 28697, + "id": 31351, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "8569:7:20", + "referencedDeclaration": 30535, + "src": "8458:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28698, + "id": 31352, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8577:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "8569:17:20", + "referencedDeclaration": 27473, + "src": "8458:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28703, + "id": 31357, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8569:31:20", + "src": "8458:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -14379,14 +13149,14 @@ }, { "hexValue": "74727565", - "id": 28704, + "id": 31358, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8607:4:20", + "src": "8496:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14405,7 +13175,7 @@ "typeString": "bool" } ], - "id": 28696, + "id": 31350, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14431,31 +13201,30 @@ 1674 ], "referencedDeclaration": 1974, - "src": "8560:8:20", + "src": "8449:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28705, + "id": 31359, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8560:52:20", + "src": "8449:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28706, + "id": 31360, "nodeType": "ExpressionStatement", - "src": "8560:52:20" + "src": "8449:52:27" }, { "expression": { @@ -14465,14 +13234,14 @@ { "arguments": [ { - "id": 28712, + "id": 31366, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "8658:3:20", + "referencedDeclaration": 30013, + "src": "8547:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -14480,39 +13249,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28711, + "id": 31365, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8650:7:20", + "src": "8539:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28710, + "id": 31364, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8650:7:20", + "src": "8539:7:27", "typeDescriptions": {} } }, - "id": 28713, + "id": 31367, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8650:12:20", + "src": "8539:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -14528,42 +13296,40 @@ } ], "expression": { - "id": 28708, + "id": 31362, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "8632:7:20", + "referencedDeclaration": 30535, + "src": "8521:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28709, + "id": 31363, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8640:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "8632:17:20", + "referencedDeclaration": 27473, + "src": "8521:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28714, + "id": 31368, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8632:31:20", + "src": "8521:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -14572,14 +13338,14 @@ }, { "hexValue": "74727565", - "id": 28715, + "id": 31369, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8670:4:20", + "src": "8559:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14598,7 +13364,7 @@ "typeString": "bool" } ], - "id": 28707, + "id": 31361, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14624,31 +13390,30 @@ 1674 ], "referencedDeclaration": 1974, - "src": "8623:8:20", + "src": "8512:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28716, + "id": 31370, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8623:52:20", + "src": "8512:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28717, + "id": 31371, "nodeType": "ExpressionStatement", - "src": "8623:52:20" + "src": "8512:52:27" }, { "expression": { @@ -14658,14 +13423,14 @@ { "arguments": [ { - "id": 28723, + "id": 31377, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28645, - "src": "8721:3:20", + "referencedDeclaration": 31299, + "src": "8610:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -14673,39 +13438,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28722, + "id": 31376, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8713:7:20", + "src": "8602:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28721, + "id": 31375, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8713:7:20", + "src": "8602:7:27", "typeDescriptions": {} } }, - "id": 28724, + "id": 31378, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8713:12:20", + "src": "8602:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -14721,42 +13485,40 @@ } ], "expression": { - "id": 28719, + "id": 31373, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "8695:7:20", + "referencedDeclaration": 30535, + "src": "8584:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28720, + "id": 31374, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8703:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "8695:17:20", + "referencedDeclaration": 27473, + "src": "8584:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28725, + "id": 31379, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8695:31:20", + "src": "8584:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -14765,14 +13527,14 @@ }, { "hexValue": "74727565", - "id": 28726, + "id": 31380, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8733:4:20", + "src": "8622:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14791,7 +13553,7 @@ "typeString": "bool" } ], - "id": 28718, + "id": 31372, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14817,161 +13579,153 @@ 1674 ], "referencedDeclaration": 1974, - "src": "8686:8:20", + "src": "8575:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28727, + "id": 31381, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8686:52:20", + "src": "8575:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28728, + "id": 31382, "nodeType": "ExpressionStatement", - "src": "8686:52:20" + "src": "8575:52:27" }, { "assignments": [ - 28734 + 31388 ], "declarations": [ { "constant": false, - "id": 28734, + "id": 31388, "mutability": "mutable", "name": "tempArr", - "nameLocation": "8775:7:20", + "nameLocation": "8664:7:27", "nodeType": "VariableDeclaration", - "scope": 28939, - "src": "8749:33:20", + "scope": 31593, + "src": "8638:33:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 28732, + "id": 31386, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 28731, + "id": 31385, "name": "Vesting.Investor", - "nameLocations": [ - "8749:7:20", - "8757:8:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 25503, - "src": "8749:16:20" + "referencedDeclaration": 27469, + "src": "8638:16:27" }, - "referencedDeclaration": 25503, - "src": "8749:16:20", + "referencedDeclaration": 27469, + "src": "8638:16:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 28733, + "id": 31387, "nodeType": "ArrayTypeName", - "src": "8749:18:20", + "src": "8638:18:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "id": 28738, + "id": 31392, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 28735, + "id": 31389, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "8785:7:20", + "referencedDeclaration": 30535, + "src": "8674:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28736, + "id": 31390, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8793:18:20", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 26060, - "src": "8785:26:20", + "referencedDeclaration": 28039, + "src": "8674:26:27", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 28737, + "id": 31391, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8785:28:20", + "src": "8674:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "8749:64:20" + "src": "8638:64:27" }, { "expression": { "arguments": [ { "expression": { - "id": 28740, + "id": 31394, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "8833:7:20", + "referencedDeclaration": 31388, + "src": "8722:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28741, + "id": 31395, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8841:6:20", "memberName": "length", "nodeType": "MemberAccess", - "src": "8833:14:20", + "src": "8722:14:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14979,14 +13733,14 @@ }, { "hexValue": "33", - "id": 28742, + "id": 31396, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8858:1:20", + "src": "8747:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" @@ -15005,7 +13759,7 @@ "typeString": "int_const 3" } ], - "id": 28739, + "id": 31393, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15031,31 +13785,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "8824:8:20", + "src": "8713:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28743, + "id": 31397, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8824:36:20", + "src": "8713:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28744, + "id": 31398, "nodeType": "ExpressionStatement", - "src": "8824:36:20" + "src": "8713:36:27" }, { "expression": { @@ -15063,28 +13816,28 @@ { "expression": { "baseExpression": { - "id": 28746, + "id": 31400, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "8880:7:20", + "referencedDeclaration": 31388, + "src": "8769:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28748, + "id": 31402, "indexExpression": { "hexValue": "30", - "id": 28747, + "id": 31401, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8888:1:20", + "src": "8777:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -15096,22 +13849,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8880:10:20", + "src": "8769:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28749, + "id": 31403, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8891:7:20", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25498, - "src": "8880:18:20", + "referencedDeclaration": 27464, + "src": "8769:18:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15120,14 +13872,14 @@ { "arguments": [ { - "id": 28752, + "id": 31406, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "8914:3:20", + "referencedDeclaration": 30007, + "src": "8803:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -15135,39 +13887,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28751, + "id": 31405, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8906:7:20", + "src": "8795:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28750, + "id": 31404, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8906:7:20", + "src": "8795:7:27", "typeDescriptions": {} } }, - "id": 28753, + "id": 31407, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8906:12:20", + "src": "8795:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15186,7 +13937,7 @@ "typeString": "address" } ], - "id": 28745, + "id": 31399, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15212,31 +13963,30 @@ 1674 ], "referencedDeclaration": 320, - "src": "8871:8:20", + "src": "8760:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28754, + "id": 31408, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8871:48:20", + "src": "8760:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28755, + "id": 31409, "nodeType": "ExpressionStatement", - "src": "8871:48:20" + "src": "8760:48:27" }, { "expression": { @@ -15244,28 +13994,28 @@ { "expression": { "baseExpression": { - "id": 28757, + "id": 31411, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "8939:7:20", + "referencedDeclaration": 31388, + "src": "8828:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28759, + "id": 31413, "indexExpression": { "hexValue": "30", - "id": 28758, + "id": 31412, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8947:1:20", + "src": "8836:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -15277,22 +14027,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8939:10:20", + "src": "8828:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28760, + "id": 31414, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "8950:12:20", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 25500, - "src": "8939:23:20", + "referencedDeclaration": 27466, + "src": "8828:23:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15300,14 +14049,14 @@ }, { "hexValue": "3130", - "id": 28761, + "id": 31415, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8965:8:20", + "src": "8854:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -15327,7 +14076,7 @@ "typeString": "int_const 10000000000000000000" } ], - "id": 28756, + "id": 31410, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15353,31 +14102,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "8930:8:20", + "src": "8819:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28762, + "id": 31416, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8930:44:20", + "src": "8819:44:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28763, + "id": 31417, "nodeType": "ExpressionStatement", - "src": "8930:44:20" + "src": "8819:44:27" }, { "expression": { @@ -15385,28 +14133,28 @@ { "expression": { "baseExpression": { - "id": 28765, + "id": 31419, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "8994:7:20", + "referencedDeclaration": 31388, + "src": "8883:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28767, + "id": 31421, "indexExpression": { "hexValue": "30", - "id": 28766, + "id": 31420, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9002:1:20", + "src": "8891:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -15418,22 +14166,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8994:10:20", + "src": "8883:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28768, + "id": 31422, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9005:13:20", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25502, - "src": "8994:24:20", + "referencedDeclaration": 27468, + "src": "8883:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15441,14 +14188,14 @@ }, { "hexValue": "30", - "id": 28769, + "id": 31423, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9020:1:20", + "src": "8909:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -15467,7 +14214,7 @@ "typeString": "int_const 0" } ], - "id": 28764, + "id": 31418, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15493,31 +14240,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "8985:8:20", + "src": "8874:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28770, + "id": 31424, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8985:37:20", + "src": "8874:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28771, + "id": 31425, "nodeType": "ExpressionStatement", - "src": "8985:37:20" + "src": "8874:37:27" }, { "expression": { @@ -15525,28 +14271,28 @@ { "expression": { "baseExpression": { - "id": 28773, + "id": 31427, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9042:7:20", + "referencedDeclaration": 31388, + "src": "8931:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28775, + "id": 31429, "indexExpression": { "hexValue": "31", - "id": 28774, + "id": 31428, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9050:1:20", + "src": "8939:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -15558,22 +14304,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9042:10:20", + "src": "8931:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28776, + "id": 31430, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9053:7:20", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25498, - "src": "9042:18:20", + "referencedDeclaration": 27464, + "src": "8931:18:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15582,14 +14327,14 @@ { "arguments": [ { - "id": 28779, + "id": 31433, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "9076:3:20", + "referencedDeclaration": 30013, + "src": "8965:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -15597,39 +14342,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28778, + "id": 31432, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9068:7:20", + "src": "8957:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28777, + "id": 31431, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9068:7:20", + "src": "8957:7:27", "typeDescriptions": {} } }, - "id": 28780, + "id": 31434, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9068:12:20", + "src": "8957:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15648,7 +14392,7 @@ "typeString": "address" } ], - "id": 28772, + "id": 31426, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15674,31 +14418,30 @@ 1674 ], "referencedDeclaration": 320, - "src": "9033:8:20", + "src": "8922:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28781, + "id": 31435, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9033:48:20", + "src": "8922:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28782, + "id": 31436, "nodeType": "ExpressionStatement", - "src": "9033:48:20" + "src": "8922:48:27" }, { "expression": { @@ -15706,28 +14449,28 @@ { "expression": { "baseExpression": { - "id": 28784, + "id": 31438, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9101:7:20", + "referencedDeclaration": 31388, + "src": "8990:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28786, + "id": 31440, "indexExpression": { "hexValue": "31", - "id": 28785, + "id": 31439, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9109:1:20", + "src": "8998:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -15739,22 +14482,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9101:10:20", + "src": "8990:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28787, + "id": 31441, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9112:12:20", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 25500, - "src": "9101:23:20", + "referencedDeclaration": 27466, + "src": "8990:23:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15762,14 +14504,14 @@ }, { "hexValue": "3230", - "id": 28788, + "id": 31442, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9127:8:20", + "src": "9016:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -15789,7 +14531,7 @@ "typeString": "int_const 20000000000000000000" } ], - "id": 28783, + "id": 31437, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15815,31 +14557,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "9092:8:20", + "src": "8981:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28789, + "id": 31443, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9092:44:20", + "src": "8981:44:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28790, + "id": 31444, "nodeType": "ExpressionStatement", - "src": "9092:44:20" + "src": "8981:44:27" }, { "expression": { @@ -15847,28 +14588,28 @@ { "expression": { "baseExpression": { - "id": 28792, + "id": 31446, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9156:7:20", + "referencedDeclaration": 31388, + "src": "9045:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28794, + "id": 31448, "indexExpression": { "hexValue": "31", - "id": 28793, + "id": 31447, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9164:1:20", + "src": "9053:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -15880,22 +14621,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9156:10:20", + "src": "9045:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28795, + "id": 31449, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9167:13:20", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25502, - "src": "9156:24:20", + "referencedDeclaration": 27468, + "src": "9045:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15903,14 +14643,14 @@ }, { "hexValue": "30", - "id": 28796, + "id": 31450, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9182:1:20", + "src": "9071:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -15929,7 +14669,7 @@ "typeString": "int_const 0" } ], - "id": 28791, + "id": 31445, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15955,31 +14695,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "9147:8:20", + "src": "9036:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28797, + "id": 31451, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9147:37:20", + "src": "9036:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28798, + "id": 31452, "nodeType": "ExpressionStatement", - "src": "9147:37:20" + "src": "9036:37:27" }, { "expression": { @@ -15987,28 +14726,28 @@ { "expression": { "baseExpression": { - "id": 28800, + "id": 31454, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9204:7:20", + "referencedDeclaration": 31388, + "src": "9093:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28802, + "id": 31456, "indexExpression": { "hexValue": "32", - "id": 28801, + "id": 31455, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9212:1:20", + "src": "9101:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -16020,22 +14759,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9204:10:20", + "src": "9093:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28803, + "id": 31457, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9215:7:20", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25498, - "src": "9204:18:20", + "referencedDeclaration": 27464, + "src": "9093:18:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16044,14 +14782,14 @@ { "arguments": [ { - "id": 28806, + "id": 31460, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28645, - "src": "9238:3:20", + "referencedDeclaration": 31299, + "src": "9127:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -16059,39 +14797,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28805, + "id": 31459, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9230:7:20", + "src": "9119:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28804, + "id": 31458, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9230:7:20", + "src": "9119:7:27", "typeDescriptions": {} } }, - "id": 28807, + "id": 31461, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9230:12:20", + "src": "9119:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16110,7 +14847,7 @@ "typeString": "address" } ], - "id": 28799, + "id": 31453, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -16136,31 +14873,30 @@ 1674 ], "referencedDeclaration": 320, - "src": "9195:8:20", + "src": "9084:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28808, + "id": 31462, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9195:48:20", + "src": "9084:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28809, + "id": 31463, "nodeType": "ExpressionStatement", - "src": "9195:48:20" + "src": "9084:48:27" }, { "expression": { @@ -16168,28 +14904,28 @@ { "expression": { "baseExpression": { - "id": 28811, + "id": 31465, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9263:7:20", + "referencedDeclaration": 31388, + "src": "9152:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28813, + "id": 31467, "indexExpression": { "hexValue": "32", - "id": 28812, + "id": 31466, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9271:1:20", + "src": "9160:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -16201,22 +14937,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9263:10:20", + "src": "9152:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28814, + "id": 31468, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9274:12:20", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 25500, - "src": "9263:23:20", + "referencedDeclaration": 27466, + "src": "9152:23:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16224,14 +14959,14 @@ }, { "hexValue": "3330", - "id": 28815, + "id": 31469, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9289:8:20", + "src": "9178:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_30000000000000000000_by_1", @@ -16251,7 +14986,7 @@ "typeString": "int_const 30000000000000000000" } ], - "id": 28810, + "id": 31464, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -16277,31 +15012,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "9254:8:20", + "src": "9143:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28816, + "id": 31470, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9254:44:20", + "src": "9143:44:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28817, + "id": 31471, "nodeType": "ExpressionStatement", - "src": "9254:44:20" + "src": "9143:44:27" }, { "expression": { @@ -16309,28 +15043,28 @@ { "expression": { "baseExpression": { - "id": 28819, + "id": 31473, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9318:7:20", + "referencedDeclaration": 31388, + "src": "9207:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28821, + "id": 31475, "indexExpression": { "hexValue": "32", - "id": 28820, + "id": 31474, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9326:1:20", + "src": "9215:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -16342,22 +15076,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9318:10:20", + "src": "9207:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28822, + "id": 31476, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9329:13:20", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25502, - "src": "9318:24:20", + "referencedDeclaration": 27468, + "src": "9207:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16365,14 +15098,14 @@ }, { "hexValue": "30", - "id": 28823, + "id": 31477, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9344:1:20", + "src": "9233:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -16391,7 +15124,7 @@ "typeString": "int_const 0" } ], - "id": 28818, + "id": 31472, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -16417,31 +15150,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "9309:8:20", + "src": "9198:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28824, + "id": 31478, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9309:37:20", + "src": "9198:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28825, + "id": 31479, "nodeType": "ExpressionStatement", - "src": "9309:37:20" + "src": "9198:37:27" }, { "expression": { @@ -16451,14 +15183,14 @@ { "arguments": [ { - "id": 28831, + "id": 31485, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "9431:7:20", + "referencedDeclaration": 30535, + "src": "9320:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -16466,39 +15198,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28830, + "id": 31484, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9423:7:20", + "src": "9312:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28829, + "id": 31483, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9423:7:20", + "src": "9312:7:27", "typeDescriptions": {} } }, - "id": 28832, + "id": 31486, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9423:16:20", + "src": "9312:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16508,14 +15239,14 @@ { "arguments": [ { - "id": 28835, + "id": 31489, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "9449:3:20", + "referencedDeclaration": 30007, + "src": "9338:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -16523,39 +15254,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28834, + "id": 31488, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9441:7:20", + "src": "9330:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28833, + "id": 31487, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9441:7:20", + "src": "9330:7:27", "typeDescriptions": {} } }, - "id": 28836, + "id": 31490, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9441:12:20", + "src": "9330:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16575,42 +15305,40 @@ } ], "expression": { - "id": 28827, + "id": 31481, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "9400:3:20", + "referencedDeclaration": 30010, + "src": "9289:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28828, + "id": 31482, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9404:18:20", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27273, - "src": "9400:22:20", + "referencedDeclaration": 29713, + "src": "9289:22:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 28837, + "id": 31491, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9400:54:20", + "src": "9289:54:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -16625,36 +15353,35 @@ "typeString": "bool" } ], - "id": 28826, + "id": 31480, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "9393:6:20", + "src": "9282:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28838, + "id": 31492, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9393:62:20", + "src": "9282:62:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28839, + "id": 31493, "nodeType": "ExpressionStatement", - "src": "9393:62:20" + "src": "9282:62:27" }, { "expression": { @@ -16664,14 +15391,14 @@ { "arguments": [ { - "id": 28845, + "id": 31499, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "9533:3:20", + "referencedDeclaration": 30007, + "src": "9422:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -16679,39 +15406,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28844, + "id": 31498, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9525:7:20", + "src": "9414:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28843, + "id": 31497, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9525:7:20", + "src": "9414:7:27", "typeDescriptions": {} } }, - "id": 28846, + "id": 31500, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9525:12:20", + "src": "9414:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16727,42 +15453,40 @@ } ], "expression": { - "id": 28841, + "id": 31495, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "9507:7:20", + "referencedDeclaration": 30535, + "src": "9396:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28842, + "id": 31496, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9515:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "9507:17:20", + "referencedDeclaration": 27473, + "src": "9396:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28847, + "id": 31501, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9507:31:20", + "src": "9396:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -16771,14 +15495,14 @@ }, { "hexValue": "66616c7365", - "id": 28848, + "id": 31502, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9545:5:20", + "src": "9434:5:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16797,7 +15521,7 @@ "typeString": "bool" } ], - "id": 28840, + "id": 31494, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -16823,31 +15547,30 @@ 1674 ], "referencedDeclaration": 1974, - "src": "9498:8:20", + "src": "9387:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28849, + "id": 31503, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9498:53:20", + "src": "9387:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28850, + "id": 31504, "nodeType": "ExpressionStatement", - "src": "9498:53:20" + "src": "9387:53:27" }, { "expression": { @@ -16857,14 +15580,14 @@ { "arguments": [ { - "id": 28856, + "id": 31510, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "9597:3:20", + "referencedDeclaration": 30013, + "src": "9486:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -16872,39 +15595,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28855, + "id": 31509, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9589:7:20", + "src": "9478:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28854, + "id": 31508, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9589:7:20", + "src": "9478:7:27", "typeDescriptions": {} } }, - "id": 28857, + "id": 31511, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9589:12:20", + "src": "9478:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16920,42 +15642,40 @@ } ], "expression": { - "id": 28852, + "id": 31506, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "9571:7:20", + "referencedDeclaration": 30535, + "src": "9460:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28853, + "id": 31507, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9579:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "9571:17:20", + "referencedDeclaration": 27473, + "src": "9460:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28858, + "id": 31512, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9571:31:20", + "src": "9460:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -16964,14 +15684,14 @@ }, { "hexValue": "74727565", - "id": 28859, + "id": 31513, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9609:4:20", + "src": "9498:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16990,7 +15710,7 @@ "typeString": "bool" } ], - "id": 28851, + "id": 31505, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -17016,31 +15736,30 @@ 1674 ], "referencedDeclaration": 1974, - "src": "9562:8:20", + "src": "9451:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28860, + "id": 31514, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9562:52:20", + "src": "9451:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28861, + "id": 31515, "nodeType": "ExpressionStatement", - "src": "9562:52:20" + "src": "9451:52:27" }, { "expression": { @@ -17050,14 +15769,14 @@ { "arguments": [ { - "id": 28867, + "id": 31521, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28645, - "src": "9660:3:20", + "referencedDeclaration": 31299, + "src": "9549:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -17065,39 +15784,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28866, + "id": 31520, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9652:7:20", + "src": "9541:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28865, + "id": 31519, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9652:7:20", + "src": "9541:7:27", "typeDescriptions": {} } }, - "id": 28868, + "id": 31522, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9652:12:20", + "src": "9541:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17113,42 +15831,40 @@ } ], "expression": { - "id": 28863, + "id": 31517, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "9634:7:20", + "referencedDeclaration": 30535, + "src": "9523:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28864, + "id": 31518, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9642:9:20", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 25507, - "src": "9634:17:20", + "referencedDeclaration": 27473, + "src": "9523:17:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 28869, + "id": 31523, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9634:31:20", + "src": "9523:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -17157,14 +15873,14 @@ }, { "hexValue": "74727565", - "id": 28870, + "id": 31524, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9672:4:20", + "src": "9561:4:27", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17183,7 +15899,7 @@ "typeString": "bool" } ], - "id": 28862, + "id": 31516, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -17209,48 +15925,47 @@ 1674 ], "referencedDeclaration": 1974, - "src": "9625:8:20", + "src": "9514:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 28871, + "id": 31525, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9625:52:20", + "src": "9514:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28872, + "id": 31526, "nodeType": "ExpressionStatement", - "src": "9625:52:20" + "src": "9514:52:27" }, { "expression": { - "id": 28877, + "id": 31531, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28873, + "id": 31527, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9688:7:20", + "referencedDeclaration": 31388, + "src": "9577:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, @@ -17261,83 +15976,80 @@ "expression": { "argumentTypes": [], "expression": { - "id": 28874, + "id": 31528, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "9698:7:20", + "referencedDeclaration": 30535, + "src": "9587:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28875, + "id": 31529, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9706:18:20", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 26060, - "src": "9698:26:20", + "referencedDeclaration": 28039, + "src": "9587:26:27", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 28876, + "id": 31530, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9698:28:20", + "src": "9587:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "src": "9688:38:20", + "src": "9577:38:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28878, + "id": 31532, "nodeType": "ExpressionStatement", - "src": "9688:38:20" + "src": "9577:38:27" }, { "expression": { "arguments": [ { "expression": { - "id": 28880, + "id": 31534, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9746:7:20", + "referencedDeclaration": 31388, + "src": "9635:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28881, + "id": 31535, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9754:6:20", "memberName": "length", "nodeType": "MemberAccess", - "src": "9746:14:20", + "src": "9635:14:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17345,14 +16057,14 @@ }, { "hexValue": "32", - "id": 28882, + "id": 31536, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9771:1:20", + "src": "9660:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -17371,7 +16083,7 @@ "typeString": "int_const 2" } ], - "id": 28879, + "id": 31533, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -17397,31 +16109,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "9737:8:20", + "src": "9626:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28883, + "id": 31537, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9737:36:20", + "src": "9626:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28884, + "id": 31538, "nodeType": "ExpressionStatement", - "src": "9737:36:20" + "src": "9626:36:27" }, { "expression": { @@ -17429,28 +16140,28 @@ { "expression": { "baseExpression": { - "id": 28886, + "id": 31540, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9793:7:20", + "referencedDeclaration": 31388, + "src": "9682:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28888, + "id": 31542, "indexExpression": { "hexValue": "30", - "id": 28887, + "id": 31541, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9801:1:20", + "src": "9690:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17462,22 +16173,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9793:10:20", + "src": "9682:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28889, + "id": 31543, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9804:7:20", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25498, - "src": "9793:18:20", + "referencedDeclaration": 27464, + "src": "9682:18:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17486,14 +16196,14 @@ { "arguments": [ { - "id": 28892, + "id": 31546, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28645, - "src": "9827:3:20", + "referencedDeclaration": 31299, + "src": "9716:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -17501,39 +16211,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28891, + "id": 31545, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9819:7:20", + "src": "9708:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28890, + "id": 31544, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9819:7:20", + "src": "9708:7:27", "typeDescriptions": {} } }, - "id": 28893, + "id": 31547, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9819:12:20", + "src": "9708:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17552,7 +16261,7 @@ "typeString": "address" } ], - "id": 28885, + "id": 31539, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -17578,31 +16287,30 @@ 1674 ], "referencedDeclaration": 320, - "src": "9784:8:20", + "src": "9673:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28894, + "id": 31548, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9784:48:20", + "src": "9673:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28895, + "id": 31549, "nodeType": "ExpressionStatement", - "src": "9784:48:20" + "src": "9673:48:27" }, { "expression": { @@ -17610,28 +16318,28 @@ { "expression": { "baseExpression": { - "id": 28897, + "id": 31551, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9852:7:20", + "referencedDeclaration": 31388, + "src": "9741:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28899, + "id": 31553, "indexExpression": { "hexValue": "30", - "id": 28898, + "id": 31552, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9860:1:20", + "src": "9749:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17643,22 +16351,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9852:10:20", + "src": "9741:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28900, + "id": 31554, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9863:12:20", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 25500, - "src": "9852:23:20", + "referencedDeclaration": 27466, + "src": "9741:23:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17666,14 +16373,14 @@ }, { "hexValue": "3330", - "id": 28901, + "id": 31555, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9878:8:20", + "src": "9767:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_30000000000000000000_by_1", @@ -17693,7 +16400,7 @@ "typeString": "int_const 30000000000000000000" } ], - "id": 28896, + "id": 31550, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -17719,31 +16426,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "9843:8:20", + "src": "9732:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28902, + "id": 31556, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9843:44:20", + "src": "9732:44:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28903, + "id": 31557, "nodeType": "ExpressionStatement", - "src": "9843:44:20" + "src": "9732:44:27" }, { "expression": { @@ -17751,28 +16457,28 @@ { "expression": { "baseExpression": { - "id": 28905, + "id": 31559, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9907:7:20", + "referencedDeclaration": 31388, + "src": "9796:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28907, + "id": 31561, "indexExpression": { "hexValue": "30", - "id": 28906, + "id": 31560, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9915:1:20", + "src": "9804:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17784,22 +16490,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9907:10:20", + "src": "9796:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28908, + "id": 31562, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9918:13:20", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25502, - "src": "9907:24:20", + "referencedDeclaration": 27468, + "src": "9796:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17807,14 +16512,14 @@ }, { "hexValue": "30", - "id": 28909, + "id": 31563, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9933:1:20", + "src": "9822:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17833,7 +16538,7 @@ "typeString": "int_const 0" } ], - "id": 28904, + "id": 31558, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -17859,31 +16564,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "9898:8:20", + "src": "9787:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28910, + "id": 31564, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9898:37:20", + "src": "9787:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28911, + "id": 31565, "nodeType": "ExpressionStatement", - "src": "9898:37:20" + "src": "9787:37:27" }, { "expression": { @@ -17891,28 +16595,28 @@ { "expression": { "baseExpression": { - "id": 28913, + "id": 31567, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "9955:7:20", + "referencedDeclaration": 31388, + "src": "9844:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28915, + "id": 31569, "indexExpression": { "hexValue": "31", - "id": 28914, + "id": 31568, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9963:1:20", + "src": "9852:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -17924,22 +16628,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9955:10:20", + "src": "9844:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28916, + "id": 31570, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9966:7:20", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 25498, - "src": "9955:18:20", + "referencedDeclaration": 27464, + "src": "9844:18:27", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17948,14 +16651,14 @@ { "arguments": [ { - "id": 28919, + "id": 31573, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "9989:3:20", + "referencedDeclaration": 30013, + "src": "9878:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -17963,39 +16666,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28918, + "id": 31572, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9981:7:20", + "src": "9870:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28917, + "id": 31571, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9981:7:20", + "src": "9870:7:27", "typeDescriptions": {} } }, - "id": 28920, + "id": 31574, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9981:12:20", + "src": "9870:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18014,7 +16716,7 @@ "typeString": "address" } ], - "id": 28912, + "id": 31566, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -18040,31 +16742,30 @@ 1674 ], "referencedDeclaration": 320, - "src": "9946:8:20", + "src": "9835:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28921, + "id": 31575, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9946:48:20", + "src": "9835:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28922, + "id": 31576, "nodeType": "ExpressionStatement", - "src": "9946:48:20" + "src": "9835:48:27" }, { "expression": { @@ -18072,28 +16773,28 @@ { "expression": { "baseExpression": { - "id": 28924, + "id": 31578, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "10014:7:20", + "referencedDeclaration": 31388, + "src": "9903:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28926, + "id": 31580, "indexExpression": { "hexValue": "31", - "id": 28925, + "id": 31579, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10022:1:20", + "src": "9911:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -18105,22 +16806,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10014:10:20", + "src": "9903:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28927, + "id": 31581, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "10025:12:20", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 25500, - "src": "10014:23:20", + "referencedDeclaration": 27466, + "src": "9903:23:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18128,14 +16828,14 @@ }, { "hexValue": "3230", - "id": 28928, + "id": 31582, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10040:8:20", + "src": "9929:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -18155,7 +16855,7 @@ "typeString": "int_const 20000000000000000000" } ], - "id": 28923, + "id": 31577, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -18181,31 +16881,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "10005:8:20", + "src": "9894:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28929, + "id": 31583, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10005:44:20", + "src": "9894:44:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28930, + "id": 31584, "nodeType": "ExpressionStatement", - "src": "10005:44:20" + "src": "9894:44:27" }, { "expression": { @@ -18213,28 +16912,28 @@ { "expression": { "baseExpression": { - "id": 28932, + "id": 31586, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28734, - "src": "10069:7:20", + "referencedDeclaration": 31388, + "src": "9958:7:27", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$25503_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 28934, + "id": 31588, "indexExpression": { "hexValue": "31", - "id": 28933, + "id": 31587, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10077:1:20", + "src": "9966:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -18246,22 +16945,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10069:10:20", + "src": "9958:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$25503_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 28935, + "id": 31589, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "10080:13:20", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 25502, - "src": "10069:24:20", + "referencedDeclaration": 27468, + "src": "9958:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18269,14 +16967,14 @@ }, { "hexValue": "30", - "id": 28936, + "id": 31590, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10095:1:20", + "src": "9984:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -18295,7 +16993,7 @@ "typeString": "int_const 0" } ], - "id": 28931, + "id": 31585, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -18321,38 +17019,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "10060:8:20", + "src": "9949:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28937, + "id": 31591, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10060:37:20", + "src": "9949:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28938, + "id": 31592, "nodeType": "ExpressionStatement", - "src": "10060:37:20" + "src": "9949:37:27" } ] }, "documentation": { - "id": 28640, + "id": 31294, "nodeType": "StructuredDocumentation", - "src": "8044:81:20", + "src": "7933:81:27", "text": "@dev Verifies removeInvestor() pops elements correctly from investorLibrary[]" }, "functionSelector": "b357ca55", @@ -18360,34 +17057,32 @@ "kind": "function", "modifiers": [], "name": "test_vesting_removeInvestor_largeArray", - "nameLocation": "8140:38:20", + "nameLocation": "8029:38:27", "parameters": { - "id": 28641, + "id": 31295, "nodeType": "ParameterList", "parameters": [], - "src": "8178:2:20" + "src": "8067:2:27" }, "returnParameters": { - "id": 28642, + "id": 31296, "nodeType": "ParameterList", "parameters": [], - "src": "8188:0:20" + "src": "8077:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 29002, + "id": 31656, "nodeType": "FunctionDefinition", - "src": "10208:627:20", - "nodes": [], + "src": "10097:627:27", "body": { - "id": 29001, + "id": 31655, "nodeType": "Block", - "src": "10269:566:20", - "nodes": [], + "src": "10158:566:27", "statements": [ { "expression": { @@ -18397,14 +17092,14 @@ { "arguments": [ { - "id": 28949, + "id": 31603, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "10347:7:20", + "referencedDeclaration": 30535, + "src": "10236:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -18412,39 +17107,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28948, + "id": 31602, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10339:7:20", + "src": "10228:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28947, + "id": 31601, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10339:7:20", + "src": "10228:7:27", "typeDescriptions": {} } }, - "id": 28950, + "id": 31604, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10339:16:20", + "src": "10228:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18454,14 +17148,14 @@ { "arguments": [ { - "id": 28953, + "id": 31607, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "10365:3:20", + "referencedDeclaration": 30013, + "src": "10254:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -18469,39 +17163,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28952, + "id": 31606, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10357:7:20", + "src": "10246:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28951, + "id": 31605, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10357:7:20", + "src": "10246:7:27", "typeDescriptions": {} } }, - "id": 28954, + "id": 31608, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10357:12:20", + "src": "10246:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18510,14 +17203,14 @@ }, { "hexValue": "3230", - "id": 28955, + "id": 31609, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10371:8:20", + "src": "10260:8:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -18542,42 +17235,40 @@ } ], "expression": { - "id": 28945, + "id": 31599, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "10319:3:20", + "referencedDeclaration": 30010, + "src": "10208:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28946, + "id": 31600, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10323:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "10319:19:20", + "referencedDeclaration": 29684, + "src": "10208:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 28956, + "id": 31610, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10319:61:20", + "src": "10208:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -18592,36 +17283,35 @@ "typeString": "bool" } ], - "id": 28944, + "id": 31598, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "10312:6:20", + "src": "10201:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 28957, + "id": 31611, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10312:69:20", + "src": "10201:69:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28958, + "id": 31612, "nodeType": "ExpressionStatement", - "src": "10312:69:20" + "src": "10201:69:27" }, { "expression": { @@ -18631,14 +17321,14 @@ { "arguments": [ { - "id": 28964, + "id": 31618, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "10505:3:20", + "referencedDeclaration": 30013, + "src": "10394:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -18646,39 +17336,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28963, + "id": 31617, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10497:7:20", + "src": "10386:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28962, + "id": 31616, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10497:7:20", + "src": "10386:7:27", "typeDescriptions": {} } }, - "id": 28965, + "id": 31619, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10497:12:20", + "src": "10386:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18694,42 +17383,40 @@ } ], "expression": { - "id": 28960, + "id": 31614, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "10472:7:20", + "referencedDeclaration": 30535, + "src": "10361:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28961, + "id": 31615, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10480:16:20", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 25944, - "src": "10472:24:20", + "referencedDeclaration": 27923, + "src": "10361:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 28966, + "id": 31620, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10472:38:20", + "src": "10361:38:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -18738,14 +17425,14 @@ }, { "hexValue": "30", - "id": 28967, + "id": 31621, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10512:1:20", + "src": "10401:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -18764,7 +17451,7 @@ "typeString": "int_const 0" } ], - "id": 28959, + "id": 31613, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -18790,31 +17477,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "10463:8:20", + "src": "10352:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28968, + "id": 31622, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10463:51:20", + "src": "10352:51:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28969, + "id": 31623, "nodeType": "ExpressionStatement", - "src": "10463:51:20" + "src": "10352:51:27" }, { "expression": { @@ -18822,14 +17508,14 @@ { "arguments": [ { - "id": 28975, + "id": 31629, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "10584:7:20", + "referencedDeclaration": 30535, + "src": "10473:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -18837,39 +17523,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 28974, + "id": 31628, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10576:7:20", + "src": "10465:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28973, + "id": 31627, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10576:7:20", + "src": "10465:7:27", "typeDescriptions": {} } }, - "id": 28976, + "id": 31630, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10576:16:20", + "src": "10465:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18885,51 +17570,49 @@ } ], "expression": { - "id": 28970, + "id": 31624, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "10554:3:20", + "referencedDeclaration": 30010, + "src": "10443:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 28972, + "id": 31626, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10558:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "10554:21:20", + "referencedDeclaration": 29622, + "src": "10443:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 28977, + "id": 31631, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10554:39:20", + "src": "10443:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 28978, + "id": 31632, "nodeType": "ExpressionStatement", - "src": "10554:39:20" + "src": "10443:39:27" }, { "expression": { @@ -18939,14 +17622,14 @@ { "arguments": [ { - "id": 28984, + "id": 31638, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "10716:3:20", + "referencedDeclaration": 30007, + "src": "10605:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -18954,39 +17637,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 28983, + "id": 31637, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10708:7:20", + "src": "10597:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28982, + "id": 31636, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10708:7:20", + "src": "10597:7:27", "typeDescriptions": {} } }, - "id": 28985, + "id": 31639, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10708:12:20", + "src": "10597:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19002,42 +17684,40 @@ } ], "expression": { - "id": 28980, + "id": 31634, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "10683:7:20", + "referencedDeclaration": 30535, + "src": "10572:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28981, + "id": 31635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10691:16:20", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 25944, - "src": "10683:24:20", + "referencedDeclaration": 27923, + "src": "10572:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 28986, + "id": 31640, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10683:38:20", + "src": "10572:38:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -19046,14 +17726,14 @@ }, { "hexValue": "30", - "id": 28987, + "id": 31641, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10723:1:20", + "src": "10612:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -19072,7 +17752,7 @@ "typeString": "int_const 0" } ], - "id": 28979, + "id": 31633, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -19098,31 +17778,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "10674:8:20", + "src": "10563:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28988, + "id": 31642, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10674:51:20", + "src": "10563:51:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 28989, + "id": 31643, "nodeType": "ExpressionStatement", - "src": "10674:51:20" + "src": "10563:51:27" }, { "expression": { @@ -19133,14 +17812,14 @@ "arguments": [ { "hexValue": "30", - "id": 28995, + "id": 31649, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10820:1:20", + "src": "10709:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -19155,35 +17834,34 @@ "typeString": "int_const 0" } ], - "id": 28994, + "id": 31648, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10812:7:20", + "src": "10701:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 28993, + "id": 31647, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10812:7:20", + "src": "10701:7:27", "typeDescriptions": {} } }, - "id": 28996, + "id": 31650, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10812:10:20", + "src": "10701:10:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19199,42 +17877,40 @@ } ], "expression": { - "id": 28991, + "id": 31645, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "10787:7:20", + "referencedDeclaration": 30535, + "src": "10676:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 28992, + "id": 31646, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10795:16:20", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 25944, - "src": "10787:24:20", + "referencedDeclaration": 27923, + "src": "10676:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 28997, + "id": 31651, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10787:36:20", + "src": "10676:36:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -19243,14 +17919,14 @@ }, { "hexValue": "30", - "id": 28998, + "id": 31652, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10825:1:20", + "src": "10714:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -19269,7 +17945,7 @@ "typeString": "int_const 0" } ], - "id": 28990, + "id": 31644, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -19295,38 +17971,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "10778:8:20", + "src": "10667:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 28999, + "id": 31653, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10778:49:20", + "src": "10667:49:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29000, + "id": 31654, "nodeType": "ExpressionStatement", - "src": "10778:49:20" + "src": "10667:49:27" } ] }, "documentation": { - "id": 28941, + "id": 31595, "nodeType": "StructuredDocumentation", - "src": "10153:49:20", + "src": "10042:49:27", "text": "@dev Verifies getAmountToClaim() restrictions" }, "functionSelector": "5a17a66b", @@ -19334,49 +18009,47 @@ "kind": "function", "modifiers": [], "name": "test_vesting_getAmountToClaim_restrictions", - "nameLocation": "10217:42:20", + "nameLocation": "10106:42:27", "parameters": { - "id": 28942, + "id": 31596, "nodeType": "ParameterList", "parameters": [], - "src": "10259:2:20" + "src": "10148:2:27" }, "returnParameters": { - "id": 28943, + "id": 31597, "nodeType": "ParameterList", "parameters": [], - "src": "10269:0:20" + "src": "10158:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 29126, + "id": 31780, "nodeType": "FunctionDefinition", - "src": "10885:1093:20", - "nodes": [], + "src": "10774:1093:27", "body": { - "id": 29125, + "id": 31779, "nodeType": "Block", - "src": "10933:1045:20", - "nodes": [], + "src": "10822:1045:27", "statements": [ { "assignments": [ - 29007 + 31661 ], "declarations": [ { "constant": false, - "id": 29007, + "id": 31661, "mutability": "mutable", "name": "_amount", - "nameLocation": "11018:7:20", + "nameLocation": "10907:7:27", "nodeType": "VariableDeclaration", - "scope": 29125, - "src": "11010:15:20", + "scope": 31779, + "src": "10899:15:27", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19384,10 +18057,10 @@ "typeString": "uint256" }, "typeName": { - "id": 29006, + "id": 31660, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11010:7:20", + "src": "10899:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19396,17 +18069,17 @@ "visibility": "internal" } ], - "id": 29009, + "id": 31663, "initialValue": { "hexValue": "315f3030305f303030", - "id": 29008, + "id": 31662, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11028:15:20", + "src": "10917:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -19415,7 +18088,7 @@ "value": "1_000_000" }, "nodeType": "VariableDeclarationStatement", - "src": "11010:33:20" + "src": "10899:33:27" }, { "expression": { @@ -19425,14 +18098,14 @@ { "arguments": [ { - "id": 29015, + "id": 31669, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "11120:7:20", + "referencedDeclaration": 30535, + "src": "11009:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -19440,39 +18113,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29014, + "id": 31668, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11112:7:20", + "src": "11001:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29013, + "id": 31667, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11112:7:20", + "src": "11001:7:27", "typeDescriptions": {} } }, - "id": 29016, + "id": 31670, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11112:16:20", + "src": "11001:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19482,14 +18154,14 @@ { "arguments": [ { - "id": 29019, + "id": 31673, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "11138:3:20", + "referencedDeclaration": 30013, + "src": "11027:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -19497,39 +18169,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29018, + "id": 31672, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11130:7:20", + "src": "11019:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29017, + "id": 31671, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11130:7:20", + "src": "11019:7:27", "typeDescriptions": {} } }, - "id": 29020, + "id": 31674, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11130:12:20", + "src": "11019:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19537,12 +18208,12 @@ } }, { - "id": 29021, + "id": 31675, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29007, - "src": "11144:7:20", + "referencedDeclaration": 31661, + "src": "11033:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19565,42 +18236,40 @@ } ], "expression": { - "id": 29011, + "id": 31665, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "11092:3:20", + "referencedDeclaration": 30010, + "src": "10981:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29012, + "id": 31666, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11096:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "11092:19:20", + "referencedDeclaration": 29684, + "src": "10981:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29022, + "id": 31676, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11092:60:20", + "src": "10981:60:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -19615,36 +18284,35 @@ "typeString": "bool" } ], - "id": 29010, + "id": 31664, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "11085:6:20", + "src": "10974:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29023, + "id": 31677, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11085:68:20", + "src": "10974:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29024, + "id": 31678, "nodeType": "ExpressionStatement", - "src": "11085:68:20" + "src": "10974:68:27" }, { "expression": { @@ -19654,14 +18322,14 @@ { "arguments": [ { - "id": 29030, + "id": 31684, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "11250:3:20", + "referencedDeclaration": 30013, + "src": "11139:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -19669,39 +18337,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29029, + "id": 31683, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11242:7:20", + "src": "11131:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29028, + "id": 31682, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11242:7:20", + "src": "11131:7:27", "typeDescriptions": {} } }, - "id": 29031, + "id": 31685, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11242:12:20", + "src": "11131:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19717,42 +18384,40 @@ } ], "expression": { - "id": 29026, + "id": 31680, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "11218:7:20", + "referencedDeclaration": 30535, + "src": "11107:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29027, + "id": 31681, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11226:15:20", "memberName": "getTokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 26000, - "src": "11218:23:20", + "referencedDeclaration": 27979, + "src": "11107:23:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29032, + "id": 31686, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11218:37:20", + "src": "11107:37:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -19760,12 +18425,12 @@ } }, { - "id": 29033, + "id": 31687, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29007, - "src": "11257:7:20", + "referencedDeclaration": 31661, + "src": "11146:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19783,7 +18448,7 @@ "typeString": "uint256" } ], - "id": 29025, + "id": 31679, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -19809,31 +18474,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "11209:8:20", + "src": "11098:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29034, + "id": 31688, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11209:56:20", + "src": "11098:56:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29035, + "id": 31689, "nodeType": "ExpressionStatement", - "src": "11209:56:20" + "src": "11098:56:27" }, { "expression": { @@ -19843,14 +18507,14 @@ { "arguments": [ { - "id": 29041, + "id": 31695, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "11342:7:20", + "referencedDeclaration": 30535, + "src": "11231:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -19858,39 +18522,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29040, + "id": 31694, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11334:7:20", + "src": "11223:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29039, + "id": 31693, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11334:7:20", + "src": "11223:7:27", "typeDescriptions": {} } }, - "id": 29042, + "id": 31696, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11334:16:20", + "src": "11223:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19906,42 +18569,40 @@ } ], "expression": { - "id": 29037, + "id": 31691, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "11312:3:20", + "referencedDeclaration": 30010, + "src": "11201:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29038, + "id": 31692, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11316:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "11312:21:20", + "referencedDeclaration": 29622, + "src": "11201:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29043, + "id": 31697, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11312:39:20", + "src": "11201:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -19956,50 +18617,49 @@ "typeString": "bool" } ], - "id": 29036, + "id": 31690, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "11305:6:20", + "src": "11194:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29044, + "id": 31698, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11305:47:20", + "src": "11194:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29045, + "id": 31699, "nodeType": "ExpressionStatement", - "src": "11305:47:20" + "src": "11194:47:27" }, { "expression": { "arguments": [ { "hexValue": "3132", - "id": 29047, + "id": 31701, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11396:8:20", + "src": "11285:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_7257600_by_1", @@ -20015,51 +18675,50 @@ "typeString": "int_const 7257600" } ], - "id": 29046, + "id": 31700, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "11391:4:20", + "src": "11280:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29048, + "id": 31702, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11391:14:20", + "src": "11280:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29049, + "id": 31703, "nodeType": "ExpressionStatement", - "src": "11391:14:20" + "src": "11280:14:27" }, { "assignments": [ - 29051 + 31705 ], "declarations": [ { "constant": false, - "id": 29051, + "id": 31705, "mutability": "mutable", "name": "toClaim", - "nameLocation": "11479:7:20", + "nameLocation": "11368:7:27", "nodeType": "VariableDeclaration", - "scope": 29125, - "src": "11471:15:20", + "scope": 31779, + "src": "11360:15:27", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20067,10 +18726,10 @@ "typeString": "uint256" }, "typeName": { - "id": 29050, + "id": 31704, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11471:7:20", + "src": "11360:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20079,13 +18738,13 @@ "visibility": "internal" } ], - "id": 29068, + "id": 31722, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29067, + "id": 31721, "isConstant": false, "isLValue": false, "isPure": false, @@ -20097,7 +18756,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29056, + "id": 31710, "isConstant": false, "isLValue": false, "isPure": false, @@ -20107,18 +18766,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29054, + "id": 31708, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29052, + "id": 31706, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29007, - "src": "11490:7:20", + "referencedDeclaration": 31661, + "src": "11379:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20128,21 +18787,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 29053, + "id": 31707, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11500:2:20", + "src": "11389:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "11490:12:20", + "src": "11379:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20152,35 +18811,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29055, + "id": 31709, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11505:3:20", + "src": "11394:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11490:18:20", + "src": "11379:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 29057, + "id": 31711, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11489:20:20", + "src": "11378:20:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20195,21 +18854,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29065, + "id": 31719, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "33", - "id": 29058, + "id": 31712, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11513:1:20", + "src": "11402:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" @@ -20225,7 +18884,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29063, + "id": 31717, "isConstant": false, "isLValue": false, "isPure": false, @@ -20235,18 +18894,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29061, + "id": 31715, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29059, + "id": 31713, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29007, - "src": "11518:7:20", + "referencedDeclaration": 31661, + "src": "11407:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20256,21 +18915,21 @@ "operator": "*", "rightExpression": { "hexValue": "38", - "id": 29060, + "id": 31714, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11528:1:20", + "src": "11417:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "11518:11:20", + "src": "11407:11:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20280,68 +18939,68 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29062, + "id": 31716, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11532:3:20", + "src": "11421:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11518:17:20", + "src": "11407:17:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 29064, + "id": 31718, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11517:19:20", + "src": "11406:19:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11513:23:20", + "src": "11402:23:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 29066, + "id": 31720, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11512:25:20", + "src": "11401:25:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11489:48:20", + "src": "11378:48:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11471:66:20" + "src": "11360:66:27" }, { "expression": { @@ -20351,14 +19010,14 @@ { "arguments": [ { - "id": 29074, + "id": 31728, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "11590:3:20", + "referencedDeclaration": 30013, + "src": "11479:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -20366,39 +19025,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29073, + "id": 31727, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11582:7:20", + "src": "11471:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29072, + "id": 31726, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11582:7:20", + "src": "11471:7:27", "typeDescriptions": {} } }, - "id": 29075, + "id": 31729, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11582:12:20", + "src": "11471:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -20414,42 +19072,40 @@ } ], "expression": { - "id": 29070, + "id": 31724, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "11557:7:20", + "referencedDeclaration": 30535, + "src": "11446:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29071, + "id": 31725, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11565:16:20", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 25944, - "src": "11557:24:20", + "referencedDeclaration": 27923, + "src": "11446:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29076, + "id": 31730, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11557:38:20", + "src": "11446:38:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -20457,12 +19113,12 @@ } }, { - "id": 29077, + "id": 31731, "name": "toClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29051, - "src": "11597:7:20", + "referencedDeclaration": 31705, + "src": "11486:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20480,7 +19136,7 @@ "typeString": "uint256" } ], - "id": 29069, + "id": 31723, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -20506,45 +19162,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "11548:8:20", + "src": "11437:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29078, + "id": 31732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11548:57:20", + "src": "11437:57:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29079, + "id": 31733, "nodeType": "ExpressionStatement", - "src": "11548:57:20" + "src": "11437:57:27" }, { "expression": { "arguments": [ { "hexValue": "3332", - "id": 29081, + "id": 31735, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11699:8:20", + "src": "11588:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_19353600_by_1", @@ -20560,51 +19215,50 @@ "typeString": "int_const 19353600" } ], - "id": 29080, + "id": 31734, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "11694:4:20", + "src": "11583:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29082, + "id": 31736, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11694:14:20", + "src": "11583:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29083, + "id": 31737, "nodeType": "ExpressionStatement", - "src": "11694:14:20" + "src": "11583:14:27" }, { "expression": { - "id": 29101, + "id": 31755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 29084, + "id": 31738, "name": "toClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29051, - "src": "11775:7:20", + "referencedDeclaration": 31705, + "src": "11664:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20617,7 +19271,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29100, + "id": 31754, "isConstant": false, "isLValue": false, "isPure": false, @@ -20629,7 +19283,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29089, + "id": 31743, "isConstant": false, "isLValue": false, "isPure": false, @@ -20639,18 +19293,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29087, + "id": 31741, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29085, + "id": 31739, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29007, - "src": "11786:7:20", + "referencedDeclaration": 31661, + "src": "11675:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20660,21 +19314,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 29086, + "id": 31740, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11796:2:20", + "src": "11685:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "11786:12:20", + "src": "11675:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20684,35 +19338,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29088, + "id": 31742, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11801:3:20", + "src": "11690:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11786:18:20", + "src": "11675:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 29090, + "id": 31744, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11785:20:20", + "src": "11674:20:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20727,21 +19381,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29098, + "id": 31752, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3131", - "id": 29091, + "id": 31745, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11809:2:20", + "src": "11698:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_11_by_1", "typeString": "int_const 11" @@ -20757,7 +19411,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29096, + "id": 31750, "isConstant": false, "isLValue": false, "isPure": false, @@ -20767,18 +19421,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29094, + "id": 31748, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29092, + "id": 31746, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29007, - "src": "11815:7:20", + "referencedDeclaration": 31661, + "src": "11704:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20788,21 +19442,21 @@ "operator": "*", "rightExpression": { "hexValue": "38", - "id": 29093, + "id": 31747, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11825:1:20", + "src": "11714:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "11815:11:20", + "src": "11704:11:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20812,75 +19466,75 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29095, + "id": 31749, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11829:3:20", + "src": "11718:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11815:17:20", + "src": "11704:17:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 29097, + "id": 31751, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11814:19:20", + "src": "11703:19:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11809:24:20", + "src": "11698:24:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 29099, + "id": 31753, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11808:26:20", + "src": "11697:26:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11785:49:20", + "src": "11674:49:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11775:59:20", + "src": "11664:59:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 29102, + "id": 31756, "nodeType": "ExpressionStatement", - "src": "11775:59:20" + "src": "11664:59:27" }, { "expression": { @@ -20890,14 +19544,14 @@ { "arguments": [ { - "id": 29108, + "id": 31762, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "11887:3:20", + "referencedDeclaration": 30013, + "src": "11776:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -20905,39 +19559,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29107, + "id": 31761, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11879:7:20", + "src": "11768:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29106, + "id": 31760, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11879:7:20", + "src": "11768:7:27", "typeDescriptions": {} } }, - "id": 29109, + "id": 31763, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11879:12:20", + "src": "11768:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -20953,42 +19606,40 @@ } ], "expression": { - "id": 29104, + "id": 31758, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "11854:7:20", + "referencedDeclaration": 30535, + "src": "11743:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29105, + "id": 31759, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11862:16:20", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 25944, - "src": "11854:24:20", + "referencedDeclaration": 27923, + "src": "11743:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29110, + "id": 31764, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11854:38:20", + "src": "11743:38:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -20996,12 +19647,12 @@ } }, { - "id": 29111, + "id": 31765, "name": "toClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29051, - "src": "11894:7:20", + "referencedDeclaration": 31705, + "src": "11783:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21019,7 +19670,7 @@ "typeString": "uint256" } ], - "id": 29103, + "id": 31757, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -21045,31 +19696,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "11845:8:20", + "src": "11734:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29112, + "id": 31766, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11845:57:20", + "src": "11734:57:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29113, + "id": 31767, "nodeType": "ExpressionStatement", - "src": "11845:57:20" + "src": "11734:57:27" }, { "expression": { @@ -21079,14 +19729,14 @@ { "arguments": [ { - "id": 29119, + "id": 31773, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "11955:3:20", + "referencedDeclaration": 30013, + "src": "11844:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -21094,39 +19744,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29118, + "id": 31772, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11947:7:20", + "src": "11836:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29117, + "id": 31771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11947:7:20", + "src": "11836:7:27", "typeDescriptions": {} } }, - "id": 29120, + "id": 31774, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11947:12:20", + "src": "11836:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21142,42 +19791,40 @@ } ], "expression": { - "id": 29115, + "id": 31769, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "11922:7:20", + "referencedDeclaration": 30535, + "src": "11811:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29116, + "id": 31770, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11930:16:20", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 25944, - "src": "11922:24:20", + "referencedDeclaration": 27923, + "src": "11811:24:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29121, + "id": 31775, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11922:38:20", + "src": "11811:38:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -21185,12 +19832,12 @@ } }, { - "id": 29122, + "id": 31776, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29007, - "src": "11962:7:20", + "referencedDeclaration": 31661, + "src": "11851:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21208,7 +19855,7 @@ "typeString": "uint256" } ], - "id": 29114, + "id": 31768, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -21234,38 +19881,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "11913:8:20", + "src": "11802:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29123, + "id": 31777, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11913:57:20", + "src": "11802:57:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29124, + "id": 31778, "nodeType": "ExpressionStatement", - "src": "11913:57:20" + "src": "11802:57:27" } ] }, "documentation": { - "id": 29003, + "id": 31657, "nodeType": "StructuredDocumentation", - "src": "10843:36:20", + "src": "10732:36:27", "text": "@dev Verifies getAmountToClaim()" }, "functionSelector": "c7283c78", @@ -21273,65 +19919,92 @@ "kind": "function", "modifiers": [], "name": "test_vesting_getAmountToClaim", - "nameLocation": "10894:29:20", + "nameLocation": "10783:29:27", "parameters": { - "id": 29004, + "id": 31658, "nodeType": "ParameterList", "parameters": [], - "src": "10923:2:20" + "src": "10812:2:27" }, "returnParameters": { - "id": 29005, + "id": 31659, "nodeType": "ParameterList", "parameters": [], - "src": "10933:0:20" + "src": "10822:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 29226, + "id": 31882, "nodeType": "FunctionDefinition", - "src": "12058:1114:20", - "nodes": [], + "src": "11947:1092:27", "body": { - "id": 29225, + "id": 31881, "nodeType": "Block", - "src": "12108:1064:20", - "nodes": [], + "src": "11997:1042:27", "statements": [ { "expression": { "arguments": [ { - "hexValue": "307863303065393443623636324333353230323832453666353731373231343030344137663236383838", - "id": 29131, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 31785, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30535, + "src": "12072:7:27", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 31786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "proveToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 27449, + "src": "12072:18:27", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 31787, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "12183:42:20", + "names": [], + "nodeType": "FunctionCall", + "src": "12072:20:27", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" - }, - "value": "0xc00e94Cb662C3520282E6f5717214004A7f26888" + } }, { "arguments": [ { - "id": 29134, + "id": 31790, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "12235:7:20", + "referencedDeclaration": 30535, + "src": "12102:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -21339,39 +20012,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29133, + "id": 31789, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12227:7:20", + "src": "12094:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29132, + "id": 31788, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12227:7:20", + "src": "12094:7:27", "typeDescriptions": {} } }, - "id": 29135, + "id": 31791, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12227:16:20", + "src": "12094:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21380,14 +20052,14 @@ }, { "hexValue": "355f3030305f303030", - "id": 29136, + "id": 31792, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12245:15:20", + "src": "12112:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_5000000000000000000000000_by_1", @@ -21411,7 +20083,7 @@ "typeString": "int_const 5000000000000000000000000" } ], - "id": 29130, + "id": 31784, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -21420,31 +20092,30 @@ 5143 ], "referencedDeclaration": 5040, - "src": "12178:4:20", + "src": "12067:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 29137, + "id": 31793, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12178:83:20", + "src": "12067:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29138, + "id": 31794, "nodeType": "ExpressionStatement", - "src": "12178:83:20" + "src": "12067:61:27" }, { "expression": { @@ -21452,14 +20123,14 @@ { "arguments": [ { - "id": 29144, + "id": 31800, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "12331:3:20", + "referencedDeclaration": 30013, + "src": "12198:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -21467,39 +20138,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29143, + "id": 31799, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12323:7:20", + "src": "12190:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29142, + "id": 31798, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12323:7:20", + "src": "12190:7:27", "typeDescriptions": {} } }, - "id": 29145, + "id": 31801, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12323:12:20", + "src": "12190:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21515,65 +20185,63 @@ } ], "expression": { - "id": 29139, + "id": 31795, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "12309:2:20", + "src": "12176:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29141, + "id": 31797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12312:10:20", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9043, - "src": "12309:13:20", + "src": "12176:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 29146, + "id": 31802, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12309:27:20", + "src": "12176:27:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29147, + "id": 31803, "nodeType": "ExpressionStatement", - "src": "12309:27:20" + "src": "12176:27:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e73656e646572206d75737420626520616e20696e766573746f72", - "id": 29151, + "id": 31807, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12418:60:20", + "src": "12285:60:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_04c0e7337b94cd08ab709ab9e01a52972b8997f541f0ec03cfdf895720fa5020", "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" @@ -21589,51 +20257,49 @@ } ], "expression": { - "id": 29148, + "id": 31804, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "12402:2:20", + "src": "12269:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29150, + "id": 31806, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12405:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "12402:15:20", + "src": "12269:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 29152, + "id": 31808, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12402:77:20", + "src": "12269:77:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29153, + "id": 31809, "nodeType": "ExpressionStatement", - "src": "12402:77:20" + "src": "12269:77:27" }, { "expression": { @@ -21641,51 +20307,49 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29154, + "id": 31810, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "12490:7:20", + "referencedDeclaration": 30535, + "src": "12357:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29156, + "id": 31812, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12498:5:20", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 25626, - "src": "12490:13:20", + "referencedDeclaration": 27592, + "src": "12357:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29157, + "id": 31813, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12490:15:20", + "src": "12357:15:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29158, + "id": 31814, "nodeType": "ExpressionStatement", - "src": "12490:15:20" + "src": "12357:15:27" }, { "expression": { @@ -21695,14 +20359,14 @@ { "arguments": [ { - "id": 29164, + "id": 31820, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "12585:7:20", + "referencedDeclaration": 30535, + "src": "12452:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -21710,39 +20374,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29163, + "id": 31819, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12577:7:20", + "src": "12444:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29162, + "id": 31818, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12577:7:20", + "src": "12444:7:27", "typeDescriptions": {} } }, - "id": 29165, + "id": 31821, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12577:16:20", + "src": "12444:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21752,14 +20415,14 @@ { "arguments": [ { - "id": 29168, + "id": 31824, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "12603:3:20", + "referencedDeclaration": 30013, + "src": "12470:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -21767,39 +20430,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29167, + "id": 31823, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12595:7:20", + "src": "12462:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29166, + "id": 31822, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12595:7:20", + "src": "12462:7:27", "typeDescriptions": {} } }, - "id": 29169, + "id": 31825, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12595:12:20", + "src": "12462:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21808,14 +20470,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 29170, + "id": 31826, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12609:15:20", + "src": "12476:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -21840,42 +20502,40 @@ } ], "expression": { - "id": 29160, + "id": 31816, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "12557:3:20", + "referencedDeclaration": 30010, + "src": "12424:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29161, + "id": 31817, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12561:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "12557:19:20", + "referencedDeclaration": 29684, + "src": "12424:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29171, + "id": 31827, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12557:68:20", + "src": "12424:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -21890,50 +20550,49 @@ "typeString": "bool" } ], - "id": 29159, + "id": 31815, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "12550:6:20", + "src": "12417:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29172, + "id": 31828, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12550:76:20", + "src": "12417:76:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29173, + "id": 31829, "nodeType": "ExpressionStatement", - "src": "12550:76:20" + "src": "12417:76:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a636c61696d28292076657374696e67206973206e6f7420656e61626c6564", - "id": 29177, + "id": 31833, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12708:45:20", + "src": "12575:45:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_34ce9ff9fcf1e453c578e481f1424d1ad92317cc4ad3678a8839da76e7fbb7d6", "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" @@ -21949,51 +20608,49 @@ } ], "expression": { - "id": 29174, + "id": 31830, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "12692:2:20", + "src": "12559:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29176, + "id": 31832, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12695:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "12692:15:20", + "src": "12559:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 29178, + "id": 31834, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12692:62:20", + "src": "12559:62:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29179, + "id": 31835, "nodeType": "ExpressionStatement", - "src": "12692:62:20" + "src": "12559:62:27" }, { "expression": { @@ -22001,51 +20658,49 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29180, + "id": 31836, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "12765:7:20", + "referencedDeclaration": 30535, + "src": "12632:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29182, + "id": 31838, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12773:5:20", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 25626, - "src": "12765:13:20", + "referencedDeclaration": 27592, + "src": "12632:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29183, + "id": 31839, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12765:15:20", + "src": "12632:15:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29184, + "id": 31840, "nodeType": "ExpressionStatement", - "src": "12765:15:20" + "src": "12632:15:27" }, { "expression": { @@ -22055,14 +20710,14 @@ { "arguments": [ { - "id": 29190, + "id": 31846, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "12857:7:20", + "referencedDeclaration": 30535, + "src": "12724:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -22070,39 +20725,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29189, + "id": 31845, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12849:7:20", + "src": "12716:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29188, + "id": 31844, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12849:7:20", + "src": "12716:7:27", "typeDescriptions": {} } }, - "id": 29191, + "id": 31847, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12849:16:20", + "src": "12716:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22118,42 +20772,40 @@ } ], "expression": { - "id": 29186, + "id": 31842, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "12827:3:20", + "referencedDeclaration": 30010, + "src": "12694:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29187, + "id": 31843, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12831:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "12827:21:20", + "referencedDeclaration": 29622, + "src": "12694:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29192, + "id": 31848, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12827:39:20", + "src": "12694:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -22168,36 +20820,35 @@ "typeString": "bool" } ], - "id": 29185, + "id": 31841, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "12820:6:20", + "src": "12687:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29193, + "id": 31849, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12820:47:20", + "src": "12687:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29194, + "id": 31850, "nodeType": "ExpressionStatement", - "src": "12820:47:20" + "src": "12687:47:27" }, { "expression": { @@ -22205,65 +20856,63 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29195, + "id": 31851, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "12917:7:20", + "referencedDeclaration": 30535, + "src": "12784:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29197, + "id": 31853, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12925:5:20", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 25626, - "src": "12917:13:20", + "referencedDeclaration": 27592, + "src": "12784:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29198, + "id": 31854, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12917:15:20", + "src": "12784:15:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29199, + "id": 31855, "nodeType": "ExpressionStatement", - "src": "12917:15:20" + "src": "12784:15:27" }, { "expression": { "arguments": [ { "hexValue": "3532", - "id": 29201, + "id": 31857, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12950:8:20", + "src": "12817:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_31449600_by_1", @@ -22279,36 +20928,35 @@ "typeString": "int_const 31449600" } ], - "id": 29200, + "id": 31856, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "12945:4:20", + "src": "12812:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29202, + "id": 31858, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12945:14:20", + "src": "12812:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29203, + "id": 31859, "nodeType": "ExpressionStatement", - "src": "12945:14:20" + "src": "12812:14:27" }, { "expression": { @@ -22316,65 +20964,63 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29204, + "id": 31860, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13010:7:20", + "referencedDeclaration": 30535, + "src": "12877:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29206, + "id": 31862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13018:5:20", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 25626, - "src": "13010:13:20", + "referencedDeclaration": 27592, + "src": "12877:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29207, + "id": 31863, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13010:15:20", + "src": "12877:15:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29208, + "id": 31864, "nodeType": "ExpressionStatement", - "src": "13010:15:20" + "src": "12877:15:27" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686173206e6f20746f6b656e7320746f20636c61696d", - "id": 29212, + "id": 31868, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "13054:54:20", + "src": "12921:54:27", "typeDescriptions": { "typeIdentifier": "t_stringliteral_7fe10741cbe6c2a9cecbadf80743676cd6f5fd9119dd5a58d21ffa6d6e330a51", "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" @@ -22390,51 +21036,49 @@ } ], "expression": { - "id": 29209, + "id": 31865, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "13038:2:20", + "src": "12905:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29211, + "id": 31867, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13041:12:20", "memberName": "expectRevert", "nodeType": "MemberAccess", "referencedDeclaration": 9079, - "src": "13038:15:20", + "src": "12905:15:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 29213, + "id": 31869, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13038:71:20", + "src": "12905:71:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29214, + "id": 31870, "nodeType": "ExpressionStatement", - "src": "13038:71:20" + "src": "12905:71:27" }, { "expression": { @@ -22442,51 +21086,49 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29215, + "id": 31871, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13120:7:20", + "referencedDeclaration": 30535, + "src": "12987:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29217, + "id": 31873, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13128:5:20", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 25626, - "src": "13120:13:20", + "referencedDeclaration": 27592, + "src": "12987:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29218, + "id": 31874, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13120:15:20", + "src": "12987:15:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29219, + "id": 31875, "nodeType": "ExpressionStatement", - "src": "13120:15:20" + "src": "12987:15:27" }, { "expression": { @@ -22494,58 +21136,56 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29220, + "id": 31876, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "13148:2:20", + "src": "13015:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29222, + "id": 31878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13151:9:20", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9060, - "src": "13148:12:20", + "src": "13015:12:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29223, + "id": 31879, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13148:14:20", + "src": "13015:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29224, + "id": 31880, "nodeType": "ExpressionStatement", - "src": "13148:14:20" + "src": "13015:14:27" } ] }, "documentation": { - "id": 29127, + "id": 31781, "nodeType": "StructuredDocumentation", - "src": "12014:38:20", + "src": "11903:38:27", "text": "@dev Verifies claim() restrictions" }, "functionSelector": "8a8fa9b2", @@ -22553,49 +21193,47 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_restrictions", - "nameLocation": "12067:31:20", + "nameLocation": "11956:31:27", "parameters": { - "id": 29128, + "id": 31782, "nodeType": "ParameterList", "parameters": [], - "src": "12098:2:20" + "src": "11987:2:27" }, "returnParameters": { - "id": 29129, + "id": 31783, "nodeType": "ParameterList", "parameters": [], - "src": "12108:0:20" + "src": "11997:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 29455, + "id": 32113, "nodeType": "FunctionDefinition", - "src": "13225:1924:20", - "nodes": [], + "src": "13092:1902:27", "body": { - "id": 29454, + "id": 32112, "nodeType": "Block", - "src": "13276:1873:20", - "nodes": [], + "src": "13143:1851:27", "statements": [ { "assignments": [ - 29231 + 31887 ], "declarations": [ { "constant": false, - "id": 29231, + "id": 31887, "mutability": "mutable", "name": "_amount", - "nameLocation": "13292:7:20", + "nameLocation": "13159:7:27", "nodeType": "VariableDeclaration", - "scope": 29454, - "src": "13287:12:20", + "scope": 32112, + "src": "13154:12:27", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22603,10 +21241,10 @@ "typeString": "uint256" }, "typeName": { - "id": 29230, + "id": 31886, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13287:4:20", + "src": "13154:4:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22615,17 +21253,17 @@ "visibility": "internal" } ], - "id": 29233, + "id": 31889, "initialValue": { "hexValue": "315f3030305f303030", - "id": 29232, + "id": 31888, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13302:15:20", + "src": "13169:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -22634,38 +21272,67 @@ "value": "1_000_000" }, "nodeType": "VariableDeclarationStatement", - "src": "13287:30:20" + "src": "13154:30:27" }, { "expression": { "arguments": [ { - "hexValue": "307863303065393443623636324333353230323832453666353731373231343030344137663236383838", - "id": 29235, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 31891, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30535, + "src": "13261:7:27", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 31892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "proveToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 27449, + "src": "13261:18:27", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 31893, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "13394:42:20", + "names": [], + "nodeType": "FunctionCall", + "src": "13261:20:27", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" - }, - "value": "0xc00e94Cb662C3520282E6f5717214004A7f26888" + } }, { "arguments": [ { - "id": 29238, + "id": 31896, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13446:7:20", + "referencedDeclaration": 30535, + "src": "13291:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -22673,39 +21340,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29237, + "id": 31895, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13438:7:20", + "src": "13283:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29236, + "id": 31894, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13438:7:20", + "src": "13283:7:27", "typeDescriptions": {} } }, - "id": 29239, + "id": 31897, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13438:16:20", + "src": "13283:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22713,12 +21379,12 @@ } }, { - "id": 29240, + "id": 31898, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29231, - "src": "13456:7:20", + "referencedDeclaration": 31887, + "src": "13301:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22740,7 +21406,7 @@ "typeString": "uint256" } ], - "id": 29234, + "id": 31890, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -22749,31 +21415,30 @@ 5143 ], "referencedDeclaration": 5040, - "src": "13389:4:20", + "src": "13256:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 29241, + "id": 31899, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13389:75:20", + "src": "13256:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29242, + "id": 31900, "nodeType": "ExpressionStatement", - "src": "13389:75:20" + "src": "13256:53:27" }, { "expression": { @@ -22781,14 +21446,14 @@ { "arguments": [ { - "id": 29248, + "id": 31906, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "13533:3:20", + "referencedDeclaration": 30013, + "src": "13378:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -22796,39 +21461,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29247, + "id": 31905, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13525:7:20", + "src": "13370:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29246, + "id": 31904, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13525:7:20", + "src": "13370:7:27", "typeDescriptions": {} } }, - "id": 29249, + "id": 31907, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13525:12:20", + "src": "13370:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22844,51 +21508,49 @@ } ], "expression": { - "id": 29243, + "id": 31901, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "13511:2:20", + "src": "13356:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29245, + "id": 31903, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13514:10:20", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9043, - "src": "13511:13:20", + "src": "13356:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 29250, + "id": 31908, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13511:27:20", + "src": "13356:27:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29251, + "id": 31909, "nodeType": "ExpressionStatement", - "src": "13511:27:20" + "src": "13356:27:27" }, { "expression": { @@ -22898,14 +21560,14 @@ { "arguments": [ { - "id": 29257, + "id": 31915, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13617:7:20", + "referencedDeclaration": 30535, + "src": "13462:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -22913,39 +21575,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29256, + "id": 31914, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13609:7:20", + "src": "13454:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29255, + "id": 31913, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13609:7:20", + "src": "13454:7:27", "typeDescriptions": {} } }, - "id": 29258, + "id": 31916, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13609:16:20", + "src": "13454:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22955,14 +21616,14 @@ { "arguments": [ { - "id": 29261, + "id": 31919, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "13635:3:20", + "referencedDeclaration": 30013, + "src": "13480:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -22970,39 +21631,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29260, + "id": 31918, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13627:7:20", + "src": "13472:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29259, + "id": 31917, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13627:7:20", + "src": "13472:7:27", "typeDescriptions": {} } }, - "id": 29262, + "id": 31920, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13627:12:20", + "src": "13472:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23010,12 +21670,12 @@ } }, { - "id": 29263, + "id": 31921, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29231, - "src": "13641:7:20", + "referencedDeclaration": 31887, + "src": "13486:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23038,42 +21698,40 @@ } ], "expression": { - "id": 29253, + "id": 31911, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "13589:3:20", + "referencedDeclaration": 30010, + "src": "13434:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29254, + "id": 31912, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13593:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "13589:19:20", + "referencedDeclaration": 29684, + "src": "13434:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29264, + "id": 31922, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13589:60:20", + "src": "13434:60:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23088,36 +21746,35 @@ "typeString": "bool" } ], - "id": 29252, + "id": 31910, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "13582:6:20", + "src": "13427:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29265, + "id": 31923, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13582:68:20", + "src": "13427:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29266, + "id": 31924, "nodeType": "ExpressionStatement", - "src": "13582:68:20" + "src": "13427:68:27" }, { "expression": { @@ -23127,14 +21784,14 @@ { "arguments": [ { - "id": 29272, + "id": 31930, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13726:7:20", + "referencedDeclaration": 30535, + "src": "13571:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -23142,39 +21799,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29271, + "id": 31929, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13718:7:20", + "src": "13563:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29270, + "id": 31928, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13718:7:20", + "src": "13563:7:27", "typeDescriptions": {} } }, - "id": 29273, + "id": 31931, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13718:16:20", + "src": "13563:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23190,42 +21846,40 @@ } ], "expression": { - "id": 29268, + "id": 31926, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "13696:3:20", + "referencedDeclaration": 30010, + "src": "13541:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29269, + "id": 31927, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13700:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "13696:21:20", + "referencedDeclaration": 29622, + "src": "13541:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29274, + "id": 31932, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13696:39:20", + "src": "13541:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23240,36 +21894,35 @@ "typeString": "bool" } ], - "id": 29267, + "id": 31925, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "13689:6:20", + "src": "13534:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29275, + "id": 31933, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13689:47:20", + "src": "13534:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29276, + "id": 31934, "nodeType": "ExpressionStatement", - "src": "13689:47:20" + "src": "13534:47:27" }, { "expression": { @@ -23279,14 +21932,14 @@ { "arguments": [ { - "id": 29286, + "id": 31944, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "13833:3:20", + "referencedDeclaration": 30013, + "src": "13678:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -23294,39 +21947,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29285, + "id": 31943, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13825:7:20", + "src": "13670:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29284, + "id": 31942, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13825:7:20", + "src": "13670:7:27", "typeDescriptions": {} } }, - "id": 29287, + "id": 31945, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13825:12:20", + "src": "13670:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23348,42 +22000,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29279, + "id": 31937, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13793:7:20", + "referencedDeclaration": 30535, + "src": "13638:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29280, + "id": 31938, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13801:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "13793:18:20", + "referencedDeclaration": 27449, + "src": "13638:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29281, + "id": 31939, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13793:20:20", + "src": "13638:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23398,58 +22048,55 @@ "typeString": "address" } ], - "id": 29278, + "id": 31936, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "13786:6:20", + "referencedDeclaration": 29102, + "src": "13631:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29282, + "id": 31940, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13786:28:20", + "src": "13631:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29283, + "id": 31941, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13815:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "13786:38:20", + "referencedDeclaration": 29041, + "src": "13631:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29288, + "id": 31946, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13786:52:20", + "src": "13631:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -23458,14 +22105,14 @@ }, { "hexValue": "30", - "id": 29289, + "id": 31947, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13840:1:20", + "src": "13685:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -23484,7 +22131,7 @@ "typeString": "int_const 0" } ], - "id": 29277, + "id": 31935, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23510,31 +22157,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "13777:8:20", + "src": "13622:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29290, + "id": 31948, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13777:65:20", + "src": "13622:65:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29291, + "id": 31949, "nodeType": "ExpressionStatement", - "src": "13777:65:20" + "src": "13622:65:27" }, { "expression": { @@ -23544,14 +22190,14 @@ { "arguments": [ { - "id": 29297, + "id": 31955, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13923:7:20", + "referencedDeclaration": 30535, + "src": "13768:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -23559,39 +22205,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29296, + "id": 31954, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13915:7:20", + "src": "13760:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29295, + "id": 31953, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13915:7:20", + "src": "13760:7:27", "typeDescriptions": {} } }, - "id": 29298, + "id": 31956, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13915:16:20", + "src": "13760:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23607,42 +22252,40 @@ } ], "expression": { - "id": 29293, + "id": 31951, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "13901:3:20", + "referencedDeclaration": 30013, + "src": "13746:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29294, + "id": 31952, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13905:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "13901:13:20", + "referencedDeclaration": 29768, + "src": "13746:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29299, + "id": 31957, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13901:31:20", + "src": "13746:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23657,36 +22300,35 @@ "typeString": "bool" } ], - "id": 29292, + "id": 31950, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "13894:6:20", + "src": "13739:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29300, + "id": 31958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13894:39:20", + "src": "13739:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29301, + "id": 31959, "nodeType": "ExpressionStatement", - "src": "13894:39:20" + "src": "13739:39:27" }, { "expression": { @@ -23696,14 +22338,14 @@ { "arguments": [ { - "id": 29311, + "id": 31969, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14031:3:20", + "referencedDeclaration": 30013, + "src": "13876:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -23711,39 +22353,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29310, + "id": 31968, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14023:7:20", + "src": "13868:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29309, + "id": 31967, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14023:7:20", + "src": "13868:7:27", "typeDescriptions": {} } }, - "id": 29312, + "id": 31970, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14023:12:20", + "src": "13868:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23765,42 +22406,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29304, + "id": 31962, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "13991:7:20", + "referencedDeclaration": 30535, + "src": "13836:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29305, + "id": 31963, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13999:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "13991:18:20", + "referencedDeclaration": 27449, + "src": "13836:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29306, + "id": 31964, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13991:20:20", + "src": "13836:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23815,58 +22454,55 @@ "typeString": "address" } ], - "id": 29303, + "id": 31961, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "13984:6:20", + "referencedDeclaration": 29102, + "src": "13829:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29307, + "id": 31965, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13984:28:20", + "src": "13829:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29308, + "id": 31966, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14013:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "13984:38:20", + "referencedDeclaration": 29041, + "src": "13829:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29313, + "id": 31971, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13984:52:20", + "src": "13829:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -23878,7 +22514,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29318, + "id": 31976, "isConstant": false, "isLValue": false, "isPure": false, @@ -23888,18 +22524,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29316, + "id": 31974, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29314, + "id": 31972, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29231, - "src": "14038:7:20", + "referencedDeclaration": 31887, + "src": "13883:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23909,21 +22545,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 29315, + "id": 31973, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14048:2:20", + "src": "13893:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "14038:12:20", + "src": "13883:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23933,21 +22569,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29317, + "id": 31975, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14053:3:20", + "src": "13898:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "14038:18:20", + "src": "13883:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23965,7 +22601,7 @@ "typeString": "uint256" } ], - "id": 29302, + "id": 31960, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23991,45 +22627,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "13975:8:20", + "src": "13820:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29319, + "id": 31977, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13975:82:20", + "src": "13820:82:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29320, + "id": 31978, "nodeType": "ExpressionStatement", - "src": "13975:82:20" + "src": "13820:82:27" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 29322, + "id": 31980, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14100:7:20", + "src": "13945:7:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -24045,36 +22680,35 @@ "typeString": "int_const 2419200" } ], - "id": 29321, + "id": 31979, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "14095:4:20", + "src": "13940:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29323, + "id": 31981, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14095:13:20", + "src": "13940:13:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29324, + "id": 31982, "nodeType": "ExpressionStatement", - "src": "14095:13:20" + "src": "13940:13:27" }, { "expression": { @@ -24084,14 +22718,14 @@ { "arguments": [ { - "id": 29330, + "id": 31988, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "14189:7:20", + "referencedDeclaration": 30535, + "src": "14034:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -24099,39 +22733,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29329, + "id": 31987, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14181:7:20", + "src": "14026:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29328, + "id": 31986, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14181:7:20", + "src": "14026:7:27", "typeDescriptions": {} } }, - "id": 29331, + "id": 31989, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14181:16:20", + "src": "14026:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24147,42 +22780,40 @@ } ], "expression": { - "id": 29326, + "id": 31984, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14167:3:20", + "referencedDeclaration": 30013, + "src": "14012:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29327, + "id": 31985, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14171:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "14167:13:20", + "referencedDeclaration": 29768, + "src": "14012:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29332, + "id": 31990, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14167:31:20", + "src": "14012:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24197,36 +22828,35 @@ "typeString": "bool" } ], - "id": 29325, + "id": 31983, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14160:6:20", + "src": "14005:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29333, + "id": 31991, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14160:39:20", + "src": "14005:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29334, + "id": 31992, "nodeType": "ExpressionStatement", - "src": "14160:39:20" + "src": "14005:39:27" }, { "expression": { @@ -24236,14 +22866,14 @@ { "arguments": [ { - "id": 29344, + "id": 32002, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14297:3:20", + "referencedDeclaration": 30013, + "src": "14142:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -24251,39 +22881,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29343, + "id": 32001, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14289:7:20", + "src": "14134:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29342, + "id": 32000, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14289:7:20", + "src": "14134:7:27", "typeDescriptions": {} } }, - "id": 29345, + "id": 32003, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14289:12:20", + "src": "14134:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24305,42 +22934,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29337, + "id": 31995, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "14257:7:20", + "referencedDeclaration": 30535, + "src": "14102:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29338, + "id": 31996, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14265:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "14257:18:20", + "referencedDeclaration": 27449, + "src": "14102:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29339, + "id": 31997, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14257:20:20", + "src": "14102:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24355,58 +22982,55 @@ "typeString": "address" } ], - "id": 29336, + "id": 31994, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "14250:6:20", + "referencedDeclaration": 29102, + "src": "14095:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29340, + "id": 31998, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14250:28:20", + "src": "14095:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29341, + "id": 31999, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14279:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "14250:38:20", + "referencedDeclaration": 29041, + "src": "14095:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29346, + "id": 32004, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14250:52:20", + "src": "14095:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -24418,7 +23042,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29351, + "id": 32009, "isConstant": false, "isLValue": false, "isPure": false, @@ -24428,18 +23052,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29349, + "id": 32007, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29347, + "id": 32005, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29231, - "src": "14304:7:20", + "referencedDeclaration": 31887, + "src": "14149:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24449,21 +23073,21 @@ "operator": "*", "rightExpression": { "hexValue": "3230", - "id": 29348, + "id": 32006, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14314:2:20", + "src": "14159:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_20_by_1", "typeString": "int_const 20" }, "value": "20" }, - "src": "14304:12:20", + "src": "14149:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24473,21 +23097,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29350, + "id": 32008, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14319:3:20", + "src": "14164:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "14304:18:20", + "src": "14149:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24505,7 +23129,7 @@ "typeString": "uint256" } ], - "id": 29335, + "id": 31993, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -24531,45 +23155,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "14241:8:20", + "src": "14086:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29352, + "id": 32010, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14241:82:20", + "src": "14086:82:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29353, + "id": 32011, "nodeType": "ExpressionStatement", - "src": "14241:82:20" + "src": "14086:82:27" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 29355, + "id": 32013, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14366:7:20", + "src": "14211:7:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -24585,36 +23208,35 @@ "typeString": "int_const 2419200" } ], - "id": 29354, + "id": 32012, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "14361:4:20", + "src": "14206:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29356, + "id": 32014, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14361:13:20", + "src": "14206:13:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29357, + "id": 32015, "nodeType": "ExpressionStatement", - "src": "14361:13:20" + "src": "14206:13:27" }, { "expression": { @@ -24624,14 +23246,14 @@ { "arguments": [ { - "id": 29363, + "id": 32021, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "14455:7:20", + "referencedDeclaration": 30535, + "src": "14300:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -24639,39 +23261,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29362, + "id": 32020, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14447:7:20", + "src": "14292:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29361, + "id": 32019, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14447:7:20", + "src": "14292:7:27", "typeDescriptions": {} } }, - "id": 29364, + "id": 32022, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14447:16:20", + "src": "14292:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24687,42 +23308,40 @@ } ], "expression": { - "id": 29359, + "id": 32017, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14433:3:20", + "referencedDeclaration": 30013, + "src": "14278:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29360, + "id": 32018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14437:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "14433:13:20", + "referencedDeclaration": 29768, + "src": "14278:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29365, + "id": 32023, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14433:31:20", + "src": "14278:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24737,36 +23356,35 @@ "typeString": "bool" } ], - "id": 29358, + "id": 32016, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14426:6:20", + "src": "14271:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29366, + "id": 32024, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14426:39:20", + "src": "14271:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29367, + "id": 32025, "nodeType": "ExpressionStatement", - "src": "14426:39:20" + "src": "14271:39:27" }, { "expression": { @@ -24776,14 +23394,14 @@ { "arguments": [ { - "id": 29377, + "id": 32035, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14563:3:20", + "referencedDeclaration": 30013, + "src": "14408:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -24791,39 +23409,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29376, + "id": 32034, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14555:7:20", + "src": "14400:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29375, + "id": 32033, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14555:7:20", + "src": "14400:7:27", "typeDescriptions": {} } }, - "id": 29378, + "id": 32036, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14555:12:20", + "src": "14400:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24845,42 +23462,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29370, + "id": 32028, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "14523:7:20", + "referencedDeclaration": 30535, + "src": "14368:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29371, + "id": 32029, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14531:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "14523:18:20", + "referencedDeclaration": 27449, + "src": "14368:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29372, + "id": 32030, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14523:20:20", + "src": "14368:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24895,58 +23510,55 @@ "typeString": "address" } ], - "id": 29369, + "id": 32027, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "14516:6:20", + "referencedDeclaration": 29102, + "src": "14361:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29373, + "id": 32031, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14516:28:20", + "src": "14361:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29374, + "id": 32032, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14545:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "14516:38:20", + "referencedDeclaration": 29041, + "src": "14361:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29379, + "id": 32037, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14516:52:20", + "src": "14361:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -24958,7 +23570,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29384, + "id": 32042, "isConstant": false, "isLValue": false, "isPure": false, @@ -24968,18 +23580,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29382, + "id": 32040, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29380, + "id": 32038, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29231, - "src": "14570:7:20", + "referencedDeclaration": 31887, + "src": "14415:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24989,21 +23601,21 @@ "operator": "*", "rightExpression": { "hexValue": "3238", - "id": 29381, + "id": 32039, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14580:2:20", + "src": "14425:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_28_by_1", "typeString": "int_const 28" }, "value": "28" }, - "src": "14570:12:20", + "src": "14415:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25013,21 +23625,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29383, + "id": 32041, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14585:3:20", + "src": "14430:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "14570:18:20", + "src": "14415:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25045,7 +23657,7 @@ "typeString": "uint256" } ], - "id": 29368, + "id": 32026, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -25071,45 +23683,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "14507:8:20", + "src": "14352:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29385, + "id": 32043, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14507:82:20", + "src": "14352:82:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29386, + "id": 32044, "nodeType": "ExpressionStatement", - "src": "14507:82:20" + "src": "14352:82:27" }, { "expression": { "arguments": [ { "hexValue": "3132", - "id": 29388, + "id": 32046, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14633:8:20", + "src": "14478:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_7257600_by_1", @@ -25125,36 +23736,35 @@ "typeString": "int_const 7257600" } ], - "id": 29387, + "id": 32045, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "14628:4:20", + "src": "14473:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29389, + "id": 32047, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14628:14:20", + "src": "14473:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29390, + "id": 32048, "nodeType": "ExpressionStatement", - "src": "14628:14:20" + "src": "14473:14:27" }, { "expression": { @@ -25164,14 +23774,14 @@ { "arguments": [ { - "id": 29396, + "id": 32054, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "14723:7:20", + "referencedDeclaration": 30535, + "src": "14568:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -25179,39 +23789,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29395, + "id": 32053, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14715:7:20", + "src": "14560:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29394, + "id": 32052, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14715:7:20", + "src": "14560:7:27", "typeDescriptions": {} } }, - "id": 29397, + "id": 32055, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14715:16:20", + "src": "14560:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25227,42 +23836,40 @@ } ], "expression": { - "id": 29392, + "id": 32050, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14701:3:20", + "referencedDeclaration": 30013, + "src": "14546:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29393, + "id": 32051, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14705:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "14701:13:20", + "referencedDeclaration": 29768, + "src": "14546:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29398, + "id": 32056, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14701:31:20", + "src": "14546:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25277,36 +23884,35 @@ "typeString": "bool" } ], - "id": 29391, + "id": 32049, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14694:6:20", + "src": "14539:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29399, + "id": 32057, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14694:39:20", + "src": "14539:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29400, + "id": 32058, "nodeType": "ExpressionStatement", - "src": "14694:39:20" + "src": "14539:39:27" }, { "expression": { @@ -25316,14 +23922,14 @@ { "arguments": [ { - "id": 29410, + "id": 32068, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14831:3:20", + "referencedDeclaration": 30013, + "src": "14676:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -25331,39 +23937,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29409, + "id": 32067, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14823:7:20", + "src": "14668:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29408, + "id": 32066, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14823:7:20", + "src": "14668:7:27", "typeDescriptions": {} } }, - "id": 29411, + "id": 32069, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14823:12:20", + "src": "14668:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25385,42 +23990,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29403, + "id": 32061, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "14791:7:20", + "referencedDeclaration": 30535, + "src": "14636:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29404, + "id": 32062, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14799:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "14791:18:20", + "referencedDeclaration": 27449, + "src": "14636:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29405, + "id": 32063, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14791:20:20", + "src": "14636:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25435,58 +24038,55 @@ "typeString": "address" } ], - "id": 29402, + "id": 32060, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "14784:6:20", + "referencedDeclaration": 29102, + "src": "14629:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29406, + "id": 32064, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14784:28:20", + "src": "14629:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29407, + "id": 32065, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14813:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "14784:38:20", + "referencedDeclaration": 29041, + "src": "14629:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29412, + "id": 32070, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14784:52:20", + "src": "14629:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -25498,7 +24098,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29417, + "id": 32075, "isConstant": false, "isLValue": false, "isPure": false, @@ -25508,18 +24108,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29415, + "id": 32073, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29413, + "id": 32071, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29231, - "src": "14838:7:20", + "referencedDeclaration": 31887, + "src": "14683:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25529,21 +24129,21 @@ "operator": "*", "rightExpression": { "hexValue": "3532", - "id": 29414, + "id": 32072, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14848:2:20", + "src": "14693:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_52_by_1", "typeString": "int_const 52" }, "value": "52" }, - "src": "14838:12:20", + "src": "14683:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25553,21 +24153,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29416, + "id": 32074, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14853:3:20", + "src": "14698:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "14838:18:20", + "src": "14683:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25585,7 +24185,7 @@ "typeString": "uint256" } ], - "id": 29401, + "id": 32059, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -25611,45 +24211,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "14775:8:20", + "src": "14620:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29418, + "id": 32076, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14775:82:20", + "src": "14620:82:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29419, + "id": 32077, "nodeType": "ExpressionStatement", - "src": "14775:82:20" + "src": "14620:82:27" }, { "expression": { "arguments": [ { "hexValue": "3234", - "id": 29421, + "id": 32079, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14901:8:20", + "src": "14746:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_14515200_by_1", @@ -25665,36 +24264,35 @@ "typeString": "int_const 14515200" } ], - "id": 29420, + "id": 32078, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "14896:4:20", + "src": "14741:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29422, + "id": 32080, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14896:14:20", + "src": "14741:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29423, + "id": 32081, "nodeType": "ExpressionStatement", - "src": "14896:14:20" + "src": "14741:14:27" }, { "expression": { @@ -25704,14 +24302,14 @@ { "arguments": [ { - "id": 29429, + "id": 32087, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "14991:7:20", + "referencedDeclaration": 30535, + "src": "14836:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -25719,39 +24317,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29428, + "id": 32086, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14983:7:20", + "src": "14828:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29427, + "id": 32085, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14983:7:20", + "src": "14828:7:27", "typeDescriptions": {} } }, - "id": 29430, + "id": 32088, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14983:16:20", + "src": "14828:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25767,42 +24364,40 @@ } ], "expression": { - "id": 29425, + "id": 32083, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "14969:3:20", + "referencedDeclaration": 30013, + "src": "14814:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29426, + "id": 32084, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "14973:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "14969:13:20", + "referencedDeclaration": 29768, + "src": "14814:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29431, + "id": 32089, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14969:31:20", + "src": "14814:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25817,36 +24412,35 @@ "typeString": "bool" } ], - "id": 29424, + "id": 32082, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14962:6:20", + "src": "14807:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29432, + "id": 32090, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14962:39:20", + "src": "14807:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29433, + "id": 32091, "nodeType": "ExpressionStatement", - "src": "14962:39:20" + "src": "14807:39:27" }, { "expression": { @@ -25856,14 +24450,14 @@ { "arguments": [ { - "id": 29443, + "id": 32101, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "15099:3:20", + "referencedDeclaration": 30013, + "src": "14944:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -25871,39 +24465,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29442, + "id": 32100, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15091:7:20", + "src": "14936:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29441, + "id": 32099, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15091:7:20", + "src": "14936:7:27", "typeDescriptions": {} } }, - "id": 29444, + "id": 32102, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15091:12:20", + "src": "14936:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25925,42 +24518,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29436, + "id": 32094, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "15059:7:20", + "referencedDeclaration": 30535, + "src": "14904:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29437, + "id": 32095, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15067:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "15059:18:20", + "referencedDeclaration": 27449, + "src": "14904:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29438, + "id": 32096, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15059:20:20", + "src": "14904:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25975,58 +24566,55 @@ "typeString": "address" } ], - "id": 29435, + "id": 32093, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "15052:6:20", + "referencedDeclaration": 29102, + "src": "14897:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29439, + "id": 32097, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15052:28:20", + "src": "14897:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29440, + "id": 32098, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15081:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "15052:38:20", + "referencedDeclaration": 29041, + "src": "14897:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29445, + "id": 32103, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15052:52:20", + "src": "14897:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -26034,12 +24622,12 @@ } }, { - "id": 29446, + "id": 32104, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29231, - "src": "15106:7:20", + "referencedDeclaration": 31887, + "src": "14951:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26057,7 +24645,7 @@ "typeString": "uint256" } ], - "id": 29434, + "id": 32092, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -26083,31 +24671,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "15043:8:20", + "src": "14888:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29447, + "id": 32105, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15043:71:20", + "src": "14888:71:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29448, + "id": 32106, "nodeType": "ExpressionStatement", - "src": "15043:71:20" + "src": "14888:71:27" }, { "expression": { @@ -26115,58 +24702,56 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29449, + "id": 32107, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "15127:2:20", + "src": "14972:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29451, + "id": 32109, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15130:9:20", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9060, - "src": "15127:12:20", + "src": "14972:12:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29452, + "id": 32110, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15127:14:20", + "src": "14972:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29453, + "id": 32111, "nodeType": "ExpressionStatement", - "src": "15127:14:20" + "src": "14972:14:27" } ] }, "documentation": { - "id": 29227, + "id": 31883, "nodeType": "StructuredDocumentation", - "src": "13180:39:20", + "src": "13047:39:27", "text": "@dev Verifies claim() state changes" }, "functionSelector": "63cbd9c1", @@ -26174,65 +24759,92 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_state_changes", - "nameLocation": "13234:32:20", + "nameLocation": "13101:32:27", "parameters": { - "id": 29228, + "id": 31884, "nodeType": "ParameterList", "parameters": [], - "src": "13266:2:20" + "src": "13133:2:27" }, "returnParameters": { - "id": 29229, + "id": 31885, "nodeType": "ParameterList", "parameters": [], - "src": "13276:0:20" + "src": "13143:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 29652, + "id": 32312, "nodeType": "FunctionDefinition", - "src": "15199:2074:20", - "nodes": [], + "src": "15044:2052:27", "body": { - "id": 29651, + "id": 32311, "nodeType": "Block", - "src": "15247:2026:20", - "nodes": [], + "src": "15092:2004:27", "statements": [ { "expression": { "arguments": [ { - "hexValue": "307863303065393443623636324333353230323832453666353731373231343030344137663236383838", - "id": 29460, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 32118, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30535, + "src": "15167:7:27", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 32119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "proveToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 27449, + "src": "15167:18:27", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 32120, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "15322:42:20", + "names": [], + "nodeType": "FunctionCall", + "src": "15167:20:27", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" - }, - "value": "0xc00e94Cb662C3520282E6f5717214004A7f26888" + } }, { "arguments": [ { - "id": 29463, + "id": 32123, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "15374:7:20", + "referencedDeclaration": 30535, + "src": "15197:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -26240,39 +24852,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29462, + "id": 32122, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15366:7:20", + "src": "15189:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29461, + "id": 32121, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15366:7:20", + "src": "15189:7:27", "typeDescriptions": {} } }, - "id": 29464, + "id": 32124, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15366:16:20", + "src": "15189:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26281,14 +24892,14 @@ }, { "hexValue": "355f3030305f303030", - "id": 29465, + "id": 32125, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15384:15:20", + "src": "15207:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_5000000000000000000000000_by_1", @@ -26312,7 +24923,7 @@ "typeString": "int_const 5000000000000000000000000" } ], - "id": 29459, + "id": 32117, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -26321,31 +24932,30 @@ 5143 ], "referencedDeclaration": 5040, - "src": "15317:4:20", + "src": "15162:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 29466, + "id": 32126, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15317:83:20", + "src": "15162:61:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29467, + "id": 32127, "nodeType": "ExpressionStatement", - "src": "15317:83:20" + "src": "15162:61:27" }, { "expression": { @@ -26355,14 +24965,14 @@ { "arguments": [ { - "id": 29473, + "id": 32133, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "15476:7:20", + "referencedDeclaration": 30535, + "src": "15299:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -26370,39 +24980,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29472, + "id": 32132, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15468:7:20", + "src": "15291:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29471, + "id": 32131, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15468:7:20", + "src": "15291:7:27", "typeDescriptions": {} } }, - "id": 29474, + "id": 32134, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15468:16:20", + "src": "15291:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26418,42 +25027,40 @@ } ], "expression": { - "id": 29469, + "id": 32129, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "15446:3:20", + "referencedDeclaration": 30010, + "src": "15269:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29470, + "id": 32130, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15450:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "15446:21:20", + "referencedDeclaration": 29622, + "src": "15269:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29475, + "id": 32135, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15446:39:20", + "src": "15269:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -26468,36 +25075,35 @@ "typeString": "bool" } ], - "id": 29468, + "id": 32128, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15439:6:20", + "src": "15262:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29476, + "id": 32136, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15439:47:20", + "src": "15262:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29477, + "id": 32137, "nodeType": "ExpressionStatement", - "src": "15439:47:20" + "src": "15262:47:27" }, { "expression": { @@ -26507,14 +25113,14 @@ { "arguments": [ { - "id": 29483, + "id": 32143, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "15623:7:20", + "referencedDeclaration": 30535, + "src": "15446:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -26522,39 +25128,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29482, + "id": 32142, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15615:7:20", + "src": "15438:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29481, + "id": 32141, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15615:7:20", + "src": "15438:7:27", "typeDescriptions": {} } }, - "id": 29484, + "id": 32144, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15615:16:20", + "src": "15438:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26564,14 +25169,14 @@ { "arguments": [ { - "id": 29487, + "id": 32147, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "15641:3:20", + "referencedDeclaration": 30013, + "src": "15464:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -26579,39 +25184,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29486, + "id": 32146, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15633:7:20", + "src": "15456:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29485, + "id": 32145, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15633:7:20", + "src": "15456:7:27", "typeDescriptions": {} } }, - "id": 29488, + "id": 32148, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15633:12:20", + "src": "15456:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26620,14 +25224,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 29489, + "id": 32149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15647:15:20", + "src": "15470:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -26652,42 +25256,40 @@ } ], "expression": { - "id": 29479, + "id": 32139, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "15595:3:20", + "referencedDeclaration": 30010, + "src": "15418:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29480, + "id": 32140, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15599:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "15595:19:20", + "referencedDeclaration": 29684, + "src": "15418:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29490, + "id": 32150, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15595:68:20", + "src": "15418:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -26702,36 +25304,35 @@ "typeString": "bool" } ], - "id": 29478, + "id": 32138, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15588:6:20", + "src": "15411:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29491, + "id": 32151, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15588:76:20", + "src": "15411:76:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29492, + "id": 32152, "nodeType": "ExpressionStatement", - "src": "15588:76:20" + "src": "15411:76:27" }, { "expression": { @@ -26741,14 +25342,14 @@ { "arguments": [ { - "id": 29498, + "id": 32158, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "15744:7:20", + "referencedDeclaration": 30535, + "src": "15567:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -26756,39 +25357,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29497, + "id": 32157, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15736:7:20", + "src": "15559:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29496, + "id": 32156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15736:7:20", + "src": "15559:7:27", "typeDescriptions": {} } }, - "id": 29499, + "id": 32159, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15736:16:20", + "src": "15559:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26798,14 +25398,14 @@ { "arguments": [ { - "id": 29502, + "id": 32162, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "15762:3:20", + "referencedDeclaration": 30007, + "src": "15585:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -26813,39 +25413,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29501, + "id": 32161, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15754:7:20", + "src": "15577:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29500, + "id": 32160, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15754:7:20", + "src": "15577:7:27", "typeDescriptions": {} } }, - "id": 29503, + "id": 32163, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15754:12:20", + "src": "15577:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26854,14 +25453,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 29504, + "id": 32164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15768:15:20", + "src": "15591:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -26886,42 +25485,40 @@ } ], "expression": { - "id": 29494, + "id": 32154, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "15716:3:20", + "referencedDeclaration": 30010, + "src": "15539:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29495, + "id": 32155, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15720:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "15716:19:20", + "referencedDeclaration": 29684, + "src": "15539:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29505, + "id": 32165, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15716:68:20", + "src": "15539:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -26936,36 +25533,35 @@ "typeString": "bool" } ], - "id": 29493, + "id": 32153, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15709:6:20", + "src": "15532:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29506, + "id": 32166, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15709:76:20", + "src": "15532:76:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29507, + "id": 32167, "nodeType": "ExpressionStatement", - "src": "15709:76:20" + "src": "15532:76:27" }, { "expression": { @@ -26975,14 +25571,14 @@ { "arguments": [ { - "id": 29513, + "id": 32173, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "15865:7:20", + "referencedDeclaration": 30535, + "src": "15688:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -26990,39 +25586,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29512, + "id": 32172, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15857:7:20", + "src": "15680:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29511, + "id": 32171, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15857:7:20", + "src": "15680:7:27", "typeDescriptions": {} } }, - "id": 29514, + "id": 32174, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15857:16:20", + "src": "15680:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27032,14 +25627,14 @@ { "arguments": [ { - "id": 29517, + "id": 32177, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "15883:3:20", + "referencedDeclaration": 30010, + "src": "15706:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -27047,39 +25642,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29516, + "id": 32176, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15875:7:20", + "src": "15698:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29515, + "id": 32175, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15875:7:20", + "src": "15698:7:27", "typeDescriptions": {} } }, - "id": 29518, + "id": 32178, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15875:12:20", + "src": "15698:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27088,14 +25682,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 29519, + "id": 32179, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15889:15:20", + "src": "15712:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -27120,42 +25714,40 @@ } ], "expression": { - "id": 29509, + "id": 32169, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "15837:3:20", + "referencedDeclaration": 30010, + "src": "15660:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29510, + "id": 32170, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15841:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "15837:19:20", + "referencedDeclaration": 29684, + "src": "15660:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29520, + "id": 32180, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15837:68:20", + "src": "15660:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -27170,50 +25762,49 @@ "typeString": "bool" } ], - "id": 29508, + "id": 32168, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15830:6:20", + "src": "15653:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29521, + "id": 32181, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15830:76:20", + "src": "15653:76:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29522, + "id": 32182, "nodeType": "ExpressionStatement", - "src": "15830:76:20" + "src": "15653:76:27" }, { "expression": { "arguments": [ { "hexValue": "32", - "id": 29524, + "id": 32184, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15986:7:20", + "src": "15809:7:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_1209600_by_1", @@ -27229,36 +25820,35 @@ "typeString": "int_const 1209600" } ], - "id": 29523, + "id": 32183, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "15981:4:20", + "src": "15804:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29525, + "id": 32185, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15981:13:20", + "src": "15804:13:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29526, + "id": 32186, "nodeType": "ExpressionStatement", - "src": "15981:13:20" + "src": "15804:13:27" }, { "expression": { @@ -27268,14 +25858,14 @@ { "arguments": [ { - "id": 29532, + "id": 32192, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "16034:7:20", + "referencedDeclaration": 30535, + "src": "15857:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -27283,39 +25873,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29531, + "id": 32191, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16026:7:20", + "src": "15849:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29530, + "id": 32190, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16026:7:20", + "src": "15849:7:27", "typeDescriptions": {} } }, - "id": 29533, + "id": 32193, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16026:16:20", + "src": "15849:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27331,42 +25920,40 @@ } ], "expression": { - "id": 29528, + "id": 32188, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "16012:3:20", + "referencedDeclaration": 30013, + "src": "15835:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29529, + "id": 32189, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16016:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "16012:13:20", + "referencedDeclaration": 29768, + "src": "15835:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29534, + "id": 32194, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16012:31:20", + "src": "15835:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -27381,36 +25968,35 @@ "typeString": "bool" } ], - "id": 29527, + "id": 32187, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "16005:6:20", + "src": "15828:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29535, + "id": 32195, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16005:39:20", + "src": "15828:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29536, + "id": 32196, "nodeType": "ExpressionStatement", - "src": "16005:39:20" + "src": "15828:39:27" }, { "expression": { @@ -27420,14 +26006,14 @@ { "arguments": [ { - "id": 29546, + "id": 32206, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "16177:3:20", + "referencedDeclaration": 30013, + "src": "16000:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -27435,39 +26021,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29545, + "id": 32205, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16169:7:20", + "src": "15992:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29544, + "id": 32204, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16169:7:20", + "src": "15992:7:27", "typeDescriptions": {} } }, - "id": 29547, + "id": 32207, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16169:12:20", + "src": "15992:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27489,42 +26074,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29539, + "id": 32199, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "16137:7:20", + "referencedDeclaration": 30535, + "src": "15960:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29540, + "id": 32200, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16145:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "16137:18:20", + "referencedDeclaration": 27449, + "src": "15960:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29541, + "id": 32201, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16137:20:20", + "src": "15960:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27539,58 +26122,55 @@ "typeString": "address" } ], - "id": 29538, + "id": 32198, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "16130:6:20", + "referencedDeclaration": 29102, + "src": "15953:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29542, + "id": 32202, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16130:28:20", + "src": "15953:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29543, + "id": 32203, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16159:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "16130:38:20", + "referencedDeclaration": 29041, + "src": "15953:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29548, + "id": 32208, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16130:52:20", + "src": "15953:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -27604,7 +26184,7 @@ "typeIdentifier": "t_rational_120000000000000000000000_by_1", "typeString": "int_const 120000000000000000000000" }, - "id": 29553, + "id": 32213, "isConstant": false, "isLValue": false, "isPure": true, @@ -27614,21 +26194,21 @@ "typeIdentifier": "t_rational_12000000000000000000000000_by_1", "typeString": "int_const 12000000000000000000000000" }, - "id": 29551, + "id": 32211, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "315f3030305f303030", - "id": 29549, + "id": 32209, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16185:15:20", + "src": "16008:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -27640,21 +26220,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 29550, + "id": 32210, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16203:2:20", + "src": "16026:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "16185:20:20", + "src": "16008:20:27", "typeDescriptions": { "typeIdentifier": "t_rational_12000000000000000000000000_by_1", "typeString": "int_const 12000000000000000000000000" @@ -27664,35 +26244,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29552, + "id": 32212, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16208:3:20", + "src": "16031:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "16185:26:20", + "src": "16008:26:27", "typeDescriptions": { "typeIdentifier": "t_rational_120000000000000000000000_by_1", "typeString": "int_const 120000000000000000000000" } } ], - "id": 29554, + "id": 32214, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "16184:28:20", + "src": "16007:28:27", "typeDescriptions": { "typeIdentifier": "t_rational_120000000000000000000000_by_1", "typeString": "int_const 120000000000000000000000" @@ -27710,7 +26290,7 @@ "typeString": "int_const 120000000000000000000000" } ], - "id": 29537, + "id": 32197, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -27736,45 +26316,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "16121:8:20", + "src": "15944:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29555, + "id": 32215, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16121:93:20", + "src": "15944:93:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29556, + "id": 32216, "nodeType": "ExpressionStatement", - "src": "16121:93:20" + "src": "15944:93:27" }, { "expression": { "arguments": [ { "hexValue": "3232", - "id": 29558, + "id": 32218, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16284:8:20", + "src": "16107:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_13305600_by_1", @@ -27790,36 +26369,35 @@ "typeString": "int_const 13305600" } ], - "id": 29557, + "id": 32217, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "16279:4:20", + "src": "16102:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29559, + "id": 32219, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16279:14:20", + "src": "16102:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29560, + "id": 32220, "nodeType": "ExpressionStatement", - "src": "16279:14:20" + "src": "16102:14:27" }, { "expression": { @@ -27829,14 +26407,14 @@ { "arguments": [ { - "id": 29566, + "id": 32226, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "16387:7:20", + "referencedDeclaration": 30535, + "src": "16210:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -27844,39 +26422,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29565, + "id": 32225, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16379:7:20", + "src": "16202:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29564, + "id": 32224, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16379:7:20", + "src": "16202:7:27", "typeDescriptions": {} } }, - "id": 29567, + "id": 32227, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16379:16:20", + "src": "16202:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27892,42 +26469,40 @@ } ], "expression": { - "id": 29562, + "id": 32222, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "16365:3:20", + "referencedDeclaration": 30007, + "src": "16188:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29563, + "id": 32223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16369:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "16365:13:20", + "referencedDeclaration": 29768, + "src": "16188:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29568, + "id": 32228, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16365:31:20", + "src": "16188:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -27942,36 +26517,35 @@ "typeString": "bool" } ], - "id": 29561, + "id": 32221, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "16358:6:20", + "src": "16181:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29569, + "id": 32229, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16358:39:20", + "src": "16181:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29570, + "id": 32230, "nodeType": "ExpressionStatement", - "src": "16358:39:20" + "src": "16181:39:27" }, { "expression": { @@ -27981,14 +26555,14 @@ { "arguments": [ { - "id": 29580, + "id": 32240, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "16530:3:20", + "referencedDeclaration": 30007, + "src": "16353:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -27996,39 +26570,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29579, + "id": 32239, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16522:7:20", + "src": "16345:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29578, + "id": 32238, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16522:7:20", + "src": "16345:7:27", "typeDescriptions": {} } }, - "id": 29581, + "id": 32241, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16522:12:20", + "src": "16345:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28050,42 +26623,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29573, + "id": 32233, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "16490:7:20", + "referencedDeclaration": 30535, + "src": "16313:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29574, + "id": 32234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16498:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "16490:18:20", + "referencedDeclaration": 27449, + "src": "16313:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29575, + "id": 32235, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16490:20:20", + "src": "16313:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28100,58 +26671,55 @@ "typeString": "address" } ], - "id": 29572, + "id": 32232, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "16483:6:20", + "referencedDeclaration": 29102, + "src": "16306:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29576, + "id": 32236, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16483:28:20", + "src": "16306:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29577, + "id": 32237, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16512:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "16483:38:20", + "referencedDeclaration": 29041, + "src": "16306:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29582, + "id": 32242, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16483:52:20", + "src": "16306:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -28165,7 +26733,7 @@ "typeIdentifier": "t_rational_600000000000000000000000_by_1", "typeString": "int_const 600000000000000000000000" }, - "id": 29587, + "id": 32247, "isConstant": false, "isLValue": false, "isPure": true, @@ -28175,21 +26743,21 @@ "typeIdentifier": "t_rational_60000000000000000000000000_by_1", "typeString": "int_const 60000000000000000000000000" }, - "id": 29585, + "id": 32245, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "315f3030305f303030", - "id": 29583, + "id": 32243, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16538:15:20", + "src": "16361:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -28201,21 +26769,21 @@ "operator": "*", "rightExpression": { "hexValue": "3630", - "id": 29584, + "id": 32244, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16556:2:20", + "src": "16379:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_60_by_1", "typeString": "int_const 60" }, "value": "60" }, - "src": "16538:20:20", + "src": "16361:20:27", "typeDescriptions": { "typeIdentifier": "t_rational_60000000000000000000000000_by_1", "typeString": "int_const 60000000000000000000000000" @@ -28225,35 +26793,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29586, + "id": 32246, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16561:3:20", + "src": "16384:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "16538:26:20", + "src": "16361:26:27", "typeDescriptions": { "typeIdentifier": "t_rational_600000000000000000000000_by_1", "typeString": "int_const 600000000000000000000000" } } ], - "id": 29588, + "id": 32248, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "16537:28:20", + "src": "16360:28:27", "typeDescriptions": { "typeIdentifier": "t_rational_600000000000000000000000_by_1", "typeString": "int_const 600000000000000000000000" @@ -28271,7 +26839,7 @@ "typeString": "int_const 600000000000000000000000" } ], - "id": 29571, + "id": 32231, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -28297,45 +26865,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "16474:8:20", + "src": "16297:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29589, + "id": 32249, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16474:92:20", + "src": "16297:92:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29590, + "id": 32250, "nodeType": "ExpressionStatement", - "src": "16474:92:20" + "src": "16297:92:27" }, { "expression": { "arguments": [ { "hexValue": "3230", - "id": 29592, + "id": 32252, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16637:8:20", + "src": "16460:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_12096000_by_1", @@ -28351,36 +26918,35 @@ "typeString": "int_const 12096000" } ], - "id": 29591, + "id": 32251, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "16632:4:20", + "src": "16455:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29593, + "id": 32253, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16632:14:20", + "src": "16455:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29594, + "id": 32254, "nodeType": "ExpressionStatement", - "src": "16632:14:20" + "src": "16455:14:27" }, { "expression": { @@ -28390,14 +26956,14 @@ { "arguments": [ { - "id": 29600, + "id": 32260, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "16766:7:20", + "referencedDeclaration": 30535, + "src": "16589:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -28405,39 +26971,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29599, + "id": 32259, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16758:7:20", + "src": "16581:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29598, + "id": 32258, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16758:7:20", + "src": "16581:7:27", "typeDescriptions": {} } }, - "id": 29601, + "id": 32261, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16758:16:20", + "src": "16581:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28453,42 +27018,40 @@ } ], "expression": { - "id": 29596, + "id": 32256, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "16744:3:20", + "referencedDeclaration": 30007, + "src": "16567:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29597, + "id": 32257, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16748:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "16744:13:20", + "referencedDeclaration": 29768, + "src": "16567:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29602, + "id": 32262, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16744:31:20", + "src": "16567:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -28503,36 +27066,35 @@ "typeString": "bool" } ], - "id": 29595, + "id": 32255, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "16737:6:20", + "src": "16560:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29603, + "id": 32263, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16737:39:20", + "src": "16560:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29604, + "id": 32264, "nodeType": "ExpressionStatement", - "src": "16737:39:20" + "src": "16560:39:27" }, { "expression": { @@ -28542,14 +27104,14 @@ { "arguments": [ { - "id": 29614, + "id": 32274, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "16898:3:20", + "referencedDeclaration": 30007, + "src": "16721:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -28557,39 +27119,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29613, + "id": 32273, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16890:7:20", + "src": "16713:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29612, + "id": 32272, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16890:7:20", + "src": "16713:7:27", "typeDescriptions": {} } }, - "id": 29615, + "id": 32275, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16890:12:20", + "src": "16713:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28611,42 +27172,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29607, + "id": 32267, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "16858:7:20", + "referencedDeclaration": 30535, + "src": "16681:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29608, + "id": 32268, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16866:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "16858:18:20", + "referencedDeclaration": 27449, + "src": "16681:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29609, + "id": 32269, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16858:20:20", + "src": "16681:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28661,58 +27220,55 @@ "typeString": "address" } ], - "id": 29606, + "id": 32266, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "16851:6:20", + "referencedDeclaration": 29102, + "src": "16674:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29610, + "id": 32270, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16851:28:20", + "src": "16674:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29611, + "id": 32271, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "16880:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "16851:38:20", + "referencedDeclaration": 29041, + "src": "16674:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29616, + "id": 32276, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16851:52:20", + "src": "16674:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -28723,14 +27279,14 @@ "components": [ { "hexValue": "315f3030305f303030", - "id": 29617, + "id": 32277, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16906:15:20", + "src": "16729:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -28739,14 +27295,14 @@ "value": "1_000_000" } ], - "id": 29618, + "id": 32278, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "16905:17:20", + "src": "16728:17:27", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000" @@ -28764,7 +27320,7 @@ "typeString": "int_const 1000000000000000000000000" } ], - "id": 29605, + "id": 32265, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -28790,45 +27346,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "16842:8:20", + "src": "16665:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29619, + "id": 32279, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16842:81:20", + "src": "16665:81:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29620, + "id": 32280, "nodeType": "ExpressionStatement", - "src": "16842:81:20" + "src": "16665:81:27" }, { "expression": { "arguments": [ { "hexValue": "3532", - "id": 29622, + "id": 32282, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16973:8:20", + "src": "16796:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_31449600_by_1", @@ -28844,36 +27399,35 @@ "typeString": "int_const 31449600" } ], - "id": 29621, + "id": 32281, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "16968:4:20", + "src": "16791:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29623, + "id": 32283, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16968:14:20", + "src": "16791:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29624, + "id": 32284, "nodeType": "ExpressionStatement", - "src": "16968:14:20" + "src": "16791:14:27" }, { "expression": { @@ -28883,14 +27437,14 @@ { "arguments": [ { - "id": 29630, + "id": 32290, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "17098:7:20", + "referencedDeclaration": 30535, + "src": "16921:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -28898,39 +27452,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29629, + "id": 32289, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17090:7:20", + "src": "16913:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29628, + "id": 32288, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17090:7:20", + "src": "16913:7:27", "typeDescriptions": {} } }, - "id": 29631, + "id": 32291, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17090:16:20", + "src": "16913:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28946,42 +27499,40 @@ } ], "expression": { - "id": 29626, + "id": 32286, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "17076:3:20", + "referencedDeclaration": 30010, + "src": "16899:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29627, + "id": 32287, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17080:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "17076:13:20", + "referencedDeclaration": 29768, + "src": "16899:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29632, + "id": 32292, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17076:31:20", + "src": "16899:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -28996,36 +27547,35 @@ "typeString": "bool" } ], - "id": 29625, + "id": 32285, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "17069:6:20", + "src": "16892:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29633, + "id": 32293, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17069:39:20", + "src": "16892:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29634, + "id": 32294, "nodeType": "ExpressionStatement", - "src": "17069:39:20" + "src": "16892:39:27" }, { "expression": { @@ -29035,14 +27585,14 @@ { "arguments": [ { - "id": 29644, + "id": 32304, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "17238:3:20", + "referencedDeclaration": 30010, + "src": "17061:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -29050,39 +27600,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29643, + "id": 32303, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17230:7:20", + "src": "17053:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29642, + "id": 32302, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17230:7:20", + "src": "17053:7:27", "typeDescriptions": {} } }, - "id": 29645, + "id": 32305, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17230:12:20", + "src": "17053:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29104,42 +27653,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29637, + "id": 32297, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "17198:7:20", + "referencedDeclaration": 30535, + "src": "17021:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29638, + "id": 32298, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17206:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "17198:18:20", + "referencedDeclaration": 27449, + "src": "17021:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29639, + "id": 32299, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17198:20:20", + "src": "17021:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29154,58 +27701,55 @@ "typeString": "address" } ], - "id": 29636, + "id": 32296, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "17191:6:20", + "referencedDeclaration": 29102, + "src": "17014:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29640, + "id": 32300, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17191:28:20", + "src": "17014:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29641, + "id": 32301, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17220:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "17191:38:20", + "referencedDeclaration": 29041, + "src": "17014:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29646, + "id": 32306, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17191:52:20", + "src": "17014:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -29216,14 +27760,14 @@ "components": [ { "hexValue": "315f3030305f303030", - "id": 29647, + "id": 32307, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17246:15:20", + "src": "17069:15:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -29232,14 +27776,14 @@ "value": "1_000_000" } ], - "id": 29648, + "id": 32308, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "17245:17:20", + "src": "17068:17:27", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000" @@ -29257,7 +27801,7 @@ "typeString": "int_const 1000000000000000000000000" } ], - "id": 29635, + "id": 32295, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -29283,38 +27827,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "17182:8:20", + "src": "17005:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29649, + "id": 32309, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17182:81:20", + "src": "17005:81:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29650, + "id": 32310, "nodeType": "ExpressionStatement", - "src": "17182:81:20" + "src": "17005:81:27" } ] }, "documentation": { - "id": 29456, + "id": 32114, "nodeType": "StructuredDocumentation", - "src": "15157:36:20", + "src": "15002:36:27", "text": "@dev Verifies claim() edge cases" }, "functionSelector": "c947e25d", @@ -29322,49 +27865,47 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_edge_cases", - "nameLocation": "15208:29:20", + "nameLocation": "15053:29:27", "parameters": { - "id": 29457, + "id": 32115, "nodeType": "ParameterList", "parameters": [], - "src": "15237:2:20" + "src": "15082:2:27" }, "returnParameters": { - "id": 29458, + "id": 32116, "nodeType": "ParameterList", "parameters": [], - "src": "15247:0:20" + "src": "15092:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 29891, + "id": 32553, "nodeType": "FunctionDefinition", - "src": "17340:2006:20", - "nodes": [], + "src": "17163:1984:27", "body": { - "id": 29890, + "id": 32552, "nodeType": "Block", - "src": "17401:1945:20", - "nodes": [], + "src": "17224:1923:27", "statements": [ { "expression": { - "id": 29664, + "id": 32324, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 29658, + "id": 32318, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "17412:7:20", + "referencedDeclaration": 32315, + "src": "17235:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29375,12 +27916,12 @@ "rightHandSide": { "arguments": [ { - "id": 29660, + "id": 32320, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "17428:7:20", + "referencedDeclaration": 32315, + "src": "17251:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29388,14 +27929,14 @@ }, { "hexValue": "3130305f303030", - "id": 29661, + "id": 32321, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17437:13:20", + "src": "17260:13:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000_by_1", @@ -29405,14 +27946,14 @@ }, { "hexValue": "3130305f3030305f303030", - "id": 29662, + "id": 32322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17452:17:20", + "src": "17275:17:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000000_by_1", @@ -29436,7 +27977,7 @@ "typeString": "int_const 100000000000000000000000000" } ], - "id": 29659, + "id": 32319, "name": "bound", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -29444,68 +27985,96 @@ 7800 ], "referencedDeclaration": 7670, - "src": "17422:5:20", + "src": "17245:5:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 29663, + "id": 32323, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17422:48:20", + "src": "17245:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17412:58:20", + "src": "17235:58:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 29665, + "id": 32325, "nodeType": "ExpressionStatement", - "src": "17412:58:20" + "src": "17235:58:27" }, { "expression": { "arguments": [ { - "hexValue": "307863303065393443623636324333353230323832453666353731373231343030344137663236383838", - "id": 29667, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 32327, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30535, + "src": "17370:7:27", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 32328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "proveToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 27449, + "src": "17370:18:27", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 32329, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "17547:42:20", + "names": [], + "nodeType": "FunctionCall", + "src": "17370:20:27", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" - }, - "value": "0xc00e94Cb662C3520282E6f5717214004A7f26888" + } }, { "arguments": [ { - "id": 29670, + "id": 32332, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "17599:7:20", + "referencedDeclaration": 30535, + "src": "17400:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -29513,39 +28082,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29669, + "id": 32331, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17591:7:20", + "src": "17392:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29668, + "id": 32330, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17591:7:20", + "src": "17392:7:27", "typeDescriptions": {} } }, - "id": 29671, + "id": 32333, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17591:16:20", + "src": "17392:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29553,12 +28121,12 @@ } }, { - "id": 29672, + "id": 32334, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "17609:7:20", + "referencedDeclaration": 32315, + "src": "17410:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29580,7 +28148,7 @@ "typeString": "uint256" } ], - "id": 29666, + "id": 32326, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -29589,31 +28157,30 @@ 5143 ], "referencedDeclaration": 5040, - "src": "17542:4:20", + "src": "17365:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 29673, + "id": 32335, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17542:75:20", + "src": "17365:53:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29674, + "id": 32336, "nodeType": "ExpressionStatement", - "src": "17542:75:20" + "src": "17365:53:27" }, { "expression": { @@ -29621,14 +28188,14 @@ { "arguments": [ { - "id": 29680, + "id": 32342, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "17686:3:20", + "referencedDeclaration": 30013, + "src": "17487:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -29636,39 +28203,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29679, + "id": 32341, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17678:7:20", + "src": "17479:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29678, + "id": 32340, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17678:7:20", + "src": "17479:7:27", "typeDescriptions": {} } }, - "id": 29681, + "id": 32343, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17678:12:20", + "src": "17479:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29684,51 +28250,49 @@ } ], "expression": { - "id": 29675, + "id": 32337, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "17664:2:20", + "src": "17465:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29677, + "id": 32339, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17667:10:20", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9043, - "src": "17664:13:20", + "src": "17465:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 29682, + "id": 32344, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17664:27:20", + "src": "17465:27:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29683, + "id": 32345, "nodeType": "ExpressionStatement", - "src": "17664:27:20" + "src": "17465:27:27" }, { "expression": { @@ -29738,14 +28302,14 @@ { "arguments": [ { - "id": 29689, + "id": 32351, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "17770:7:20", + "referencedDeclaration": 30535, + "src": "17571:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -29753,39 +28317,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29688, + "id": 32350, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17762:7:20", + "src": "17563:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29687, + "id": 32349, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17762:7:20", + "src": "17563:7:27", "typeDescriptions": {} } }, - "id": 29690, + "id": 32352, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17762:16:20", + "src": "17563:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29795,14 +28358,14 @@ { "arguments": [ { - "id": 29693, + "id": 32355, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "17788:3:20", + "referencedDeclaration": 30013, + "src": "17589:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -29810,39 +28373,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29692, + "id": 32354, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17780:7:20", + "src": "17581:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29691, + "id": 32353, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17780:7:20", + "src": "17581:7:27", "typeDescriptions": {} } }, - "id": 29694, + "id": 32356, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17780:12:20", + "src": "17581:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29850,12 +28412,12 @@ } }, { - "id": 29695, + "id": 32357, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "17794:7:20", + "referencedDeclaration": 32315, + "src": "17595:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29878,42 +28440,40 @@ } ], "expression": { - "id": 29685, + "id": 32347, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "17742:3:20", + "referencedDeclaration": 30010, + "src": "17543:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29686, + "id": 32348, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17746:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "17742:19:20", + "referencedDeclaration": 29684, + "src": "17543:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29696, + "id": 32358, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17742:60:20", + "src": "17543:60:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -29928,36 +28488,35 @@ "typeString": "bool" } ], - "id": 29684, + "id": 32346, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "17735:6:20", + "src": "17536:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29697, + "id": 32359, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17735:68:20", + "src": "17536:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29698, + "id": 32360, "nodeType": "ExpressionStatement", - "src": "17735:68:20" + "src": "17536:68:27" }, { "expression": { @@ -29967,14 +28526,14 @@ { "arguments": [ { - "id": 29704, + "id": 32366, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "17879:7:20", + "referencedDeclaration": 30535, + "src": "17680:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -29982,39 +28541,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29703, + "id": 32365, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17871:7:20", + "src": "17672:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29702, + "id": 32364, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17871:7:20", + "src": "17672:7:27", "typeDescriptions": {} } }, - "id": 29705, + "id": 32367, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17871:16:20", + "src": "17672:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30030,42 +28588,40 @@ } ], "expression": { - "id": 29700, + "id": 32362, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "17849:3:20", + "referencedDeclaration": 30010, + "src": "17650:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29701, + "id": 32363, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17853:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "17849:21:20", + "referencedDeclaration": 29622, + "src": "17650:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29706, + "id": 32368, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17849:39:20", + "src": "17650:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -30080,36 +28636,35 @@ "typeString": "bool" } ], - "id": 29699, + "id": 32361, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "17842:6:20", + "src": "17643:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29707, + "id": 32369, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17842:47:20", + "src": "17643:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29708, + "id": 32370, "nodeType": "ExpressionStatement", - "src": "17842:47:20" + "src": "17643:47:27" }, { "expression": { @@ -30119,14 +28674,14 @@ { "arguments": [ { - "id": 29718, + "id": 32380, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "17986:3:20", + "referencedDeclaration": 30013, + "src": "17787:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -30134,39 +28689,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29717, + "id": 32379, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17978:7:20", + "src": "17779:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29716, + "id": 32378, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17978:7:20", + "src": "17779:7:27", "typeDescriptions": {} } }, - "id": 29719, + "id": 32381, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17978:12:20", + "src": "17779:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30188,42 +28742,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29711, + "id": 32373, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "17946:7:20", + "referencedDeclaration": 30535, + "src": "17747:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29712, + "id": 32374, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17954:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "17946:18:20", + "referencedDeclaration": 27449, + "src": "17747:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29713, + "id": 32375, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17946:20:20", + "src": "17747:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30238,58 +28790,55 @@ "typeString": "address" } ], - "id": 29710, + "id": 32372, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "17939:6:20", + "referencedDeclaration": 29102, + "src": "17740:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29714, + "id": 32376, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17939:28:20", + "src": "17740:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29715, + "id": 32377, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17968:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "17939:38:20", + "referencedDeclaration": 29041, + "src": "17740:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29720, + "id": 32382, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17939:52:20", + "src": "17740:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -30298,14 +28847,14 @@ }, { "hexValue": "30", - "id": 29721, + "id": 32383, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17993:1:20", + "src": "17794:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -30324,7 +28873,7 @@ "typeString": "int_const 0" } ], - "id": 29709, + "id": 32371, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -30350,31 +28899,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "17930:8:20", + "src": "17731:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29722, + "id": 32384, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17930:65:20", + "src": "17731:65:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29723, + "id": 32385, "nodeType": "ExpressionStatement", - "src": "17930:65:20" + "src": "17731:65:27" }, { "expression": { @@ -30384,14 +28932,14 @@ { "arguments": [ { - "id": 29729, + "id": 32391, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18076:7:20", + "referencedDeclaration": 30535, + "src": "17877:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -30399,39 +28947,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29728, + "id": 32390, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18068:7:20", + "src": "17869:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29727, + "id": 32389, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18068:7:20", + "src": "17869:7:27", "typeDescriptions": {} } }, - "id": 29730, + "id": 32392, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18068:16:20", + "src": "17869:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30447,42 +28994,40 @@ } ], "expression": { - "id": 29725, + "id": 32387, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "18054:3:20", + "referencedDeclaration": 30013, + "src": "17855:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29726, + "id": 32388, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18058:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "18054:13:20", + "referencedDeclaration": 29768, + "src": "17855:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29731, + "id": 32393, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18054:31:20", + "src": "17855:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -30497,36 +29042,35 @@ "typeString": "bool" } ], - "id": 29724, + "id": 32386, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18047:6:20", + "src": "17848:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29732, + "id": 32394, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18047:39:20", + "src": "17848:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29733, + "id": 32395, "nodeType": "ExpressionStatement", - "src": "18047:39:20" + "src": "17848:39:27" }, { "expression": { @@ -30536,14 +29080,14 @@ { "arguments": [ { - "id": 29743, + "id": 32405, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "18186:3:20", + "referencedDeclaration": 30013, + "src": "17987:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -30551,39 +29095,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29742, + "id": 32404, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18178:7:20", + "src": "17979:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29741, + "id": 32403, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18178:7:20", + "src": "17979:7:27", "typeDescriptions": {} } }, - "id": 29744, + "id": 32406, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18178:12:20", + "src": "17979:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30605,42 +29148,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29736, + "id": 32398, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18146:7:20", + "referencedDeclaration": 30535, + "src": "17947:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29737, + "id": 32399, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18154:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "18146:18:20", + "referencedDeclaration": 27449, + "src": "17947:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29738, + "id": 32400, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18146:20:20", + "src": "17947:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30655,58 +29196,55 @@ "typeString": "address" } ], - "id": 29735, + "id": 32397, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "18139:6:20", + "referencedDeclaration": 29102, + "src": "17940:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29739, + "id": 32401, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18139:28:20", + "src": "17940:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29740, + "id": 32402, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18168:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "18139:38:20", + "referencedDeclaration": 29041, + "src": "17940:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29745, + "id": 32407, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18139:52:20", + "src": "17940:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -30718,7 +29256,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29750, + "id": 32412, "isConstant": false, "isLValue": false, "isPure": false, @@ -30728,18 +29266,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29748, + "id": 32410, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29746, + "id": 32408, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "18193:7:20", + "referencedDeclaration": 32315, + "src": "17994:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30749,21 +29287,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 29747, + "id": 32409, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18203:2:20", + "src": "18004:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "18193:12:20", + "src": "17994:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30773,21 +29311,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29749, + "id": 32411, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18208:3:20", + "src": "18009:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "18193:18:20", + "src": "17994:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30795,14 +29333,14 @@ }, { "hexValue": "31", - "id": 29751, + "id": 32413, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18213:7:20", + "src": "18014:7:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -30826,50 +29364,49 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 29734, + "id": 32396, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27818, - "src": "18128:10:20", + "referencedDeclaration": 30464, + "src": "17929:10:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 29752, + "id": 32414, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18128:93:20", + "src": "17929:93:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29753, + "id": 32415, "nodeType": "ExpressionStatement", - "src": "18128:93:20" + "src": "17929:93:27" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 29755, + "id": 32417, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18264:7:20", + "src": "18065:7:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -30885,36 +29422,35 @@ "typeString": "int_const 2419200" } ], - "id": 29754, + "id": 32416, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "18259:4:20", + "src": "18060:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29756, + "id": 32418, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18259:13:20", + "src": "18060:13:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29757, + "id": 32419, "nodeType": "ExpressionStatement", - "src": "18259:13:20" + "src": "18060:13:27" }, { "expression": { @@ -30924,14 +29460,14 @@ { "arguments": [ { - "id": 29763, + "id": 32425, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18353:7:20", + "referencedDeclaration": 30535, + "src": "18154:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -30939,39 +29475,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29762, + "id": 32424, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18345:7:20", + "src": "18146:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29761, + "id": 32423, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18345:7:20", + "src": "18146:7:27", "typeDescriptions": {} } }, - "id": 29764, + "id": 32426, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18345:16:20", + "src": "18146:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30987,42 +29522,40 @@ } ], "expression": { - "id": 29759, + "id": 32421, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "18331:3:20", + "referencedDeclaration": 30013, + "src": "18132:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29760, + "id": 32422, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18335:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "18331:13:20", + "referencedDeclaration": 29768, + "src": "18132:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29765, + "id": 32427, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18331:31:20", + "src": "18132:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -31037,36 +29570,35 @@ "typeString": "bool" } ], - "id": 29758, + "id": 32420, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18324:6:20", + "src": "18125:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29766, + "id": 32428, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18324:39:20", + "src": "18125:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29767, + "id": 32429, "nodeType": "ExpressionStatement", - "src": "18324:39:20" + "src": "18125:39:27" }, { "expression": { @@ -31076,14 +29608,14 @@ { "arguments": [ { - "id": 29777, + "id": 32439, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "18463:3:20", + "referencedDeclaration": 30013, + "src": "18264:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -31091,39 +29623,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29776, + "id": 32438, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18455:7:20", + "src": "18256:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29775, + "id": 32437, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18455:7:20", + "src": "18256:7:27", "typeDescriptions": {} } }, - "id": 29778, + "id": 32440, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18455:12:20", + "src": "18256:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31145,42 +29676,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29770, + "id": 32432, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18423:7:20", + "referencedDeclaration": 30535, + "src": "18224:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29771, + "id": 32433, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18431:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "18423:18:20", + "referencedDeclaration": 27449, + "src": "18224:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29772, + "id": 32434, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18423:20:20", + "src": "18224:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31195,58 +29724,55 @@ "typeString": "address" } ], - "id": 29769, + "id": 32431, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "18416:6:20", + "referencedDeclaration": 29102, + "src": "18217:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29773, + "id": 32435, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18416:28:20", + "src": "18217:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29774, + "id": 32436, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18445:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "18416:38:20", + "referencedDeclaration": 29041, + "src": "18217:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29779, + "id": 32441, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18416:52:20", + "src": "18217:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -31258,7 +29784,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29784, + "id": 32446, "isConstant": false, "isLValue": false, "isPure": false, @@ -31268,18 +29794,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29782, + "id": 32444, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29780, + "id": 32442, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "18470:7:20", + "referencedDeclaration": 32315, + "src": "18271:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31289,21 +29815,21 @@ "operator": "*", "rightExpression": { "hexValue": "3230", - "id": 29781, + "id": 32443, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18480:2:20", + "src": "18281:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_20_by_1", "typeString": "int_const 20" }, "value": "20" }, - "src": "18470:12:20", + "src": "18271:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31313,21 +29839,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29783, + "id": 32445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18485:3:20", + "src": "18286:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "18470:18:20", + "src": "18271:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31335,14 +29861,14 @@ }, { "hexValue": "31", - "id": 29785, + "id": 32447, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18490:7:20", + "src": "18291:7:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -31366,50 +29892,49 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 29768, + "id": 32430, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27818, - "src": "18405:10:20", + "referencedDeclaration": 30464, + "src": "18206:10:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 29786, + "id": 32448, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18405:93:20", + "src": "18206:93:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29787, + "id": 32449, "nodeType": "ExpressionStatement", - "src": "18405:93:20" + "src": "18206:93:27" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 29789, + "id": 32451, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18541:7:20", + "src": "18342:7:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -31425,36 +29950,35 @@ "typeString": "int_const 2419200" } ], - "id": 29788, + "id": 32450, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "18536:4:20", + "src": "18337:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29790, + "id": 32452, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18536:13:20", + "src": "18337:13:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29791, + "id": 32453, "nodeType": "ExpressionStatement", - "src": "18536:13:20" + "src": "18337:13:27" }, { "expression": { @@ -31464,14 +29988,14 @@ { "arguments": [ { - "id": 29797, + "id": 32459, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18630:7:20", + "referencedDeclaration": 30535, + "src": "18431:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -31479,39 +30003,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29796, + "id": 32458, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18622:7:20", + "src": "18423:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29795, + "id": 32457, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18622:7:20", + "src": "18423:7:27", "typeDescriptions": {} } }, - "id": 29798, + "id": 32460, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18622:16:20", + "src": "18423:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31527,42 +30050,40 @@ } ], "expression": { - "id": 29793, + "id": 32455, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "18608:3:20", + "referencedDeclaration": 30013, + "src": "18409:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29794, + "id": 32456, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18612:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "18608:13:20", + "referencedDeclaration": 29768, + "src": "18409:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29799, + "id": 32461, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18608:31:20", + "src": "18409:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -31577,36 +30098,35 @@ "typeString": "bool" } ], - "id": 29792, + "id": 32454, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18601:6:20", + "src": "18402:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29800, + "id": 32462, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18601:39:20", + "src": "18402:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29801, + "id": 32463, "nodeType": "ExpressionStatement", - "src": "18601:39:20" + "src": "18402:39:27" }, { "expression": { @@ -31616,14 +30136,14 @@ { "arguments": [ { - "id": 29811, + "id": 32473, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "18740:3:20", + "referencedDeclaration": 30013, + "src": "18541:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -31631,39 +30151,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29810, + "id": 32472, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18732:7:20", + "src": "18533:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29809, + "id": 32471, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18732:7:20", + "src": "18533:7:27", "typeDescriptions": {} } }, - "id": 29812, + "id": 32474, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18732:12:20", + "src": "18533:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31685,42 +30204,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29804, + "id": 32466, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18700:7:20", + "referencedDeclaration": 30535, + "src": "18501:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29805, + "id": 32467, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18708:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "18700:18:20", + "referencedDeclaration": 27449, + "src": "18501:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29806, + "id": 32468, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18700:20:20", + "src": "18501:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31735,58 +30252,55 @@ "typeString": "address" } ], - "id": 29803, + "id": 32465, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "18693:6:20", + "referencedDeclaration": 29102, + "src": "18494:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29807, + "id": 32469, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18693:28:20", + "src": "18494:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29808, + "id": 32470, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18722:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "18693:38:20", + "referencedDeclaration": 29041, + "src": "18494:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29813, + "id": 32475, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18693:52:20", + "src": "18494:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -31798,7 +30312,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29818, + "id": 32480, "isConstant": false, "isLValue": false, "isPure": false, @@ -31808,18 +30322,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29816, + "id": 32478, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29814, + "id": 32476, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "18747:7:20", + "referencedDeclaration": 32315, + "src": "18548:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31829,21 +30343,21 @@ "operator": "*", "rightExpression": { "hexValue": "3238", - "id": 29815, + "id": 32477, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18757:2:20", + "src": "18558:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_28_by_1", "typeString": "int_const 28" }, "value": "28" }, - "src": "18747:12:20", + "src": "18548:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31853,21 +30367,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29817, + "id": 32479, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18762:3:20", + "src": "18563:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "18747:18:20", + "src": "18548:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31875,14 +30389,14 @@ }, { "hexValue": "31", - "id": 29819, + "id": 32481, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18767:7:20", + "src": "18568:7:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -31906,50 +30420,49 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 29802, + "id": 32464, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27818, - "src": "18682:10:20", + "referencedDeclaration": 30464, + "src": "18483:10:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 29820, + "id": 32482, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18682:93:20", + "src": "18483:93:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29821, + "id": 32483, "nodeType": "ExpressionStatement", - "src": "18682:93:20" + "src": "18483:93:27" }, { "expression": { "arguments": [ { "hexValue": "3132", - "id": 29823, + "id": 32485, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18819:8:20", + "src": "18620:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_7257600_by_1", @@ -31965,36 +30478,35 @@ "typeString": "int_const 7257600" } ], - "id": 29822, + "id": 32484, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "18814:4:20", + "src": "18615:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29824, + "id": 32486, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18814:14:20", + "src": "18615:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29825, + "id": 32487, "nodeType": "ExpressionStatement", - "src": "18814:14:20" + "src": "18615:14:27" }, { "expression": { @@ -32004,14 +30516,14 @@ { "arguments": [ { - "id": 29831, + "id": 32493, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18909:7:20", + "referencedDeclaration": 30535, + "src": "18710:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -32019,39 +30531,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29830, + "id": 32492, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18901:7:20", + "src": "18702:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29829, + "id": 32491, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18901:7:20", + "src": "18702:7:27", "typeDescriptions": {} } }, - "id": 29832, + "id": 32494, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18901:16:20", + "src": "18702:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32067,42 +30578,40 @@ } ], "expression": { - "id": 29827, + "id": 32489, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "18887:3:20", + "referencedDeclaration": 30013, + "src": "18688:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29828, + "id": 32490, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18891:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "18887:13:20", + "referencedDeclaration": 29768, + "src": "18688:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29833, + "id": 32495, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18887:31:20", + "src": "18688:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -32117,36 +30626,35 @@ "typeString": "bool" } ], - "id": 29826, + "id": 32488, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18880:6:20", + "src": "18681:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29834, + "id": 32496, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18880:39:20", + "src": "18681:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29835, + "id": 32497, "nodeType": "ExpressionStatement", - "src": "18880:39:20" + "src": "18681:39:27" }, { "expression": { @@ -32156,14 +30664,14 @@ { "arguments": [ { - "id": 29845, + "id": 32507, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "19019:3:20", + "referencedDeclaration": 30013, + "src": "18820:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -32171,39 +30679,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29844, + "id": 32506, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19011:7:20", + "src": "18812:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29843, + "id": 32505, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19011:7:20", + "src": "18812:7:27", "typeDescriptions": {} } }, - "id": 29846, + "id": 32508, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19011:12:20", + "src": "18812:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32225,42 +30732,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29838, + "id": 32500, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "18979:7:20", + "referencedDeclaration": 30535, + "src": "18780:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29839, + "id": 32501, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18987:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "18979:18:20", + "referencedDeclaration": 27449, + "src": "18780:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29840, + "id": 32502, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18979:20:20", + "src": "18780:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32275,58 +30780,55 @@ "typeString": "address" } ], - "id": 29837, + "id": 32499, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "18972:6:20", + "referencedDeclaration": 29102, + "src": "18773:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29841, + "id": 32503, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18972:28:20", + "src": "18773:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29842, + "id": 32504, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19001:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "18972:38:20", + "referencedDeclaration": 29041, + "src": "18773:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29847, + "id": 32509, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18972:52:20", + "src": "18773:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -32338,7 +30840,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29852, + "id": 32514, "isConstant": false, "isLValue": false, "isPure": false, @@ -32348,18 +30850,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29850, + "id": 32512, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29848, + "id": 32510, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "19026:7:20", + "referencedDeclaration": 32315, + "src": "18827:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32369,21 +30871,21 @@ "operator": "*", "rightExpression": { "hexValue": "3532", - "id": 29849, + "id": 32511, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19036:2:20", + "src": "18837:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_52_by_1", "typeString": "int_const 52" }, "value": "52" }, - "src": "19026:12:20", + "src": "18827:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32393,21 +30895,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 29851, + "id": 32513, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19041:3:20", + "src": "18842:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "19026:18:20", + "src": "18827:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32415,14 +30917,14 @@ }, { "hexValue": "31", - "id": 29853, + "id": 32515, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19046:7:20", + "src": "18847:7:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -32446,50 +30948,49 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 29836, + "id": 32498, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27818, - "src": "18961:10:20", + "referencedDeclaration": 30464, + "src": "18762:10:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 29854, + "id": 32516, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18961:93:20", + "src": "18762:93:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29855, + "id": 32517, "nodeType": "ExpressionStatement", - "src": "18961:93:20" + "src": "18762:93:27" }, { "expression": { "arguments": [ { "hexValue": "3234", - "id": 29857, + "id": 32519, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19098:8:20", + "src": "18899:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_14515200_by_1", @@ -32505,36 +31006,35 @@ "typeString": "int_const 14515200" } ], - "id": 29856, + "id": 32518, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "19093:4:20", + "src": "18894:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29858, + "id": 32520, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19093:14:20", + "src": "18894:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29859, + "id": 32521, "nodeType": "ExpressionStatement", - "src": "19093:14:20" + "src": "18894:14:27" }, { "expression": { @@ -32544,14 +31044,14 @@ { "arguments": [ { - "id": 29865, + "id": 32527, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "19188:7:20", + "referencedDeclaration": 30535, + "src": "18989:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -32559,39 +31059,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29864, + "id": 32526, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19180:7:20", + "src": "18981:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29863, + "id": 32525, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19180:7:20", + "src": "18981:7:27", "typeDescriptions": {} } }, - "id": 29866, + "id": 32528, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19180:16:20", + "src": "18981:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32607,42 +31106,40 @@ } ], "expression": { - "id": 29861, + "id": 32523, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "19166:3:20", + "referencedDeclaration": 30013, + "src": "18967:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29862, + "id": 32524, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19170:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "19166:13:20", + "referencedDeclaration": 29768, + "src": "18967:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29867, + "id": 32529, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19166:31:20", + "src": "18967:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -32657,36 +31154,35 @@ "typeString": "bool" } ], - "id": 29860, + "id": 32522, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19159:6:20", + "src": "18960:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29868, + "id": 32530, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19159:39:20", + "src": "18960:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29869, + "id": 32531, "nodeType": "ExpressionStatement", - "src": "19159:39:20" + "src": "18960:39:27" }, { "expression": { @@ -32696,14 +31192,14 @@ { "arguments": [ { - "id": 29879, + "id": 32541, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "19296:3:20", + "referencedDeclaration": 30013, + "src": "19097:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -32711,39 +31207,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29878, + "id": 32540, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19288:7:20", + "src": "19089:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29877, + "id": 32539, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19288:7:20", + "src": "19089:7:27", "typeDescriptions": {} } }, - "id": 29880, + "id": 32542, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19288:12:20", + "src": "19089:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32765,42 +31260,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29872, + "id": 32534, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "19256:7:20", + "referencedDeclaration": 30535, + "src": "19057:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29873, + "id": 32535, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19264:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "19256:18:20", + "referencedDeclaration": 27449, + "src": "19057:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29874, + "id": 32536, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19256:20:20", + "src": "19057:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32815,58 +31308,55 @@ "typeString": "address" } ], - "id": 29871, + "id": 32533, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "19249:6:20", + "referencedDeclaration": 29102, + "src": "19050:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29875, + "id": 32537, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19249:28:20", + "src": "19050:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29876, + "id": 32538, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19278:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "19249:38:20", + "referencedDeclaration": 29041, + "src": "19050:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29881, + "id": 32543, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19249:52:20", + "src": "19050:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -32874,12 +31364,12 @@ } }, { - "id": 29882, + "id": 32544, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29655, - "src": "19303:7:20", + "referencedDeclaration": 32315, + "src": "19104:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32897,7 +31387,7 @@ "typeString": "uint256" } ], - "id": 29870, + "id": 32532, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -32923,31 +31413,30 @@ 1674 ], "referencedDeclaration": 514, - "src": "19240:8:20", + "src": "19041:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 29883, + "id": 32545, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19240:71:20", + "src": "19041:71:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29884, + "id": 32546, "nodeType": "ExpressionStatement", - "src": "19240:71:20" + "src": "19041:71:27" }, { "expression": { @@ -32955,58 +31444,56 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29885, + "id": 32547, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "19324:2:20", + "src": "19125:2:27", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" } }, - "id": 29887, + "id": 32549, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19327:9:20", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9060, - "src": "19324:12:20", + "src": "19125:12:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 29888, + "id": 32550, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19324:14:20", + "src": "19125:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29889, + "id": 32551, "nodeType": "ExpressionStatement", - "src": "19324:14:20" + "src": "19125:14:27" } ] }, "documentation": { - "id": 29653, + "id": 32313, "nodeType": "StructuredDocumentation", - "src": "17281:53:20", + "src": "17104:53:27", "text": "@dev Verifies claim() state changes using fuzzing" }, "functionSelector": "8c852881", @@ -33014,20 +31501,20 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_fuzzing1", - "nameLocation": "17349:27:20", + "nameLocation": "17172:27:27", "parameters": { - "id": 29656, + "id": 32316, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29655, + "id": 32315, "mutability": "mutable", "name": "_amount", - "nameLocation": "17385:7:20", + "nameLocation": "17208:7:27", "nodeType": "VariableDeclaration", - "scope": 29891, - "src": "17377:15:20", + "scope": 32553, + "src": "17200:15:27", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33035,10 +31522,10 @@ "typeString": "uint256" }, "typeName": { - "id": 29654, + "id": 32314, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "17377:7:20", + "src": "17200:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33047,44 +31534,42 @@ "visibility": "internal" } ], - "src": "17376:17:20" + "src": "17199:17:27" }, "returnParameters": { - "id": 29657, + "id": 32317, "nodeType": "ParameterList", "parameters": [], - "src": "17401:0:20" + "src": "17224:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30100, + "id": 32764, "nodeType": "FunctionDefinition", - "src": "19410:2115:20", - "nodes": [], + "src": "19211:2093:27", "body": { - "id": 30099, + "id": 32763, "nodeType": "Block", - "src": "19471:2054:20", - "nodes": [], + "src": "19272:2032:27", "statements": [ { "expression": { - "id": 29903, + "id": 32565, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 29897, + "id": 32559, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "19482:7:20", + "referencedDeclaration": 32556, + "src": "19283:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33095,12 +31580,12 @@ "rightHandSide": { "arguments": [ { - "id": 29899, + "id": 32561, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "19498:7:20", + "referencedDeclaration": 32556, + "src": "19299:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33108,14 +31593,14 @@ }, { "hexValue": "3130305f303030", - "id": 29900, + "id": 32562, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19507:13:20", + "src": "19308:13:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000_by_1", @@ -33125,14 +31610,14 @@ }, { "hexValue": "3130305f3030305f303030", - "id": 29901, + "id": 32563, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19522:17:20", + "src": "19323:17:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000000_by_1", @@ -33156,7 +31641,7 @@ "typeString": "int_const 100000000000000000000000000" } ], - "id": 29898, + "id": 32560, "name": "bound", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -33164,68 +31649,96 @@ 7800 ], "referencedDeclaration": 7670, - "src": "19492:5:20", + "src": "19293:5:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 29902, + "id": 32564, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19492:48:20", + "src": "19293:48:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "19482:58:20", + "src": "19283:58:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 29904, + "id": 32566, "nodeType": "ExpressionStatement", - "src": "19482:58:20" + "src": "19283:58:27" }, { "expression": { "arguments": [ { - "hexValue": "307863303065393443623636324333353230323832453666353731373231343030344137663236383838", - "id": 29906, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 32568, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30535, + "src": "19418:7:27", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 32569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "proveToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 27449, + "src": "19418:18:27", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 32570, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "19617:42:20", + "names": [], + "nodeType": "FunctionCall", + "src": "19418:20:27", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" - }, - "value": "0xc00e94Cb662C3520282E6f5717214004A7f26888" + } }, { "arguments": [ { - "id": 29909, + "id": 32573, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "19669:7:20", + "referencedDeclaration": 30535, + "src": "19448:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -33233,39 +31746,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29908, + "id": 32572, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19661:7:20", + "src": "19440:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29907, + "id": 32571, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19661:7:20", + "src": "19440:7:27", "typeDescriptions": {} } }, - "id": 29910, + "id": 32574, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19661:16:20", + "src": "19440:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33277,18 +31789,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29913, + "id": 32577, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29911, + "id": 32575, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "19679:7:20", + "referencedDeclaration": 32556, + "src": "19458:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33298,21 +31810,21 @@ "operator": "*", "rightExpression": { "hexValue": "33", - "id": 29912, + "id": 32576, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19689:1:20", + "src": "19468:1:27", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" }, "value": "3" }, - "src": "19679:11:20", + "src": "19458:11:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33334,7 +31846,7 @@ "typeString": "uint256" } ], - "id": 29905, + "id": 32567, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -33343,31 +31855,30 @@ 5143 ], "referencedDeclaration": 5040, - "src": "19612:4:20", + "src": "19413:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 29914, + "id": 32578, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19612:79:20", + "src": "19413:57:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29915, + "id": 32579, "nodeType": "ExpressionStatement", - "src": "19612:79:20" + "src": "19413:57:27" }, { "expression": { @@ -33377,14 +31888,14 @@ { "arguments": [ { - "id": 29921, + "id": 32585, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "19767:7:20", + "referencedDeclaration": 30535, + "src": "19546:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -33392,39 +31903,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29920, + "id": 32584, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19759:7:20", + "src": "19538:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29919, + "id": 32583, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19759:7:20", + "src": "19538:7:27", "typeDescriptions": {} } }, - "id": 29922, + "id": 32586, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19759:16:20", + "src": "19538:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33440,42 +31950,40 @@ } ], "expression": { - "id": 29917, + "id": 32581, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "19737:3:20", + "referencedDeclaration": 30010, + "src": "19516:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29918, + "id": 32582, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19741:17:20", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 27182, - "src": "19737:21:20", + "referencedDeclaration": 29622, + "src": "19516:21:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29923, + "id": 32587, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19737:39:20", + "src": "19516:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -33490,36 +31998,35 @@ "typeString": "bool" } ], - "id": 29916, + "id": 32580, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19730:6:20", + "src": "19509:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29924, + "id": 32588, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19730:47:20", + "src": "19509:47:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29925, + "id": 32589, "nodeType": "ExpressionStatement", - "src": "19730:47:20" + "src": "19509:47:27" }, { "expression": { @@ -33529,14 +32036,14 @@ { "arguments": [ { - "id": 29931, + "id": 32595, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "19914:7:20", + "referencedDeclaration": 30535, + "src": "19693:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -33544,39 +32051,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29930, + "id": 32594, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19906:7:20", + "src": "19685:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29929, + "id": 32593, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19906:7:20", + "src": "19685:7:27", "typeDescriptions": {} } }, - "id": 29932, + "id": 32596, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19906:16:20", + "src": "19685:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33586,14 +32092,14 @@ { "arguments": [ { - "id": 29935, + "id": 32599, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "19932:3:20", + "referencedDeclaration": 30013, + "src": "19711:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -33601,39 +32107,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29934, + "id": 32598, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19924:7:20", + "src": "19703:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29933, + "id": 32597, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19924:7:20", + "src": "19703:7:27", "typeDescriptions": {} } }, - "id": 29936, + "id": 32600, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19924:12:20", + "src": "19703:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33641,12 +32146,12 @@ } }, { - "id": 29937, + "id": 32601, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "19938:7:20", + "referencedDeclaration": 32556, + "src": "19717:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33669,42 +32174,40 @@ } ], "expression": { - "id": 29927, + "id": 32591, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "19886:3:20", + "referencedDeclaration": 30010, + "src": "19665:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29928, + "id": 32592, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19890:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "19886:19:20", + "referencedDeclaration": 29684, + "src": "19665:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29938, + "id": 32602, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19886:60:20", + "src": "19665:60:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -33719,36 +32222,35 @@ "typeString": "bool" } ], - "id": 29926, + "id": 32590, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19879:6:20", + "src": "19658:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29939, + "id": 32603, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19879:68:20", + "src": "19658:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29940, + "id": 32604, "nodeType": "ExpressionStatement", - "src": "19879:68:20" + "src": "19658:68:27" }, { "expression": { @@ -33758,14 +32260,14 @@ { "arguments": [ { - "id": 29946, + "id": 32610, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "20027:7:20", + "referencedDeclaration": 30535, + "src": "19806:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -33773,39 +32275,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29945, + "id": 32609, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20019:7:20", + "src": "19798:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29944, + "id": 32608, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20019:7:20", + "src": "19798:7:27", "typeDescriptions": {} } }, - "id": 29947, + "id": 32611, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20019:16:20", + "src": "19798:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33815,14 +32316,14 @@ { "arguments": [ { - "id": 29950, + "id": 32614, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "20045:3:20", + "referencedDeclaration": 30007, + "src": "19824:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -33830,39 +32331,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29949, + "id": 32613, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20037:7:20", + "src": "19816:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29948, + "id": 32612, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20037:7:20", + "src": "19816:7:27", "typeDescriptions": {} } }, - "id": 29951, + "id": 32615, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20037:12:20", + "src": "19816:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33870,12 +32370,12 @@ } }, { - "id": 29952, + "id": 32616, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "20051:7:20", + "referencedDeclaration": 32556, + "src": "19830:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33898,42 +32398,40 @@ } ], "expression": { - "id": 29942, + "id": 32606, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "19999:3:20", + "referencedDeclaration": 30010, + "src": "19778:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29943, + "id": 32607, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20003:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "19999:19:20", + "referencedDeclaration": 29684, + "src": "19778:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29953, + "id": 32617, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19999:60:20", + "src": "19778:60:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -33948,36 +32446,35 @@ "typeString": "bool" } ], - "id": 29941, + "id": 32605, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19992:6:20", + "src": "19771:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29954, + "id": 32618, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19992:68:20", + "src": "19771:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29955, + "id": 32619, "nodeType": "ExpressionStatement", - "src": "19992:68:20" + "src": "19771:68:27" }, { "expression": { @@ -33987,14 +32484,14 @@ { "arguments": [ { - "id": 29961, + "id": 32625, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "20140:7:20", + "referencedDeclaration": 30535, + "src": "19919:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -34002,39 +32499,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29960, + "id": 32624, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20132:7:20", + "src": "19911:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29959, + "id": 32623, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20132:7:20", + "src": "19911:7:27", "typeDescriptions": {} } }, - "id": 29962, + "id": 32626, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20132:16:20", + "src": "19911:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34044,14 +32540,14 @@ { "arguments": [ { - "id": 29965, + "id": 32629, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "20158:3:20", + "referencedDeclaration": 30010, + "src": "19937:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -34059,39 +32555,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29964, + "id": 32628, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20150:7:20", + "src": "19929:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29963, + "id": 32627, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20150:7:20", + "src": "19929:7:27", "typeDescriptions": {} } }, - "id": 29966, + "id": 32630, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20150:12:20", + "src": "19929:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34099,12 +32594,12 @@ } }, { - "id": 29967, + "id": 32631, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "20164:7:20", + "referencedDeclaration": 32556, + "src": "19943:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34127,42 +32622,40 @@ } ], "expression": { - "id": 29957, + "id": 32621, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "20112:3:20", + "referencedDeclaration": 30010, + "src": "19891:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29958, + "id": 32622, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20116:15:20", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27244, - "src": "20112:19:20", + "referencedDeclaration": 29684, + "src": "19891:19:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29968, + "id": 32632, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20112:60:20", + "src": "19891:60:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -34177,50 +32670,49 @@ "typeString": "bool" } ], - "id": 29956, + "id": 32620, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "20105:6:20", + "src": "19884:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29969, + "id": 32633, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20105:68:20", + "src": "19884:68:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29970, + "id": 32634, "nodeType": "ExpressionStatement", - "src": "20105:68:20" + "src": "19884:68:27" }, { "expression": { "arguments": [ { "hexValue": "32", - "id": 29972, + "id": 32636, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20253:7:20", + "src": "20032:7:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_1209600_by_1", @@ -34236,36 +32728,35 @@ "typeString": "int_const 1209600" } ], - "id": 29971, + "id": 32635, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "20248:4:20", + "src": "20027:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 29973, + "id": 32637, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20248:13:20", + "src": "20027:13:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29974, + "id": 32638, "nodeType": "ExpressionStatement", - "src": "20248:13:20" + "src": "20027:13:27" }, { "expression": { @@ -34275,14 +32766,14 @@ { "arguments": [ { - "id": 29980, + "id": 32644, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "20301:7:20", + "referencedDeclaration": 30535, + "src": "20080:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -34290,39 +32781,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29979, + "id": 32643, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20293:7:20", + "src": "20072:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29978, + "id": 32642, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20293:7:20", + "src": "20072:7:27", "typeDescriptions": {} } }, - "id": 29981, + "id": 32645, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20293:16:20", + "src": "20072:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34338,42 +32828,40 @@ } ], "expression": { - "id": 29976, + "id": 32640, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "20279:3:20", + "referencedDeclaration": 30013, + "src": "20058:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29977, + "id": 32641, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20283:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "20279:13:20", + "referencedDeclaration": 29768, + "src": "20058:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 29982, + "id": 32646, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20279:31:20", + "src": "20058:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -34388,36 +32876,35 @@ "typeString": "bool" } ], - "id": 29975, + "id": 32639, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "20272:6:20", + "src": "20051:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29983, + "id": 32647, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20272:39:20", + "src": "20051:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29984, + "id": 32648, "nodeType": "ExpressionStatement", - "src": "20272:39:20" + "src": "20051:39:27" }, { "expression": { @@ -34427,14 +32914,14 @@ { "arguments": [ { - "id": 29994, + "id": 32658, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27370, - "src": "20446:3:20", + "referencedDeclaration": 30013, + "src": "20225:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -34442,39 +32929,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 29993, + "id": 32657, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20438:7:20", + "src": "20217:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29992, + "id": 32656, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20438:7:20", + "src": "20217:7:27", "typeDescriptions": {} } }, - "id": 29995, + "id": 32659, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20438:12:20", + "src": "20217:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34496,42 +32982,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 29987, + "id": 32651, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "20406:7:20", + "referencedDeclaration": 30535, + "src": "20185:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 29988, + "id": 32652, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20414:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "20406:18:20", + "referencedDeclaration": 27449, + "src": "20185:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 29989, + "id": 32653, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20406:20:20", + "src": "20185:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34546,58 +33030,55 @@ "typeString": "address" } ], - "id": 29986, + "id": 32650, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "20399:6:20", + "referencedDeclaration": 29102, + "src": "20178:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 29990, + "id": 32654, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20399:28:20", + "src": "20178:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 29991, + "id": 32655, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20428:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "20399:38:20", + "referencedDeclaration": 29041, + "src": "20178:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 29996, + "id": 32660, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20399:52:20", + "src": "20178:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -34611,7 +33092,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30001, + "id": 32665, "isConstant": false, "isLValue": false, "isPure": false, @@ -34621,18 +33102,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29999, + "id": 32663, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29997, + "id": 32661, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "20454:7:20", + "referencedDeclaration": 32556, + "src": "20233:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34642,21 +33123,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 29998, + "id": 32662, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20464:2:20", + "src": "20243:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "20454:12:20", + "src": "20233:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34666,35 +33147,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 30000, + "id": 32664, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20469:3:20", + "src": "20248:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "20454:18:20", + "src": "20233:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 30002, + "id": 32666, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "20453:20:20", + "src": "20232:20:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34702,14 +33183,14 @@ }, { "hexValue": "31", - "id": 30003, + "id": 32667, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20475:7:20", + "src": "20254:7:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -34733,50 +33214,49 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 29985, + "id": 32649, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27818, - "src": "20388:10:20", + "referencedDeclaration": 30464, + "src": "20167:10:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 30004, + "id": 32668, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20388:95:20", + "src": "20167:95:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30005, + "id": 32669, "nodeType": "ExpressionStatement", - "src": "20388:95:20" + "src": "20167:95:27" }, { "expression": { "arguments": [ { "hexValue": "3232", - "id": 30007, + "id": 32671, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20553:8:20", + "src": "20332:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_13305600_by_1", @@ -34792,36 +33272,35 @@ "typeString": "int_const 13305600" } ], - "id": 30006, + "id": 32670, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "20548:4:20", + "src": "20327:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 30008, + "id": 32672, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20548:14:20", + "src": "20327:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30009, + "id": 32673, "nodeType": "ExpressionStatement", - "src": "20548:14:20" + "src": "20327:14:27" }, { "expression": { @@ -34831,14 +33310,14 @@ { "arguments": [ { - "id": 30015, + "id": 32679, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "20656:7:20", + "referencedDeclaration": 30535, + "src": "20435:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -34846,39 +33325,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 30014, + "id": 32678, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20648:7:20", + "src": "20427:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30013, + "id": 32677, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20648:7:20", + "src": "20427:7:27", "typeDescriptions": {} } }, - "id": 30016, + "id": 32680, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20648:16:20", + "src": "20427:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34894,42 +33372,40 @@ } ], "expression": { - "id": 30011, + "id": 32675, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "20634:3:20", + "referencedDeclaration": 30007, + "src": "20413:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30012, + "id": 32676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20638:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "20634:13:20", + "referencedDeclaration": 29768, + "src": "20413:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30017, + "id": 32681, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20634:31:20", + "src": "20413:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -34944,36 +33420,35 @@ "typeString": "bool" } ], - "id": 30010, + "id": 32674, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "20627:6:20", + "src": "20406:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30018, + "id": 32682, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20627:39:20", + "src": "20406:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30019, + "id": 32683, "nodeType": "ExpressionStatement", - "src": "20627:39:20" + "src": "20406:39:27" }, { "expression": { @@ -34983,14 +33458,14 @@ { "arguments": [ { - "id": 30029, + "id": 32693, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "20801:3:20", + "referencedDeclaration": 30007, + "src": "20580:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -34998,39 +33473,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 30028, + "id": 32692, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20793:7:20", + "src": "20572:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30027, + "id": 32691, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20793:7:20", + "src": "20572:7:27", "typeDescriptions": {} } }, - "id": 30030, + "id": 32694, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20793:12:20", + "src": "20572:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -35052,42 +33526,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30022, + "id": 32686, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "20761:7:20", + "referencedDeclaration": 30535, + "src": "20540:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 30023, + "id": 32687, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20769:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "20761:18:20", + "referencedDeclaration": 27449, + "src": "20540:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 30024, + "id": 32688, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20761:20:20", + "src": "20540:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -35102,58 +33574,55 @@ "typeString": "address" } ], - "id": 30021, + "id": 32685, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "20754:6:20", + "referencedDeclaration": 29102, + "src": "20533:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 30025, + "id": 32689, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20754:28:20", + "src": "20533:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 30026, + "id": 32690, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20783:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "20754:38:20", + "referencedDeclaration": 29041, + "src": "20533:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30031, + "id": 32695, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20754:52:20", + "src": "20533:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -35167,7 +33636,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30036, + "id": 32700, "isConstant": false, "isLValue": false, "isPure": false, @@ -35177,18 +33646,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30034, + "id": 32698, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30032, + "id": 32696, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "20809:7:20", + "referencedDeclaration": 32556, + "src": "20588:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35198,21 +33667,21 @@ "operator": "*", "rightExpression": { "hexValue": "3630", - "id": 30033, + "id": 32697, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20819:2:20", + "src": "20598:2:27", "typeDescriptions": { "typeIdentifier": "t_rational_60_by_1", "typeString": "int_const 60" }, "value": "60" }, - "src": "20809:12:20", + "src": "20588:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35222,35 +33691,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 30035, + "id": 32699, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20824:3:20", + "src": "20603:3:27", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "20809:18:20", + "src": "20588:18:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 30037, + "id": 32701, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "20808:20:20", + "src": "20587:20:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35258,14 +33727,14 @@ }, { "hexValue": "31", - "id": 30038, + "id": 32702, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20830:7:20", + "src": "20609:7:27", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -35289,50 +33758,49 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 30020, + "id": 32684, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27818, - "src": "20743:10:20", + "referencedDeclaration": 30464, + "src": "20522:10:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 30039, + "id": 32703, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20743:95:20", + "src": "20522:95:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30040, + "id": 32704, "nodeType": "ExpressionStatement", - "src": "20743:95:20" + "src": "20522:95:27" }, { "expression": { "arguments": [ { "hexValue": "3230", - "id": 30042, + "id": 32706, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20909:8:20", + "src": "20688:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_12096000_by_1", @@ -35348,36 +33816,35 @@ "typeString": "int_const 12096000" } ], - "id": 30041, + "id": 32705, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "20904:4:20", + "src": "20683:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 30043, + "id": 32707, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20904:14:20", + "src": "20683:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30044, + "id": 32708, "nodeType": "ExpressionStatement", - "src": "20904:14:20" + "src": "20683:14:27" }, { "expression": { @@ -35387,14 +33854,14 @@ { "arguments": [ { - "id": 30050, + "id": 32714, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "21038:7:20", + "referencedDeclaration": 30535, + "src": "20817:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -35402,39 +33869,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 30049, + "id": 32713, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "21030:7:20", + "src": "20809:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30048, + "id": 32712, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21030:7:20", + "src": "20809:7:27", "typeDescriptions": {} } }, - "id": 30051, + "id": 32715, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21030:16:20", + "src": "20809:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -35450,42 +33916,40 @@ } ], "expression": { - "id": 30046, + "id": 32710, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "21016:3:20", + "referencedDeclaration": 30007, + "src": "20795:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30047, + "id": 32711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21020:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "21016:13:20", + "referencedDeclaration": 29768, + "src": "20795:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30052, + "id": 32716, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21016:31:20", + "src": "20795:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -35500,36 +33964,35 @@ "typeString": "bool" } ], - "id": 30045, + "id": 32709, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "21009:6:20", + "src": "20788:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30053, + "id": 32717, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21009:39:20", + "src": "20788:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30054, + "id": 32718, "nodeType": "ExpressionStatement", - "src": "21009:39:20" + "src": "20788:39:27" }, { "expression": { @@ -35539,14 +34002,14 @@ { "arguments": [ { - "id": 30064, + "id": 32728, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27364, - "src": "21170:3:20", + "referencedDeclaration": 30007, + "src": "20949:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -35554,39 +34017,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 30063, + "id": 32727, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "21162:7:20", + "src": "20941:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30062, + "id": 32726, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21162:7:20", + "src": "20941:7:27", "typeDescriptions": {} } }, - "id": 30065, + "id": 32729, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21162:12:20", + "src": "20941:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -35608,42 +34070,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30057, + "id": 32721, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "21130:7:20", + "referencedDeclaration": 30535, + "src": "20909:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 30058, + "id": 32722, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21138:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "21130:18:20", + "referencedDeclaration": 27449, + "src": "20909:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 30059, + "id": 32723, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21130:20:20", + "src": "20909:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -35658,58 +34118,55 @@ "typeString": "address" } ], - "id": 30056, + "id": 32720, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "21123:6:20", + "referencedDeclaration": 29102, + "src": "20902:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 30060, + "id": 32724, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21123:28:20", + "src": "20902:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 30061, + "id": 32725, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21152:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "21123:38:20", + "referencedDeclaration": 29041, + "src": "20902:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30066, + "id": 32730, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21123:52:20", + "src": "20902:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -35717,12 +34174,12 @@ } }, { - "id": 30067, + "id": 32731, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "21177:7:20", + "referencedDeclaration": 32556, + "src": "20956:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35740,7 +34197,7 @@ "typeString": "uint256" } ], - "id": 30055, + "id": 32719, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -35766,45 +34223,44 @@ 1674 ], "referencedDeclaration": 514, - "src": "21114:8:20", + "src": "20893:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30068, + "id": 32732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21114:71:20", + "src": "20893:71:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30069, + "id": 32733, "nodeType": "ExpressionStatement", - "src": "21114:71:20" + "src": "20893:71:27" }, { "expression": { "arguments": [ { "hexValue": "3532", - "id": 30071, + "id": 32735, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "21235:8:20", + "src": "21014:8:27", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_31449600_by_1", @@ -35820,36 +34276,35 @@ "typeString": "int_const 31449600" } ], - "id": 30070, + "id": 32734, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "21230:4:20", + "src": "21009:4:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 30072, + "id": 32736, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21230:14:20", + "src": "21009:14:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30073, + "id": 32737, "nodeType": "ExpressionStatement", - "src": "21230:14:20" + "src": "21009:14:27" }, { "expression": { @@ -35859,14 +34314,14 @@ { "arguments": [ { - "id": 30079, + "id": 32743, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "21360:7:20", + "referencedDeclaration": 30535, + "src": "21139:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } } @@ -35874,39 +34329,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 30078, + "id": 32742, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "21352:7:20", + "src": "21131:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30077, + "id": 32741, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21352:7:20", + "src": "21131:7:27", "typeDescriptions": {} } }, - "id": 30080, + "id": 32744, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21352:16:20", + "src": "21131:16:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -35922,42 +34376,40 @@ } ], "expression": { - "id": 30075, + "id": 32739, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "21338:3:20", + "referencedDeclaration": 30010, + "src": "21117:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30076, + "id": 32740, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21342:9:20", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27328, - "src": "21338:13:20", + "referencedDeclaration": 29768, + "src": "21117:13:27", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30081, + "id": 32745, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21338:31:20", + "src": "21117:31:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -35972,36 +34424,35 @@ "typeString": "bool" } ], - "id": 30074, + "id": 32738, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "21331:6:20", + "src": "21110:6:27", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30082, + "id": 32746, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21331:39:20", + "src": "21110:39:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30083, + "id": 32747, "nodeType": "ExpressionStatement", - "src": "21331:39:20" + "src": "21110:39:27" }, { "expression": { @@ -36011,14 +34462,14 @@ { "arguments": [ { - "id": 30093, + "id": 32757, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27367, - "src": "21500:3:20", + "referencedDeclaration": 30010, + "src": "21279:3:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } } @@ -36026,39 +34477,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$27329", + "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } ], - "id": 30092, + "id": 32756, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "21492:7:20", + "src": "21271:7:27", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30091, + "id": 32755, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21492:7:20", + "src": "21271:7:27", "typeDescriptions": {} } }, - "id": 30094, + "id": 32758, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21492:12:20", + "src": "21271:12:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -36080,42 +34530,40 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30086, + "id": 32750, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27889, - "src": "21460:7:20", + "referencedDeclaration": 30535, + "src": "21239:7:27", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$26061", + "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } }, - "id": 30087, + "id": 32751, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21468:10:20", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 25485, - "src": "21460:18:20", + "referencedDeclaration": 27449, + "src": "21239:18:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 30088, + "id": 32752, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21460:20:20", + "src": "21239:20:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -36130,58 +34578,55 @@ "typeString": "address" } ], - "id": 30085, + "id": 32749, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 26369, - "src": "21453:6:20", + "referencedDeclaration": 29102, + "src": "21232:6:27", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$26369_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", "typeString": "type(contract IERC20)" } }, - "id": 30089, + "id": 32753, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21453:28:20", + "src": "21232:28:27", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$26369", + "typeIdentifier": "t_contract$_IERC20_$29102", "typeString": "contract IERC20" } }, - "id": 30090, + "id": 32754, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21482:9:20", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 26308, - "src": "21453:38:20", + "referencedDeclaration": 29041, + "src": "21232:38:27", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30095, + "id": 32759, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21453:52:20", + "src": "21232:52:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -36189,12 +34634,12 @@ } }, { - "id": 30096, + "id": 32760, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29894, - "src": "21507:7:20", + "referencedDeclaration": 32556, + "src": "21286:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36212,7 +34657,7 @@ "typeString": "uint256" } ], - "id": 30084, + "id": 32748, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -36238,38 +34683,37 @@ 1674 ], "referencedDeclaration": 514, - "src": "21444:8:20", + "src": "21223:8:27", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30097, + "id": 32761, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21444:71:20", + "src": "21223:71:27", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30098, + "id": 32762, "nodeType": "ExpressionStatement", - "src": "21444:71:20" + "src": "21223:71:27" } ] }, "documentation": { - "id": 29892, + "id": 32554, "nodeType": "StructuredDocumentation", - "src": "19354:50:20", + "src": "19155:50:27", "text": "@dev Verifies claim() edge cases using fuzzing" }, "functionSelector": "c375033d", @@ -36277,20 +34721,20 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_fuzzing2", - "nameLocation": "19419:27:20", + "nameLocation": "19220:27:27", "parameters": { - "id": 29895, + "id": 32557, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29894, + "id": 32556, "mutability": "mutable", "name": "_amount", - "nameLocation": "19455:7:20", + "nameLocation": "19256:7:27", "nodeType": "VariableDeclaration", - "scope": 30100, - "src": "19447:15:20", + "scope": 32764, + "src": "19248:15:27", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36298,10 +34742,10 @@ "typeString": "uint256" }, "typeName": { - "id": 29893, + "id": 32555, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "19447:7:20", + "src": "19248:7:27", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36310,15 +34754,15 @@ "visibility": "internal" } ], - "src": "19446:17:20" + "src": "19247:17:27" }, "returnParameters": { - "id": 29896, + "id": 32558, "nodeType": "ParameterList", "parameters": [], - "src": "19471:0:20" + "src": "19272:0:27" }, - "scope": 30101, + "scope": 32765, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" @@ -36328,44 +34772,38 @@ "baseContracts": [ { "baseName": { - "id": 27883, + "id": 30529, "name": "Utility", - "nameLocations": [ - "207:7:20" - ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27876, - "src": "207:7:20" + "referencedDeclaration": 30522, + "src": "232:7:27" }, - "id": 27884, + "id": 30530, "nodeType": "InheritanceSpecifier", - "src": "207:7:20" + "src": "232:7:27" }, { "baseName": { - "id": 27885, + "id": 30531, "name": "Test", - "nameLocations": [ - "216:4:20" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8158, - "src": "216:4:20" + "src": "241:4:27" }, - "id": 27886, + "id": 30532, "nodeType": "InheritanceSpecifier", - "src": "216:4:20" + "src": "241:4:27" } ], "canonicalName": "VestingTest", "contractDependencies": [ - 26061, - 27329 + 28040, + 29769 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 30101, + 32765, 8158, 1843, 1840, @@ -36374,16 +34812,16 @@ 4755, 3207, 2671, - 27876, + 30522, 1786 ], "name": "VestingTest", - "nameLocation": "192:11:20", - "scope": 30102, + "nameLocation": "217:11:27", + "scope": 32766, "usedErrors": [] } ], "license": "UNLICENSED" }, - "id": 20 + "id": 27 } \ No newline at end of file diff --git a/out/Vm.sol/Vm.json b/out/Vm.sol/Vm.json index 1728451..89c4f35 100644 --- a/out/Vm.sol/Vm.json +++ b/out/Vm.sol/Vm.json @@ -3068,2908 +3068,6 @@ "writeJson(string,string,string)": "35d6ad46", "writeLine(string,string)": "619d897f" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"accesses\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"readSlots\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"writeSlots\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activeFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"allowCheatcodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"condition\",\"type\":\"bool\"}],\"name\":\"assume\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newChainId\",\"type\":\"uint256\"}],\"name\":\"chainId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"clearMockedCalls\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"closeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newCoinbase\",\"type\":\"address\"}],\"name\":\"coinbase\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"}],\"name\":\"createFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"createFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"createFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"createSelectFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"createSelectFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"}],\"name\":\"createSelectFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"newBalance\",\"type\":\"uint256\"}],\"name\":\"deal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"derivationPath\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newDifficulty\",\"type\":\"uint256\"}],\"name\":\"difficulty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"defaultValue\",\"type\":\"bytes32[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"defaultValue\",\"type\":\"int256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"defaultValue\",\"type\":\"bool\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"defaultValue\",\"type\":\"address\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"defaultValue\",\"type\":\"uint256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"defaultValue\",\"type\":\"bytes[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"defaultValue\",\"type\":\"uint256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"defaultValue\",\"type\":\"string[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"defaultValue\",\"type\":\"bytes\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"defaultValue\",\"type\":\"bytes32\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"defaultValue\",\"type\":\"int256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"defaultValue\",\"type\":\"address[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"defaultValue\",\"type\":\"string\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"defaultValue\",\"type\":\"bool[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"newRuntimeBytecode\",\"type\":\"bytes\"}],\"name\":\"etch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"expectCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"msgValue\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"expectCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"checkTopic1\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic2\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic3\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkData\",\"type\":\"bool\"}],\"name\":\"expectEmit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"checkTopic1\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic2\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic3\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkData\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"emitter\",\"type\":\"address\"}],\"name\":\"expectEmit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"revertData\",\"type\":\"bytes4\"}],\"name\":\"expectRevert\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"revertData\",\"type\":\"bytes\"}],\"name\":\"expectRevert\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"expectRevert\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newBasefee\",\"type\":\"uint256\"}],\"name\":\"fee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"commandInput\",\"type\":\"string[]\"}],\"name\":\"ffi\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"fileOrDir\",\"type\":\"string\"}],\"name\":\"fsMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"readOnly\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"modified\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"created\",\"type\":\"uint256\"}],\"internalType\":\"struct VmSafe.FsMetadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"creationBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getDeployedCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"runtimeBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getNonce\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"nonce\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRecordedLogs\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32[]\",\"name\":\"topics\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"emitter\",\"type\":\"address\"}],\"internalType\":\"struct VmSafe.Log[]\",\"name\":\"logs\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isPersistent\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"persistent\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"newLabel\",\"type\":\"string\"}],\"name\":\"label\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"}],\"name\":\"load\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account0\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account1\",\"type\":\"address\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account0\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account1\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account2\",\"type\":\"address\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"msgValue\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"name\":\"mockCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"name\":\"mockCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"parsedValue\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"parsedValue\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"parsedValue\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"parsedValue\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"parsedValue\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"parsedValue\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pauseGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"txOrigin\",\"type\":\"address\"}],\"name\":\"prank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"}],\"name\":\"prank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"projectRoot\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFile\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFileBinary\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readLine\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"line\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"record\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recordLogs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"rememberKey\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"removeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resumeGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"snapshotId\",\"type\":\"uint256\"}],\"name\":\"revertTo\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"}],\"name\":\"revokePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newHeight\",\"type\":\"uint256\"}],\"name\":\"roll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"rpcAlias\",\"type\":\"string\"}],\"name\":\"rpcUrl\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrlStructs\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"internalType\":\"struct VmSafe.Rpc[]\",\"name\":\"urls\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrls\",\"outputs\":[{\"internalType\":\"string[2][]\",\"name\":\"urls\",\"type\":\"string[2][]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"name\":\"selectFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"values\",\"type\":\"address[]\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"values\",\"type\":\"bool[]\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"values\",\"type\":\"bytes32[]\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"values\",\"type\":\"int256[]\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"values\",\"type\":\"string[]\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setEnv\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"newNonce\",\"type\":\"uint64\"}],\"name\":\"setNonce\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"digest\",\"type\":\"bytes32\"}],\"name\":\"sign\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"snapshot\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"snapshotId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"}],\"name\":\"startPrank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"txOrigin\",\"type\":\"address\"}],\"name\":\"startPrank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopPrank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"store\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"transact\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"transact\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newTimestamp\",\"type\":\"uint256\"}],\"name\":\"warp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"writeFileBinary\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeLine\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"activeFork()\":{\"notice\":\"Returns the identifier of the currently active fork. Reverts if no fork is currently active.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Vm.sol\":\"Vm\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "accesses", - "outputs": [ - { - "internalType": "bytes32[]", - "name": "readSlots", - "type": "bytes32[]" - }, - { - "internalType": "bytes32[]", - "name": "writeSlots", - "type": "bytes32[]" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "activeFork", - "outputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "addr", - "outputs": [ - { - "internalType": "address", - "name": "keyAddr", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "allowCheatcodes" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "condition", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "assume" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "broadcast" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "signer", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "broadcast" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "broadcast" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "newChainId", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "chainId" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "clearMockedCalls" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "closeFile" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newCoinbase", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "coinbase" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "urlOrAlias", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "createFork", - "outputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "urlOrAlias", - "type": "string" - }, - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "createFork", - "outputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "urlOrAlias", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "createFork", - "outputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "urlOrAlias", - "type": "string" - }, - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "createSelectFork", - "outputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "urlOrAlias", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "createSelectFork", - "outputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "urlOrAlias", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "createSelectFork", - "outputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "newBalance", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "deal" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "mnemonic", - "type": "string" - }, - { - "internalType": "uint32", - "name": "index", - "type": "uint32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "deriveKey", - "outputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "mnemonic", - "type": "string" - }, - { - "internalType": "string", - "name": "derivationPath", - "type": "string" - }, - { - "internalType": "uint32", - "name": "index", - "type": "uint32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "deriveKey", - "outputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "newDifficulty", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "difficulty" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envAddress", - "outputs": [ - { - "internalType": "address", - "name": "value", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envAddress", - "outputs": [ - { - "internalType": "address[]", - "name": "value", - "type": "address[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBool", - "outputs": [ - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBool", - "outputs": [ - { - "internalType": "bool[]", - "name": "value", - "type": "bool[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes", - "outputs": [ - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes", - "outputs": [ - { - "internalType": "bytes[]", - "name": "value", - "type": "bytes[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes32", - "outputs": [ - { - "internalType": "bytes32[]", - "name": "value", - "type": "bytes32[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes32", - "outputs": [ - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envInt", - "outputs": [ - { - "internalType": "int256[]", - "name": "value", - "type": "int256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envInt", - "outputs": [ - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "bytes32[]", - "name": "defaultValue", - "type": "bytes32[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes32[]", - "name": "value", - "type": "bytes32[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "int256[]", - "name": "defaultValue", - "type": "int256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "int256[]", - "name": "value", - "type": "int256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "bool", - "name": "defaultValue", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "address", - "name": "defaultValue", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "address", - "name": "value", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "uint256", - "name": "defaultValue", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "bytes[]", - "name": "defaultValue", - "type": "bytes[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes[]", - "name": "value", - "type": "bytes[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "uint256[]", - "name": "defaultValue", - "type": "uint256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "uint256[]", - "name": "value", - "type": "uint256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "string[]", - "name": "defaultValue", - "type": "string[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "string[]", - "name": "value", - "type": "string[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "bytes", - "name": "defaultValue", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "defaultValue", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "int256", - "name": "defaultValue", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "address[]", - "name": "defaultValue", - "type": "address[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "address[]", - "name": "value", - "type": "address[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "defaultValue", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "string", - "name": "value", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "bool[]", - "name": "defaultValue", - "type": "bool[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bool[]", - "name": "value", - "type": "bool[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envString", - "outputs": [ - { - "internalType": "string[]", - "name": "value", - "type": "string[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envString", - "outputs": [ - { - "internalType": "string", - "name": "value", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envUint", - "outputs": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envUint", - "outputs": [ - { - "internalType": "uint256[]", - "name": "value", - "type": "uint256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bytes", - "name": "newRuntimeBytecode", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "etch" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "callee", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "expectCall" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "callee", - "type": "address" - }, - { - "internalType": "uint256", - "name": "msgValue", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "expectCall" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "checkTopic1", - "type": "bool" - }, - { - "internalType": "bool", - "name": "checkTopic2", - "type": "bool" - }, - { - "internalType": "bool", - "name": "checkTopic3", - "type": "bool" - }, - { - "internalType": "bool", - "name": "checkData", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "expectEmit" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "checkTopic1", - "type": "bool" - }, - { - "internalType": "bool", - "name": "checkTopic2", - "type": "bool" - }, - { - "internalType": "bool", - "name": "checkTopic3", - "type": "bool" - }, - { - "internalType": "bool", - "name": "checkData", - "type": "bool" - }, - { - "internalType": "address", - "name": "emitter", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "expectEmit" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "revertData", - "type": "bytes4" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "expectRevert" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "revertData", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "expectRevert" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "expectRevert" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "newBasefee", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "fee" - }, - { - "inputs": [ - { - "internalType": "string[]", - "name": "commandInput", - "type": "string[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "ffi", - "outputs": [ - { - "internalType": "bytes", - "name": "result", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "fileOrDir", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "fsMetadata", - "outputs": [ - { - "internalType": "struct VmSafe.FsMetadata", - "name": "metadata", - "type": "tuple", - "components": [ - { - "internalType": "bool", - "name": "isDir", - "type": "bool" - }, - { - "internalType": "bool", - "name": "isSymlink", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "length", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "readOnly", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "modified", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "accessed", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "created", - "type": "uint256" - } - ] - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "artifactPath", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getCode", - "outputs": [ - { - "internalType": "bytes", - "name": "creationBytecode", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "artifactPath", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getDeployedCode", - "outputs": [ - { - "internalType": "bytes", - "name": "runtimeBytecode", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getNonce", - "outputs": [ - { - "internalType": "uint64", - "name": "nonce", - "type": "uint64" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "getRecordedLogs", - "outputs": [ - { - "internalType": "struct VmSafe.Log[]", - "name": "logs", - "type": "tuple[]", - "components": [ - { - "internalType": "bytes32[]", - "name": "topics", - "type": "bytes32[]" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "address", - "name": "emitter", - "type": "address" - } - ] - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "name": "isPersistent", - "outputs": [ - { - "internalType": "bool", - "name": "persistent", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "string", - "name": "newLabel", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "label" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "slot", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function", - "name": "load", - "outputs": [ - { - "internalType": "bytes32", - "name": "data", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "accounts", - "type": "address[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "makePersistent" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account0", - "type": "address" - }, - { - "internalType": "address", - "name": "account1", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "makePersistent" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "makePersistent" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account0", - "type": "address" - }, - { - "internalType": "address", - "name": "account1", - "type": "address" - }, - { - "internalType": "address", - "name": "account2", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "makePersistent" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "callee", - "type": "address" - }, - { - "internalType": "uint256", - "name": "msgValue", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "mockCall" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "callee", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "mockCall" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseAddress", - "outputs": [ - { - "internalType": "address", - "name": "parsedValue", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseBool", - "outputs": [ - { - "internalType": "bool", - "name": "parsedValue", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseBytes", - "outputs": [ - { - "internalType": "bytes", - "name": "parsedValue", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseBytes32", - "outputs": [ - { - "internalType": "bytes32", - "name": "parsedValue", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseInt", - "outputs": [ - { - "internalType": "int256", - "name": "parsedValue", - "type": "int256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseJson", - "outputs": [ - { - "internalType": "bytes", - "name": "abiEncodedData", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - }, - { - "internalType": "string", - "name": "key", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseJson", - "outputs": [ - { - "internalType": "bytes", - "name": "abiEncodedData", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseUint", - "outputs": [ - { - "internalType": "uint256", - "name": "parsedValue", - "type": "uint256" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "pauseGasMetering" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "msgSender", - "type": "address" - }, - { - "internalType": "address", - "name": "txOrigin", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "prank" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "msgSender", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "prank" - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "projectRoot", - "outputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "readFile", - "outputs": [ - { - "internalType": "string", - "name": "data", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "readFileBinary", - "outputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "readLine", - "outputs": [ - { - "internalType": "string", - "name": "line", - "type": "string" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "record" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "recordLogs" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "rememberKey", - "outputs": [ - { - "internalType": "address", - "name": "keyAddr", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "removeFile" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "resumeGasMetering" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "snapshotId", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "revertTo", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "accounts", - "type": "address[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "revokePersistent" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "revokePersistent" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "newHeight", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "roll" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "rollFork" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "rollFork" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "rollFork" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "rollFork" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "rpcAlias", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "rpcUrl", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "rpcUrlStructs", - "outputs": [ - { - "internalType": "struct VmSafe.Rpc[]", - "name": "urls", - "type": "tuple[]", - "components": [ - { - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "internalType": "string", - "name": "url", - "type": "string" - } - ] - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "rpcUrls", - "outputs": [ - { - "internalType": "string[2][]", - "name": "urls", - "type": "string[2][]" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "selectFork" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "address[]", - "name": "values", - "type": "address[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeAddress", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "address", - "name": "value", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeAddress", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bool[]", - "name": "values", - "type": "bool[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBool", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBool", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes[]", - "name": "values", - "type": "bytes[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes32[]", - "name": "values", - "type": "bytes32[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes32", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes32", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeInt", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "int256[]", - "name": "values", - "type": "int256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeInt", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "string[]", - "name": "values", - "type": "string[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeString", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "string", - "name": "value", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeString", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeUint", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "uint256[]", - "name": "values", - "type": "uint256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeUint", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "value", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "setEnv" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint64", - "name": "newNonce", - "type": "uint64" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "setNonce" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "digest", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "sign", - "outputs": [ - { - "internalType": "uint8", - "name": "v", - "type": "uint8" - }, - { - "internalType": "bytes32", - "name": "r", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "s", - "type": "bytes32" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "snapshot", - "outputs": [ - { - "internalType": "uint256", - "name": "snapshotId", - "type": "uint256" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "startBroadcast" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "signer", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "startBroadcast" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "startBroadcast" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "msgSender", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "startPrank" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "msgSender", - "type": "address" - }, - { - "internalType": "address", - "name": "txOrigin", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "startPrank" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "stopBroadcast" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "stopPrank" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "slot", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "store" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "value", - "type": "address" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "forkId", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "transact" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "transact" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "newTimestamp", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "warp" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "string", - "name": "data", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeFile" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeFileBinary" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - }, - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeJson" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - }, - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeJson" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "string", - "name": "data", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeLine" - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": { - "activeFork()": { - "notice": "Returns the identifier of the currently active fork. Reverts if no fork is currently active." - } - }, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/Vm.sol": "Vm" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/Vm.sol", "id": 9353, @@ -5988,7 +3086,6 @@ "id": 8197, "nodeType": "PragmaDirective", "src": "32:31:12", - "nodes": [], "literals": [ "solidity", ">=", @@ -6003,7 +3100,6 @@ "id": 8198, "nodeType": "PragmaDirective", "src": "65:33:12", - "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -6018,7 +3114,6 @@ "id": 8206, "nodeType": "StructDefinition", "src": "594:89:12", - "nodes": [], "canonicalName": "VmSafe.Log", "members": [ { @@ -6122,7 +3217,6 @@ "id": 8211, "nodeType": "StructDefinition", "src": "689:58:12", - "nodes": [], "canonicalName": "VmSafe.Rpc", "members": [ { @@ -6189,7 +3283,6 @@ "id": 8226, "nodeType": "StructDefinition", "src": "753:193:12", - "nodes": [], "canonicalName": "VmSafe.FsMetadata", "members": [ { @@ -6391,7 +3484,6 @@ "id": 8235, "nodeType": "FunctionDefinition", "src": "996:81:12", - "nodes": [], "functionSelector": "667f9d70", "implemented": false, "kind": "function", @@ -6503,7 +3595,6 @@ "id": 8248, "nodeType": "FunctionDefinition", "src": "1100:104:12", - "nodes": [], "functionSelector": "e341eaa4", "implemented": false, "kind": "function", @@ -6668,7 +3759,6 @@ "id": 8255, "nodeType": "FunctionDefinition", "src": "1257:74:12", - "nodes": [], "functionSelector": "ffa18649", "implemented": false, "kind": "function", @@ -6753,7 +3843,6 @@ "id": 8262, "nodeType": "FunctionDefinition", "src": "1372:72:12", - "nodes": [], "functionSelector": "2d0335ab", "implemented": false, "kind": "function", @@ -6838,7 +3927,6 @@ "id": 8270, "nodeType": "FunctionDefinition", "src": "1506:84:12", - "nodes": [], "functionSelector": "89160467", "implemented": false, "kind": "function", @@ -6931,7 +4019,6 @@ "id": 8277, "nodeType": "FunctionDefinition", "src": "1629:70:12", - "nodes": [], "functionSelector": "3d5923ee", "implemented": false, "kind": "function", @@ -7014,7 +4101,6 @@ "id": 8284, "nodeType": "FunctionDefinition", "src": "1758:74:12", - "nodes": [], "functionSelector": "7ed1ec7d", "implemented": false, "kind": "function", @@ -7098,7 +4184,6 @@ "id": 8291, "nodeType": "FunctionDefinition", "src": "1837:77:12", - "nodes": [], "functionSelector": "c1978d1f", "implemented": false, "kind": "function", @@ -7182,7 +4267,6 @@ "id": 8298, "nodeType": "FunctionDefinition", "src": "1919:75:12", - "nodes": [], "functionSelector": "892a0c61", "implemented": false, "kind": "function", @@ -7266,7 +4350,6 @@ "id": 8305, "nodeType": "FunctionDefinition", "src": "1999:80:12", - "nodes": [], "functionSelector": "350d56bf", "implemented": false, "kind": "function", @@ -7351,7 +4434,6 @@ "id": 8312, "nodeType": "FunctionDefinition", "src": "2084:80:12", - "nodes": [], "functionSelector": "97949042", "implemented": false, "kind": "function", @@ -7435,7 +4517,6 @@ "id": 8319, "nodeType": "FunctionDefinition", "src": "2169:85:12", - "nodes": [], "functionSelector": "f877cb19", "implemented": false, "kind": "function", @@ -7519,7 +4600,6 @@ "id": 8326, "nodeType": "FunctionDefinition", "src": "2259:83:12", - "nodes": [], "functionSelector": "4d7baf06", "implemented": false, "kind": "function", @@ -7603,7 +4683,6 @@ "id": 8336, "nodeType": "FunctionDefinition", "src": "2392:106:12", - "nodes": [], "functionSelector": "aaaddeaf", "implemented": false, "kind": "function", @@ -7723,7 +4802,6 @@ "id": 8346, "nodeType": "FunctionDefinition", "src": "2503:109:12", - "nodes": [], "functionSelector": "f3dec099", "implemented": false, "kind": "function", @@ -7843,7 +4921,6 @@ "id": 8356, "nodeType": "FunctionDefinition", "src": "2617:107:12", - "nodes": [], "functionSelector": "42181150", "implemented": false, "kind": "function", @@ -7963,7 +5040,6 @@ "id": 8366, "nodeType": "FunctionDefinition", "src": "2729:112:12", - "nodes": [], "functionSelector": "ad31b9fa", "implemented": false, "kind": "function", @@ -8084,7 +5160,6 @@ "id": 8376, "nodeType": "FunctionDefinition", "src": "2846:112:12", - "nodes": [], "functionSelector": "5af231c1", "implemented": false, "kind": "function", @@ -8204,7 +5279,6 @@ "id": 8386, "nodeType": "FunctionDefinition", "src": "2963:110:12", - "nodes": [], "functionSelector": "14b02bc9", "implemented": false, "kind": "function", @@ -8324,7 +5398,6 @@ "id": 8396, "nodeType": "FunctionDefinition", "src": "3078:108:12", - "nodes": [], "functionSelector": "ddc2651b", "implemented": false, "kind": "function", @@ -8444,7 +5517,6 @@ "id": 8405, "nodeType": "FunctionDefinition", "src": "3244:86:12", - "nodes": [], "functionSelector": "4777f3cf", "implemented": false, "kind": "function", @@ -8555,7 +5627,6 @@ "id": 8414, "nodeType": "FunctionDefinition", "src": "3335:92:12", - "nodes": [], "functionSelector": "5e97348f", "implemented": false, "kind": "function", @@ -8666,7 +5737,6 @@ "id": 8423, "nodeType": "FunctionDefinition", "src": "3432:90:12", - "nodes": [], "functionSelector": "bbcb713e", "implemented": false, "kind": "function", @@ -8777,7 +5847,6 @@ "id": 8432, "nodeType": "FunctionDefinition", "src": "3527:92:12", - "nodes": [], "functionSelector": "561fe540", "implemented": false, "kind": "function", @@ -8890,7 +5959,6 @@ "id": 8441, "nodeType": "FunctionDefinition", "src": "3624:92:12", - "nodes": [], "functionSelector": "b4a85892", "implemented": false, "kind": "function", @@ -9001,7 +6069,6 @@ "id": 8450, "nodeType": "FunctionDefinition", "src": "3721:106:12", - "nodes": [], "functionSelector": "d145736c", "implemented": false, "kind": "function", @@ -9112,7 +6179,6 @@ "id": 8459, "nodeType": "FunctionDefinition", "src": "3832:104:12", - "nodes": [], "functionSelector": "b3e47705", "implemented": false, "kind": "function", @@ -9223,7 +6289,6 @@ "id": 8472, "nodeType": "FunctionDefinition", "src": "4004:145:12", - "nodes": [], "functionSelector": "eb85e83b", "implemented": false, "kind": "function", @@ -9379,7 +6444,6 @@ "id": 8485, "nodeType": "FunctionDefinition", "src": "4154:151:12", - "nodes": [], "functionSelector": "74318528", "implemented": false, "kind": "function", @@ -9535,7 +6599,6 @@ "id": 8498, "nodeType": "FunctionDefinition", "src": "4310:149:12", - "nodes": [], "functionSelector": "4700d74b", "implemented": false, "kind": "function", @@ -9691,7 +6754,6 @@ "id": 8511, "nodeType": "FunctionDefinition", "src": "4464:151:12", - "nodes": [], "functionSelector": "c74e9deb", "implemented": false, "kind": "function", @@ -9849,7 +6911,6 @@ "id": 8524, "nodeType": "FunctionDefinition", "src": "4620:151:12", - "nodes": [], "functionSelector": "2281f367", "implemented": false, "kind": "function", @@ -10005,7 +7066,6 @@ "id": 8537, "nodeType": "FunctionDefinition", "src": "4776:149:12", - "nodes": [], "functionSelector": "859216bc", "implemented": false, "kind": "function", @@ -10161,7 +7221,6 @@ "id": 8550, "nodeType": "FunctionDefinition", "src": "4930:147:12", - "nodes": [], "functionSelector": "64bc3e64", "implemented": false, "kind": "function", @@ -10317,7 +7376,6 @@ "id": 8553, "nodeType": "FunctionDefinition", "src": "5126:27:12", - "nodes": [], "functionSelector": "266cf109", "implemented": false, "kind": "function", @@ -10345,7 +7403,6 @@ "id": 8564, "nodeType": "FunctionDefinition", "src": "5250:109:12", - "nodes": [], "functionSelector": "65bc9481", "implemented": false, "kind": "function", @@ -10475,7 +7532,6 @@ "id": 8571, "nodeType": "FunctionDefinition", "src": "5467:101:12", - "nodes": [], "functionSelector": "8d1cc925", "implemented": false, "kind": "function", @@ -10559,7 +7615,6 @@ "id": 8578, "nodeType": "FunctionDefinition", "src": "5676:108:12", - "nodes": [], "functionSelector": "3ebf73b4", "implemented": false, "kind": "function", @@ -10643,7 +7698,6 @@ "id": 8585, "nodeType": "FunctionDefinition", "src": "5829:67:12", - "nodes": [], "functionSelector": "c657c718", "implemented": false, "kind": "function", @@ -10727,7 +7781,6 @@ "id": 8588, "nodeType": "FunctionDefinition", "src": "6063:30:12", - "nodes": [], "functionSelector": "afc98040", "implemented": false, "kind": "function", @@ -10755,7 +7808,6 @@ "id": 8593, "nodeType": "FunctionDefinition", "src": "6252:44:12", - "nodes": [], "functionSelector": "e6962cdb", "implemented": false, "kind": "function", @@ -10812,7 +7864,6 @@ "id": 8598, "nodeType": "FunctionDefinition", "src": "6459:48:12", - "nodes": [], "functionSelector": "f67a965b", "implemented": false, "kind": "function", @@ -10868,7 +7919,6 @@ "id": 8601, "nodeType": "FunctionDefinition", "src": "6680:35:12", - "nodes": [], "functionSelector": "7fb5297f", "implemented": false, "kind": "function", @@ -10896,7 +7946,6 @@ "id": 8606, "nodeType": "FunctionDefinition", "src": "6866:49:12", - "nodes": [], "functionSelector": "7fec2a8d", "implemented": false, "kind": "function", @@ -10953,7 +8002,6 @@ "id": 8611, "nodeType": "FunctionDefinition", "src": "7070:53:12", - "nodes": [], "functionSelector": "ce817d47", "implemented": false, "kind": "function", @@ -11009,7 +8057,6 @@ "id": 8614, "nodeType": "FunctionDefinition", "src": "7173:34:12", - "nodes": [], "functionSelector": "76eadd36", "implemented": false, "kind": "function", @@ -11037,7 +8084,6 @@ "id": 8621, "nodeType": "FunctionDefinition", "src": "7262:83:12", - "nodes": [], "functionSelector": "60f9bb11", "implemented": false, "kind": "function", @@ -11121,7 +8167,6 @@ "id": 8628, "nodeType": "FunctionDefinition", "src": "7439:88:12", - "nodes": [], "functionSelector": "16ed7bc4", "implemented": false, "kind": "function", @@ -11205,7 +8250,6 @@ "id": 8633, "nodeType": "FunctionDefinition", "src": "7580:66:12", - "nodes": [], "functionSelector": "d930a0e6", "implemented": false, "kind": "function", @@ -11261,7 +8305,6 @@ "id": 8641, "nodeType": "FunctionDefinition", "src": "7696:93:12", - "nodes": [], "functionSelector": "af368a08", "implemented": false, "kind": "function", @@ -11327,9 +8370,6 @@ "pathNode": { "id": 8637, "name": "FsMetadata", - "nameLocations": [ - "7761:10:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8226, "src": "7761:10:12" @@ -11355,7 +8395,6 @@ "id": 8648, "nodeType": "FunctionDefinition", "src": "7835:83:12", - "nodes": [], "functionSelector": "70f55728", "implemented": false, "kind": "function", @@ -11439,7 +8478,6 @@ "id": 8655, "nodeType": "FunctionDefinition", "src": "8037:72:12", - "nodes": [], "functionSelector": "897e0a97", "implemented": false, "kind": "function", @@ -11522,7 +8560,6 @@ "id": 8662, "nodeType": "FunctionDefinition", "src": "8282:77:12", - "nodes": [], "functionSelector": "1f21fc80", "implemented": false, "kind": "function", @@ -11605,7 +8642,6 @@ "id": 8669, "nodeType": "FunctionDefinition", "src": "8430:72:12", - "nodes": [], "functionSelector": "619d897f", "implemented": false, "kind": "function", @@ -11688,7 +8724,6 @@ "id": 8674, "nodeType": "FunctionDefinition", "src": "8614:50:12", - "nodes": [], "functionSelector": "48c3241f", "implemented": false, "kind": "function", @@ -11744,7 +8779,6 @@ "id": 8679, "nodeType": "FunctionDefinition", "src": "8912:51:12", - "nodes": [], "functionSelector": "f1afe04d", "implemented": false, "kind": "function", @@ -11800,7 +8834,6 @@ "id": 8686, "nodeType": "FunctionDefinition", "src": "9002:88:12", - "nodes": [], "functionSelector": "56ca623e", "implemented": false, "kind": "function", @@ -11885,7 +8918,6 @@ "id": 8693, "nodeType": "FunctionDefinition", "src": "9095:95:12", - "nodes": [], "functionSelector": "71aad10d", "implemented": false, "kind": "function", @@ -11969,7 +9001,6 @@ "id": 8700, "nodeType": "FunctionDefinition", "src": "9195:88:12", - "nodes": [], "functionSelector": "b11a19e8", "implemented": false, "kind": "function", @@ -12053,7 +9084,6 @@ "id": 8707, "nodeType": "FunctionDefinition", "src": "9288:85:12", - "nodes": [], "functionSelector": "71dce7da", "implemented": false, "kind": "function", @@ -12137,7 +9167,6 @@ "id": 8714, "nodeType": "FunctionDefinition", "src": "9378:88:12", - "nodes": [], "functionSelector": "6900a3ae", "implemented": false, "kind": "function", @@ -12221,7 +9250,6 @@ "id": 8721, "nodeType": "FunctionDefinition", "src": "9471:87:12", - "nodes": [], "functionSelector": "a322c40e", "implemented": false, "kind": "function", @@ -12305,7 +9333,6 @@ "id": 8728, "nodeType": "FunctionDefinition", "src": "9599:103:12", - "nodes": [], "functionSelector": "8f5d232d", "implemented": false, "kind": "function", @@ -12389,7 +9416,6 @@ "id": 8735, "nodeType": "FunctionDefinition", "src": "9707:100:12", - "nodes": [], "functionSelector": "c6ce059d", "implemented": false, "kind": "function", @@ -12474,7 +9500,6 @@ "id": 8742, "nodeType": "FunctionDefinition", "src": "9812:97:12", - "nodes": [], "functionSelector": "fa91454d", "implemented": false, "kind": "function", @@ -12558,7 +9583,6 @@ "id": 8749, "nodeType": "FunctionDefinition", "src": "9914:95:12", - "nodes": [], "functionSelector": "42346c5e", "implemented": false, "kind": "function", @@ -12642,7 +9666,6 @@ "id": 8756, "nodeType": "FunctionDefinition", "src": "10014:100:12", - "nodes": [], "functionSelector": "087e6e81", "implemented": false, "kind": "function", @@ -12726,7 +9749,6 @@ "id": 8763, "nodeType": "FunctionDefinition", "src": "10119:94:12", - "nodes": [], "functionSelector": "974ef924", "implemented": false, "kind": "function", @@ -12810,7 +9832,6 @@ "id": 8766, "nodeType": "FunctionDefinition", "src": "10257:31:12", - "nodes": [], "functionSelector": "41af2f52", "implemented": false, "kind": "function", @@ -12838,7 +9859,6 @@ "id": 8773, "nodeType": "FunctionDefinition", "src": "10327:64:12", - "nodes": [], "functionSelector": "191553a4", "implemented": false, "kind": "function", @@ -12877,9 +9897,6 @@ "pathNode": { "id": 8768, "name": "Log", - "nameLocations": [ - "10372:3:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8206, "src": "10372:3:12" @@ -12913,7 +9930,6 @@ "id": 8782, "nodeType": "FunctionDefinition", "src": "10526:102:12", - "nodes": [], "functionSelector": "6229498b", "implemented": false, "kind": "function", @@ -13024,7 +10040,6 @@ "id": 8793, "nodeType": "FunctionDefinition", "src": "10744:158:12", - "nodes": [], "functionSelector": "6bcb2c1b", "implemented": false, "kind": "function", @@ -13162,7 +10177,6 @@ "id": 8800, "nodeType": "FunctionDefinition", "src": "10983:76:12", - "nodes": [], "functionSelector": "22100064", "implemented": false, "kind": "function", @@ -13247,7 +10261,6 @@ "id": 8809, "nodeType": "FunctionDefinition", "src": "12092:114:12", - "nodes": [], "functionSelector": "85940ef1", "implemented": false, "kind": "function", @@ -13358,7 +10371,6 @@ "id": 8816, "nodeType": "FunctionDefinition", "src": "12211:93:12", - "nodes": [], "functionSelector": "6a82600a", "implemented": false, "kind": "function", @@ -13442,7 +10454,6 @@ "id": 8827, "nodeType": "FunctionDefinition", "src": "12500:142:12", - "nodes": [], "functionSelector": "ac22e971", "implemented": false, "kind": "function", @@ -13580,7 +10591,6 @@ "id": 8838, "nodeType": "FunctionDefinition", "src": "12647:145:12", - "nodes": [], "functionSelector": "129e9002", "implemented": false, "kind": "function", @@ -13718,7 +10728,6 @@ "id": 8849, "nodeType": "FunctionDefinition", "src": "12797:143:12", - "nodes": [], "functionSelector": "3f33db60", "implemented": false, "kind": "function", @@ -13856,7 +10865,6 @@ "id": 8860, "nodeType": "FunctionDefinition", "src": "12945:148:12", - "nodes": [], "functionSelector": "972c6062", "implemented": false, "kind": "function", @@ -13995,7 +11003,6 @@ "id": 8871, "nodeType": "FunctionDefinition", "src": "13098:148:12", - "nodes": [], "functionSelector": "2d812b44", "implemented": false, "kind": "function", @@ -14133,7 +11140,6 @@ "id": 8882, "nodeType": "FunctionDefinition", "src": "13251:155:12", - "nodes": [], "functionSelector": "88da6d35", "implemented": false, "kind": "function", @@ -14271,7 +11277,6 @@ "id": 8893, "nodeType": "FunctionDefinition", "src": "13411:153:12", - "nodes": [], "functionSelector": "f21d52c7", "implemented": false, "kind": "function", @@ -14409,7 +11414,6 @@ "id": 8905, "nodeType": "FunctionDefinition", "src": "13570:154:12", - "nodes": [], "functionSelector": "92925aa1", "implemented": false, "kind": "function", @@ -14556,7 +11560,6 @@ "id": 8917, "nodeType": "FunctionDefinition", "src": "13729:157:12", - "nodes": [], "functionSelector": "fee9a469", "implemented": false, "kind": "function", @@ -14703,7 +11706,6 @@ "id": 8929, "nodeType": "FunctionDefinition", "src": "13891:155:12", - "nodes": [], "functionSelector": "7676e127", "implemented": false, "kind": "function", @@ -14850,7 +11852,6 @@ "id": 8941, "nodeType": "FunctionDefinition", "src": "14051:160:12", - "nodes": [], "functionSelector": "1e356e1a", "implemented": false, "kind": "function", @@ -14998,7 +11999,6 @@ "id": 8953, "nodeType": "FunctionDefinition", "src": "14216:160:12", - "nodes": [], "functionSelector": "201e43e2", "implemented": false, "kind": "function", @@ -15145,7 +12145,6 @@ "id": 8965, "nodeType": "FunctionDefinition", "src": "14381:158:12", - "nodes": [], "functionSelector": "561cd6f3", "implemented": false, "kind": "function", @@ -15292,7 +12291,6 @@ "id": 8977, "nodeType": "FunctionDefinition", "src": "14544:156:12", - "nodes": [], "functionSelector": "9884b232", "implemented": false, "kind": "function", @@ -15439,7 +12437,6 @@ "id": 8984, "nodeType": "FunctionDefinition", "src": "15941:72:12", - "nodes": [], "functionSelector": "e23cd19f", "implemented": false, "kind": "function", @@ -15522,7 +12519,6 @@ "id": 8993, "nodeType": "FunctionDefinition", "src": "16234:98:12", - "nodes": [], "functionSelector": "35d6ad46", "implemented": false, "kind": "function", @@ -15632,7 +12628,6 @@ "id": 9000, "nodeType": "FunctionDefinition", "src": "16384:85:12", - "nodes": [], "functionSelector": "975a6ce9", "implemented": false, "kind": "function", @@ -15716,7 +12711,6 @@ "id": 9008, "nodeType": "FunctionDefinition", "src": "16537:67:12", - "nodes": [], "functionSelector": "a85a8418", "implemented": false, "kind": "function", @@ -15806,7 +12800,6 @@ "id": 9015, "nodeType": "FunctionDefinition", "src": "16667:67:12", - "nodes": [], "functionSelector": "9d2ad72a", "implemented": false, "kind": "function", @@ -15845,9 +12838,6 @@ "pathNode": { "id": 9010, "name": "Rpc", - "nameLocations": [ - "16715:3:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8211, "src": "16715:3:12" @@ -15881,7 +12871,6 @@ "id": 9020, "nodeType": "FunctionDefinition", "src": "16827:46:12", - "nodes": [], "functionSelector": "4c63e562", "implemented": false, "kind": "function", @@ -15937,7 +12926,6 @@ "id": 9023, "nodeType": "FunctionDefinition", "src": "16962:37:12", - "nodes": [], "functionSelector": "d1a5b36f", "implemented": false, "kind": "function", @@ -15965,7 +12953,6 @@ "id": 9026, "nodeType": "FunctionDefinition", "src": "17087:38:12", - "nodes": [], "functionSelector": "2bcd50e0", "implemented": false, "kind": "function", @@ -16013,7 +13000,6 @@ "id": 9034, "nodeType": "FunctionDefinition", "src": "17186:45:12", - "nodes": [], "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", @@ -16069,7 +13055,6 @@ "id": 9039, "nodeType": "FunctionDefinition", "src": "17261:42:12", - "nodes": [], "functionSelector": "1f7b4f30", "implemented": false, "kind": "function", @@ -16125,7 +13110,6 @@ "id": 9044, "nodeType": "FunctionDefinition", "src": "17334:42:12", - "nodes": [], "functionSelector": "39b37ab0", "implemented": false, "kind": "function", @@ -16181,7 +13165,6 @@ "id": 9049, "nodeType": "FunctionDefinition", "src": "17410:52:12", - "nodes": [], "functionSelector": "46cc92d9", "implemented": false, "kind": "function", @@ -16237,7 +13220,6 @@ "id": 9054, "nodeType": "FunctionDefinition", "src": "17493:46:12", - "nodes": [], "functionSelector": "4049ddd2", "implemented": false, "kind": "function", @@ -16293,7 +13275,6 @@ "id": 9063, "nodeType": "FunctionDefinition", "src": "17595:69:12", - "nodes": [], "functionSelector": "70ca10bb", "implemented": false, "kind": "function", @@ -16404,7 +13385,6 @@ "id": 9070, "nodeType": "FunctionDefinition", "src": "17759:61:12", - "nodes": [], "functionSelector": "f8e18b57", "implemented": false, "kind": "function", @@ -16488,7 +13468,6 @@ "id": 9075, "nodeType": "FunctionDefinition", "src": "17890:43:12", - "nodes": [], "functionSelector": "ca669fa7", "implemented": false, "kind": "function", @@ -16545,7 +13524,6 @@ "id": 9080, "nodeType": "FunctionDefinition", "src": "18035:48:12", - "nodes": [], "functionSelector": "06447d56", "implemented": false, "kind": "function", @@ -16602,7 +13580,6 @@ "id": 9087, "nodeType": "FunctionDefinition", "src": "18195:61:12", - "nodes": [], "functionSelector": "47e50cce", "implemented": false, "kind": "function", @@ -16687,7 +13664,6 @@ "id": 9094, "nodeType": "FunctionDefinition", "src": "18400:66:12", - "nodes": [], "functionSelector": "45b56078", "implemented": false, "kind": "function", @@ -16772,7 +13748,6 @@ "id": 9097, "nodeType": "FunctionDefinition", "src": "18536:30:12", - "nodes": [], "functionSelector": "90c5013b", "implemented": false, "kind": "function", @@ -16800,7 +13775,6 @@ "id": 9104, "nodeType": "FunctionDefinition", "src": "18603:60:12", - "nodes": [], "functionSelector": "c88a5e6d", "implemented": false, "kind": "function", @@ -16884,7 +13858,6 @@ "id": 9111, "nodeType": "FunctionDefinition", "src": "18697:74:12", - "nodes": [], "functionSelector": "b4d6c782", "implemented": false, "kind": "function", @@ -16968,7 +13941,6 @@ "id": 9116, "nodeType": "FunctionDefinition", "src": "18813:58:12", - "nodes": [], "functionSelector": "f28dceb3", "implemented": false, "kind": "function", @@ -17024,7 +13996,6 @@ "id": 9121, "nodeType": "FunctionDefinition", "src": "18876:50:12", - "nodes": [], "functionSelector": "c31eb0e0", "implemented": false, "kind": "function", @@ -17080,7 +14051,6 @@ "id": 9124, "nodeType": "FunctionDefinition", "src": "18931:33:12", - "nodes": [], "functionSelector": "f4844814", "implemented": false, "kind": "function", @@ -17108,7 +14078,6 @@ "id": 9135, "nodeType": "FunctionDefinition", "src": "19297:99:12", - "nodes": [], "functionSelector": "491cc7c2", "implemented": false, "kind": "function", @@ -17245,7 +14214,6 @@ "id": 9148, "nodeType": "FunctionDefinition", "src": "19401:124:12", - "nodes": [], "functionSelector": "81bad6f3", "implemented": false, "kind": "function", @@ -17410,7 +14378,6 @@ "id": 9157, "nodeType": "FunctionDefinition", "src": "19780:91:12", - "nodes": [], "functionSelector": "b96213e4", "implemented": false, "kind": "function", @@ -17521,7 +14488,6 @@ "id": 9168, "nodeType": "FunctionDefinition", "src": "20039:109:12", - "nodes": [], "functionSelector": "81409b91", "implemented": false, "kind": "function", @@ -17659,7 +14625,6 @@ "id": 9171, "nodeType": "FunctionDefinition", "src": "20184:37:12", - "nodes": [], "functionSelector": "3fdf4e15", "implemented": false, "kind": "function", @@ -17687,7 +14652,6 @@ "id": 9178, "nodeType": "FunctionDefinition", "src": "20349:66:12", - "nodes": [], "functionSelector": "bd6af434", "implemented": false, "kind": "function", @@ -17771,7 +14735,6 @@ "id": 9187, "nodeType": "FunctionDefinition", "src": "20498:84:12", - "nodes": [], "functionSelector": "f30c7ba3", "implemented": false, "kind": "function", @@ -17882,7 +14845,6 @@ "id": 9192, "nodeType": "FunctionDefinition", "src": "20614:48:12", - "nodes": [], "functionSelector": "ff483c54", "implemented": false, "kind": "function", @@ -17939,7 +14901,6 @@ "id": 9197, "nodeType": "FunctionDefinition", "src": "20812:58:12", - "nodes": [], "functionSelector": "9711715a", "implemented": false, "kind": "function", @@ -17995,7 +14956,6 @@ "id": 9204, "nodeType": "FunctionDefinition", "src": "21062:70:12", - "nodes": [], "functionSelector": "44d7f0a4", "implemented": false, "kind": "function", @@ -18079,7 +15039,6 @@ "id": 9213, "nodeType": "FunctionDefinition", "src": "21236:103:12", - "nodes": [], "functionSelector": "6ba3ba2b", "implemented": false, "kind": "function", @@ -18190,7 +15149,6 @@ "id": 9220, "nodeType": "FunctionDefinition", "src": "21456:82:12", - "nodes": [], "functionSelector": "31ba3498", "implemented": false, "kind": "function", @@ -18274,7 +15232,6 @@ "id": 9229, "nodeType": "FunctionDefinition", "src": "21759:98:12", - "nodes": [], "functionSelector": "7ca29682", "implemented": false, "kind": "function", @@ -18385,7 +15342,6 @@ "id": 9238, "nodeType": "FunctionDefinition", "src": "21980:109:12", - "nodes": [], "functionSelector": "71ee464d", "implemented": false, "kind": "function", @@ -18496,7 +15452,6 @@ "id": 9247, "nodeType": "FunctionDefinition", "src": "22323:104:12", - "nodes": [], "functionSelector": "84d52b7a", "implemented": false, "kind": "function", @@ -18607,7 +15562,6 @@ "id": 9254, "nodeType": "FunctionDefinition", "src": "22561:88:12", - "nodes": [], "functionSelector": "98680034", "implemented": false, "kind": "function", @@ -18691,7 +15645,6 @@ "id": 9259, "nodeType": "FunctionDefinition", "src": "22760:45:12", - "nodes": [], "functionSelector": "9ebf6827", "implemented": false, "kind": "function", @@ -18747,7 +15700,6 @@ "id": 9265, "nodeType": "FunctionDefinition", "src": "22911:61:12", - "nodes": [], "documentation": { "id": 9260, "nodeType": "StructuredDocumentation", @@ -18809,7 +15761,6 @@ "id": 9270, "nodeType": "FunctionDefinition", "src": "23107:48:12", - "nodes": [], "functionSelector": "d9bbf3a1", "implemented": false, "kind": "function", @@ -18865,7 +15816,6 @@ "id": 9275, "nodeType": "FunctionDefinition", "src": "23365:43:12", - "nodes": [], "functionSelector": "0f29772b", "implemented": false, "kind": "function", @@ -18921,7 +15871,6 @@ "id": 9282, "nodeType": "FunctionDefinition", "src": "23465:64:12", - "nodes": [], "functionSelector": "d74c83a4", "implemented": false, "kind": "function", @@ -19004,7 +15953,6 @@ "id": 9289, "nodeType": "FunctionDefinition", "src": "23662:59:12", - "nodes": [], "functionSelector": "f2830f7b", "implemented": false, "kind": "function", @@ -19087,7 +16035,6 @@ "id": 9294, "nodeType": "FunctionDefinition", "src": "23920:50:12", - "nodes": [], "functionSelector": "57e22dde", "implemented": false, "kind": "function", @@ -19144,7 +16091,6 @@ "id": 9301, "nodeType": "FunctionDefinition", "src": "23975:69:12", - "nodes": [], "functionSelector": "4074e0a8", "implemented": false, "kind": "function", @@ -19229,7 +16175,6 @@ "id": 9310, "nodeType": "FunctionDefinition", "src": "24049:87:12", - "nodes": [], "functionSelector": "efb77a75", "implemented": false, "kind": "function", @@ -19342,7 +16287,6 @@ "id": 9316, "nodeType": "FunctionDefinition", "src": "24141:62:12", - "nodes": [], "functionSelector": "1d9e269e", "implemented": false, "kind": "function", @@ -19408,7 +16352,6 @@ "id": 9321, "nodeType": "FunctionDefinition", "src": "24297:52:12", - "nodes": [], "functionSelector": "997a0222", "implemented": false, "kind": "function", @@ -19465,7 +16408,6 @@ "id": 9327, "nodeType": "FunctionDefinition", "src": "24354:64:12", - "nodes": [], "functionSelector": "3ce969e6", "implemented": false, "kind": "function", @@ -19531,7 +16473,6 @@ "id": 9334, "nodeType": "FunctionDefinition", "src": "24482:79:12", - "nodes": [], "functionSelector": "d92d8efd", "implemented": false, "kind": "function", @@ -19616,7 +16557,6 @@ "id": 9339, "nodeType": "FunctionDefinition", "src": "24642:51:12", - "nodes": [], "functionSelector": "ea060291", "implemented": false, "kind": "function", @@ -19673,7 +16613,6 @@ "id": 9344, "nodeType": "FunctionDefinition", "src": "24793:43:12", - "nodes": [], "functionSelector": "be646da1", "implemented": false, "kind": "function", @@ -19729,7 +16668,6 @@ "id": 9351, "nodeType": "FunctionDefinition", "src": "24935:59:12", - "nodes": [], "functionSelector": "4d8abc4b", "implemented": false, "kind": "function", @@ -19815,9 +16753,6 @@ "baseName": { "id": 9028, "name": "VmSafe", - "nameLocations": [ - "17145:6:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "17145:6:12" diff --git a/out/Vm.sol/VmSafe.json b/out/Vm.sol/VmSafe.json index 7899d00..18cf938 100644 --- a/out/Vm.sol/VmSafe.json +++ b/out/Vm.sol/VmSafe.json @@ -2192,2116 +2192,6 @@ "writeJson(string,string,string)": "35d6ad46", "writeLine(string,string)": "619d897f" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"accesses\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"readSlots\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"writeSlots\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"condition\",\"type\":\"bool\"}],\"name\":\"assume\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"closeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"derivationPath\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"defaultValue\",\"type\":\"bytes32[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"defaultValue\",\"type\":\"int256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"defaultValue\",\"type\":\"bool\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"defaultValue\",\"type\":\"address\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"defaultValue\",\"type\":\"uint256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"defaultValue\",\"type\":\"bytes[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"defaultValue\",\"type\":\"uint256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"defaultValue\",\"type\":\"string[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"defaultValue\",\"type\":\"bytes\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"defaultValue\",\"type\":\"bytes32\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"defaultValue\",\"type\":\"int256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"defaultValue\",\"type\":\"address[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"defaultValue\",\"type\":\"string\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"defaultValue\",\"type\":\"bool[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"commandInput\",\"type\":\"string[]\"}],\"name\":\"ffi\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"fileOrDir\",\"type\":\"string\"}],\"name\":\"fsMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"readOnly\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"modified\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"created\",\"type\":\"uint256\"}],\"internalType\":\"struct VmSafe.FsMetadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"creationBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getDeployedCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"runtimeBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getNonce\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"nonce\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRecordedLogs\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32[]\",\"name\":\"topics\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"emitter\",\"type\":\"address\"}],\"internalType\":\"struct VmSafe.Log[]\",\"name\":\"logs\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"newLabel\",\"type\":\"string\"}],\"name\":\"label\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"}],\"name\":\"load\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"parsedValue\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"parsedValue\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"parsedValue\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"parsedValue\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"parsedValue\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"parsedValue\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pauseGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"projectRoot\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFile\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFileBinary\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readLine\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"line\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"record\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recordLogs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"rememberKey\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"removeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resumeGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"rpcAlias\",\"type\":\"string\"}],\"name\":\"rpcUrl\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrlStructs\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"internalType\":\"struct VmSafe.Rpc[]\",\"name\":\"urls\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrls\",\"outputs\":[{\"internalType\":\"string[2][]\",\"name\":\"urls\",\"type\":\"string[2][]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"values\",\"type\":\"address[]\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"values\",\"type\":\"bool[]\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"values\",\"type\":\"bytes32[]\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"values\",\"type\":\"int256[]\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"values\",\"type\":\"string[]\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setEnv\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"digest\",\"type\":\"bytes32\"}],\"name\":\"sign\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"writeFileBinary\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeLine\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Vm.sol\":\"VmSafe\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "accesses", - "outputs": [ - { - "internalType": "bytes32[]", - "name": "readSlots", - "type": "bytes32[]" - }, - { - "internalType": "bytes32[]", - "name": "writeSlots", - "type": "bytes32[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "addr", - "outputs": [ - { - "internalType": "address", - "name": "keyAddr", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "condition", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "assume" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "broadcast" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "signer", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "broadcast" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "broadcast" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "closeFile" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "mnemonic", - "type": "string" - }, - { - "internalType": "uint32", - "name": "index", - "type": "uint32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "deriveKey", - "outputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "mnemonic", - "type": "string" - }, - { - "internalType": "string", - "name": "derivationPath", - "type": "string" - }, - { - "internalType": "uint32", - "name": "index", - "type": "uint32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "deriveKey", - "outputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envAddress", - "outputs": [ - { - "internalType": "address", - "name": "value", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envAddress", - "outputs": [ - { - "internalType": "address[]", - "name": "value", - "type": "address[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBool", - "outputs": [ - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBool", - "outputs": [ - { - "internalType": "bool[]", - "name": "value", - "type": "bool[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes", - "outputs": [ - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes", - "outputs": [ - { - "internalType": "bytes[]", - "name": "value", - "type": "bytes[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes32", - "outputs": [ - { - "internalType": "bytes32[]", - "name": "value", - "type": "bytes32[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envBytes32", - "outputs": [ - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envInt", - "outputs": [ - { - "internalType": "int256[]", - "name": "value", - "type": "int256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envInt", - "outputs": [ - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "bytes32[]", - "name": "defaultValue", - "type": "bytes32[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes32[]", - "name": "value", - "type": "bytes32[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "int256[]", - "name": "defaultValue", - "type": "int256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "int256[]", - "name": "value", - "type": "int256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "bool", - "name": "defaultValue", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "address", - "name": "defaultValue", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "address", - "name": "value", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "uint256", - "name": "defaultValue", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "bytes[]", - "name": "defaultValue", - "type": "bytes[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes[]", - "name": "value", - "type": "bytes[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "uint256[]", - "name": "defaultValue", - "type": "uint256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "uint256[]", - "name": "value", - "type": "uint256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "string[]", - "name": "defaultValue", - "type": "string[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "string[]", - "name": "value", - "type": "string[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "bytes", - "name": "defaultValue", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "defaultValue", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "int256", - "name": "defaultValue", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "address[]", - "name": "defaultValue", - "type": "address[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "address[]", - "name": "value", - "type": "address[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "defaultValue", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "string", - "name": "value", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - }, - { - "internalType": "bool[]", - "name": "defaultValue", - "type": "bool[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "envOr", - "outputs": [ - { - "internalType": "bool[]", - "name": "value", - "type": "bool[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envString", - "outputs": [ - { - "internalType": "string[]", - "name": "value", - "type": "string[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envString", - "outputs": [ - { - "internalType": "string", - "name": "value", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envUint", - "outputs": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "delim", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "envUint", - "outputs": [ - { - "internalType": "uint256[]", - "name": "value", - "type": "uint256[]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string[]", - "name": "commandInput", - "type": "string[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "ffi", - "outputs": [ - { - "internalType": "bytes", - "name": "result", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "fileOrDir", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "fsMetadata", - "outputs": [ - { - "internalType": "struct VmSafe.FsMetadata", - "name": "metadata", - "type": "tuple", - "components": [ - { - "internalType": "bool", - "name": "isDir", - "type": "bool" - }, - { - "internalType": "bool", - "name": "isSymlink", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "length", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "readOnly", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "modified", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "accessed", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "created", - "type": "uint256" - } - ] - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "artifactPath", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getCode", - "outputs": [ - { - "internalType": "bytes", - "name": "creationBytecode", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "artifactPath", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getDeployedCode", - "outputs": [ - { - "internalType": "bytes", - "name": "runtimeBytecode", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "name": "getNonce", - "outputs": [ - { - "internalType": "uint64", - "name": "nonce", - "type": "uint64" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "getRecordedLogs", - "outputs": [ - { - "internalType": "struct VmSafe.Log[]", - "name": "logs", - "type": "tuple[]", - "components": [ - { - "internalType": "bytes32[]", - "name": "topics", - "type": "bytes32[]" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "address", - "name": "emitter", - "type": "address" - } - ] - } - ] - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "string", - "name": "newLabel", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "label" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "slot", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function", - "name": "load", - "outputs": [ - { - "internalType": "bytes32", - "name": "data", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseAddress", - "outputs": [ - { - "internalType": "address", - "name": "parsedValue", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseBool", - "outputs": [ - { - "internalType": "bool", - "name": "parsedValue", - "type": "bool" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseBytes", - "outputs": [ - { - "internalType": "bytes", - "name": "parsedValue", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseBytes32", - "outputs": [ - { - "internalType": "bytes32", - "name": "parsedValue", - "type": "bytes32" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseInt", - "outputs": [ - { - "internalType": "int256", - "name": "parsedValue", - "type": "int256" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseJson", - "outputs": [ - { - "internalType": "bytes", - "name": "abiEncodedData", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - }, - { - "internalType": "string", - "name": "key", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseJson", - "outputs": [ - { - "internalType": "bytes", - "name": "abiEncodedData", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "parseUint", - "outputs": [ - { - "internalType": "uint256", - "name": "parsedValue", - "type": "uint256" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "pauseGasMetering" - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "projectRoot", - "outputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "readFile", - "outputs": [ - { - "internalType": "string", - "name": "data", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "readFileBinary", - "outputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "readLine", - "outputs": [ - { - "internalType": "string", - "name": "line", - "type": "string" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "record" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "recordLogs" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "rememberKey", - "outputs": [ - { - "internalType": "address", - "name": "keyAddr", - "type": "address" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "removeFile" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "resumeGasMetering" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "rpcAlias", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function", - "name": "rpcUrl", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "rpcUrlStructs", - "outputs": [ - { - "internalType": "struct VmSafe.Rpc[]", - "name": "urls", - "type": "tuple[]", - "components": [ - { - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "internalType": "string", - "name": "url", - "type": "string" - } - ] - } - ] - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "rpcUrls", - "outputs": [ - { - "internalType": "string[2][]", - "name": "urls", - "type": "string[2][]" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "address[]", - "name": "values", - "type": "address[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeAddress", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "address", - "name": "value", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeAddress", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bool[]", - "name": "values", - "type": "bool[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBool", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBool", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes[]", - "name": "values", - "type": "bytes[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes32[]", - "name": "values", - "type": "bytes32[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes32", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeBytes32", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeInt", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "int256[]", - "name": "values", - "type": "int256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeInt", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "string[]", - "name": "values", - "type": "string[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeString", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "string", - "name": "value", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeString", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeUint", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "objectKey", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - }, - { - "internalType": "uint256[]", - "name": "values", - "type": "uint256[]" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "serializeUint", - "outputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "value", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "setEnv" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "digest", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "sign", - "outputs": [ - { - "internalType": "uint8", - "name": "v", - "type": "uint8" - }, - { - "internalType": "bytes32", - "name": "r", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "s", - "type": "bytes32" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "startBroadcast" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "signer", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "startBroadcast" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "privateKey", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "startBroadcast" - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "stopBroadcast" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "value", - "type": "address" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "value", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "value", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "value", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function", - "name": "toString", - "outputs": [ - { - "internalType": "string", - "name": "stringifiedValue", - "type": "string" - } - ] - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "string", - "name": "data", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeFile" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeFileBinary" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - }, - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "string", - "name": "valueKey", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeJson" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "json", - "type": "string" - }, - { - "internalType": "string", - "name": "path", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeJson" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "path", - "type": "string" - }, - { - "internalType": "string", - "name": "data", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function", - "name": "writeLine" - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/Vm.sol": "VmSafe" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/Vm.sol", "id": 9353, @@ -4320,7 +2210,6 @@ "id": 8197, "nodeType": "PragmaDirective", "src": "32:31:12", - "nodes": [], "literals": [ "solidity", ">=", @@ -4335,7 +2224,6 @@ "id": 8198, "nodeType": "PragmaDirective", "src": "65:33:12", - "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -4350,7 +2238,6 @@ "id": 8206, "nodeType": "StructDefinition", "src": "594:89:12", - "nodes": [], "canonicalName": "VmSafe.Log", "members": [ { @@ -4454,7 +2341,6 @@ "id": 8211, "nodeType": "StructDefinition", "src": "689:58:12", - "nodes": [], "canonicalName": "VmSafe.Rpc", "members": [ { @@ -4521,7 +2407,6 @@ "id": 8226, "nodeType": "StructDefinition", "src": "753:193:12", - "nodes": [], "canonicalName": "VmSafe.FsMetadata", "members": [ { @@ -4723,7 +2608,6 @@ "id": 8235, "nodeType": "FunctionDefinition", "src": "996:81:12", - "nodes": [], "functionSelector": "667f9d70", "implemented": false, "kind": "function", @@ -4835,7 +2719,6 @@ "id": 8248, "nodeType": "FunctionDefinition", "src": "1100:104:12", - "nodes": [], "functionSelector": "e341eaa4", "implemented": false, "kind": "function", @@ -5000,7 +2883,6 @@ "id": 8255, "nodeType": "FunctionDefinition", "src": "1257:74:12", - "nodes": [], "functionSelector": "ffa18649", "implemented": false, "kind": "function", @@ -5085,7 +2967,6 @@ "id": 8262, "nodeType": "FunctionDefinition", "src": "1372:72:12", - "nodes": [], "functionSelector": "2d0335ab", "implemented": false, "kind": "function", @@ -5170,7 +3051,6 @@ "id": 8270, "nodeType": "FunctionDefinition", "src": "1506:84:12", - "nodes": [], "functionSelector": "89160467", "implemented": false, "kind": "function", @@ -5263,7 +3143,6 @@ "id": 8277, "nodeType": "FunctionDefinition", "src": "1629:70:12", - "nodes": [], "functionSelector": "3d5923ee", "implemented": false, "kind": "function", @@ -5346,7 +3225,6 @@ "id": 8284, "nodeType": "FunctionDefinition", "src": "1758:74:12", - "nodes": [], "functionSelector": "7ed1ec7d", "implemented": false, "kind": "function", @@ -5430,7 +3308,6 @@ "id": 8291, "nodeType": "FunctionDefinition", "src": "1837:77:12", - "nodes": [], "functionSelector": "c1978d1f", "implemented": false, "kind": "function", @@ -5514,7 +3391,6 @@ "id": 8298, "nodeType": "FunctionDefinition", "src": "1919:75:12", - "nodes": [], "functionSelector": "892a0c61", "implemented": false, "kind": "function", @@ -5598,7 +3474,6 @@ "id": 8305, "nodeType": "FunctionDefinition", "src": "1999:80:12", - "nodes": [], "functionSelector": "350d56bf", "implemented": false, "kind": "function", @@ -5683,7 +3558,6 @@ "id": 8312, "nodeType": "FunctionDefinition", "src": "2084:80:12", - "nodes": [], "functionSelector": "97949042", "implemented": false, "kind": "function", @@ -5767,7 +3641,6 @@ "id": 8319, "nodeType": "FunctionDefinition", "src": "2169:85:12", - "nodes": [], "functionSelector": "f877cb19", "implemented": false, "kind": "function", @@ -5851,7 +3724,6 @@ "id": 8326, "nodeType": "FunctionDefinition", "src": "2259:83:12", - "nodes": [], "functionSelector": "4d7baf06", "implemented": false, "kind": "function", @@ -5935,7 +3807,6 @@ "id": 8336, "nodeType": "FunctionDefinition", "src": "2392:106:12", - "nodes": [], "functionSelector": "aaaddeaf", "implemented": false, "kind": "function", @@ -6055,7 +3926,6 @@ "id": 8346, "nodeType": "FunctionDefinition", "src": "2503:109:12", - "nodes": [], "functionSelector": "f3dec099", "implemented": false, "kind": "function", @@ -6175,7 +4045,6 @@ "id": 8356, "nodeType": "FunctionDefinition", "src": "2617:107:12", - "nodes": [], "functionSelector": "42181150", "implemented": false, "kind": "function", @@ -6295,7 +4164,6 @@ "id": 8366, "nodeType": "FunctionDefinition", "src": "2729:112:12", - "nodes": [], "functionSelector": "ad31b9fa", "implemented": false, "kind": "function", @@ -6416,7 +4284,6 @@ "id": 8376, "nodeType": "FunctionDefinition", "src": "2846:112:12", - "nodes": [], "functionSelector": "5af231c1", "implemented": false, "kind": "function", @@ -6536,7 +4403,6 @@ "id": 8386, "nodeType": "FunctionDefinition", "src": "2963:110:12", - "nodes": [], "functionSelector": "14b02bc9", "implemented": false, "kind": "function", @@ -6656,7 +4522,6 @@ "id": 8396, "nodeType": "FunctionDefinition", "src": "3078:108:12", - "nodes": [], "functionSelector": "ddc2651b", "implemented": false, "kind": "function", @@ -6776,7 +4641,6 @@ "id": 8405, "nodeType": "FunctionDefinition", "src": "3244:86:12", - "nodes": [], "functionSelector": "4777f3cf", "implemented": false, "kind": "function", @@ -6887,7 +4751,6 @@ "id": 8414, "nodeType": "FunctionDefinition", "src": "3335:92:12", - "nodes": [], "functionSelector": "5e97348f", "implemented": false, "kind": "function", @@ -6998,7 +4861,6 @@ "id": 8423, "nodeType": "FunctionDefinition", "src": "3432:90:12", - "nodes": [], "functionSelector": "bbcb713e", "implemented": false, "kind": "function", @@ -7109,7 +4971,6 @@ "id": 8432, "nodeType": "FunctionDefinition", "src": "3527:92:12", - "nodes": [], "functionSelector": "561fe540", "implemented": false, "kind": "function", @@ -7222,7 +5083,6 @@ "id": 8441, "nodeType": "FunctionDefinition", "src": "3624:92:12", - "nodes": [], "functionSelector": "b4a85892", "implemented": false, "kind": "function", @@ -7333,7 +5193,6 @@ "id": 8450, "nodeType": "FunctionDefinition", "src": "3721:106:12", - "nodes": [], "functionSelector": "d145736c", "implemented": false, "kind": "function", @@ -7444,7 +5303,6 @@ "id": 8459, "nodeType": "FunctionDefinition", "src": "3832:104:12", - "nodes": [], "functionSelector": "b3e47705", "implemented": false, "kind": "function", @@ -7555,7 +5413,6 @@ "id": 8472, "nodeType": "FunctionDefinition", "src": "4004:145:12", - "nodes": [], "functionSelector": "eb85e83b", "implemented": false, "kind": "function", @@ -7711,7 +5568,6 @@ "id": 8485, "nodeType": "FunctionDefinition", "src": "4154:151:12", - "nodes": [], "functionSelector": "74318528", "implemented": false, "kind": "function", @@ -7867,7 +5723,6 @@ "id": 8498, "nodeType": "FunctionDefinition", "src": "4310:149:12", - "nodes": [], "functionSelector": "4700d74b", "implemented": false, "kind": "function", @@ -8023,7 +5878,6 @@ "id": 8511, "nodeType": "FunctionDefinition", "src": "4464:151:12", - "nodes": [], "functionSelector": "c74e9deb", "implemented": false, "kind": "function", @@ -8181,7 +6035,6 @@ "id": 8524, "nodeType": "FunctionDefinition", "src": "4620:151:12", - "nodes": [], "functionSelector": "2281f367", "implemented": false, "kind": "function", @@ -8337,7 +6190,6 @@ "id": 8537, "nodeType": "FunctionDefinition", "src": "4776:149:12", - "nodes": [], "functionSelector": "859216bc", "implemented": false, "kind": "function", @@ -8493,7 +6345,6 @@ "id": 8550, "nodeType": "FunctionDefinition", "src": "4930:147:12", - "nodes": [], "functionSelector": "64bc3e64", "implemented": false, "kind": "function", @@ -8649,7 +6500,6 @@ "id": 8553, "nodeType": "FunctionDefinition", "src": "5126:27:12", - "nodes": [], "functionSelector": "266cf109", "implemented": false, "kind": "function", @@ -8677,7 +6527,6 @@ "id": 8564, "nodeType": "FunctionDefinition", "src": "5250:109:12", - "nodes": [], "functionSelector": "65bc9481", "implemented": false, "kind": "function", @@ -8807,7 +6656,6 @@ "id": 8571, "nodeType": "FunctionDefinition", "src": "5467:101:12", - "nodes": [], "functionSelector": "8d1cc925", "implemented": false, "kind": "function", @@ -8891,7 +6739,6 @@ "id": 8578, "nodeType": "FunctionDefinition", "src": "5676:108:12", - "nodes": [], "functionSelector": "3ebf73b4", "implemented": false, "kind": "function", @@ -8975,7 +6822,6 @@ "id": 8585, "nodeType": "FunctionDefinition", "src": "5829:67:12", - "nodes": [], "functionSelector": "c657c718", "implemented": false, "kind": "function", @@ -9059,7 +6905,6 @@ "id": 8588, "nodeType": "FunctionDefinition", "src": "6063:30:12", - "nodes": [], "functionSelector": "afc98040", "implemented": false, "kind": "function", @@ -9087,7 +6932,6 @@ "id": 8593, "nodeType": "FunctionDefinition", "src": "6252:44:12", - "nodes": [], "functionSelector": "e6962cdb", "implemented": false, "kind": "function", @@ -9144,7 +6988,6 @@ "id": 8598, "nodeType": "FunctionDefinition", "src": "6459:48:12", - "nodes": [], "functionSelector": "f67a965b", "implemented": false, "kind": "function", @@ -9200,7 +7043,6 @@ "id": 8601, "nodeType": "FunctionDefinition", "src": "6680:35:12", - "nodes": [], "functionSelector": "7fb5297f", "implemented": false, "kind": "function", @@ -9228,7 +7070,6 @@ "id": 8606, "nodeType": "FunctionDefinition", "src": "6866:49:12", - "nodes": [], "functionSelector": "7fec2a8d", "implemented": false, "kind": "function", @@ -9285,7 +7126,6 @@ "id": 8611, "nodeType": "FunctionDefinition", "src": "7070:53:12", - "nodes": [], "functionSelector": "ce817d47", "implemented": false, "kind": "function", @@ -9341,7 +7181,6 @@ "id": 8614, "nodeType": "FunctionDefinition", "src": "7173:34:12", - "nodes": [], "functionSelector": "76eadd36", "implemented": false, "kind": "function", @@ -9369,7 +7208,6 @@ "id": 8621, "nodeType": "FunctionDefinition", "src": "7262:83:12", - "nodes": [], "functionSelector": "60f9bb11", "implemented": false, "kind": "function", @@ -9453,7 +7291,6 @@ "id": 8628, "nodeType": "FunctionDefinition", "src": "7439:88:12", - "nodes": [], "functionSelector": "16ed7bc4", "implemented": false, "kind": "function", @@ -9537,7 +7374,6 @@ "id": 8633, "nodeType": "FunctionDefinition", "src": "7580:66:12", - "nodes": [], "functionSelector": "d930a0e6", "implemented": false, "kind": "function", @@ -9593,7 +7429,6 @@ "id": 8641, "nodeType": "FunctionDefinition", "src": "7696:93:12", - "nodes": [], "functionSelector": "af368a08", "implemented": false, "kind": "function", @@ -9659,9 +7494,6 @@ "pathNode": { "id": 8637, "name": "FsMetadata", - "nameLocations": [ - "7761:10:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8226, "src": "7761:10:12" @@ -9687,7 +7519,6 @@ "id": 8648, "nodeType": "FunctionDefinition", "src": "7835:83:12", - "nodes": [], "functionSelector": "70f55728", "implemented": false, "kind": "function", @@ -9771,7 +7602,6 @@ "id": 8655, "nodeType": "FunctionDefinition", "src": "8037:72:12", - "nodes": [], "functionSelector": "897e0a97", "implemented": false, "kind": "function", @@ -9854,7 +7684,6 @@ "id": 8662, "nodeType": "FunctionDefinition", "src": "8282:77:12", - "nodes": [], "functionSelector": "1f21fc80", "implemented": false, "kind": "function", @@ -9937,7 +7766,6 @@ "id": 8669, "nodeType": "FunctionDefinition", "src": "8430:72:12", - "nodes": [], "functionSelector": "619d897f", "implemented": false, "kind": "function", @@ -10020,7 +7848,6 @@ "id": 8674, "nodeType": "FunctionDefinition", "src": "8614:50:12", - "nodes": [], "functionSelector": "48c3241f", "implemented": false, "kind": "function", @@ -10076,7 +7903,6 @@ "id": 8679, "nodeType": "FunctionDefinition", "src": "8912:51:12", - "nodes": [], "functionSelector": "f1afe04d", "implemented": false, "kind": "function", @@ -10132,7 +7958,6 @@ "id": 8686, "nodeType": "FunctionDefinition", "src": "9002:88:12", - "nodes": [], "functionSelector": "56ca623e", "implemented": false, "kind": "function", @@ -10217,7 +8042,6 @@ "id": 8693, "nodeType": "FunctionDefinition", "src": "9095:95:12", - "nodes": [], "functionSelector": "71aad10d", "implemented": false, "kind": "function", @@ -10301,7 +8125,6 @@ "id": 8700, "nodeType": "FunctionDefinition", "src": "9195:88:12", - "nodes": [], "functionSelector": "b11a19e8", "implemented": false, "kind": "function", @@ -10385,7 +8208,6 @@ "id": 8707, "nodeType": "FunctionDefinition", "src": "9288:85:12", - "nodes": [], "functionSelector": "71dce7da", "implemented": false, "kind": "function", @@ -10469,7 +8291,6 @@ "id": 8714, "nodeType": "FunctionDefinition", "src": "9378:88:12", - "nodes": [], "functionSelector": "6900a3ae", "implemented": false, "kind": "function", @@ -10553,7 +8374,6 @@ "id": 8721, "nodeType": "FunctionDefinition", "src": "9471:87:12", - "nodes": [], "functionSelector": "a322c40e", "implemented": false, "kind": "function", @@ -10637,7 +8457,6 @@ "id": 8728, "nodeType": "FunctionDefinition", "src": "9599:103:12", - "nodes": [], "functionSelector": "8f5d232d", "implemented": false, "kind": "function", @@ -10721,7 +8540,6 @@ "id": 8735, "nodeType": "FunctionDefinition", "src": "9707:100:12", - "nodes": [], "functionSelector": "c6ce059d", "implemented": false, "kind": "function", @@ -10806,7 +8624,6 @@ "id": 8742, "nodeType": "FunctionDefinition", "src": "9812:97:12", - "nodes": [], "functionSelector": "fa91454d", "implemented": false, "kind": "function", @@ -10890,7 +8707,6 @@ "id": 8749, "nodeType": "FunctionDefinition", "src": "9914:95:12", - "nodes": [], "functionSelector": "42346c5e", "implemented": false, "kind": "function", @@ -10974,7 +8790,6 @@ "id": 8756, "nodeType": "FunctionDefinition", "src": "10014:100:12", - "nodes": [], "functionSelector": "087e6e81", "implemented": false, "kind": "function", @@ -11058,7 +8873,6 @@ "id": 8763, "nodeType": "FunctionDefinition", "src": "10119:94:12", - "nodes": [], "functionSelector": "974ef924", "implemented": false, "kind": "function", @@ -11142,7 +8956,6 @@ "id": 8766, "nodeType": "FunctionDefinition", "src": "10257:31:12", - "nodes": [], "functionSelector": "41af2f52", "implemented": false, "kind": "function", @@ -11170,7 +8983,6 @@ "id": 8773, "nodeType": "FunctionDefinition", "src": "10327:64:12", - "nodes": [], "functionSelector": "191553a4", "implemented": false, "kind": "function", @@ -11209,9 +9021,6 @@ "pathNode": { "id": 8768, "name": "Log", - "nameLocations": [ - "10372:3:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8206, "src": "10372:3:12" @@ -11245,7 +9054,6 @@ "id": 8782, "nodeType": "FunctionDefinition", "src": "10526:102:12", - "nodes": [], "functionSelector": "6229498b", "implemented": false, "kind": "function", @@ -11356,7 +9164,6 @@ "id": 8793, "nodeType": "FunctionDefinition", "src": "10744:158:12", - "nodes": [], "functionSelector": "6bcb2c1b", "implemented": false, "kind": "function", @@ -11494,7 +9301,6 @@ "id": 8800, "nodeType": "FunctionDefinition", "src": "10983:76:12", - "nodes": [], "functionSelector": "22100064", "implemented": false, "kind": "function", @@ -11579,7 +9385,6 @@ "id": 8809, "nodeType": "FunctionDefinition", "src": "12092:114:12", - "nodes": [], "functionSelector": "85940ef1", "implemented": false, "kind": "function", @@ -11690,7 +9495,6 @@ "id": 8816, "nodeType": "FunctionDefinition", "src": "12211:93:12", - "nodes": [], "functionSelector": "6a82600a", "implemented": false, "kind": "function", @@ -11774,7 +9578,6 @@ "id": 8827, "nodeType": "FunctionDefinition", "src": "12500:142:12", - "nodes": [], "functionSelector": "ac22e971", "implemented": false, "kind": "function", @@ -11912,7 +9715,6 @@ "id": 8838, "nodeType": "FunctionDefinition", "src": "12647:145:12", - "nodes": [], "functionSelector": "129e9002", "implemented": false, "kind": "function", @@ -12050,7 +9852,6 @@ "id": 8849, "nodeType": "FunctionDefinition", "src": "12797:143:12", - "nodes": [], "functionSelector": "3f33db60", "implemented": false, "kind": "function", @@ -12188,7 +9989,6 @@ "id": 8860, "nodeType": "FunctionDefinition", "src": "12945:148:12", - "nodes": [], "functionSelector": "972c6062", "implemented": false, "kind": "function", @@ -12327,7 +10127,6 @@ "id": 8871, "nodeType": "FunctionDefinition", "src": "13098:148:12", - "nodes": [], "functionSelector": "2d812b44", "implemented": false, "kind": "function", @@ -12465,7 +10264,6 @@ "id": 8882, "nodeType": "FunctionDefinition", "src": "13251:155:12", - "nodes": [], "functionSelector": "88da6d35", "implemented": false, "kind": "function", @@ -12603,7 +10401,6 @@ "id": 8893, "nodeType": "FunctionDefinition", "src": "13411:153:12", - "nodes": [], "functionSelector": "f21d52c7", "implemented": false, "kind": "function", @@ -12741,7 +10538,6 @@ "id": 8905, "nodeType": "FunctionDefinition", "src": "13570:154:12", - "nodes": [], "functionSelector": "92925aa1", "implemented": false, "kind": "function", @@ -12888,7 +10684,6 @@ "id": 8917, "nodeType": "FunctionDefinition", "src": "13729:157:12", - "nodes": [], "functionSelector": "fee9a469", "implemented": false, "kind": "function", @@ -13035,7 +10830,6 @@ "id": 8929, "nodeType": "FunctionDefinition", "src": "13891:155:12", - "nodes": [], "functionSelector": "7676e127", "implemented": false, "kind": "function", @@ -13182,7 +10976,6 @@ "id": 8941, "nodeType": "FunctionDefinition", "src": "14051:160:12", - "nodes": [], "functionSelector": "1e356e1a", "implemented": false, "kind": "function", @@ -13330,7 +11123,6 @@ "id": 8953, "nodeType": "FunctionDefinition", "src": "14216:160:12", - "nodes": [], "functionSelector": "201e43e2", "implemented": false, "kind": "function", @@ -13477,7 +11269,6 @@ "id": 8965, "nodeType": "FunctionDefinition", "src": "14381:158:12", - "nodes": [], "functionSelector": "561cd6f3", "implemented": false, "kind": "function", @@ -13624,7 +11415,6 @@ "id": 8977, "nodeType": "FunctionDefinition", "src": "14544:156:12", - "nodes": [], "functionSelector": "9884b232", "implemented": false, "kind": "function", @@ -13771,7 +11561,6 @@ "id": 8984, "nodeType": "FunctionDefinition", "src": "15941:72:12", - "nodes": [], "functionSelector": "e23cd19f", "implemented": false, "kind": "function", @@ -13854,7 +11643,6 @@ "id": 8993, "nodeType": "FunctionDefinition", "src": "16234:98:12", - "nodes": [], "functionSelector": "35d6ad46", "implemented": false, "kind": "function", @@ -13964,7 +11752,6 @@ "id": 9000, "nodeType": "FunctionDefinition", "src": "16384:85:12", - "nodes": [], "functionSelector": "975a6ce9", "implemented": false, "kind": "function", @@ -14048,7 +11835,6 @@ "id": 9008, "nodeType": "FunctionDefinition", "src": "16537:67:12", - "nodes": [], "functionSelector": "a85a8418", "implemented": false, "kind": "function", @@ -14138,7 +11924,6 @@ "id": 9015, "nodeType": "FunctionDefinition", "src": "16667:67:12", - "nodes": [], "functionSelector": "9d2ad72a", "implemented": false, "kind": "function", @@ -14177,9 +11962,6 @@ "pathNode": { "id": 9010, "name": "Rpc", - "nameLocations": [ - "16715:3:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8211, "src": "16715:3:12" @@ -14213,7 +11995,6 @@ "id": 9020, "nodeType": "FunctionDefinition", "src": "16827:46:12", - "nodes": [], "functionSelector": "4c63e562", "implemented": false, "kind": "function", @@ -14269,7 +12050,6 @@ "id": 9023, "nodeType": "FunctionDefinition", "src": "16962:37:12", - "nodes": [], "functionSelector": "d1a5b36f", "implemented": false, "kind": "function", @@ -14297,7 +12077,6 @@ "id": 9026, "nodeType": "FunctionDefinition", "src": "17087:38:12", - "nodes": [], "functionSelector": "2bcd50e0", "implemented": false, "kind": "function", @@ -14345,7 +12124,6 @@ "id": 9034, "nodeType": "FunctionDefinition", "src": "17186:45:12", - "nodes": [], "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", @@ -14401,7 +12179,6 @@ "id": 9039, "nodeType": "FunctionDefinition", "src": "17261:42:12", - "nodes": [], "functionSelector": "1f7b4f30", "implemented": false, "kind": "function", @@ -14457,7 +12234,6 @@ "id": 9044, "nodeType": "FunctionDefinition", "src": "17334:42:12", - "nodes": [], "functionSelector": "39b37ab0", "implemented": false, "kind": "function", @@ -14513,7 +12289,6 @@ "id": 9049, "nodeType": "FunctionDefinition", "src": "17410:52:12", - "nodes": [], "functionSelector": "46cc92d9", "implemented": false, "kind": "function", @@ -14569,7 +12344,6 @@ "id": 9054, "nodeType": "FunctionDefinition", "src": "17493:46:12", - "nodes": [], "functionSelector": "4049ddd2", "implemented": false, "kind": "function", @@ -14625,7 +12399,6 @@ "id": 9063, "nodeType": "FunctionDefinition", "src": "17595:69:12", - "nodes": [], "functionSelector": "70ca10bb", "implemented": false, "kind": "function", @@ -14736,7 +12509,6 @@ "id": 9070, "nodeType": "FunctionDefinition", "src": "17759:61:12", - "nodes": [], "functionSelector": "f8e18b57", "implemented": false, "kind": "function", @@ -14820,7 +12592,6 @@ "id": 9075, "nodeType": "FunctionDefinition", "src": "17890:43:12", - "nodes": [], "functionSelector": "ca669fa7", "implemented": false, "kind": "function", @@ -14877,7 +12648,6 @@ "id": 9080, "nodeType": "FunctionDefinition", "src": "18035:48:12", - "nodes": [], "functionSelector": "06447d56", "implemented": false, "kind": "function", @@ -14934,7 +12704,6 @@ "id": 9087, "nodeType": "FunctionDefinition", "src": "18195:61:12", - "nodes": [], "functionSelector": "47e50cce", "implemented": false, "kind": "function", @@ -15019,7 +12788,6 @@ "id": 9094, "nodeType": "FunctionDefinition", "src": "18400:66:12", - "nodes": [], "functionSelector": "45b56078", "implemented": false, "kind": "function", @@ -15104,7 +12872,6 @@ "id": 9097, "nodeType": "FunctionDefinition", "src": "18536:30:12", - "nodes": [], "functionSelector": "90c5013b", "implemented": false, "kind": "function", @@ -15132,7 +12899,6 @@ "id": 9104, "nodeType": "FunctionDefinition", "src": "18603:60:12", - "nodes": [], "functionSelector": "c88a5e6d", "implemented": false, "kind": "function", @@ -15216,7 +12982,6 @@ "id": 9111, "nodeType": "FunctionDefinition", "src": "18697:74:12", - "nodes": [], "functionSelector": "b4d6c782", "implemented": false, "kind": "function", @@ -15300,7 +13065,6 @@ "id": 9116, "nodeType": "FunctionDefinition", "src": "18813:58:12", - "nodes": [], "functionSelector": "f28dceb3", "implemented": false, "kind": "function", @@ -15356,7 +13120,6 @@ "id": 9121, "nodeType": "FunctionDefinition", "src": "18876:50:12", - "nodes": [], "functionSelector": "c31eb0e0", "implemented": false, "kind": "function", @@ -15412,7 +13175,6 @@ "id": 9124, "nodeType": "FunctionDefinition", "src": "18931:33:12", - "nodes": [], "functionSelector": "f4844814", "implemented": false, "kind": "function", @@ -15440,7 +13202,6 @@ "id": 9135, "nodeType": "FunctionDefinition", "src": "19297:99:12", - "nodes": [], "functionSelector": "491cc7c2", "implemented": false, "kind": "function", @@ -15577,7 +13338,6 @@ "id": 9148, "nodeType": "FunctionDefinition", "src": "19401:124:12", - "nodes": [], "functionSelector": "81bad6f3", "implemented": false, "kind": "function", @@ -15742,7 +13502,6 @@ "id": 9157, "nodeType": "FunctionDefinition", "src": "19780:91:12", - "nodes": [], "functionSelector": "b96213e4", "implemented": false, "kind": "function", @@ -15853,7 +13612,6 @@ "id": 9168, "nodeType": "FunctionDefinition", "src": "20039:109:12", - "nodes": [], "functionSelector": "81409b91", "implemented": false, "kind": "function", @@ -15991,7 +13749,6 @@ "id": 9171, "nodeType": "FunctionDefinition", "src": "20184:37:12", - "nodes": [], "functionSelector": "3fdf4e15", "implemented": false, "kind": "function", @@ -16019,7 +13776,6 @@ "id": 9178, "nodeType": "FunctionDefinition", "src": "20349:66:12", - "nodes": [], "functionSelector": "bd6af434", "implemented": false, "kind": "function", @@ -16103,7 +13859,6 @@ "id": 9187, "nodeType": "FunctionDefinition", "src": "20498:84:12", - "nodes": [], "functionSelector": "f30c7ba3", "implemented": false, "kind": "function", @@ -16214,7 +13969,6 @@ "id": 9192, "nodeType": "FunctionDefinition", "src": "20614:48:12", - "nodes": [], "functionSelector": "ff483c54", "implemented": false, "kind": "function", @@ -16271,7 +14025,6 @@ "id": 9197, "nodeType": "FunctionDefinition", "src": "20812:58:12", - "nodes": [], "functionSelector": "9711715a", "implemented": false, "kind": "function", @@ -16327,7 +14080,6 @@ "id": 9204, "nodeType": "FunctionDefinition", "src": "21062:70:12", - "nodes": [], "functionSelector": "44d7f0a4", "implemented": false, "kind": "function", @@ -16411,7 +14163,6 @@ "id": 9213, "nodeType": "FunctionDefinition", "src": "21236:103:12", - "nodes": [], "functionSelector": "6ba3ba2b", "implemented": false, "kind": "function", @@ -16522,7 +14273,6 @@ "id": 9220, "nodeType": "FunctionDefinition", "src": "21456:82:12", - "nodes": [], "functionSelector": "31ba3498", "implemented": false, "kind": "function", @@ -16606,7 +14356,6 @@ "id": 9229, "nodeType": "FunctionDefinition", "src": "21759:98:12", - "nodes": [], "functionSelector": "7ca29682", "implemented": false, "kind": "function", @@ -16717,7 +14466,6 @@ "id": 9238, "nodeType": "FunctionDefinition", "src": "21980:109:12", - "nodes": [], "functionSelector": "71ee464d", "implemented": false, "kind": "function", @@ -16828,7 +14576,6 @@ "id": 9247, "nodeType": "FunctionDefinition", "src": "22323:104:12", - "nodes": [], "functionSelector": "84d52b7a", "implemented": false, "kind": "function", @@ -16939,7 +14686,6 @@ "id": 9254, "nodeType": "FunctionDefinition", "src": "22561:88:12", - "nodes": [], "functionSelector": "98680034", "implemented": false, "kind": "function", @@ -17023,7 +14769,6 @@ "id": 9259, "nodeType": "FunctionDefinition", "src": "22760:45:12", - "nodes": [], "functionSelector": "9ebf6827", "implemented": false, "kind": "function", @@ -17079,7 +14824,6 @@ "id": 9265, "nodeType": "FunctionDefinition", "src": "22911:61:12", - "nodes": [], "documentation": { "id": 9260, "nodeType": "StructuredDocumentation", @@ -17141,7 +14885,6 @@ "id": 9270, "nodeType": "FunctionDefinition", "src": "23107:48:12", - "nodes": [], "functionSelector": "d9bbf3a1", "implemented": false, "kind": "function", @@ -17197,7 +14940,6 @@ "id": 9275, "nodeType": "FunctionDefinition", "src": "23365:43:12", - "nodes": [], "functionSelector": "0f29772b", "implemented": false, "kind": "function", @@ -17253,7 +14995,6 @@ "id": 9282, "nodeType": "FunctionDefinition", "src": "23465:64:12", - "nodes": [], "functionSelector": "d74c83a4", "implemented": false, "kind": "function", @@ -17336,7 +15077,6 @@ "id": 9289, "nodeType": "FunctionDefinition", "src": "23662:59:12", - "nodes": [], "functionSelector": "f2830f7b", "implemented": false, "kind": "function", @@ -17419,7 +15159,6 @@ "id": 9294, "nodeType": "FunctionDefinition", "src": "23920:50:12", - "nodes": [], "functionSelector": "57e22dde", "implemented": false, "kind": "function", @@ -17476,7 +15215,6 @@ "id": 9301, "nodeType": "FunctionDefinition", "src": "23975:69:12", - "nodes": [], "functionSelector": "4074e0a8", "implemented": false, "kind": "function", @@ -17561,7 +15299,6 @@ "id": 9310, "nodeType": "FunctionDefinition", "src": "24049:87:12", - "nodes": [], "functionSelector": "efb77a75", "implemented": false, "kind": "function", @@ -17674,7 +15411,6 @@ "id": 9316, "nodeType": "FunctionDefinition", "src": "24141:62:12", - "nodes": [], "functionSelector": "1d9e269e", "implemented": false, "kind": "function", @@ -17740,7 +15476,6 @@ "id": 9321, "nodeType": "FunctionDefinition", "src": "24297:52:12", - "nodes": [], "functionSelector": "997a0222", "implemented": false, "kind": "function", @@ -17797,7 +15532,6 @@ "id": 9327, "nodeType": "FunctionDefinition", "src": "24354:64:12", - "nodes": [], "functionSelector": "3ce969e6", "implemented": false, "kind": "function", @@ -17863,7 +15597,6 @@ "id": 9334, "nodeType": "FunctionDefinition", "src": "24482:79:12", - "nodes": [], "functionSelector": "d92d8efd", "implemented": false, "kind": "function", @@ -17948,7 +15681,6 @@ "id": 9339, "nodeType": "FunctionDefinition", "src": "24642:51:12", - "nodes": [], "functionSelector": "ea060291", "implemented": false, "kind": "function", @@ -18005,7 +15737,6 @@ "id": 9344, "nodeType": "FunctionDefinition", "src": "24793:43:12", - "nodes": [], "functionSelector": "be646da1", "implemented": false, "kind": "function", @@ -18061,7 +15792,6 @@ "id": 9351, "nodeType": "FunctionDefinition", "src": "24935:59:12", - "nodes": [], "functionSelector": "4d8abc4b", "implemented": false, "kind": "function", @@ -18147,9 +15877,6 @@ "baseName": { "id": 9028, "name": "VmSafe", - "nameLocations": [ - "17145:6:12" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "17145:6:12" diff --git a/out/console.sol/console.json b/out/console.sol/console.json index c59149f..494465f 100644 --- a/out/console.sol/console.json +++ b/out/console.sol/console.json @@ -1,64 +1,16 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212201ce7f2bd38eeb571b8b11d8dcfcd60bba05a1a395a18814b612f6568d00f6c0164736f6c63430008110033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122051d8b5082dbf3862e9d424856c78fca6660ef4de728a06b71d17694397308ccb64736f6c634300080f0033", "sourceMap": "66:66622:13:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;66:66622:13;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212201ce7f2bd38eeb571b8b11d8dcfcd60bba05a1a395a18814b612f6568d00f6c0164736f6c63430008110033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122051d8b5082dbf3862e9d424856c78fca6660ef4de728a06b71d17694397308ccb64736f6c634300080f0033", "sourceMap": "66:66622:13:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/console.sol\":\"console\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/console.sol": "console" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/console.sol", "id": 17417, @@ -74,7 +26,6 @@ "id": 9354, "nodeType": "PragmaDirective", "src": "32:32:13", - "nodes": [], "literals": [ "solidity", ">=", @@ -94,7 +45,6 @@ "id": 9360, "nodeType": "VariableDeclaration", "src": "88:86:13", - "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE_ADDRESS", @@ -168,7 +118,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "123:51:13", @@ -184,12 +133,10 @@ "id": 9376, "nodeType": "FunctionDefinition", "src": "181:376:13", - "nodes": [], "body": { "id": 9375, "nodeType": "Block", "src": "241:316:13", - "nodes": [], "statements": [ { "assignments": [ @@ -243,7 +190,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "283:6:13", "memberName": "length", "nodeType": "MemberAccess", "src": "275:14:13", @@ -494,12 +440,10 @@ "id": 9387, "nodeType": "FunctionDefinition", "src": "563:95:13", - "nodes": [], "body": { "id": 9386, "nodeType": "Block", "src": "592:66:13", - "nodes": [], "statements": [ { "expression": { @@ -547,7 +491,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "622:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "618:23:13", @@ -562,7 +505,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "618:32:13", @@ -597,7 +539,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "602:49:13", @@ -639,12 +580,10 @@ "id": 9401, "nodeType": "FunctionDefinition", "src": "664:111:13", - "nodes": [], "body": { "id": 9400, "nodeType": "Block", "src": "702:73:13", - "nodes": [], "statements": [ { "expression": { @@ -708,7 +647,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "732:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "728:23:13", @@ -723,7 +661,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "728:39:13", @@ -758,7 +695,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "712:56:13", @@ -828,12 +764,10 @@ "id": 9415, "nodeType": "FunctionDefinition", "src": "781:114:13", - "nodes": [], "body": { "id": 9414, "nodeType": "Block", "src": "821:74:13", - "nodes": [], "statements": [ { "expression": { @@ -897,7 +831,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "851:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "847:23:13", @@ -912,7 +845,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "847:40:13", @@ -947,7 +879,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "831:57:13", @@ -1017,12 +948,10 @@ "id": 9429, "nodeType": "FunctionDefinition", "src": "901:127:13", - "nodes": [], "body": { "id": 9428, "nodeType": "Block", "src": "952:76:13", - "nodes": [], "statements": [ { "expression": { @@ -1086,7 +1015,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "982:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "978:23:13", @@ -1101,7 +1029,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "978:42:13", @@ -1136,7 +1063,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "962:59:13", @@ -1206,12 +1132,10 @@ "id": 9443, "nodeType": "FunctionDefinition", "src": "1034:114:13", - "nodes": [], "body": { "id": 9442, "nodeType": "Block", "src": "1074:74:13", - "nodes": [], "statements": [ { "expression": { @@ -1275,7 +1199,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1104:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1100:23:13", @@ -1290,7 +1213,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1100:40:13", @@ -1325,7 +1247,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1084:57:13", @@ -1395,12 +1316,10 @@ "id": 9457, "nodeType": "FunctionDefinition", "src": "1154:123:13", - "nodes": [], "body": { "id": 9456, "nodeType": "Block", "src": "1200:77:13", - "nodes": [], "statements": [ { "expression": { @@ -1464,7 +1383,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1230:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1226:23:13", @@ -1479,7 +1397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1226:43:13", @@ -1514,7 +1431,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1210:60:13", @@ -1585,12 +1501,10 @@ "id": 9471, "nodeType": "FunctionDefinition", "src": "1283:124:13", - "nodes": [], "body": { "id": 9470, "nodeType": "Block", "src": "1332:75:13", - "nodes": [], "statements": [ { "expression": { @@ -1654,7 +1568,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1362:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1358:23:13", @@ -1669,7 +1582,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1358:41:13", @@ -1704,7 +1616,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1342:58:13", @@ -1774,12 +1685,10 @@ "id": 9485, "nodeType": "FunctionDefinition", "src": "1413:120:13", - "nodes": [], "body": { "id": 9484, "nodeType": "Block", "src": "1457:76:13", - "nodes": [], "statements": [ { "expression": { @@ -1843,7 +1752,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1487:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1483:23:13", @@ -1858,7 +1766,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1483:42:13", @@ -1893,7 +1800,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1467:59:13", @@ -1963,12 +1869,10 @@ "id": 9499, "nodeType": "FunctionDefinition", "src": "1539:120:13", - "nodes": [], "body": { "id": 9498, "nodeType": "Block", "src": "1583:76:13", - "nodes": [], "statements": [ { "expression": { @@ -2032,7 +1936,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1613:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1609:23:13", @@ -2047,7 +1950,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1609:42:13", @@ -2082,7 +1984,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1593:59:13", @@ -2152,12 +2053,10 @@ "id": 9513, "nodeType": "FunctionDefinition", "src": "1665:120:13", - "nodes": [], "body": { "id": 9512, "nodeType": "Block", "src": "1709:76:13", - "nodes": [], "statements": [ { "expression": { @@ -2221,7 +2120,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1739:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1735:23:13", @@ -2236,7 +2134,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:42:13", @@ -2271,7 +2168,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1719:59:13", @@ -2341,12 +2237,10 @@ "id": 9527, "nodeType": "FunctionDefinition", "src": "1791:120:13", - "nodes": [], "body": { "id": 9526, "nodeType": "Block", "src": "1835:76:13", - "nodes": [], "statements": [ { "expression": { @@ -2410,7 +2304,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1865:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1861:23:13", @@ -2425,7 +2318,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1861:42:13", @@ -2460,7 +2352,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1845:59:13", @@ -2530,12 +2421,10 @@ "id": 9541, "nodeType": "FunctionDefinition", "src": "1917:120:13", - "nodes": [], "body": { "id": 9540, "nodeType": "Block", "src": "1961:76:13", - "nodes": [], "statements": [ { "expression": { @@ -2599,7 +2488,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1991:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1987:23:13", @@ -2614,7 +2502,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1987:42:13", @@ -2649,7 +2536,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1971:59:13", @@ -2719,12 +2605,10 @@ "id": 9555, "nodeType": "FunctionDefinition", "src": "2043:120:13", - "nodes": [], "body": { "id": 9554, "nodeType": "Block", "src": "2087:76:13", - "nodes": [], "statements": [ { "expression": { @@ -2788,7 +2672,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2117:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2113:23:13", @@ -2803,7 +2686,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2113:42:13", @@ -2838,7 +2720,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2097:59:13", @@ -2908,12 +2789,10 @@ "id": 9569, "nodeType": "FunctionDefinition", "src": "2169:120:13", - "nodes": [], "body": { "id": 9568, "nodeType": "Block", "src": "2213:76:13", - "nodes": [], "statements": [ { "expression": { @@ -2977,7 +2856,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2243:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2239:23:13", @@ -2992,7 +2870,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2239:42:13", @@ -3027,7 +2904,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2223:59:13", @@ -3097,12 +2973,10 @@ "id": 9583, "nodeType": "FunctionDefinition", "src": "2295:120:13", - "nodes": [], "body": { "id": 9582, "nodeType": "Block", "src": "2339:76:13", - "nodes": [], "statements": [ { "expression": { @@ -3166,7 +3040,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2369:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2365:23:13", @@ -3181,7 +3054,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2365:42:13", @@ -3216,7 +3088,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2349:59:13", @@ -3286,12 +3157,10 @@ "id": 9597, "nodeType": "FunctionDefinition", "src": "2421:120:13", - "nodes": [], "body": { "id": 9596, "nodeType": "Block", "src": "2465:76:13", - "nodes": [], "statements": [ { "expression": { @@ -3355,7 +3224,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2495:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2491:23:13", @@ -3370,7 +3238,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2491:42:13", @@ -3405,7 +3272,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2475:59:13", @@ -3475,12 +3341,10 @@ "id": 9611, "nodeType": "FunctionDefinition", "src": "2547:123:13", - "nodes": [], "body": { "id": 9610, "nodeType": "Block", "src": "2593:77:13", - "nodes": [], "statements": [ { "expression": { @@ -3544,7 +3408,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2623:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2619:23:13", @@ -3559,7 +3422,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2619:43:13", @@ -3594,7 +3456,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2603:60:13", @@ -3664,12 +3525,10 @@ "id": 9625, "nodeType": "FunctionDefinition", "src": "2676:123:13", - "nodes": [], "body": { "id": 9624, "nodeType": "Block", "src": "2722:77:13", - "nodes": [], "statements": [ { "expression": { @@ -3733,7 +3592,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2752:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2748:23:13", @@ -3748,7 +3606,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2748:43:13", @@ -3783,7 +3640,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2732:60:13", @@ -3853,12 +3709,10 @@ "id": 9639, "nodeType": "FunctionDefinition", "src": "2805:123:13", - "nodes": [], "body": { "id": 9638, "nodeType": "Block", "src": "2851:77:13", - "nodes": [], "statements": [ { "expression": { @@ -3922,7 +3776,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2881:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2877:23:13", @@ -3937,7 +3790,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2877:43:13", @@ -3972,7 +3824,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2861:60:13", @@ -4042,12 +3893,10 @@ "id": 9653, "nodeType": "FunctionDefinition", "src": "2934:123:13", - "nodes": [], "body": { "id": 9652, "nodeType": "Block", "src": "2980:77:13", - "nodes": [], "statements": [ { "expression": { @@ -4111,7 +3960,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3010:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3006:23:13", @@ -4126,7 +3974,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3006:43:13", @@ -4161,7 +4008,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2990:60:13", @@ -4231,12 +4077,10 @@ "id": 9667, "nodeType": "FunctionDefinition", "src": "3063:123:13", - "nodes": [], "body": { "id": 9666, "nodeType": "Block", "src": "3109:77:13", - "nodes": [], "statements": [ { "expression": { @@ -4300,7 +4144,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3139:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3135:23:13", @@ -4315,7 +4158,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3135:43:13", @@ -4350,7 +4192,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3119:60:13", @@ -4420,12 +4261,10 @@ "id": 9681, "nodeType": "FunctionDefinition", "src": "3192:123:13", - "nodes": [], "body": { "id": 9680, "nodeType": "Block", "src": "3238:77:13", - "nodes": [], "statements": [ { "expression": { @@ -4489,7 +4328,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3268:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3264:23:13", @@ -4504,7 +4342,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3264:43:13", @@ -4539,7 +4376,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3248:60:13", @@ -4609,12 +4445,10 @@ "id": 9695, "nodeType": "FunctionDefinition", "src": "3321:123:13", - "nodes": [], "body": { "id": 9694, "nodeType": "Block", "src": "3367:77:13", - "nodes": [], "statements": [ { "expression": { @@ -4678,7 +4512,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3397:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3393:23:13", @@ -4693,7 +4526,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3393:43:13", @@ -4728,7 +4560,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3377:60:13", @@ -4798,12 +4629,10 @@ "id": 9709, "nodeType": "FunctionDefinition", "src": "3450:123:13", - "nodes": [], "body": { "id": 9708, "nodeType": "Block", "src": "3496:77:13", - "nodes": [], "statements": [ { "expression": { @@ -4867,7 +4696,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3526:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3522:23:13", @@ -4882,7 +4710,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3522:43:13", @@ -4917,7 +4744,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3506:60:13", @@ -4987,12 +4813,10 @@ "id": 9723, "nodeType": "FunctionDefinition", "src": "3579:123:13", - "nodes": [], "body": { "id": 9722, "nodeType": "Block", "src": "3625:77:13", - "nodes": [], "statements": [ { "expression": { @@ -5056,7 +4880,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3655:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3651:23:13", @@ -5071,7 +4894,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3651:43:13", @@ -5106,7 +4928,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3635:60:13", @@ -5176,12 +4997,10 @@ "id": 9737, "nodeType": "FunctionDefinition", "src": "3708:123:13", - "nodes": [], "body": { "id": 9736, "nodeType": "Block", "src": "3754:77:13", - "nodes": [], "statements": [ { "expression": { @@ -5245,7 +5064,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3784:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3780:23:13", @@ -5260,7 +5078,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3780:43:13", @@ -5295,7 +5112,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3764:60:13", @@ -5365,12 +5181,10 @@ "id": 9751, "nodeType": "FunctionDefinition", "src": "3837:123:13", - "nodes": [], "body": { "id": 9750, "nodeType": "Block", "src": "3883:77:13", - "nodes": [], "statements": [ { "expression": { @@ -5434,7 +5248,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3913:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3909:23:13", @@ -5449,7 +5262,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3909:43:13", @@ -5484,7 +5296,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3893:60:13", @@ -5554,12 +5365,10 @@ "id": 9765, "nodeType": "FunctionDefinition", "src": "3966:123:13", - "nodes": [], "body": { "id": 9764, "nodeType": "Block", "src": "4012:77:13", - "nodes": [], "statements": [ { "expression": { @@ -5623,7 +5432,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4042:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4038:23:13", @@ -5638,7 +5446,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4038:43:13", @@ -5673,7 +5480,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4022:60:13", @@ -5743,12 +5549,10 @@ "id": 9779, "nodeType": "FunctionDefinition", "src": "4095:123:13", - "nodes": [], "body": { "id": 9778, "nodeType": "Block", "src": "4141:77:13", - "nodes": [], "statements": [ { "expression": { @@ -5812,7 +5616,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4171:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4167:23:13", @@ -5827,7 +5630,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4167:43:13", @@ -5862,7 +5664,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4151:60:13", @@ -5932,12 +5733,10 @@ "id": 9793, "nodeType": "FunctionDefinition", "src": "4224:123:13", - "nodes": [], "body": { "id": 9792, "nodeType": "Block", "src": "4270:77:13", - "nodes": [], "statements": [ { "expression": { @@ -6001,7 +5800,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4300:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4296:23:13", @@ -6016,7 +5814,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4296:43:13", @@ -6051,7 +5848,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4280:60:13", @@ -6121,12 +5917,10 @@ "id": 9807, "nodeType": "FunctionDefinition", "src": "4353:123:13", - "nodes": [], "body": { "id": 9806, "nodeType": "Block", "src": "4399:77:13", - "nodes": [], "statements": [ { "expression": { @@ -6190,7 +5984,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4429:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4425:23:13", @@ -6205,7 +5998,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4425:43:13", @@ -6240,7 +6032,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4409:60:13", @@ -6310,12 +6101,10 @@ "id": 9821, "nodeType": "FunctionDefinition", "src": "4482:123:13", - "nodes": [], "body": { "id": 9820, "nodeType": "Block", "src": "4528:77:13", - "nodes": [], "statements": [ { "expression": { @@ -6379,7 +6168,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4558:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4554:23:13", @@ -6394,7 +6182,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4554:43:13", @@ -6429,7 +6216,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4538:60:13", @@ -6499,12 +6285,10 @@ "id": 9835, "nodeType": "FunctionDefinition", "src": "4611:123:13", - "nodes": [], "body": { "id": 9834, "nodeType": "Block", "src": "4657:77:13", - "nodes": [], "statements": [ { "expression": { @@ -6568,7 +6352,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4687:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4683:23:13", @@ -6583,7 +6366,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4683:43:13", @@ -6618,7 +6400,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4667:60:13", @@ -6688,12 +6469,10 @@ "id": 9849, "nodeType": "FunctionDefinition", "src": "4740:123:13", - "nodes": [], "body": { "id": 9848, "nodeType": "Block", "src": "4786:77:13", - "nodes": [], "statements": [ { "expression": { @@ -6757,7 +6536,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4816:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4812:23:13", @@ -6772,7 +6550,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4812:43:13", @@ -6807,7 +6584,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4796:60:13", @@ -6877,12 +6653,10 @@ "id": 9863, "nodeType": "FunctionDefinition", "src": "4869:123:13", - "nodes": [], "body": { "id": 9862, "nodeType": "Block", "src": "4915:77:13", - "nodes": [], "statements": [ { "expression": { @@ -6946,7 +6720,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4945:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4941:23:13", @@ -6961,7 +6734,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4941:43:13", @@ -6996,7 +6768,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4925:60:13", @@ -7066,12 +6837,10 @@ "id": 9877, "nodeType": "FunctionDefinition", "src": "4998:123:13", - "nodes": [], "body": { "id": 9876, "nodeType": "Block", "src": "5044:77:13", - "nodes": [], "statements": [ { "expression": { @@ -7135,7 +6904,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5074:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5070:23:13", @@ -7150,7 +6918,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5070:43:13", @@ -7185,7 +6952,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5054:60:13", @@ -7255,12 +7021,10 @@ "id": 9891, "nodeType": "FunctionDefinition", "src": "5127:123:13", - "nodes": [], "body": { "id": 9890, "nodeType": "Block", "src": "5173:77:13", - "nodes": [], "statements": [ { "expression": { @@ -7324,7 +7088,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5203:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5199:23:13", @@ -7339,7 +7102,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5199:43:13", @@ -7374,7 +7136,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5183:60:13", @@ -7444,12 +7205,10 @@ "id": 9905, "nodeType": "FunctionDefinition", "src": "5256:123:13", - "nodes": [], "body": { "id": 9904, "nodeType": "Block", "src": "5302:77:13", - "nodes": [], "statements": [ { "expression": { @@ -7513,7 +7272,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5332:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5328:23:13", @@ -7528,7 +7286,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5328:43:13", @@ -7563,7 +7320,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5312:60:13", @@ -7633,12 +7389,10 @@ "id": 9919, "nodeType": "FunctionDefinition", "src": "5385:123:13", - "nodes": [], "body": { "id": 9918, "nodeType": "Block", "src": "5431:77:13", - "nodes": [], "statements": [ { "expression": { @@ -7702,7 +7456,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5461:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5457:23:13", @@ -7717,7 +7470,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5457:43:13", @@ -7752,7 +7504,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5441:60:13", @@ -7822,12 +7573,10 @@ "id": 9933, "nodeType": "FunctionDefinition", "src": "5514:110:13", - "nodes": [], "body": { "id": 9932, "nodeType": "Block", "src": "5550:74:13", - "nodes": [], "statements": [ { "expression": { @@ -7891,7 +7640,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5580:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5576:23:13", @@ -7906,7 +7654,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5576:40:13", @@ -7941,7 +7688,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5560:57:13", @@ -8011,12 +7757,10 @@ "id": 9947, "nodeType": "FunctionDefinition", "src": "5630:121:13", - "nodes": [], "body": { "id": 9946, "nodeType": "Block", "src": "5675:76:13", - "nodes": [], "statements": [ { "expression": { @@ -8080,7 +7824,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5705:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5701:23:13", @@ -8095,7 +7838,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5701:42:13", @@ -8130,7 +7872,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5685:59:13", @@ -8200,12 +7941,10 @@ "id": 9961, "nodeType": "FunctionDefinition", "src": "5757:110:13", - "nodes": [], "body": { "id": 9960, "nodeType": "Block", "src": "5793:74:13", - "nodes": [], "statements": [ { "expression": { @@ -8269,7 +8008,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5823:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5819:23:13", @@ -8284,7 +8022,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5819:40:13", @@ -8319,7 +8056,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5803:57:13", @@ -8389,12 +8125,10 @@ "id": 9975, "nodeType": "FunctionDefinition", "src": "5873:116:13", - "nodes": [], "body": { "id": 9974, "nodeType": "Block", "src": "5912:77:13", - "nodes": [], "statements": [ { "expression": { @@ -8458,7 +8192,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5942:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5938:23:13", @@ -8473,7 +8206,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5938:43:13", @@ -8508,7 +8240,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5922:60:13", @@ -8579,12 +8310,10 @@ "id": 9992, "nodeType": "FunctionDefinition", "src": "5995:128:13", - "nodes": [], "body": { "id": 9991, "nodeType": "Block", "src": "6040:83:13", - "nodes": [], "statements": [ { "expression": { @@ -8664,7 +8393,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6070:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6066:23:13", @@ -8679,7 +8407,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6066:49:13", @@ -8714,7 +8441,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6050:66:13", @@ -8811,12 +8537,10 @@ "id": 10009, "nodeType": "FunctionDefinition", "src": "6129:139:13", - "nodes": [], "body": { "id": 10008, "nodeType": "Block", "src": "6183:85:13", - "nodes": [], "statements": [ { "expression": { @@ -8896,7 +8620,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6213:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6209:23:13", @@ -8911,7 +8634,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6209:51:13", @@ -8946,7 +8668,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6193:68:13", @@ -9043,12 +8764,10 @@ "id": 10026, "nodeType": "FunctionDefinition", "src": "6274:128:13", - "nodes": [], "body": { "id": 10025, "nodeType": "Block", "src": "6319:83:13", - "nodes": [], "statements": [ { "expression": { @@ -9128,7 +8847,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6349:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6345:23:13", @@ -9143,7 +8861,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6345:49:13", @@ -9178,7 +8895,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6329:66:13", @@ -9275,12 +8991,10 @@ "id": 10043, "nodeType": "FunctionDefinition", "src": "6408:134:13", - "nodes": [], "body": { "id": 10042, "nodeType": "Block", "src": "6456:86:13", - "nodes": [], "statements": [ { "expression": { @@ -9360,7 +9074,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6486:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6482:23:13", @@ -9375,7 +9088,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6482:52:13", @@ -9410,7 +9122,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6466:69:13", @@ -9508,12 +9219,10 @@ "id": 10060, "nodeType": "FunctionDefinition", "src": "6548:139:13", - "nodes": [], "body": { "id": 10059, "nodeType": "Block", "src": "6602:85:13", - "nodes": [], "statements": [ { "expression": { @@ -9593,7 +9302,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6632:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6628:23:13", @@ -9608,7 +9316,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6628:51:13", @@ -9643,7 +9350,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6612:68:13", @@ -9740,12 +9446,10 @@ "id": 10077, "nodeType": "FunctionDefinition", "src": "6693:150:13", - "nodes": [], "body": { "id": 10076, "nodeType": "Block", "src": "6756:87:13", - "nodes": [], "statements": [ { "expression": { @@ -9825,7 +9529,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6786:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6782:23:13", @@ -9840,7 +9543,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6782:53:13", @@ -9875,7 +9577,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6766:70:13", @@ -9972,12 +9673,10 @@ "id": 10094, "nodeType": "FunctionDefinition", "src": "6849:139:13", - "nodes": [], "body": { "id": 10093, "nodeType": "Block", "src": "6903:85:13", - "nodes": [], "statements": [ { "expression": { @@ -10057,7 +9756,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6933:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6929:23:13", @@ -10072,7 +9770,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6929:51:13", @@ -10107,7 +9804,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6913:68:13", @@ -10204,12 +9900,10 @@ "id": 10111, "nodeType": "FunctionDefinition", "src": "6994:145:13", - "nodes": [], "body": { "id": 10110, "nodeType": "Block", "src": "7051:88:13", - "nodes": [], "statements": [ { "expression": { @@ -10289,7 +9983,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7081:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7077:23:13", @@ -10304,7 +9997,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7077:54:13", @@ -10339,7 +10031,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7061:71:13", @@ -10437,12 +10128,10 @@ "id": 10128, "nodeType": "FunctionDefinition", "src": "7145:128:13", - "nodes": [], "body": { "id": 10127, "nodeType": "Block", "src": "7190:83:13", - "nodes": [], "statements": [ { "expression": { @@ -10522,7 +10211,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7220:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7216:23:13", @@ -10537,7 +10225,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7216:49:13", @@ -10572,7 +10259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7200:66:13", @@ -10669,12 +10355,10 @@ "id": 10145, "nodeType": "FunctionDefinition", "src": "7279:139:13", - "nodes": [], "body": { "id": 10144, "nodeType": "Block", "src": "7333:85:13", - "nodes": [], "statements": [ { "expression": { @@ -10754,7 +10438,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7363:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7359:23:13", @@ -10769,7 +10452,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7359:51:13", @@ -10804,7 +10486,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7343:68:13", @@ -10901,12 +10582,10 @@ "id": 10162, "nodeType": "FunctionDefinition", "src": "7424:128:13", - "nodes": [], "body": { "id": 10161, "nodeType": "Block", "src": "7469:83:13", - "nodes": [], "statements": [ { "expression": { @@ -10986,7 +10665,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7499:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7495:23:13", @@ -11001,7 +10679,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7495:49:13", @@ -11036,7 +10713,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7479:66:13", @@ -11133,12 +10809,10 @@ "id": 10179, "nodeType": "FunctionDefinition", "src": "7558:134:13", - "nodes": [], "body": { "id": 10178, "nodeType": "Block", "src": "7606:86:13", - "nodes": [], "statements": [ { "expression": { @@ -11218,7 +10892,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7636:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7632:23:13", @@ -11233,7 +10906,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7632:52:13", @@ -11268,7 +10940,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7616:69:13", @@ -11366,12 +11037,10 @@ "id": 10196, "nodeType": "FunctionDefinition", "src": "7698:134:13", - "nodes": [], "body": { "id": 10195, "nodeType": "Block", "src": "7746:86:13", - "nodes": [], "statements": [ { "expression": { @@ -11451,7 +11120,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7776:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7772:23:13", @@ -11466,7 +11134,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7772:52:13", @@ -11501,7 +11168,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7756:69:13", @@ -11599,12 +11265,10 @@ "id": 10213, "nodeType": "FunctionDefinition", "src": "7838:145:13", - "nodes": [], "body": { "id": 10212, "nodeType": "Block", "src": "7895:88:13", - "nodes": [], "statements": [ { "expression": { @@ -11684,7 +11348,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7925:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7921:23:13", @@ -11699,7 +11362,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7921:54:13", @@ -11734,7 +11396,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7905:71:13", @@ -11832,12 +11493,10 @@ "id": 10230, "nodeType": "FunctionDefinition", "src": "7989:134:13", - "nodes": [], "body": { "id": 10229, "nodeType": "Block", "src": "8037:86:13", - "nodes": [], "statements": [ { "expression": { @@ -11917,7 +11576,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8067:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8063:23:13", @@ -11932,7 +11590,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8063:52:13", @@ -11967,7 +11624,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8047:69:13", @@ -12065,12 +11721,10 @@ "id": 10247, "nodeType": "FunctionDefinition", "src": "8129:140:13", - "nodes": [], "body": { "id": 10246, "nodeType": "Block", "src": "8180:89:13", - "nodes": [], "statements": [ { "expression": { @@ -12150,7 +11804,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8210:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8206:23:13", @@ -12165,7 +11818,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8206:55:13", @@ -12200,7 +11852,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8190:72:13", @@ -12299,12 +11950,10 @@ "id": 10267, "nodeType": "FunctionDefinition", "src": "8275:146:13", - "nodes": [], "body": { "id": 10266, "nodeType": "Block", "src": "8329:92:13", - "nodes": [], "statements": [ { "expression": { @@ -12400,7 +12049,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8359:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8355:23:13", @@ -12415,7 +12063,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8355:58:13", @@ -12450,7 +12097,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8339:75:13", @@ -12574,12 +12220,10 @@ "id": 10287, "nodeType": "FunctionDefinition", "src": "8427:157:13", - "nodes": [], "body": { "id": 10286, "nodeType": "Block", "src": "8490:94:13", - "nodes": [], "statements": [ { "expression": { @@ -12675,7 +12319,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8520:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8516:23:13", @@ -12690,7 +12333,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8516:60:13", @@ -12725,7 +12367,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8500:77:13", @@ -12849,12 +12490,10 @@ "id": 10307, "nodeType": "FunctionDefinition", "src": "8590:146:13", - "nodes": [], "body": { "id": 10306, "nodeType": "Block", "src": "8644:92:13", - "nodes": [], "statements": [ { "expression": { @@ -12950,7 +12589,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8674:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8670:23:13", @@ -12965,7 +12603,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8670:58:13", @@ -13000,7 +12637,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8654:75:13", @@ -13124,12 +12760,10 @@ "id": 10327, "nodeType": "FunctionDefinition", "src": "8742:152:13", - "nodes": [], "body": { "id": 10326, "nodeType": "Block", "src": "8799:95:13", - "nodes": [], "statements": [ { "expression": { @@ -13225,7 +12859,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8829:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8825:23:13", @@ -13240,7 +12873,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8825:61:13", @@ -13275,7 +12907,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8809:78:13", @@ -13400,12 +13031,10 @@ "id": 10347, "nodeType": "FunctionDefinition", "src": "8900:157:13", - "nodes": [], "body": { "id": 10346, "nodeType": "Block", "src": "8963:94:13", - "nodes": [], "statements": [ { "expression": { @@ -13501,7 +13130,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8993:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8989:23:13", @@ -13516,7 +13144,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8989:60:13", @@ -13551,7 +13178,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8973:77:13", @@ -13675,12 +13301,10 @@ "id": 10367, "nodeType": "FunctionDefinition", "src": "9063:168:13", - "nodes": [], "body": { "id": 10366, "nodeType": "Block", "src": "9135:96:13", - "nodes": [], "statements": [ { "expression": { @@ -13776,7 +13400,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9165:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9161:23:13", @@ -13791,7 +13414,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9161:62:13", @@ -13826,7 +13448,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9145:79:13", @@ -13950,12 +13571,10 @@ "id": 10387, "nodeType": "FunctionDefinition", "src": "9237:157:13", - "nodes": [], "body": { "id": 10386, "nodeType": "Block", "src": "9300:94:13", - "nodes": [], "statements": [ { "expression": { @@ -14051,7 +13670,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9330:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9326:23:13", @@ -14066,7 +13684,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9326:60:13", @@ -14101,7 +13718,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9310:77:13", @@ -14225,12 +13841,10 @@ "id": 10407, "nodeType": "FunctionDefinition", "src": "9400:163:13", - "nodes": [], "body": { "id": 10406, "nodeType": "Block", "src": "9466:97:13", - "nodes": [], "statements": [ { "expression": { @@ -14326,7 +13940,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9496:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9492:23:13", @@ -14341,7 +13954,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9492:63:13", @@ -14376,7 +13988,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9476:80:13", @@ -14501,12 +14112,10 @@ "id": 10427, "nodeType": "FunctionDefinition", "src": "9569:146:13", - "nodes": [], "body": { "id": 10426, "nodeType": "Block", "src": "9623:92:13", - "nodes": [], "statements": [ { "expression": { @@ -14602,7 +14211,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9653:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9649:23:13", @@ -14617,7 +14225,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9649:58:13", @@ -14652,7 +14259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9633:75:13", @@ -14776,12 +14382,10 @@ "id": 10447, "nodeType": "FunctionDefinition", "src": "9721:157:13", - "nodes": [], "body": { "id": 10446, "nodeType": "Block", "src": "9784:94:13", - "nodes": [], "statements": [ { "expression": { @@ -14877,7 +14481,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9814:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9810:23:13", @@ -14892,7 +14495,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9810:60:13", @@ -14927,7 +14529,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9794:77:13", @@ -15051,12 +14652,10 @@ "id": 10467, "nodeType": "FunctionDefinition", "src": "9884:146:13", - "nodes": [], "body": { "id": 10466, "nodeType": "Block", "src": "9938:92:13", - "nodes": [], "statements": [ { "expression": { @@ -15152,7 +14751,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9968:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9964:23:13", @@ -15167,7 +14765,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9964:58:13", @@ -15202,7 +14799,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9948:75:13", @@ -15326,12 +14922,10 @@ "id": 10487, "nodeType": "FunctionDefinition", "src": "10036:152:13", - "nodes": [], "body": { "id": 10486, "nodeType": "Block", "src": "10093:95:13", - "nodes": [], "statements": [ { "expression": { @@ -15427,7 +15021,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10123:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10119:23:13", @@ -15442,7 +15035,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10119:61:13", @@ -15477,7 +15069,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10103:78:13", @@ -15602,12 +15193,10 @@ "id": 10507, "nodeType": "FunctionDefinition", "src": "10194:152:13", - "nodes": [], "body": { "id": 10506, "nodeType": "Block", "src": "10251:95:13", - "nodes": [], "statements": [ { "expression": { @@ -15703,7 +15292,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10281:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10277:23:13", @@ -15718,7 +15306,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10277:61:13", @@ -15753,7 +15340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10261:78:13", @@ -15878,12 +15464,10 @@ "id": 10527, "nodeType": "FunctionDefinition", "src": "10352:163:13", - "nodes": [], "body": { "id": 10526, "nodeType": "Block", "src": "10418:97:13", - "nodes": [], "statements": [ { "expression": { @@ -15979,7 +15563,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10448:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10444:23:13", @@ -15994,7 +15577,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10444:63:13", @@ -16029,7 +15611,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10428:80:13", @@ -16154,12 +15735,10 @@ "id": 10547, "nodeType": "FunctionDefinition", "src": "10521:152:13", - "nodes": [], "body": { "id": 10546, "nodeType": "Block", "src": "10578:95:13", - "nodes": [], "statements": [ { "expression": { @@ -16255,7 +15834,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10608:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10604:23:13", @@ -16270,7 +15848,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10604:61:13", @@ -16305,7 +15882,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10588:78:13", @@ -16430,12 +16006,10 @@ "id": 10567, "nodeType": "FunctionDefinition", "src": "10679:158:13", - "nodes": [], "body": { "id": 10566, "nodeType": "Block", "src": "10739:98:13", - "nodes": [], "statements": [ { "expression": { @@ -16531,7 +16105,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10769:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10765:23:13", @@ -16546,7 +16119,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10765:64:13", @@ -16581,7 +16153,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10749:81:13", @@ -16707,12 +16278,10 @@ "id": 10587, "nodeType": "FunctionDefinition", "src": "10843:157:13", - "nodes": [], "body": { "id": 10586, "nodeType": "Block", "src": "10906:94:13", - "nodes": [], "statements": [ { "expression": { @@ -16808,7 +16377,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10936:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10932:23:13", @@ -16823,7 +16391,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10932:60:13", @@ -16858,7 +16425,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10916:77:13", @@ -16982,12 +16548,10 @@ "id": 10607, "nodeType": "FunctionDefinition", "src": "11006:168:13", - "nodes": [], "body": { "id": 10606, "nodeType": "Block", "src": "11078:96:13", - "nodes": [], "statements": [ { "expression": { @@ -17083,7 +16647,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11108:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11104:23:13", @@ -17098,7 +16661,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11104:62:13", @@ -17133,7 +16695,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11088:79:13", @@ -17257,12 +16818,10 @@ "id": 10627, "nodeType": "FunctionDefinition", "src": "11180:157:13", - "nodes": [], "body": { "id": 10626, "nodeType": "Block", "src": "11243:94:13", - "nodes": [], "statements": [ { "expression": { @@ -17358,7 +16917,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11273:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11269:23:13", @@ -17373,7 +16931,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11269:60:13", @@ -17408,7 +16965,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11253:77:13", @@ -17532,12 +17088,10 @@ "id": 10647, "nodeType": "FunctionDefinition", "src": "11343:163:13", - "nodes": [], "body": { "id": 10646, "nodeType": "Block", "src": "11409:97:13", - "nodes": [], "statements": [ { "expression": { @@ -17633,7 +17187,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11439:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11435:23:13", @@ -17648,7 +17201,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11435:63:13", @@ -17683,7 +17235,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11419:80:13", @@ -17808,12 +17359,10 @@ "id": 10667, "nodeType": "FunctionDefinition", "src": "11512:168:13", - "nodes": [], "body": { "id": 10666, "nodeType": "Block", "src": "11584:96:13", - "nodes": [], "statements": [ { "expression": { @@ -17909,7 +17458,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11614:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11610:23:13", @@ -17924,7 +17472,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11610:62:13", @@ -17959,7 +17506,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11594:79:13", @@ -18083,12 +17629,10 @@ "id": 10687, "nodeType": "FunctionDefinition", "src": "11686:179:13", - "nodes": [], "body": { "id": 10686, "nodeType": "Block", "src": "11767:98:13", - "nodes": [], "statements": [ { "expression": { @@ -18184,7 +17728,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11797:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11793:23:13", @@ -18199,7 +17742,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11793:64:13", @@ -18234,7 +17776,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11777:81:13", @@ -18358,12 +17899,10 @@ "id": 10707, "nodeType": "FunctionDefinition", "src": "11871:168:13", - "nodes": [], "body": { "id": 10706, "nodeType": "Block", "src": "11943:96:13", - "nodes": [], "statements": [ { "expression": { @@ -18459,7 +17998,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11973:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11969:23:13", @@ -18474,7 +18012,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11969:62:13", @@ -18509,7 +18046,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11953:79:13", @@ -18633,12 +18169,10 @@ "id": 10727, "nodeType": "FunctionDefinition", "src": "12045:174:13", - "nodes": [], "body": { "id": 10726, "nodeType": "Block", "src": "12120:99:13", - "nodes": [], "statements": [ { "expression": { @@ -18734,7 +18268,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12150:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12146:23:13", @@ -18749,7 +18282,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12146:65:13", @@ -18784,7 +18316,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12130:82:13", @@ -18909,12 +18440,10 @@ "id": 10747, "nodeType": "FunctionDefinition", "src": "12225:157:13", - "nodes": [], "body": { "id": 10746, "nodeType": "Block", "src": "12288:94:13", - "nodes": [], "statements": [ { "expression": { @@ -19010,7 +18539,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12318:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12314:23:13", @@ -19025,7 +18553,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12314:60:13", @@ -19060,7 +18587,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12298:77:13", @@ -19184,12 +18710,10 @@ "id": 10767, "nodeType": "FunctionDefinition", "src": "12388:168:13", - "nodes": [], "body": { "id": 10766, "nodeType": "Block", "src": "12460:96:13", - "nodes": [], "statements": [ { "expression": { @@ -19285,7 +18809,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12490:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12486:23:13", @@ -19300,7 +18823,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12486:62:13", @@ -19335,7 +18857,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12470:79:13", @@ -19459,12 +18980,10 @@ "id": 10787, "nodeType": "FunctionDefinition", "src": "12562:157:13", - "nodes": [], "body": { "id": 10786, "nodeType": "Block", "src": "12625:94:13", - "nodes": [], "statements": [ { "expression": { @@ -19560,7 +19079,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12655:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12651:23:13", @@ -19575,7 +19093,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12651:60:13", @@ -19610,7 +19127,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12635:77:13", @@ -19734,12 +19250,10 @@ "id": 10807, "nodeType": "FunctionDefinition", "src": "12725:163:13", - "nodes": [], "body": { "id": 10806, "nodeType": "Block", "src": "12791:97:13", - "nodes": [], "statements": [ { "expression": { @@ -19835,7 +19349,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12821:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12817:23:13", @@ -19850,7 +19363,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12817:63:13", @@ -19885,7 +19397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12801:80:13", @@ -20010,12 +19521,10 @@ "id": 10827, "nodeType": "FunctionDefinition", "src": "12894:163:13", - "nodes": [], "body": { "id": 10826, "nodeType": "Block", "src": "12960:97:13", - "nodes": [], "statements": [ { "expression": { @@ -20111,7 +19620,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12990:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12986:23:13", @@ -20126,7 +19634,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12986:63:13", @@ -20161,7 +19668,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12970:80:13", @@ -20286,12 +19792,10 @@ "id": 10847, "nodeType": "FunctionDefinition", "src": "13063:174:13", - "nodes": [], "body": { "id": 10846, "nodeType": "Block", "src": "13138:99:13", - "nodes": [], "statements": [ { "expression": { @@ -20387,7 +19891,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13168:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13164:23:13", @@ -20402,7 +19905,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13164:65:13", @@ -20437,7 +19939,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13148:82:13", @@ -20562,12 +20063,10 @@ "id": 10867, "nodeType": "FunctionDefinition", "src": "13243:163:13", - "nodes": [], "body": { "id": 10866, "nodeType": "Block", "src": "13309:97:13", - "nodes": [], "statements": [ { "expression": { @@ -20663,7 +20162,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13339:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13335:23:13", @@ -20678,7 +20176,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13335:63:13", @@ -20713,7 +20210,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13319:80:13", @@ -20838,12 +20334,10 @@ "id": 10887, "nodeType": "FunctionDefinition", "src": "13412:169:13", - "nodes": [], "body": { "id": 10886, "nodeType": "Block", "src": "13481:100:13", - "nodes": [], "statements": [ { "expression": { @@ -20939,7 +20433,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13511:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13507:23:13", @@ -20954,7 +20447,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13507:66:13", @@ -20989,7 +20481,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13491:83:13", @@ -21115,12 +20606,10 @@ "id": 10907, "nodeType": "FunctionDefinition", "src": "13587:146:13", - "nodes": [], "body": { "id": 10906, "nodeType": "Block", "src": "13641:92:13", - "nodes": [], "statements": [ { "expression": { @@ -21216,7 +20705,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13671:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13667:23:13", @@ -21231,7 +20719,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13667:58:13", @@ -21266,7 +20753,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13651:75:13", @@ -21390,12 +20876,10 @@ "id": 10927, "nodeType": "FunctionDefinition", "src": "13739:157:13", - "nodes": [], "body": { "id": 10926, "nodeType": "Block", "src": "13802:94:13", - "nodes": [], "statements": [ { "expression": { @@ -21491,7 +20975,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13832:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13828:23:13", @@ -21506,7 +20989,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13828:60:13", @@ -21541,7 +21023,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13812:77:13", @@ -21665,12 +21146,10 @@ "id": 10947, "nodeType": "FunctionDefinition", "src": "13902:146:13", - "nodes": [], "body": { "id": 10946, "nodeType": "Block", "src": "13956:92:13", - "nodes": [], "statements": [ { "expression": { @@ -21766,7 +21245,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13986:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13982:23:13", @@ -21781,7 +21259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13982:58:13", @@ -21816,7 +21293,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13966:75:13", @@ -21940,12 +21416,10 @@ "id": 10967, "nodeType": "FunctionDefinition", "src": "14054:152:13", - "nodes": [], "body": { "id": 10966, "nodeType": "Block", "src": "14111:95:13", - "nodes": [], "statements": [ { "expression": { @@ -22041,7 +21515,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14141:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14137:23:13", @@ -22056,7 +21529,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14137:61:13", @@ -22091,7 +21563,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14121:78:13", @@ -22216,12 +21687,10 @@ "id": 10987, "nodeType": "FunctionDefinition", "src": "14212:157:13", - "nodes": [], "body": { "id": 10986, "nodeType": "Block", "src": "14275:94:13", - "nodes": [], "statements": [ { "expression": { @@ -22317,7 +21786,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14305:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14301:23:13", @@ -22332,7 +21800,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14301:60:13", @@ -22367,7 +21834,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14285:77:13", @@ -22491,12 +21957,10 @@ "id": 11007, "nodeType": "FunctionDefinition", "src": "14375:168:13", - "nodes": [], "body": { "id": 11006, "nodeType": "Block", "src": "14447:96:13", - "nodes": [], "statements": [ { "expression": { @@ -22592,7 +22056,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14477:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14473:23:13", @@ -22607,7 +22070,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14473:62:13", @@ -22642,7 +22104,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14457:79:13", @@ -22766,12 +22227,10 @@ "id": 11027, "nodeType": "FunctionDefinition", "src": "14549:157:13", - "nodes": [], "body": { "id": 11026, "nodeType": "Block", "src": "14612:94:13", - "nodes": [], "statements": [ { "expression": { @@ -22867,7 +22326,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14642:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14638:23:13", @@ -22882,7 +22340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14638:60:13", @@ -22917,7 +22374,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14622:77:13", @@ -23041,12 +22497,10 @@ "id": 11047, "nodeType": "FunctionDefinition", "src": "14712:163:13", - "nodes": [], "body": { "id": 11046, "nodeType": "Block", "src": "14778:97:13", - "nodes": [], "statements": [ { "expression": { @@ -23142,7 +22596,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14808:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14804:23:13", @@ -23157,7 +22610,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14804:63:13", @@ -23192,7 +22644,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14788:80:13", @@ -23317,12 +22768,10 @@ "id": 11067, "nodeType": "FunctionDefinition", "src": "14881:146:13", - "nodes": [], "body": { "id": 11066, "nodeType": "Block", "src": "14935:92:13", - "nodes": [], "statements": [ { "expression": { @@ -23418,7 +22867,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14965:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14961:23:13", @@ -23433,7 +22881,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14961:58:13", @@ -23468,7 +22915,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14945:75:13", @@ -23592,12 +23038,10 @@ "id": 11087, "nodeType": "FunctionDefinition", "src": "15033:157:13", - "nodes": [], "body": { "id": 11086, "nodeType": "Block", "src": "15096:94:13", - "nodes": [], "statements": [ { "expression": { @@ -23693,7 +23137,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15126:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15122:23:13", @@ -23708,7 +23151,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15122:60:13", @@ -23743,7 +23185,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15106:77:13", @@ -23867,12 +23308,10 @@ "id": 11107, "nodeType": "FunctionDefinition", "src": "15196:146:13", - "nodes": [], "body": { "id": 11106, "nodeType": "Block", "src": "15250:92:13", - "nodes": [], "statements": [ { "expression": { @@ -23968,7 +23407,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15280:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15276:23:13", @@ -23983,7 +23421,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15276:58:13", @@ -24018,7 +23455,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15260:75:13", @@ -24142,12 +23578,10 @@ "id": 11127, "nodeType": "FunctionDefinition", "src": "15348:152:13", - "nodes": [], "body": { "id": 11126, "nodeType": "Block", "src": "15405:95:13", - "nodes": [], "statements": [ { "expression": { @@ -24243,7 +23677,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15435:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15431:23:13", @@ -24258,7 +23691,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15431:61:13", @@ -24293,7 +23725,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15415:78:13", @@ -24418,12 +23849,10 @@ "id": 11147, "nodeType": "FunctionDefinition", "src": "15506:152:13", - "nodes": [], "body": { "id": 11146, "nodeType": "Block", "src": "15563:95:13", - "nodes": [], "statements": [ { "expression": { @@ -24519,7 +23948,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15593:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15589:23:13", @@ -24534,7 +23962,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15589:61:13", @@ -24569,7 +23996,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15573:78:13", @@ -24694,12 +24120,10 @@ "id": 11167, "nodeType": "FunctionDefinition", "src": "15664:163:13", - "nodes": [], "body": { "id": 11166, "nodeType": "Block", "src": "15730:97:13", - "nodes": [], "statements": [ { "expression": { @@ -24795,7 +24219,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15760:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15756:23:13", @@ -24810,7 +24233,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15756:63:13", @@ -24845,7 +24267,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15740:80:13", @@ -24970,12 +24391,10 @@ "id": 11187, "nodeType": "FunctionDefinition", "src": "15833:152:13", - "nodes": [], "body": { "id": 11186, "nodeType": "Block", "src": "15890:95:13", - "nodes": [], "statements": [ { "expression": { @@ -25071,7 +24490,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15920:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15916:23:13", @@ -25086,7 +24504,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15916:61:13", @@ -25121,7 +24538,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15900:78:13", @@ -25246,12 +24662,10 @@ "id": 11207, "nodeType": "FunctionDefinition", "src": "15991:158:13", - "nodes": [], "body": { "id": 11206, "nodeType": "Block", "src": "16051:98:13", - "nodes": [], "statements": [ { "expression": { @@ -25347,7 +24761,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16081:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16077:23:13", @@ -25362,7 +24775,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16077:64:13", @@ -25397,7 +24809,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16061:81:13", @@ -25523,12 +24934,10 @@ "id": 11227, "nodeType": "FunctionDefinition", "src": "16155:152:13", - "nodes": [], "body": { "id": 11226, "nodeType": "Block", "src": "16212:95:13", - "nodes": [], "statements": [ { "expression": { @@ -25624,7 +25033,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16242:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16238:23:13", @@ -25639,7 +25047,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16238:61:13", @@ -25674,7 +25081,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16222:78:13", @@ -25799,12 +25205,10 @@ "id": 11247, "nodeType": "FunctionDefinition", "src": "16313:163:13", - "nodes": [], "body": { "id": 11246, "nodeType": "Block", "src": "16379:97:13", - "nodes": [], "statements": [ { "expression": { @@ -25900,7 +25304,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16409:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16405:23:13", @@ -25915,7 +25318,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16405:63:13", @@ -25950,7 +25352,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16389:80:13", @@ -26075,12 +25476,10 @@ "id": 11267, "nodeType": "FunctionDefinition", "src": "16482:152:13", - "nodes": [], "body": { "id": 11266, "nodeType": "Block", "src": "16539:95:13", - "nodes": [], "statements": [ { "expression": { @@ -26176,7 +25575,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16569:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16565:23:13", @@ -26191,7 +25589,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16565:61:13", @@ -26226,7 +25623,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16549:78:13", @@ -26351,12 +25747,10 @@ "id": 11287, "nodeType": "FunctionDefinition", "src": "16640:158:13", - "nodes": [], "body": { "id": 11286, "nodeType": "Block", "src": "16700:98:13", - "nodes": [], "statements": [ { "expression": { @@ -26452,7 +25846,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16730:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16726:23:13", @@ -26467,7 +25860,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16726:64:13", @@ -26502,7 +25894,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16710:81:13", @@ -26628,12 +26019,10 @@ "id": 11307, "nodeType": "FunctionDefinition", "src": "16804:163:13", - "nodes": [], "body": { "id": 11306, "nodeType": "Block", "src": "16870:97:13", - "nodes": [], "statements": [ { "expression": { @@ -26729,7 +26118,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16900:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16896:23:13", @@ -26744,7 +26132,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16896:63:13", @@ -26779,7 +26166,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16880:80:13", @@ -26904,12 +26290,10 @@ "id": 11327, "nodeType": "FunctionDefinition", "src": "16973:174:13", - "nodes": [], "body": { "id": 11326, "nodeType": "Block", "src": "17048:99:13", - "nodes": [], "statements": [ { "expression": { @@ -27005,7 +26389,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17078:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17074:23:13", @@ -27020,7 +26403,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17074:65:13", @@ -27055,7 +26437,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17058:82:13", @@ -27180,12 +26561,10 @@ "id": 11347, "nodeType": "FunctionDefinition", "src": "17153:163:13", - "nodes": [], "body": { "id": 11346, "nodeType": "Block", "src": "17219:97:13", - "nodes": [], "statements": [ { "expression": { @@ -27281,7 +26660,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17249:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17245:23:13", @@ -27296,7 +26674,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17245:63:13", @@ -27331,7 +26708,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17229:80:13", @@ -27456,12 +26832,10 @@ "id": 11367, "nodeType": "FunctionDefinition", "src": "17322:169:13", - "nodes": [], "body": { "id": 11366, "nodeType": "Block", "src": "17391:100:13", - "nodes": [], "statements": [ { "expression": { @@ -27557,7 +26931,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17421:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17417:23:13", @@ -27572,7 +26945,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17417:66:13", @@ -27607,7 +26979,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17401:83:13", @@ -27733,12 +27104,10 @@ "id": 11387, "nodeType": "FunctionDefinition", "src": "17497:152:13", - "nodes": [], "body": { "id": 11386, "nodeType": "Block", "src": "17554:95:13", - "nodes": [], "statements": [ { "expression": { @@ -27834,7 +27203,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17584:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17580:23:13", @@ -27849,7 +27217,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17580:61:13", @@ -27884,7 +27251,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17564:78:13", @@ -28009,12 +27375,10 @@ "id": 11407, "nodeType": "FunctionDefinition", "src": "17655:163:13", - "nodes": [], "body": { "id": 11406, "nodeType": "Block", "src": "17721:97:13", - "nodes": [], "statements": [ { "expression": { @@ -28110,7 +27474,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17751:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17747:23:13", @@ -28125,7 +27488,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17747:63:13", @@ -28160,7 +27522,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17731:80:13", @@ -28285,12 +27646,10 @@ "id": 11427, "nodeType": "FunctionDefinition", "src": "17824:152:13", - "nodes": [], "body": { "id": 11426, "nodeType": "Block", "src": "17881:95:13", - "nodes": [], "statements": [ { "expression": { @@ -28386,7 +27745,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17911:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17907:23:13", @@ -28401,7 +27759,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17907:61:13", @@ -28436,7 +27793,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17891:78:13", @@ -28561,12 +27917,10 @@ "id": 11447, "nodeType": "FunctionDefinition", "src": "17982:158:13", - "nodes": [], "body": { "id": 11446, "nodeType": "Block", "src": "18042:98:13", - "nodes": [], "statements": [ { "expression": { @@ -28662,7 +28016,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18072:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18068:23:13", @@ -28677,7 +28030,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18068:64:13", @@ -28712,7 +28064,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18052:81:13", @@ -28838,12 +28189,10 @@ "id": 11467, "nodeType": "FunctionDefinition", "src": "18146:158:13", - "nodes": [], "body": { "id": 11466, "nodeType": "Block", "src": "18206:98:13", - "nodes": [], "statements": [ { "expression": { @@ -28939,7 +28288,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18236:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18232:23:13", @@ -28954,7 +28302,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18232:64:13", @@ -28989,7 +28336,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18216:81:13", @@ -29115,12 +28461,10 @@ "id": 11487, "nodeType": "FunctionDefinition", "src": "18310:169:13", - "nodes": [], "body": { "id": 11486, "nodeType": "Block", "src": "18379:100:13", - "nodes": [], "statements": [ { "expression": { @@ -29216,7 +28560,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18409:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18405:23:13", @@ -29231,7 +28574,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18405:66:13", @@ -29266,7 +28608,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18389:83:13", @@ -29392,12 +28733,10 @@ "id": 11507, "nodeType": "FunctionDefinition", "src": "18485:158:13", - "nodes": [], "body": { "id": 11506, "nodeType": "Block", "src": "18545:98:13", - "nodes": [], "statements": [ { "expression": { @@ -29493,7 +28832,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18575:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18571:23:13", @@ -29508,7 +28846,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18571:64:13", @@ -29543,7 +28880,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18555:81:13", @@ -29669,12 +29005,10 @@ "id": 11527, "nodeType": "FunctionDefinition", "src": "18649:164:13", - "nodes": [], "body": { "id": 11526, "nodeType": "Block", "src": "18712:101:13", - "nodes": [], "statements": [ { "expression": { @@ -29770,7 +29104,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18742:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18738:23:13", @@ -29785,7 +29118,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18738:67:13", @@ -29820,7 +29152,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18722:84:13", @@ -29947,12 +29278,10 @@ "id": 11550, "nodeType": "FunctionDefinition", "src": "18819:164:13", - "nodes": [], "body": { "id": 11549, "nodeType": "Block", "src": "18882:101:13", - "nodes": [], "statements": [ { "expression": { @@ -30064,7 +29393,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18912:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18908:23:13", @@ -30079,7 +29407,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18908:67:13", @@ -30114,7 +29441,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18892:84:13", @@ -30265,12 +29591,10 @@ "id": 11573, "nodeType": "FunctionDefinition", "src": "18989:175:13", - "nodes": [], "body": { "id": 11572, "nodeType": "Block", "src": "19061:103:13", - "nodes": [], "statements": [ { "expression": { @@ -30382,7 +29706,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19091:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19087:23:13", @@ -30397,7 +29720,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19087:69:13", @@ -30432,7 +29754,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19071:86:13", @@ -30583,12 +29904,10 @@ "id": 11596, "nodeType": "FunctionDefinition", "src": "19170:164:13", - "nodes": [], "body": { "id": 11595, "nodeType": "Block", "src": "19233:101:13", - "nodes": [], "statements": [ { "expression": { @@ -30700,7 +30019,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19263:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19259:23:13", @@ -30715,7 +30033,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19259:67:13", @@ -30750,7 +30067,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19243:84:13", @@ -30901,12 +30217,10 @@ "id": 11619, "nodeType": "FunctionDefinition", "src": "19340:170:13", - "nodes": [], "body": { "id": 11618, "nodeType": "Block", "src": "19406:104:13", - "nodes": [], "statements": [ { "expression": { @@ -31018,7 +30332,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19436:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19432:23:13", @@ -31033,7 +30346,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19432:70:13", @@ -31068,7 +30380,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19416:87:13", @@ -31220,12 +30531,10 @@ "id": 11642, "nodeType": "FunctionDefinition", "src": "19516:175:13", - "nodes": [], "body": { "id": 11641, "nodeType": "Block", "src": "19588:103:13", - "nodes": [], "statements": [ { "expression": { @@ -31337,7 +30646,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19618:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19614:23:13", @@ -31352,7 +30660,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19614:69:13", @@ -31387,7 +30694,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19598:86:13", @@ -31538,12 +30844,10 @@ "id": 11665, "nodeType": "FunctionDefinition", "src": "19697:186:13", - "nodes": [], "body": { "id": 11664, "nodeType": "Block", "src": "19778:105:13", - "nodes": [], "statements": [ { "expression": { @@ -31655,7 +30959,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19808:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19804:23:13", @@ -31670,7 +30973,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19804:71:13", @@ -31705,7 +31007,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19788:88:13", @@ -31856,12 +31157,10 @@ "id": 11688, "nodeType": "FunctionDefinition", "src": "19889:175:13", - "nodes": [], "body": { "id": 11687, "nodeType": "Block", "src": "19961:103:13", - "nodes": [], "statements": [ { "expression": { @@ -31973,7 +31272,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19991:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19987:23:13", @@ -31988,7 +31286,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19987:69:13", @@ -32023,7 +31320,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19971:86:13", @@ -32174,12 +31470,10 @@ "id": 11711, "nodeType": "FunctionDefinition", "src": "20070:181:13", - "nodes": [], "body": { "id": 11710, "nodeType": "Block", "src": "20145:106:13", - "nodes": [], "statements": [ { "expression": { @@ -32291,7 +31585,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20175:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20171:23:13", @@ -32306,7 +31599,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20171:72:13", @@ -32341,7 +31633,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20155:89:13", @@ -32493,12 +31784,10 @@ "id": 11734, "nodeType": "FunctionDefinition", "src": "20257:164:13", - "nodes": [], "body": { "id": 11733, "nodeType": "Block", "src": "20320:101:13", - "nodes": [], "statements": [ { "expression": { @@ -32610,7 +31899,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20350:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20346:23:13", @@ -32625,7 +31913,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20346:67:13", @@ -32660,7 +31947,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20330:84:13", @@ -32811,12 +32097,10 @@ "id": 11757, "nodeType": "FunctionDefinition", "src": "20427:175:13", - "nodes": [], "body": { "id": 11756, "nodeType": "Block", "src": "20499:103:13", - "nodes": [], "statements": [ { "expression": { @@ -32928,7 +32212,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20529:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20525:23:13", @@ -32943,7 +32226,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20525:69:13", @@ -32978,7 +32260,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20509:86:13", @@ -33129,12 +32410,10 @@ "id": 11780, "nodeType": "FunctionDefinition", "src": "20608:164:13", - "nodes": [], "body": { "id": 11779, "nodeType": "Block", "src": "20671:101:13", - "nodes": [], "statements": [ { "expression": { @@ -33246,7 +32525,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20701:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20697:23:13", @@ -33261,7 +32539,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20697:67:13", @@ -33296,7 +32573,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20681:84:13", @@ -33447,12 +32723,10 @@ "id": 11803, "nodeType": "FunctionDefinition", "src": "20778:170:13", - "nodes": [], "body": { "id": 11802, "nodeType": "Block", "src": "20844:104:13", - "nodes": [], "statements": [ { "expression": { @@ -33564,7 +32838,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20874:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20870:23:13", @@ -33579,7 +32852,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20870:70:13", @@ -33614,7 +32886,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20854:87:13", @@ -33766,12 +33037,10 @@ "id": 11826, "nodeType": "FunctionDefinition", "src": "20954:170:13", - "nodes": [], "body": { "id": 11825, "nodeType": "Block", "src": "21020:104:13", - "nodes": [], "statements": [ { "expression": { @@ -33883,7 +33152,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21050:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21046:23:13", @@ -33898,7 +33166,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21046:70:13", @@ -33933,7 +33200,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21030:87:13", @@ -34085,12 +33351,10 @@ "id": 11849, "nodeType": "FunctionDefinition", "src": "21130:181:13", - "nodes": [], "body": { "id": 11848, "nodeType": "Block", "src": "21205:106:13", - "nodes": [], "statements": [ { "expression": { @@ -34202,7 +33466,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21235:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21231:23:13", @@ -34217,7 +33480,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21231:72:13", @@ -34252,7 +33514,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21215:89:13", @@ -34404,12 +33665,10 @@ "id": 11872, "nodeType": "FunctionDefinition", "src": "21317:170:13", - "nodes": [], "body": { "id": 11871, "nodeType": "Block", "src": "21383:104:13", - "nodes": [], "statements": [ { "expression": { @@ -34521,7 +33780,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21413:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21409:23:13", @@ -34536,7 +33794,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21409:70:13", @@ -34571,7 +33828,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21393:87:13", @@ -34723,12 +33979,10 @@ "id": 11895, "nodeType": "FunctionDefinition", "src": "21493:176:13", - "nodes": [], "body": { "id": 11894, "nodeType": "Block", "src": "21562:107:13", - "nodes": [], "statements": [ { "expression": { @@ -34840,7 +34094,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21592:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21588:23:13", @@ -34855,7 +34108,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21588:73:13", @@ -34890,7 +34142,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21572:90:13", @@ -35043,12 +34294,10 @@ "id": 11918, "nodeType": "FunctionDefinition", "src": "21675:175:13", - "nodes": [], "body": { "id": 11917, "nodeType": "Block", "src": "21747:103:13", - "nodes": [], "statements": [ { "expression": { @@ -35160,7 +34409,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21777:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21773:23:13", @@ -35175,7 +34423,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21773:69:13", @@ -35210,7 +34457,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21757:86:13", @@ -35361,12 +34607,10 @@ "id": 11941, "nodeType": "FunctionDefinition", "src": "21856:186:13", - "nodes": [], "body": { "id": 11940, "nodeType": "Block", "src": "21937:105:13", - "nodes": [], "statements": [ { "expression": { @@ -35478,7 +34722,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21967:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21963:23:13", @@ -35493,7 +34736,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21963:71:13", @@ -35528,7 +34770,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21947:88:13", @@ -35679,12 +34920,10 @@ "id": 11964, "nodeType": "FunctionDefinition", "src": "22048:175:13", - "nodes": [], "body": { "id": 11963, "nodeType": "Block", "src": "22120:103:13", - "nodes": [], "statements": [ { "expression": { @@ -35796,7 +35035,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22150:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22146:23:13", @@ -35811,7 +35049,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22146:69:13", @@ -35846,7 +35083,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22130:86:13", @@ -35997,12 +35233,10 @@ "id": 11987, "nodeType": "FunctionDefinition", "src": "22229:181:13", - "nodes": [], "body": { "id": 11986, "nodeType": "Block", "src": "22304:106:13", - "nodes": [], "statements": [ { "expression": { @@ -36114,7 +35348,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22334:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22330:23:13", @@ -36129,7 +35362,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22330:72:13", @@ -36164,7 +35396,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22314:89:13", @@ -36316,12 +35547,10 @@ "id": 12010, "nodeType": "FunctionDefinition", "src": "22416:186:13", - "nodes": [], "body": { "id": 12009, "nodeType": "Block", "src": "22497:105:13", - "nodes": [], "statements": [ { "expression": { @@ -36433,7 +35662,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22527:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22523:23:13", @@ -36448,7 +35676,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22523:71:13", @@ -36483,7 +35710,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22507:88:13", @@ -36634,12 +35860,10 @@ "id": 12033, "nodeType": "FunctionDefinition", "src": "22608:197:13", - "nodes": [], "body": { "id": 12032, "nodeType": "Block", "src": "22698:107:13", - "nodes": [], "statements": [ { "expression": { @@ -36751,7 +35975,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22728:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22724:23:13", @@ -36766,7 +35989,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22724:73:13", @@ -36801,7 +36023,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22708:90:13", @@ -36952,12 +36173,10 @@ "id": 12056, "nodeType": "FunctionDefinition", "src": "22811:186:13", - "nodes": [], "body": { "id": 12055, "nodeType": "Block", "src": "22892:105:13", - "nodes": [], "statements": [ { "expression": { @@ -37069,7 +36288,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22922:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22918:23:13", @@ -37084,7 +36302,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22918:71:13", @@ -37119,7 +36336,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22902:88:13", @@ -37270,12 +36486,10 @@ "id": 12079, "nodeType": "FunctionDefinition", "src": "23003:192:13", - "nodes": [], "body": { "id": 12078, "nodeType": "Block", "src": "23087:108:13", - "nodes": [], "statements": [ { "expression": { @@ -37387,7 +36601,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23117:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23113:23:13", @@ -37402,7 +36615,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23113:74:13", @@ -37437,7 +36649,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23097:91:13", @@ -37589,12 +36800,10 @@ "id": 12102, "nodeType": "FunctionDefinition", "src": "23201:175:13", - "nodes": [], "body": { "id": 12101, "nodeType": "Block", "src": "23273:103:13", - "nodes": [], "statements": [ { "expression": { @@ -37706,7 +36915,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23303:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23299:23:13", @@ -37721,7 +36929,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23299:69:13", @@ -37756,7 +36963,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23283:86:13", @@ -37907,12 +37113,10 @@ "id": 12125, "nodeType": "FunctionDefinition", "src": "23382:186:13", - "nodes": [], "body": { "id": 12124, "nodeType": "Block", "src": "23463:105:13", - "nodes": [], "statements": [ { "expression": { @@ -38024,7 +37228,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23493:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23489:23:13", @@ -38039,7 +37242,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23489:71:13", @@ -38074,7 +37276,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23473:88:13", @@ -38225,12 +37426,10 @@ "id": 12148, "nodeType": "FunctionDefinition", "src": "23574:175:13", - "nodes": [], "body": { "id": 12147, "nodeType": "Block", "src": "23646:103:13", - "nodes": [], "statements": [ { "expression": { @@ -38342,7 +37541,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23676:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23672:23:13", @@ -38357,7 +37555,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23672:69:13", @@ -38392,7 +37589,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23656:86:13", @@ -38543,12 +37739,10 @@ "id": 12171, "nodeType": "FunctionDefinition", "src": "23755:181:13", - "nodes": [], "body": { "id": 12170, "nodeType": "Block", "src": "23830:106:13", - "nodes": [], "statements": [ { "expression": { @@ -38660,7 +37854,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23860:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23856:23:13", @@ -38675,7 +37868,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23856:72:13", @@ -38710,7 +37902,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23840:89:13", @@ -38862,12 +38053,10 @@ "id": 12194, "nodeType": "FunctionDefinition", "src": "23942:181:13", - "nodes": [], "body": { "id": 12193, "nodeType": "Block", "src": "24017:106:13", - "nodes": [], "statements": [ { "expression": { @@ -38979,7 +38168,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24047:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24043:23:13", @@ -38994,7 +38182,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24043:72:13", @@ -39029,7 +38216,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24027:89:13", @@ -39181,12 +38367,10 @@ "id": 12217, "nodeType": "FunctionDefinition", "src": "24129:192:13", - "nodes": [], "body": { "id": 12216, "nodeType": "Block", "src": "24213:108:13", - "nodes": [], "statements": [ { "expression": { @@ -39298,7 +38482,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24243:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24239:23:13", @@ -39313,7 +38496,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24239:74:13", @@ -39348,7 +38530,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24223:91:13", @@ -39500,12 +38681,10 @@ "id": 12240, "nodeType": "FunctionDefinition", "src": "24327:181:13", - "nodes": [], "body": { "id": 12239, "nodeType": "Block", "src": "24402:106:13", - "nodes": [], "statements": [ { "expression": { @@ -39617,7 +38796,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24432:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24428:23:13", @@ -39632,7 +38810,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24428:72:13", @@ -39667,7 +38844,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24412:89:13", @@ -39819,12 +38995,10 @@ "id": 12263, "nodeType": "FunctionDefinition", "src": "24514:187:13", - "nodes": [], "body": { "id": 12262, "nodeType": "Block", "src": "24592:109:13", - "nodes": [], "statements": [ { "expression": { @@ -39936,7 +39110,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24622:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24618:23:13", @@ -39951,7 +39124,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24618:75:13", @@ -39986,7 +39158,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24602:92:13", @@ -40139,12 +39310,10 @@ "id": 12286, "nodeType": "FunctionDefinition", "src": "24707:164:13", - "nodes": [], "body": { "id": 12285, "nodeType": "Block", "src": "24770:101:13", - "nodes": [], "statements": [ { "expression": { @@ -40256,7 +39425,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24800:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24796:23:13", @@ -40271,7 +39439,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24796:67:13", @@ -40306,7 +39473,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24780:84:13", @@ -40457,12 +39623,10 @@ "id": 12309, "nodeType": "FunctionDefinition", "src": "24877:175:13", - "nodes": [], "body": { "id": 12308, "nodeType": "Block", "src": "24949:103:13", - "nodes": [], "statements": [ { "expression": { @@ -40574,7 +39738,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24979:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24975:23:13", @@ -40589,7 +39752,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24975:69:13", @@ -40624,7 +39786,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24959:86:13", @@ -40775,12 +39936,10 @@ "id": 12332, "nodeType": "FunctionDefinition", "src": "25058:164:13", - "nodes": [], "body": { "id": 12331, "nodeType": "Block", "src": "25121:101:13", - "nodes": [], "statements": [ { "expression": { @@ -40892,7 +40051,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25151:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25147:23:13", @@ -40907,7 +40065,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25147:67:13", @@ -40942,7 +40099,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25131:84:13", @@ -41093,12 +40249,10 @@ "id": 12355, "nodeType": "FunctionDefinition", "src": "25228:170:13", - "nodes": [], "body": { "id": 12354, "nodeType": "Block", "src": "25294:104:13", - "nodes": [], "statements": [ { "expression": { @@ -41210,7 +40364,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25324:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25320:23:13", @@ -41225,7 +40378,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25320:70:13", @@ -41260,7 +40412,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25304:87:13", @@ -41412,12 +40563,10 @@ "id": 12378, "nodeType": "FunctionDefinition", "src": "25404:175:13", - "nodes": [], "body": { "id": 12377, "nodeType": "Block", "src": "25476:103:13", - "nodes": [], "statements": [ { "expression": { @@ -41529,7 +40678,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25506:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25502:23:13", @@ -41544,7 +40692,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25502:69:13", @@ -41579,7 +40726,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25486:86:13", @@ -41730,12 +40876,10 @@ "id": 12401, "nodeType": "FunctionDefinition", "src": "25585:186:13", - "nodes": [], "body": { "id": 12400, "nodeType": "Block", "src": "25666:105:13", - "nodes": [], "statements": [ { "expression": { @@ -41847,7 +40991,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25696:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25692:23:13", @@ -41862,7 +41005,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25692:71:13", @@ -41897,7 +41039,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25676:88:13", @@ -42048,12 +41189,10 @@ "id": 12424, "nodeType": "FunctionDefinition", "src": "25777:175:13", - "nodes": [], "body": { "id": 12423, "nodeType": "Block", "src": "25849:103:13", - "nodes": [], "statements": [ { "expression": { @@ -42165,7 +41304,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25879:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25875:23:13", @@ -42180,7 +41318,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25875:69:13", @@ -42215,7 +41352,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25859:86:13", @@ -42366,12 +41502,10 @@ "id": 12447, "nodeType": "FunctionDefinition", "src": "25958:181:13", - "nodes": [], "body": { "id": 12446, "nodeType": "Block", "src": "26033:106:13", - "nodes": [], "statements": [ { "expression": { @@ -42483,7 +41617,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26063:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26059:23:13", @@ -42498,7 +41631,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26059:72:13", @@ -42533,7 +41665,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26043:89:13", @@ -42685,12 +41816,10 @@ "id": 12470, "nodeType": "FunctionDefinition", "src": "26145:164:13", - "nodes": [], "body": { "id": 12469, "nodeType": "Block", "src": "26208:101:13", - "nodes": [], "statements": [ { "expression": { @@ -42802,7 +41931,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26238:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26234:23:13", @@ -42817,7 +41945,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26234:67:13", @@ -42852,7 +41979,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26218:84:13", @@ -43003,12 +42129,10 @@ "id": 12493, "nodeType": "FunctionDefinition", "src": "26315:175:13", - "nodes": [], "body": { "id": 12492, "nodeType": "Block", "src": "26387:103:13", - "nodes": [], "statements": [ { "expression": { @@ -43120,7 +42244,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26417:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26413:23:13", @@ -43135,7 +42258,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26413:69:13", @@ -43170,7 +42292,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26397:86:13", @@ -43321,12 +42442,10 @@ "id": 12516, "nodeType": "FunctionDefinition", "src": "26496:164:13", - "nodes": [], "body": { "id": 12515, "nodeType": "Block", "src": "26559:101:13", - "nodes": [], "statements": [ { "expression": { @@ -43438,7 +42557,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26589:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26585:23:13", @@ -43453,7 +42571,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26585:67:13", @@ -43488,7 +42605,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26569:84:13", @@ -43639,12 +42755,10 @@ "id": 12539, "nodeType": "FunctionDefinition", "src": "26666:170:13", - "nodes": [], "body": { "id": 12538, "nodeType": "Block", "src": "26732:104:13", - "nodes": [], "statements": [ { "expression": { @@ -43756,7 +42870,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26762:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26758:23:13", @@ -43771,7 +42884,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26758:70:13", @@ -43806,7 +42918,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26742:87:13", @@ -43958,12 +43069,10 @@ "id": 12562, "nodeType": "FunctionDefinition", "src": "26842:170:13", - "nodes": [], "body": { "id": 12561, "nodeType": "Block", "src": "26908:104:13", - "nodes": [], "statements": [ { "expression": { @@ -44075,7 +43184,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26938:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26934:23:13", @@ -44090,7 +43198,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26934:70:13", @@ -44125,7 +43232,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26918:87:13", @@ -44277,12 +43383,10 @@ "id": 12585, "nodeType": "FunctionDefinition", "src": "27018:181:13", - "nodes": [], "body": { "id": 12584, "nodeType": "Block", "src": "27093:106:13", - "nodes": [], "statements": [ { "expression": { @@ -44394,7 +43498,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27123:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27119:23:13", @@ -44409,7 +43512,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27119:72:13", @@ -44444,7 +43546,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27103:89:13", @@ -44596,12 +43697,10 @@ "id": 12608, "nodeType": "FunctionDefinition", "src": "27205:170:13", - "nodes": [], "body": { "id": 12607, "nodeType": "Block", "src": "27271:104:13", - "nodes": [], "statements": [ { "expression": { @@ -44713,7 +43812,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27301:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27297:23:13", @@ -44728,7 +43826,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27297:70:13", @@ -44763,7 +43860,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27281:87:13", @@ -44915,12 +44011,10 @@ "id": 12631, "nodeType": "FunctionDefinition", "src": "27381:176:13", - "nodes": [], "body": { "id": 12630, "nodeType": "Block", "src": "27450:107:13", - "nodes": [], "statements": [ { "expression": { @@ -45032,7 +44126,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27480:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27476:23:13", @@ -45047,7 +44140,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27476:73:13", @@ -45082,7 +44174,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27460:90:13", @@ -45235,12 +44326,10 @@ "id": 12654, "nodeType": "FunctionDefinition", "src": "27563:170:13", - "nodes": [], "body": { "id": 12653, "nodeType": "Block", "src": "27629:104:13", - "nodes": [], "statements": [ { "expression": { @@ -45352,7 +44441,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27659:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27655:23:13", @@ -45367,7 +44455,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27655:70:13", @@ -45402,7 +44489,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27639:87:13", @@ -45554,12 +44640,10 @@ "id": 12677, "nodeType": "FunctionDefinition", "src": "27739:181:13", - "nodes": [], "body": { "id": 12676, "nodeType": "Block", "src": "27814:106:13", - "nodes": [], "statements": [ { "expression": { @@ -45671,7 +44755,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27844:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27840:23:13", @@ -45686,7 +44769,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27840:72:13", @@ -45721,7 +44803,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27824:89:13", @@ -45873,12 +44954,10 @@ "id": 12700, "nodeType": "FunctionDefinition", "src": "27926:170:13", - "nodes": [], "body": { "id": 12699, "nodeType": "Block", "src": "27992:104:13", - "nodes": [], "statements": [ { "expression": { @@ -45990,7 +45069,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28022:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28018:23:13", @@ -46005,7 +45083,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28018:70:13", @@ -46040,7 +45117,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28002:87:13", @@ -46192,12 +45268,10 @@ "id": 12723, "nodeType": "FunctionDefinition", "src": "28102:176:13", - "nodes": [], "body": { "id": 12722, "nodeType": "Block", "src": "28171:107:13", - "nodes": [], "statements": [ { "expression": { @@ -46309,7 +45383,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28201:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28197:23:13", @@ -46324,7 +45397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28197:73:13", @@ -46359,7 +45431,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28181:90:13", @@ -46512,12 +45583,10 @@ "id": 12746, "nodeType": "FunctionDefinition", "src": "28284:181:13", - "nodes": [], "body": { "id": 12745, "nodeType": "Block", "src": "28359:106:13", - "nodes": [], "statements": [ { "expression": { @@ -46629,7 +45698,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28389:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28385:23:13", @@ -46644,7 +45712,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28385:72:13", @@ -46679,7 +45746,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28369:89:13", @@ -46831,12 +45897,10 @@ "id": 12769, "nodeType": "FunctionDefinition", "src": "28471:192:13", - "nodes": [], "body": { "id": 12768, "nodeType": "Block", "src": "28555:108:13", - "nodes": [], "statements": [ { "expression": { @@ -46948,7 +46012,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28585:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28581:23:13", @@ -46963,7 +46026,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28581:74:13", @@ -46998,7 +46060,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28565:91:13", @@ -47150,12 +46211,10 @@ "id": 12792, "nodeType": "FunctionDefinition", "src": "28669:181:13", - "nodes": [], "body": { "id": 12791, "nodeType": "Block", "src": "28744:106:13", - "nodes": [], "statements": [ { "expression": { @@ -47267,7 +46326,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28774:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28770:23:13", @@ -47282,7 +46340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28770:72:13", @@ -47317,7 +46374,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28754:89:13", @@ -47469,12 +46525,10 @@ "id": 12815, "nodeType": "FunctionDefinition", "src": "28856:187:13", - "nodes": [], "body": { "id": 12814, "nodeType": "Block", "src": "28934:109:13", - "nodes": [], "statements": [ { "expression": { @@ -47586,7 +46640,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28964:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28960:23:13", @@ -47601,7 +46654,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28960:75:13", @@ -47636,7 +46688,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28944:92:13", @@ -47789,12 +46840,10 @@ "id": 12838, "nodeType": "FunctionDefinition", "src": "29049:170:13", - "nodes": [], "body": { "id": 12837, "nodeType": "Block", "src": "29115:104:13", - "nodes": [], "statements": [ { "expression": { @@ -47906,7 +46955,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29145:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29141:23:13", @@ -47921,7 +46969,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29141:70:13", @@ -47956,7 +47003,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29125:87:13", @@ -48108,12 +47154,10 @@ "id": 12861, "nodeType": "FunctionDefinition", "src": "29225:181:13", - "nodes": [], "body": { "id": 12860, "nodeType": "Block", "src": "29300:106:13", - "nodes": [], "statements": [ { "expression": { @@ -48225,7 +47269,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29330:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29326:23:13", @@ -48240,7 +47283,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29326:72:13", @@ -48275,7 +47317,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29310:89:13", @@ -48427,12 +47468,10 @@ "id": 12884, "nodeType": "FunctionDefinition", "src": "29412:170:13", - "nodes": [], "body": { "id": 12883, "nodeType": "Block", "src": "29478:104:13", - "nodes": [], "statements": [ { "expression": { @@ -48544,7 +47583,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29508:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29504:23:13", @@ -48559,7 +47597,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29504:70:13", @@ -48594,7 +47631,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29488:87:13", @@ -48746,12 +47782,10 @@ "id": 12907, "nodeType": "FunctionDefinition", "src": "29588:176:13", - "nodes": [], "body": { "id": 12906, "nodeType": "Block", "src": "29657:107:13", - "nodes": [], "statements": [ { "expression": { @@ -48863,7 +47897,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29687:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29683:23:13", @@ -48878,7 +47911,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29683:73:13", @@ -48913,7 +47945,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29667:90:13", @@ -49066,12 +48097,10 @@ "id": 12930, "nodeType": "FunctionDefinition", "src": "29770:176:13", - "nodes": [], "body": { "id": 12929, "nodeType": "Block", "src": "29839:107:13", - "nodes": [], "statements": [ { "expression": { @@ -49183,7 +48212,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29869:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29865:23:13", @@ -49198,7 +48226,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29865:73:13", @@ -49233,7 +48260,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29849:90:13", @@ -49386,12 +48412,10 @@ "id": 12953, "nodeType": "FunctionDefinition", "src": "29952:187:13", - "nodes": [], "body": { "id": 12952, "nodeType": "Block", "src": "30030:109:13", - "nodes": [], "statements": [ { "expression": { @@ -49503,7 +48527,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30060:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30056:23:13", @@ -49518,7 +48541,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30056:75:13", @@ -49553,7 +48575,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30040:92:13", @@ -49706,12 +48727,10 @@ "id": 12976, "nodeType": "FunctionDefinition", "src": "30145:176:13", - "nodes": [], "body": { "id": 12975, "nodeType": "Block", "src": "30214:107:13", - "nodes": [], "statements": [ { "expression": { @@ -49823,7 +48842,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30244:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30240:23:13", @@ -49838,7 +48856,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30240:73:13", @@ -49873,7 +48890,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30224:90:13", @@ -50026,12 +49042,10 @@ "id": 12999, "nodeType": "FunctionDefinition", "src": "30327:182:13", - "nodes": [], "body": { "id": 12998, "nodeType": "Block", "src": "30399:110:13", - "nodes": [], "statements": [ { "expression": { @@ -50143,7 +49157,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30429:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30425:23:13", @@ -50158,7 +49171,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30425:76:13", @@ -50193,7 +49205,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30409:93:13", @@ -50347,12 +49358,10 @@ "id": 13022, "nodeType": "FunctionDefinition", "src": "30515:175:13", - "nodes": [], "body": { "id": 13021, "nodeType": "Block", "src": "30587:103:13", - "nodes": [], "statements": [ { "expression": { @@ -50464,7 +49473,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30617:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30613:23:13", @@ -50479,7 +49487,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30613:69:13", @@ -50514,7 +49521,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30597:86:13", @@ -50665,12 +49671,10 @@ "id": 13045, "nodeType": "FunctionDefinition", "src": "30696:186:13", - "nodes": [], "body": { "id": 13044, "nodeType": "Block", "src": "30777:105:13", - "nodes": [], "statements": [ { "expression": { @@ -50782,7 +49786,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30807:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30803:23:13", @@ -50797,7 +49800,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30803:71:13", @@ -50832,7 +49834,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30787:88:13", @@ -50983,12 +49984,10 @@ "id": 13068, "nodeType": "FunctionDefinition", "src": "30888:175:13", - "nodes": [], "body": { "id": 13067, "nodeType": "Block", "src": "30960:103:13", - "nodes": [], "statements": [ { "expression": { @@ -51100,7 +50099,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30990:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30986:23:13", @@ -51115,7 +50113,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30986:69:13", @@ -51150,7 +50147,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30970:86:13", @@ -51301,12 +50297,10 @@ "id": 13091, "nodeType": "FunctionDefinition", "src": "31069:181:13", - "nodes": [], "body": { "id": 13090, "nodeType": "Block", "src": "31144:106:13", - "nodes": [], "statements": [ { "expression": { @@ -51418,7 +50412,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31174:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31170:23:13", @@ -51433,7 +50426,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31170:72:13", @@ -51468,7 +50460,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31154:89:13", @@ -51620,12 +50611,10 @@ "id": 13114, "nodeType": "FunctionDefinition", "src": "31256:186:13", - "nodes": [], "body": { "id": 13113, "nodeType": "Block", "src": "31337:105:13", - "nodes": [], "statements": [ { "expression": { @@ -51737,7 +50726,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31367:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31363:23:13", @@ -51752,7 +50740,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31363:71:13", @@ -51787,7 +50774,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31347:88:13", @@ -51938,12 +50924,10 @@ "id": 13137, "nodeType": "FunctionDefinition", "src": "31448:197:13", - "nodes": [], "body": { "id": 13136, "nodeType": "Block", "src": "31538:107:13", - "nodes": [], "statements": [ { "expression": { @@ -52055,7 +51039,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31568:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31564:23:13", @@ -52070,7 +51053,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31564:73:13", @@ -52105,7 +51087,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31548:90:13", @@ -52256,12 +51237,10 @@ "id": 13160, "nodeType": "FunctionDefinition", "src": "31651:186:13", - "nodes": [], "body": { "id": 13159, "nodeType": "Block", "src": "31732:105:13", - "nodes": [], "statements": [ { "expression": { @@ -52373,7 +51352,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31762:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31758:23:13", @@ -52388,7 +51366,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31758:71:13", @@ -52423,7 +51400,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31742:88:13", @@ -52574,12 +51550,10 @@ "id": 13183, "nodeType": "FunctionDefinition", "src": "31843:192:13", - "nodes": [], "body": { "id": 13182, "nodeType": "Block", "src": "31927:108:13", - "nodes": [], "statements": [ { "expression": { @@ -52691,7 +51665,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31957:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31953:23:13", @@ -52706,7 +51679,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31953:74:13", @@ -52741,7 +51713,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31937:91:13", @@ -52893,12 +51864,10 @@ "id": 13206, "nodeType": "FunctionDefinition", "src": "32041:175:13", - "nodes": [], "body": { "id": 13205, "nodeType": "Block", "src": "32113:103:13", - "nodes": [], "statements": [ { "expression": { @@ -53010,7 +51979,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32143:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32139:23:13", @@ -53025,7 +51993,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32139:69:13", @@ -53060,7 +52027,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32123:86:13", @@ -53211,12 +52177,10 @@ "id": 13229, "nodeType": "FunctionDefinition", "src": "32222:186:13", - "nodes": [], "body": { "id": 13228, "nodeType": "Block", "src": "32303:105:13", - "nodes": [], "statements": [ { "expression": { @@ -53328,7 +52292,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32333:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32329:23:13", @@ -53343,7 +52306,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32329:71:13", @@ -53378,7 +52340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32313:88:13", @@ -53529,12 +52490,10 @@ "id": 13252, "nodeType": "FunctionDefinition", "src": "32414:175:13", - "nodes": [], "body": { "id": 13251, "nodeType": "Block", "src": "32486:103:13", - "nodes": [], "statements": [ { "expression": { @@ -53646,7 +52605,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32516:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32512:23:13", @@ -53661,7 +52619,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32512:69:13", @@ -53696,7 +52653,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32496:86:13", @@ -53847,12 +52803,10 @@ "id": 13275, "nodeType": "FunctionDefinition", "src": "32595:181:13", - "nodes": [], "body": { "id": 13274, "nodeType": "Block", "src": "32670:106:13", - "nodes": [], "statements": [ { "expression": { @@ -53964,7 +52918,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32700:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32696:23:13", @@ -53979,7 +52932,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32696:72:13", @@ -54014,7 +52966,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32680:89:13", @@ -54166,12 +53117,10 @@ "id": 13298, "nodeType": "FunctionDefinition", "src": "32782:181:13", - "nodes": [], "body": { "id": 13297, "nodeType": "Block", "src": "32857:106:13", - "nodes": [], "statements": [ { "expression": { @@ -54283,7 +53232,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32887:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32883:23:13", @@ -54298,7 +53246,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32883:72:13", @@ -54333,7 +53280,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32867:89:13", @@ -54485,12 +53431,10 @@ "id": 13321, "nodeType": "FunctionDefinition", "src": "32969:192:13", - "nodes": [], "body": { "id": 13320, "nodeType": "Block", "src": "33053:108:13", - "nodes": [], "statements": [ { "expression": { @@ -54602,7 +53546,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33083:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33079:23:13", @@ -54617,7 +53560,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33079:74:13", @@ -54652,7 +53594,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33063:91:13", @@ -54804,12 +53745,10 @@ "id": 13344, "nodeType": "FunctionDefinition", "src": "33167:181:13", - "nodes": [], "body": { "id": 13343, "nodeType": "Block", "src": "33242:106:13", - "nodes": [], "statements": [ { "expression": { @@ -54921,7 +53860,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33272:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33268:23:13", @@ -54936,7 +53874,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33268:72:13", @@ -54971,7 +53908,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33252:89:13", @@ -55123,12 +54059,10 @@ "id": 13367, "nodeType": "FunctionDefinition", "src": "33354:187:13", - "nodes": [], "body": { "id": 13366, "nodeType": "Block", "src": "33432:109:13", - "nodes": [], "statements": [ { "expression": { @@ -55240,7 +54174,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33462:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33458:23:13", @@ -55255,7 +54188,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33458:75:13", @@ -55290,7 +54222,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33442:92:13", @@ -55443,12 +54374,10 @@ "id": 13390, "nodeType": "FunctionDefinition", "src": "33547:186:13", - "nodes": [], "body": { "id": 13389, "nodeType": "Block", "src": "33628:105:13", - "nodes": [], "statements": [ { "expression": { @@ -55560,7 +54489,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33658:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33654:23:13", @@ -55575,7 +54503,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33654:71:13", @@ -55610,7 +54537,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33638:88:13", @@ -55761,12 +54687,10 @@ "id": 13413, "nodeType": "FunctionDefinition", "src": "33739:197:13", - "nodes": [], "body": { "id": 13412, "nodeType": "Block", "src": "33829:107:13", - "nodes": [], "statements": [ { "expression": { @@ -55878,7 +54802,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33859:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33855:23:13", @@ -55893,7 +54816,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33855:73:13", @@ -55928,7 +54850,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33839:90:13", @@ -56079,12 +55000,10 @@ "id": 13436, "nodeType": "FunctionDefinition", "src": "33942:186:13", - "nodes": [], "body": { "id": 13435, "nodeType": "Block", "src": "34023:105:13", - "nodes": [], "statements": [ { "expression": { @@ -56196,7 +55115,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34053:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34049:23:13", @@ -56211,7 +55129,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34049:71:13", @@ -56246,7 +55163,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34033:88:13", @@ -56397,12 +55313,10 @@ "id": 13459, "nodeType": "FunctionDefinition", "src": "34134:192:13", - "nodes": [], "body": { "id": 13458, "nodeType": "Block", "src": "34218:108:13", - "nodes": [], "statements": [ { "expression": { @@ -56514,7 +55428,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34248:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34244:23:13", @@ -56529,7 +55442,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34244:74:13", @@ -56564,7 +55476,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34228:91:13", @@ -56716,12 +55627,10 @@ "id": 13482, "nodeType": "FunctionDefinition", "src": "34332:197:13", - "nodes": [], "body": { "id": 13481, "nodeType": "Block", "src": "34422:107:13", - "nodes": [], "statements": [ { "expression": { @@ -56833,7 +55742,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34452:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34448:23:13", @@ -56848,7 +55756,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34448:73:13", @@ -56883,7 +55790,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34432:90:13", @@ -57034,12 +55940,10 @@ "id": 13505, "nodeType": "FunctionDefinition", "src": "34535:208:13", - "nodes": [], "body": { "id": 13504, "nodeType": "Block", "src": "34634:109:13", - "nodes": [], "statements": [ { "expression": { @@ -57151,7 +56055,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34664:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34660:23:13", @@ -57166,7 +56069,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34660:75:13", @@ -57201,7 +56103,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34644:92:13", @@ -57352,12 +56253,10 @@ "id": 13528, "nodeType": "FunctionDefinition", "src": "34749:197:13", - "nodes": [], "body": { "id": 13527, "nodeType": "Block", "src": "34839:107:13", - "nodes": [], "statements": [ { "expression": { @@ -57469,7 +56368,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34869:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34865:23:13", @@ -57484,7 +56382,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34865:73:13", @@ -57519,7 +56416,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34849:90:13", @@ -57670,12 +56566,10 @@ "id": 13551, "nodeType": "FunctionDefinition", "src": "34952:203:13", - "nodes": [], "body": { "id": 13550, "nodeType": "Block", "src": "35045:110:13", - "nodes": [], "statements": [ { "expression": { @@ -57787,7 +56681,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35075:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35071:23:13", @@ -57802,7 +56695,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35071:76:13", @@ -57837,7 +56729,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35055:93:13", @@ -57989,12 +56880,10 @@ "id": 13574, "nodeType": "FunctionDefinition", "src": "35161:186:13", - "nodes": [], "body": { "id": 13573, "nodeType": "Block", "src": "35242:105:13", - "nodes": [], "statements": [ { "expression": { @@ -58106,7 +56995,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35272:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35268:23:13", @@ -58121,7 +57009,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35268:71:13", @@ -58156,7 +57043,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35252:88:13", @@ -58307,12 +57193,10 @@ "id": 13597, "nodeType": "FunctionDefinition", "src": "35353:197:13", - "nodes": [], "body": { "id": 13596, "nodeType": "Block", "src": "35443:107:13", - "nodes": [], "statements": [ { "expression": { @@ -58424,7 +57308,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35473:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35469:23:13", @@ -58439,7 +57322,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35469:73:13", @@ -58474,7 +57356,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35453:90:13", @@ -58625,12 +57506,10 @@ "id": 13620, "nodeType": "FunctionDefinition", "src": "35556:186:13", - "nodes": [], "body": { "id": 13619, "nodeType": "Block", "src": "35637:105:13", - "nodes": [], "statements": [ { "expression": { @@ -58742,7 +57621,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35667:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35663:23:13", @@ -58757,7 +57635,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35663:71:13", @@ -58792,7 +57669,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35647:88:13", @@ -58943,12 +57819,10 @@ "id": 13643, "nodeType": "FunctionDefinition", "src": "35748:192:13", - "nodes": [], "body": { "id": 13642, "nodeType": "Block", "src": "35832:108:13", - "nodes": [], "statements": [ { "expression": { @@ -59060,7 +57934,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35862:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35858:23:13", @@ -59075,7 +57948,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35858:74:13", @@ -59110,7 +57982,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35842:91:13", @@ -59262,12 +58133,10 @@ "id": 13666, "nodeType": "FunctionDefinition", "src": "35946:192:13", - "nodes": [], "body": { "id": 13665, "nodeType": "Block", "src": "36030:108:13", - "nodes": [], "statements": [ { "expression": { @@ -59379,7 +58248,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36060:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36056:23:13", @@ -59394,7 +58262,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36056:74:13", @@ -59429,7 +58296,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36040:91:13", @@ -59581,12 +58447,10 @@ "id": 13689, "nodeType": "FunctionDefinition", "src": "36144:203:13", - "nodes": [], "body": { "id": 13688, "nodeType": "Block", "src": "36237:110:13", - "nodes": [], "statements": [ { "expression": { @@ -59698,7 +58562,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36267:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36263:23:13", @@ -59713,7 +58576,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36263:76:13", @@ -59748,7 +58610,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36247:93:13", @@ -59900,12 +58761,10 @@ "id": 13712, "nodeType": "FunctionDefinition", "src": "36353:192:13", - "nodes": [], "body": { "id": 13711, "nodeType": "Block", "src": "36437:108:13", - "nodes": [], "statements": [ { "expression": { @@ -60017,7 +58876,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36467:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36463:23:13", @@ -60032,7 +58890,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36463:74:13", @@ -60067,7 +58924,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36447:91:13", @@ -60219,12 +59075,10 @@ "id": 13735, "nodeType": "FunctionDefinition", "src": "36551:198:13", - "nodes": [], "body": { "id": 13734, "nodeType": "Block", "src": "36638:111:13", - "nodes": [], "statements": [ { "expression": { @@ -60336,7 +59190,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36668:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36664:23:13", @@ -60351,7 +59204,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36664:77:13", @@ -60386,7 +59238,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36648:94:13", @@ -60539,12 +59390,10 @@ "id": 13758, "nodeType": "FunctionDefinition", "src": "36755:175:13", - "nodes": [], "body": { "id": 13757, "nodeType": "Block", "src": "36827:103:13", - "nodes": [], "statements": [ { "expression": { @@ -60656,7 +59505,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36857:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36853:23:13", @@ -60671,7 +59519,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36853:69:13", @@ -60706,7 +59553,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36837:86:13", @@ -60857,12 +59703,10 @@ "id": 13781, "nodeType": "FunctionDefinition", "src": "36936:186:13", - "nodes": [], "body": { "id": 13780, "nodeType": "Block", "src": "37017:105:13", - "nodes": [], "statements": [ { "expression": { @@ -60974,7 +59818,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37047:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37043:23:13", @@ -60989,7 +59832,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37043:71:13", @@ -61024,7 +59866,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37027:88:13", @@ -61175,12 +60016,10 @@ "id": 13804, "nodeType": "FunctionDefinition", "src": "37128:175:13", - "nodes": [], "body": { "id": 13803, "nodeType": "Block", "src": "37200:103:13", - "nodes": [], "statements": [ { "expression": { @@ -61292,7 +60131,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37230:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37226:23:13", @@ -61307,7 +60145,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37226:69:13", @@ -61342,7 +60179,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37210:86:13", @@ -61493,12 +60329,10 @@ "id": 13827, "nodeType": "FunctionDefinition", "src": "37309:181:13", - "nodes": [], "body": { "id": 13826, "nodeType": "Block", "src": "37384:106:13", - "nodes": [], "statements": [ { "expression": { @@ -61610,7 +60444,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37414:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37410:23:13", @@ -61625,7 +60458,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37410:72:13", @@ -61660,7 +60492,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37394:89:13", @@ -61812,12 +60643,10 @@ "id": 13850, "nodeType": "FunctionDefinition", "src": "37496:186:13", - "nodes": [], "body": { "id": 13849, "nodeType": "Block", "src": "37577:105:13", - "nodes": [], "statements": [ { "expression": { @@ -61929,7 +60758,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37607:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37603:23:13", @@ -61944,7 +60772,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37603:71:13", @@ -61979,7 +60806,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37587:88:13", @@ -62130,12 +60956,10 @@ "id": 13873, "nodeType": "FunctionDefinition", "src": "37688:197:13", - "nodes": [], "body": { "id": 13872, "nodeType": "Block", "src": "37778:107:13", - "nodes": [], "statements": [ { "expression": { @@ -62247,7 +61071,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37808:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37804:23:13", @@ -62262,7 +61085,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37804:73:13", @@ -62297,7 +61119,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37788:90:13", @@ -62448,12 +61269,10 @@ "id": 13896, "nodeType": "FunctionDefinition", "src": "37891:186:13", - "nodes": [], "body": { "id": 13895, "nodeType": "Block", "src": "37972:105:13", - "nodes": [], "statements": [ { "expression": { @@ -62565,7 +61384,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38002:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37998:23:13", @@ -62580,7 +61398,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37998:71:13", @@ -62615,7 +61432,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37982:88:13", @@ -62766,12 +61582,10 @@ "id": 13919, "nodeType": "FunctionDefinition", "src": "38083:192:13", - "nodes": [], "body": { "id": 13918, "nodeType": "Block", "src": "38167:108:13", - "nodes": [], "statements": [ { "expression": { @@ -62883,7 +61697,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38197:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38193:23:13", @@ -62898,7 +61711,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38193:74:13", @@ -62933,7 +61745,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38177:91:13", @@ -63085,12 +61896,10 @@ "id": 13942, "nodeType": "FunctionDefinition", "src": "38281:175:13", - "nodes": [], "body": { "id": 13941, "nodeType": "Block", "src": "38353:103:13", - "nodes": [], "statements": [ { "expression": { @@ -63202,7 +62011,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38383:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38379:23:13", @@ -63217,7 +62025,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38379:69:13", @@ -63252,7 +62059,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38363:86:13", @@ -63403,12 +62209,10 @@ "id": 13965, "nodeType": "FunctionDefinition", "src": "38462:186:13", - "nodes": [], "body": { "id": 13964, "nodeType": "Block", "src": "38543:105:13", - "nodes": [], "statements": [ { "expression": { @@ -63520,7 +62324,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38573:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38569:23:13", @@ -63535,7 +62338,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38569:71:13", @@ -63570,7 +62372,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38553:88:13", @@ -63721,12 +62522,10 @@ "id": 13988, "nodeType": "FunctionDefinition", "src": "38654:175:13", - "nodes": [], "body": { "id": 13987, "nodeType": "Block", "src": "38726:103:13", - "nodes": [], "statements": [ { "expression": { @@ -63838,7 +62637,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38756:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38752:23:13", @@ -63853,7 +62651,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38752:69:13", @@ -63888,7 +62685,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38736:86:13", @@ -64039,12 +62835,10 @@ "id": 14011, "nodeType": "FunctionDefinition", "src": "38835:181:13", - "nodes": [], "body": { "id": 14010, "nodeType": "Block", "src": "38910:106:13", - "nodes": [], "statements": [ { "expression": { @@ -64156,7 +62950,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38940:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38936:23:13", @@ -64171,7 +62964,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38936:72:13", @@ -64206,7 +62998,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38920:89:13", @@ -64358,12 +63149,10 @@ "id": 14034, "nodeType": "FunctionDefinition", "src": "39022:181:13", - "nodes": [], "body": { "id": 14033, "nodeType": "Block", "src": "39097:106:13", - "nodes": [], "statements": [ { "expression": { @@ -64475,7 +63264,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39127:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39123:23:13", @@ -64490,7 +63278,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39123:72:13", @@ -64525,7 +63312,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39107:89:13", @@ -64677,12 +63463,10 @@ "id": 14057, "nodeType": "FunctionDefinition", "src": "39209:192:13", - "nodes": [], "body": { "id": 14056, "nodeType": "Block", "src": "39293:108:13", - "nodes": [], "statements": [ { "expression": { @@ -64794,7 +63578,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39323:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39319:23:13", @@ -64809,7 +63592,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39319:74:13", @@ -64844,7 +63626,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39303:91:13", @@ -64996,12 +63777,10 @@ "id": 14080, "nodeType": "FunctionDefinition", "src": "39407:181:13", - "nodes": [], "body": { "id": 14079, "nodeType": "Block", "src": "39482:106:13", - "nodes": [], "statements": [ { "expression": { @@ -65113,7 +63892,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39512:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39508:23:13", @@ -65128,7 +63906,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39508:72:13", @@ -65163,7 +63940,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39492:89:13", @@ -65315,12 +64091,10 @@ "id": 14103, "nodeType": "FunctionDefinition", "src": "39594:187:13", - "nodes": [], "body": { "id": 14102, "nodeType": "Block", "src": "39672:109:13", - "nodes": [], "statements": [ { "expression": { @@ -65432,7 +64206,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39702:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39698:23:13", @@ -65447,7 +64220,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39698:75:13", @@ -65482,7 +64254,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39682:92:13", @@ -65635,12 +64406,10 @@ "id": 14126, "nodeType": "FunctionDefinition", "src": "39787:181:13", - "nodes": [], "body": { "id": 14125, "nodeType": "Block", "src": "39862:106:13", - "nodes": [], "statements": [ { "expression": { @@ -65752,7 +64521,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39892:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39888:23:13", @@ -65767,7 +64535,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39888:72:13", @@ -65802,7 +64569,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39872:89:13", @@ -65954,12 +64720,10 @@ "id": 14149, "nodeType": "FunctionDefinition", "src": "39974:192:13", - "nodes": [], "body": { "id": 14148, "nodeType": "Block", "src": "40058:108:13", - "nodes": [], "statements": [ { "expression": { @@ -66071,7 +64835,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40088:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40084:23:13", @@ -66086,7 +64849,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40084:74:13", @@ -66121,7 +64883,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40068:91:13", @@ -66273,12 +65034,10 @@ "id": 14172, "nodeType": "FunctionDefinition", "src": "40172:181:13", - "nodes": [], "body": { "id": 14171, "nodeType": "Block", "src": "40247:106:13", - "nodes": [], "statements": [ { "expression": { @@ -66390,7 +65149,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40277:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40273:23:13", @@ -66405,7 +65163,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40273:72:13", @@ -66440,7 +65197,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40257:89:13", @@ -66592,12 +65348,10 @@ "id": 14195, "nodeType": "FunctionDefinition", "src": "40359:187:13", - "nodes": [], "body": { "id": 14194, "nodeType": "Block", "src": "40437:109:13", - "nodes": [], "statements": [ { "expression": { @@ -66709,7 +65463,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40467:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40463:23:13", @@ -66724,7 +65477,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40463:75:13", @@ -66759,7 +65511,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40447:92:13", @@ -66912,12 +65663,10 @@ "id": 14218, "nodeType": "FunctionDefinition", "src": "40552:192:13", - "nodes": [], "body": { "id": 14217, "nodeType": "Block", "src": "40636:108:13", - "nodes": [], "statements": [ { "expression": { @@ -67029,7 +65778,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40666:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40662:23:13", @@ -67044,7 +65792,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40662:74:13", @@ -67079,7 +65826,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40646:91:13", @@ -67231,12 +65977,10 @@ "id": 14241, "nodeType": "FunctionDefinition", "src": "40750:203:13", - "nodes": [], "body": { "id": 14240, "nodeType": "Block", "src": "40843:110:13", - "nodes": [], "statements": [ { "expression": { @@ -67348,7 +66092,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40873:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40869:23:13", @@ -67363,7 +66106,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40869:76:13", @@ -67398,7 +66140,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40853:93:13", @@ -67550,12 +66291,10 @@ "id": 14264, "nodeType": "FunctionDefinition", "src": "40959:192:13", - "nodes": [], "body": { "id": 14263, "nodeType": "Block", "src": "41043:108:13", - "nodes": [], "statements": [ { "expression": { @@ -67667,7 +66406,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41073:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41069:23:13", @@ -67682,7 +66420,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41069:74:13", @@ -67717,7 +66454,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41053:91:13", @@ -67869,12 +66605,10 @@ "id": 14287, "nodeType": "FunctionDefinition", "src": "41157:198:13", - "nodes": [], "body": { "id": 14286, "nodeType": "Block", "src": "41244:111:13", - "nodes": [], "statements": [ { "expression": { @@ -67986,7 +66720,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41274:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41270:23:13", @@ -68001,7 +66734,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41270:77:13", @@ -68036,7 +66768,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41254:94:13", @@ -68189,12 +66920,10 @@ "id": 14310, "nodeType": "FunctionDefinition", "src": "41361:181:13", - "nodes": [], "body": { "id": 14309, "nodeType": "Block", "src": "41436:106:13", - "nodes": [], "statements": [ { "expression": { @@ -68306,7 +67035,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41466:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41462:23:13", @@ -68321,7 +67049,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41462:72:13", @@ -68356,7 +67083,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41446:89:13", @@ -68508,12 +67234,10 @@ "id": 14333, "nodeType": "FunctionDefinition", "src": "41548:192:13", - "nodes": [], "body": { "id": 14332, "nodeType": "Block", "src": "41632:108:13", - "nodes": [], "statements": [ { "expression": { @@ -68625,7 +67349,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41662:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41658:23:13", @@ -68640,7 +67363,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41658:74:13", @@ -68675,7 +67397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41642:91:13", @@ -68827,12 +67548,10 @@ "id": 14356, "nodeType": "FunctionDefinition", "src": "41746:181:13", - "nodes": [], "body": { "id": 14355, "nodeType": "Block", "src": "41821:106:13", - "nodes": [], "statements": [ { "expression": { @@ -68944,7 +67663,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41851:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41847:23:13", @@ -68959,7 +67677,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41847:72:13", @@ -68994,7 +67711,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41831:89:13", @@ -69146,12 +67862,10 @@ "id": 14379, "nodeType": "FunctionDefinition", "src": "41933:187:13", - "nodes": [], "body": { "id": 14378, "nodeType": "Block", "src": "42011:109:13", - "nodes": [], "statements": [ { "expression": { @@ -69263,7 +67977,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42041:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42037:23:13", @@ -69278,7 +67991,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42037:75:13", @@ -69313,7 +68025,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42021:92:13", @@ -69466,12 +68177,10 @@ "id": 14402, "nodeType": "FunctionDefinition", "src": "42126:187:13", - "nodes": [], "body": { "id": 14401, "nodeType": "Block", "src": "42204:109:13", - "nodes": [], "statements": [ { "expression": { @@ -69583,7 +68292,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42234:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42230:23:13", @@ -69598,7 +68306,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42230:75:13", @@ -69633,7 +68340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42214:92:13", @@ -69786,12 +68492,10 @@ "id": 14425, "nodeType": "FunctionDefinition", "src": "42319:198:13", - "nodes": [], "body": { "id": 14424, "nodeType": "Block", "src": "42406:111:13", - "nodes": [], "statements": [ { "expression": { @@ -69903,7 +68607,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42436:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42432:23:13", @@ -69918,7 +68621,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42432:77:13", @@ -69953,7 +68655,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42416:94:13", @@ -70106,12 +68807,10 @@ "id": 14448, "nodeType": "FunctionDefinition", "src": "42523:187:13", - "nodes": [], "body": { "id": 14447, "nodeType": "Block", "src": "42601:109:13", - "nodes": [], "statements": [ { "expression": { @@ -70223,7 +68922,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42631:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42627:23:13", @@ -70238,7 +68936,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42627:75:13", @@ -70273,7 +68970,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42611:92:13", @@ -70426,12 +69122,10 @@ "id": 14471, "nodeType": "FunctionDefinition", "src": "42716:193:13", - "nodes": [], "body": { "id": 14470, "nodeType": "Block", "src": "42797:112:13", - "nodes": [], "statements": [ { "expression": { @@ -70543,7 +69237,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42827:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42823:23:13", @@ -70558,7 +69251,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42823:78:13", @@ -70593,7 +69285,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42807:95:13", @@ -70747,12 +69438,10 @@ "id": 14494, "nodeType": "FunctionDefinition", "src": "42915:164:13", - "nodes": [], "body": { "id": 14493, "nodeType": "Block", "src": "42978:101:13", - "nodes": [], "statements": [ { "expression": { @@ -70864,7 +69553,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43008:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43004:23:13", @@ -70879,7 +69567,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43004:67:13", @@ -70914,7 +69601,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42988:84:13", @@ -71065,12 +69751,10 @@ "id": 14517, "nodeType": "FunctionDefinition", "src": "43085:175:13", - "nodes": [], "body": { "id": 14516, "nodeType": "Block", "src": "43157:103:13", - "nodes": [], "statements": [ { "expression": { @@ -71182,7 +69866,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43187:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43183:23:13", @@ -71197,7 +69880,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43183:69:13", @@ -71232,7 +69914,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43167:86:13", @@ -71383,12 +70064,10 @@ "id": 14540, "nodeType": "FunctionDefinition", "src": "43266:164:13", - "nodes": [], "body": { "id": 14539, "nodeType": "Block", "src": "43329:101:13", - "nodes": [], "statements": [ { "expression": { @@ -71500,7 +70179,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43359:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43355:23:13", @@ -71515,7 +70193,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43355:67:13", @@ -71550,7 +70227,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43339:84:13", @@ -71701,12 +70377,10 @@ "id": 14563, "nodeType": "FunctionDefinition", "src": "43436:170:13", - "nodes": [], "body": { "id": 14562, "nodeType": "Block", "src": "43502:104:13", - "nodes": [], "statements": [ { "expression": { @@ -71818,7 +70492,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43532:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43528:23:13", @@ -71833,7 +70506,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43528:70:13", @@ -71868,7 +70540,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43512:87:13", @@ -72020,12 +70691,10 @@ "id": 14586, "nodeType": "FunctionDefinition", "src": "43612:175:13", - "nodes": [], "body": { "id": 14585, "nodeType": "Block", "src": "43684:103:13", - "nodes": [], "statements": [ { "expression": { @@ -72137,7 +70806,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43714:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43710:23:13", @@ -72152,7 +70820,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43710:69:13", @@ -72187,7 +70854,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43694:86:13", @@ -72338,12 +71004,10 @@ "id": 14609, "nodeType": "FunctionDefinition", "src": "43793:186:13", - "nodes": [], "body": { "id": 14608, "nodeType": "Block", "src": "43874:105:13", - "nodes": [], "statements": [ { "expression": { @@ -72455,7 +71119,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43904:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43900:23:13", @@ -72470,7 +71133,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43900:71:13", @@ -72505,7 +71167,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43884:88:13", @@ -72656,12 +71317,10 @@ "id": 14632, "nodeType": "FunctionDefinition", "src": "43985:175:13", - "nodes": [], "body": { "id": 14631, "nodeType": "Block", "src": "44057:103:13", - "nodes": [], "statements": [ { "expression": { @@ -72773,7 +71432,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44087:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44083:23:13", @@ -72788,7 +71446,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44083:69:13", @@ -72823,7 +71480,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44067:86:13", @@ -72974,12 +71630,10 @@ "id": 14655, "nodeType": "FunctionDefinition", "src": "44166:181:13", - "nodes": [], "body": { "id": 14654, "nodeType": "Block", "src": "44241:106:13", - "nodes": [], "statements": [ { "expression": { @@ -73091,7 +71745,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44271:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44267:23:13", @@ -73106,7 +71759,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44267:72:13", @@ -73141,7 +71793,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44251:89:13", @@ -73293,12 +71944,10 @@ "id": 14678, "nodeType": "FunctionDefinition", "src": "44353:164:13", - "nodes": [], "body": { "id": 14677, "nodeType": "Block", "src": "44416:101:13", - "nodes": [], "statements": [ { "expression": { @@ -73410,7 +72059,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44446:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44442:23:13", @@ -73425,7 +72073,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44442:67:13", @@ -73460,7 +72107,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44426:84:13", @@ -73611,12 +72257,10 @@ "id": 14701, "nodeType": "FunctionDefinition", "src": "44523:175:13", - "nodes": [], "body": { "id": 14700, "nodeType": "Block", "src": "44595:103:13", - "nodes": [], "statements": [ { "expression": { @@ -73728,7 +72372,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44625:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44621:23:13", @@ -73743,7 +72386,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44621:69:13", @@ -73778,7 +72420,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44605:86:13", @@ -73929,12 +72570,10 @@ "id": 14724, "nodeType": "FunctionDefinition", "src": "44704:164:13", - "nodes": [], "body": { "id": 14723, "nodeType": "Block", "src": "44767:101:13", - "nodes": [], "statements": [ { "expression": { @@ -74046,7 +72685,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44797:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44793:23:13", @@ -74061,7 +72699,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44793:67:13", @@ -74096,7 +72733,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44777:84:13", @@ -74247,12 +72883,10 @@ "id": 14747, "nodeType": "FunctionDefinition", "src": "44874:170:13", - "nodes": [], "body": { "id": 14746, "nodeType": "Block", "src": "44940:104:13", - "nodes": [], "statements": [ { "expression": { @@ -74364,7 +72998,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44970:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44966:23:13", @@ -74379,7 +73012,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44966:70:13", @@ -74414,7 +73046,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44950:87:13", @@ -74566,12 +73197,10 @@ "id": 14770, "nodeType": "FunctionDefinition", "src": "45050:170:13", - "nodes": [], "body": { "id": 14769, "nodeType": "Block", "src": "45116:104:13", - "nodes": [], "statements": [ { "expression": { @@ -74683,7 +73312,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45146:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45142:23:13", @@ -74698,7 +73326,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45142:70:13", @@ -74733,7 +73360,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45126:87:13", @@ -74885,12 +73511,10 @@ "id": 14793, "nodeType": "FunctionDefinition", "src": "45226:181:13", - "nodes": [], "body": { "id": 14792, "nodeType": "Block", "src": "45301:106:13", - "nodes": [], "statements": [ { "expression": { @@ -75002,7 +73626,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45331:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45327:23:13", @@ -75017,7 +73640,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45327:72:13", @@ -75052,7 +73674,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45311:89:13", @@ -75204,12 +73825,10 @@ "id": 14816, "nodeType": "FunctionDefinition", "src": "45413:170:13", - "nodes": [], "body": { "id": 14815, "nodeType": "Block", "src": "45479:104:13", - "nodes": [], "statements": [ { "expression": { @@ -75321,7 +73940,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45509:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45505:23:13", @@ -75336,7 +73954,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45505:70:13", @@ -75371,7 +73988,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45489:87:13", @@ -75523,12 +74139,10 @@ "id": 14839, "nodeType": "FunctionDefinition", "src": "45589:176:13", - "nodes": [], "body": { "id": 14838, "nodeType": "Block", "src": "45658:107:13", - "nodes": [], "statements": [ { "expression": { @@ -75640,7 +74254,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45688:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45684:23:13", @@ -75655,7 +74268,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45684:73:13", @@ -75690,7 +74302,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45668:90:13", @@ -75843,12 +74454,10 @@ "id": 14862, "nodeType": "FunctionDefinition", "src": "45771:175:13", - "nodes": [], "body": { "id": 14861, "nodeType": "Block", "src": "45843:103:13", - "nodes": [], "statements": [ { "expression": { @@ -75960,7 +74569,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45873:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45869:23:13", @@ -75975,7 +74583,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45869:69:13", @@ -76010,7 +74617,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45853:86:13", @@ -76161,12 +74767,10 @@ "id": 14885, "nodeType": "FunctionDefinition", "src": "45952:186:13", - "nodes": [], "body": { "id": 14884, "nodeType": "Block", "src": "46033:105:13", - "nodes": [], "statements": [ { "expression": { @@ -76278,7 +74882,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46063:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46059:23:13", @@ -76293,7 +74896,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46059:71:13", @@ -76328,7 +74930,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46043:88:13", @@ -76479,12 +75080,10 @@ "id": 14908, "nodeType": "FunctionDefinition", "src": "46144:175:13", - "nodes": [], "body": { "id": 14907, "nodeType": "Block", "src": "46216:103:13", - "nodes": [], "statements": [ { "expression": { @@ -76596,7 +75195,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46246:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46242:23:13", @@ -76611,7 +75209,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46242:69:13", @@ -76646,7 +75243,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46226:86:13", @@ -76797,12 +75393,10 @@ "id": 14931, "nodeType": "FunctionDefinition", "src": "46325:181:13", - "nodes": [], "body": { "id": 14930, "nodeType": "Block", "src": "46400:106:13", - "nodes": [], "statements": [ { "expression": { @@ -76914,7 +75508,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46430:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46426:23:13", @@ -76929,7 +75522,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46426:72:13", @@ -76964,7 +75556,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46410:89:13", @@ -77116,12 +75707,10 @@ "id": 14954, "nodeType": "FunctionDefinition", "src": "46512:186:13", - "nodes": [], "body": { "id": 14953, "nodeType": "Block", "src": "46593:105:13", - "nodes": [], "statements": [ { "expression": { @@ -77233,7 +75822,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46623:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46619:23:13", @@ -77248,7 +75836,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46619:71:13", @@ -77283,7 +75870,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46603:88:13", @@ -77434,12 +76020,10 @@ "id": 14977, "nodeType": "FunctionDefinition", "src": "46704:197:13", - "nodes": [], "body": { "id": 14976, "nodeType": "Block", "src": "46794:107:13", - "nodes": [], "statements": [ { "expression": { @@ -77551,7 +76135,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46824:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46820:23:13", @@ -77566,7 +76149,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46820:73:13", @@ -77601,7 +76183,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46804:90:13", @@ -77752,12 +76333,10 @@ "id": 15000, "nodeType": "FunctionDefinition", "src": "46907:186:13", - "nodes": [], "body": { "id": 14999, "nodeType": "Block", "src": "46988:105:13", - "nodes": [], "statements": [ { "expression": { @@ -77869,7 +76448,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47018:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47014:23:13", @@ -77884,7 +76462,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47014:71:13", @@ -77919,7 +76496,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46998:88:13", @@ -78070,12 +76646,10 @@ "id": 15023, "nodeType": "FunctionDefinition", "src": "47099:192:13", - "nodes": [], "body": { "id": 15022, "nodeType": "Block", "src": "47183:108:13", - "nodes": [], "statements": [ { "expression": { @@ -78187,7 +76761,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47213:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47209:23:13", @@ -78202,7 +76775,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47209:74:13", @@ -78237,7 +76809,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47193:91:13", @@ -78389,12 +76960,10 @@ "id": 15046, "nodeType": "FunctionDefinition", "src": "47297:175:13", - "nodes": [], "body": { "id": 15045, "nodeType": "Block", "src": "47369:103:13", - "nodes": [], "statements": [ { "expression": { @@ -78506,7 +77075,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47399:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47395:23:13", @@ -78521,7 +77089,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47395:69:13", @@ -78556,7 +77123,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47379:86:13", @@ -78707,12 +77273,10 @@ "id": 15069, "nodeType": "FunctionDefinition", "src": "47478:186:13", - "nodes": [], "body": { "id": 15068, "nodeType": "Block", "src": "47559:105:13", - "nodes": [], "statements": [ { "expression": { @@ -78824,7 +77388,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47589:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47585:23:13", @@ -78839,7 +77402,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47585:71:13", @@ -78874,7 +77436,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47569:88:13", @@ -79025,12 +77586,10 @@ "id": 15092, "nodeType": "FunctionDefinition", "src": "47670:175:13", - "nodes": [], "body": { "id": 15091, "nodeType": "Block", "src": "47742:103:13", - "nodes": [], "statements": [ { "expression": { @@ -79142,7 +77701,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47772:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47768:23:13", @@ -79157,7 +77715,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47768:69:13", @@ -79192,7 +77749,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47752:86:13", @@ -79343,12 +77899,10 @@ "id": 15115, "nodeType": "FunctionDefinition", "src": "47851:181:13", - "nodes": [], "body": { "id": 15114, "nodeType": "Block", "src": "47926:106:13", - "nodes": [], "statements": [ { "expression": { @@ -79460,7 +78014,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47956:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47952:23:13", @@ -79475,7 +78028,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47952:72:13", @@ -79510,7 +78062,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47936:89:13", @@ -79662,12 +78213,10 @@ "id": 15138, "nodeType": "FunctionDefinition", "src": "48038:181:13", - "nodes": [], "body": { "id": 15137, "nodeType": "Block", "src": "48113:106:13", - "nodes": [], "statements": [ { "expression": { @@ -79779,7 +78328,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48143:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48139:23:13", @@ -79794,7 +78342,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48139:72:13", @@ -79829,7 +78376,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48123:89:13", @@ -79981,12 +78527,10 @@ "id": 15161, "nodeType": "FunctionDefinition", "src": "48225:192:13", - "nodes": [], "body": { "id": 15160, "nodeType": "Block", "src": "48309:108:13", - "nodes": [], "statements": [ { "expression": { @@ -80098,7 +78642,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48339:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48335:23:13", @@ -80113,7 +78656,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48335:74:13", @@ -80148,7 +78690,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48319:91:13", @@ -80300,12 +78841,10 @@ "id": 15184, "nodeType": "FunctionDefinition", "src": "48423:181:13", - "nodes": [], "body": { "id": 15183, "nodeType": "Block", "src": "48498:106:13", - "nodes": [], "statements": [ { "expression": { @@ -80417,7 +78956,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48528:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48524:23:13", @@ -80432,7 +78970,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48524:72:13", @@ -80467,7 +79004,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48508:89:13", @@ -80619,12 +79155,10 @@ "id": 15207, "nodeType": "FunctionDefinition", "src": "48610:187:13", - "nodes": [], "body": { "id": 15206, "nodeType": "Block", "src": "48688:109:13", - "nodes": [], "statements": [ { "expression": { @@ -80736,7 +79270,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48718:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48714:23:13", @@ -80751,7 +79284,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48714:75:13", @@ -80786,7 +79318,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48698:92:13", @@ -80939,12 +79470,10 @@ "id": 15230, "nodeType": "FunctionDefinition", "src": "48803:164:13", - "nodes": [], "body": { "id": 15229, "nodeType": "Block", "src": "48866:101:13", - "nodes": [], "statements": [ { "expression": { @@ -81056,7 +79585,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48896:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48892:23:13", @@ -81071,7 +79599,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48892:67:13", @@ -81106,7 +79633,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48876:84:13", @@ -81257,12 +79783,10 @@ "id": 15253, "nodeType": "FunctionDefinition", "src": "48973:175:13", - "nodes": [], "body": { "id": 15252, "nodeType": "Block", "src": "49045:103:13", - "nodes": [], "statements": [ { "expression": { @@ -81374,7 +79898,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49075:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49071:23:13", @@ -81389,7 +79912,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49071:69:13", @@ -81424,7 +79946,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49055:86:13", @@ -81575,12 +80096,10 @@ "id": 15276, "nodeType": "FunctionDefinition", "src": "49154:164:13", - "nodes": [], "body": { "id": 15275, "nodeType": "Block", "src": "49217:101:13", - "nodes": [], "statements": [ { "expression": { @@ -81692,7 +80211,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49247:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49243:23:13", @@ -81707,7 +80225,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49243:67:13", @@ -81742,7 +80259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49227:84:13", @@ -81893,12 +80409,10 @@ "id": 15299, "nodeType": "FunctionDefinition", "src": "49324:170:13", - "nodes": [], "body": { "id": 15298, "nodeType": "Block", "src": "49390:104:13", - "nodes": [], "statements": [ { "expression": { @@ -82010,7 +80524,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49420:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49416:23:13", @@ -82025,7 +80538,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49416:70:13", @@ -82060,7 +80572,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49400:87:13", @@ -82212,12 +80723,10 @@ "id": 15322, "nodeType": "FunctionDefinition", "src": "49500:175:13", - "nodes": [], "body": { "id": 15321, "nodeType": "Block", "src": "49572:103:13", - "nodes": [], "statements": [ { "expression": { @@ -82329,7 +80838,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49602:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49598:23:13", @@ -82344,7 +80852,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49598:69:13", @@ -82379,7 +80886,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49582:86:13", @@ -82530,12 +81036,10 @@ "id": 15345, "nodeType": "FunctionDefinition", "src": "49681:186:13", - "nodes": [], "body": { "id": 15344, "nodeType": "Block", "src": "49762:105:13", - "nodes": [], "statements": [ { "expression": { @@ -82647,7 +81151,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49792:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49788:23:13", @@ -82662,7 +81165,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49788:71:13", @@ -82697,7 +81199,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49772:88:13", @@ -82848,12 +81349,10 @@ "id": 15368, "nodeType": "FunctionDefinition", "src": "49873:175:13", - "nodes": [], "body": { "id": 15367, "nodeType": "Block", "src": "49945:103:13", - "nodes": [], "statements": [ { "expression": { @@ -82965,7 +81464,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49975:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49971:23:13", @@ -82980,7 +81478,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49971:69:13", @@ -83015,7 +81512,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49955:86:13", @@ -83166,12 +81662,10 @@ "id": 15391, "nodeType": "FunctionDefinition", "src": "50054:181:13", - "nodes": [], "body": { "id": 15390, "nodeType": "Block", "src": "50129:106:13", - "nodes": [], "statements": [ { "expression": { @@ -83283,7 +81777,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50159:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50155:23:13", @@ -83298,7 +81791,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50155:72:13", @@ -83333,7 +81825,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50139:89:13", @@ -83485,12 +81976,10 @@ "id": 15414, "nodeType": "FunctionDefinition", "src": "50241:164:13", - "nodes": [], "body": { "id": 15413, "nodeType": "Block", "src": "50304:101:13", - "nodes": [], "statements": [ { "expression": { @@ -83602,7 +82091,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50334:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50330:23:13", @@ -83617,7 +82105,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50330:67:13", @@ -83652,7 +82139,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50314:84:13", @@ -83803,12 +82289,10 @@ "id": 15437, "nodeType": "FunctionDefinition", "src": "50411:175:13", - "nodes": [], "body": { "id": 15436, "nodeType": "Block", "src": "50483:103:13", - "nodes": [], "statements": [ { "expression": { @@ -83920,7 +82404,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50513:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50509:23:13", @@ -83935,7 +82418,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50509:69:13", @@ -83970,7 +82452,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50493:86:13", @@ -84121,12 +82602,10 @@ "id": 15460, "nodeType": "FunctionDefinition", "src": "50592:164:13", - "nodes": [], "body": { "id": 15459, "nodeType": "Block", "src": "50655:101:13", - "nodes": [], "statements": [ { "expression": { @@ -84238,7 +82717,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50685:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50681:23:13", @@ -84253,7 +82731,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50681:67:13", @@ -84288,7 +82765,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50665:84:13", @@ -84439,12 +82915,10 @@ "id": 15483, "nodeType": "FunctionDefinition", "src": "50762:170:13", - "nodes": [], "body": { "id": 15482, "nodeType": "Block", "src": "50828:104:13", - "nodes": [], "statements": [ { "expression": { @@ -84556,7 +83030,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50858:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50854:23:13", @@ -84571,7 +83044,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50854:70:13", @@ -84606,7 +83078,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50838:87:13", @@ -84758,12 +83229,10 @@ "id": 15506, "nodeType": "FunctionDefinition", "src": "50938:170:13", - "nodes": [], "body": { "id": 15505, "nodeType": "Block", "src": "51004:104:13", - "nodes": [], "statements": [ { "expression": { @@ -84875,7 +83344,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51034:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51030:23:13", @@ -84890,7 +83358,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51030:70:13", @@ -84925,7 +83392,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51014:87:13", @@ -85077,12 +83543,10 @@ "id": 15529, "nodeType": "FunctionDefinition", "src": "51114:181:13", - "nodes": [], "body": { "id": 15528, "nodeType": "Block", "src": "51189:106:13", - "nodes": [], "statements": [ { "expression": { @@ -85194,7 +83658,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51219:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51215:23:13", @@ -85209,7 +83672,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51215:72:13", @@ -85244,7 +83706,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51199:89:13", @@ -85396,12 +83857,10 @@ "id": 15552, "nodeType": "FunctionDefinition", "src": "51301:170:13", - "nodes": [], "body": { "id": 15551, "nodeType": "Block", "src": "51367:104:13", - "nodes": [], "statements": [ { "expression": { @@ -85513,7 +83972,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51397:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51393:23:13", @@ -85528,7 +83986,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51393:70:13", @@ -85563,7 +84020,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51377:87:13", @@ -85715,12 +84171,10 @@ "id": 15575, "nodeType": "FunctionDefinition", "src": "51477:176:13", - "nodes": [], "body": { "id": 15574, "nodeType": "Block", "src": "51546:107:13", - "nodes": [], "statements": [ { "expression": { @@ -85832,7 +84286,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51576:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51572:23:13", @@ -85847,7 +84300,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51572:73:13", @@ -85882,7 +84334,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51556:90:13", @@ -86035,12 +84486,10 @@ "id": 15598, "nodeType": "FunctionDefinition", "src": "51659:170:13", - "nodes": [], "body": { "id": 15597, "nodeType": "Block", "src": "51725:104:13", - "nodes": [], "statements": [ { "expression": { @@ -86152,7 +84601,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51755:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51751:23:13", @@ -86167,7 +84615,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51751:70:13", @@ -86202,7 +84649,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51735:87:13", @@ -86354,12 +84800,10 @@ "id": 15621, "nodeType": "FunctionDefinition", "src": "51835:181:13", - "nodes": [], "body": { "id": 15620, "nodeType": "Block", "src": "51910:106:13", - "nodes": [], "statements": [ { "expression": { @@ -86471,7 +84915,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51940:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51936:23:13", @@ -86486,7 +84929,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51936:72:13", @@ -86521,7 +84963,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51920:89:13", @@ -86673,12 +85114,10 @@ "id": 15644, "nodeType": "FunctionDefinition", "src": "52022:170:13", - "nodes": [], "body": { "id": 15643, "nodeType": "Block", "src": "52088:104:13", - "nodes": [], "statements": [ { "expression": { @@ -86790,7 +85229,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52118:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52114:23:13", @@ -86805,7 +85243,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52114:70:13", @@ -86840,7 +85277,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52098:87:13", @@ -86992,12 +85428,10 @@ "id": 15667, "nodeType": "FunctionDefinition", "src": "52198:176:13", - "nodes": [], "body": { "id": 15666, "nodeType": "Block", "src": "52267:107:13", - "nodes": [], "statements": [ { "expression": { @@ -87109,7 +85543,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52297:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52293:23:13", @@ -87124,7 +85557,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52293:73:13", @@ -87159,7 +85591,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52277:90:13", @@ -87312,12 +85743,10 @@ "id": 15690, "nodeType": "FunctionDefinition", "src": "52380:181:13", - "nodes": [], "body": { "id": 15689, "nodeType": "Block", "src": "52455:106:13", - "nodes": [], "statements": [ { "expression": { @@ -87429,7 +85858,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52485:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52481:23:13", @@ -87444,7 +85872,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52481:72:13", @@ -87479,7 +85906,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52465:89:13", @@ -87631,12 +86057,10 @@ "id": 15713, "nodeType": "FunctionDefinition", "src": "52567:192:13", - "nodes": [], "body": { "id": 15712, "nodeType": "Block", "src": "52651:108:13", - "nodes": [], "statements": [ { "expression": { @@ -87748,7 +86172,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52681:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52677:23:13", @@ -87763,7 +86186,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52677:74:13", @@ -87798,7 +86220,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52661:91:13", @@ -87950,12 +86371,10 @@ "id": 15736, "nodeType": "FunctionDefinition", "src": "52765:181:13", - "nodes": [], "body": { "id": 15735, "nodeType": "Block", "src": "52840:106:13", - "nodes": [], "statements": [ { "expression": { @@ -88067,7 +86486,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52870:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52866:23:13", @@ -88082,7 +86500,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52866:72:13", @@ -88117,7 +86534,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52850:89:13", @@ -88269,12 +86685,10 @@ "id": 15759, "nodeType": "FunctionDefinition", "src": "52952:187:13", - "nodes": [], "body": { "id": 15758, "nodeType": "Block", "src": "53030:109:13", - "nodes": [], "statements": [ { "expression": { @@ -88386,7 +86800,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53060:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53056:23:13", @@ -88401,7 +86814,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53056:75:13", @@ -88436,7 +86848,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53040:92:13", @@ -88589,12 +87000,10 @@ "id": 15782, "nodeType": "FunctionDefinition", "src": "53145:170:13", - "nodes": [], "body": { "id": 15781, "nodeType": "Block", "src": "53211:104:13", - "nodes": [], "statements": [ { "expression": { @@ -88706,7 +87115,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53241:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53237:23:13", @@ -88721,7 +87129,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53237:70:13", @@ -88756,7 +87163,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53221:87:13", @@ -88908,12 +87314,10 @@ "id": 15805, "nodeType": "FunctionDefinition", "src": "53321:181:13", - "nodes": [], "body": { "id": 15804, "nodeType": "Block", "src": "53396:106:13", - "nodes": [], "statements": [ { "expression": { @@ -89025,7 +87429,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53426:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53422:23:13", @@ -89040,7 +87443,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53422:72:13", @@ -89075,7 +87477,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53406:89:13", @@ -89227,12 +87628,10 @@ "id": 15828, "nodeType": "FunctionDefinition", "src": "53508:170:13", - "nodes": [], "body": { "id": 15827, "nodeType": "Block", "src": "53574:104:13", - "nodes": [], "statements": [ { "expression": { @@ -89344,7 +87743,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53604:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53600:23:13", @@ -89359,7 +87757,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53600:70:13", @@ -89394,7 +87791,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53584:87:13", @@ -89546,12 +87942,10 @@ "id": 15851, "nodeType": "FunctionDefinition", "src": "53684:176:13", - "nodes": [], "body": { "id": 15850, "nodeType": "Block", "src": "53753:107:13", - "nodes": [], "statements": [ { "expression": { @@ -89663,7 +88057,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53783:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53779:23:13", @@ -89678,7 +88071,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53779:73:13", @@ -89713,7 +88105,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53763:90:13", @@ -89866,12 +88257,10 @@ "id": 15874, "nodeType": "FunctionDefinition", "src": "53866:176:13", - "nodes": [], "body": { "id": 15873, "nodeType": "Block", "src": "53935:107:13", - "nodes": [], "statements": [ { "expression": { @@ -89983,7 +88372,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53965:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53961:23:13", @@ -89998,7 +88386,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53961:73:13", @@ -90033,7 +88420,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53945:90:13", @@ -90186,12 +88572,10 @@ "id": 15897, "nodeType": "FunctionDefinition", "src": "54048:187:13", - "nodes": [], "body": { "id": 15896, "nodeType": "Block", "src": "54126:109:13", - "nodes": [], "statements": [ { "expression": { @@ -90303,7 +88687,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54156:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54152:23:13", @@ -90318,7 +88701,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54152:75:13", @@ -90353,7 +88735,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54136:92:13", @@ -90506,12 +88887,10 @@ "id": 15920, "nodeType": "FunctionDefinition", "src": "54241:176:13", - "nodes": [], "body": { "id": 15919, "nodeType": "Block", "src": "54310:107:13", - "nodes": [], "statements": [ { "expression": { @@ -90623,7 +89002,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54340:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54336:23:13", @@ -90638,7 +89016,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54336:73:13", @@ -90673,7 +89050,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54320:90:13", @@ -90826,12 +89202,10 @@ "id": 15943, "nodeType": "FunctionDefinition", "src": "54423:182:13", - "nodes": [], "body": { "id": 15942, "nodeType": "Block", "src": "54495:110:13", - "nodes": [], "statements": [ { "expression": { @@ -90943,7 +89317,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54525:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54521:23:13", @@ -90958,7 +89331,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54521:76:13", @@ -90993,7 +89365,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54505:93:13", @@ -91147,12 +89518,10 @@ "id": 15966, "nodeType": "FunctionDefinition", "src": "54611:170:13", - "nodes": [], "body": { "id": 15965, "nodeType": "Block", "src": "54677:104:13", - "nodes": [], "statements": [ { "expression": { @@ -91264,7 +89633,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54707:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54703:23:13", @@ -91279,7 +89647,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54703:70:13", @@ -91314,7 +89681,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54687:87:13", @@ -91466,12 +89832,10 @@ "id": 15989, "nodeType": "FunctionDefinition", "src": "54787:181:13", - "nodes": [], "body": { "id": 15988, "nodeType": "Block", "src": "54862:106:13", - "nodes": [], "statements": [ { "expression": { @@ -91583,7 +89947,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54892:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54888:23:13", @@ -91598,7 +89961,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54888:72:13", @@ -91633,7 +89995,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54872:89:13", @@ -91785,12 +90146,10 @@ "id": 16012, "nodeType": "FunctionDefinition", "src": "54974:170:13", - "nodes": [], "body": { "id": 16011, "nodeType": "Block", "src": "55040:104:13", - "nodes": [], "statements": [ { "expression": { @@ -91902,7 +90261,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55070:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55066:23:13", @@ -91917,7 +90275,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55066:70:13", @@ -91952,7 +90309,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55050:87:13", @@ -92104,12 +90460,10 @@ "id": 16035, "nodeType": "FunctionDefinition", "src": "55150:176:13", - "nodes": [], "body": { "id": 16034, "nodeType": "Block", "src": "55219:107:13", - "nodes": [], "statements": [ { "expression": { @@ -92221,7 +90575,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55249:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55245:23:13", @@ -92236,7 +90589,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55245:73:13", @@ -92271,7 +90623,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55229:90:13", @@ -92424,12 +90775,10 @@ "id": 16058, "nodeType": "FunctionDefinition", "src": "55332:181:13", - "nodes": [], "body": { "id": 16057, "nodeType": "Block", "src": "55407:106:13", - "nodes": [], "statements": [ { "expression": { @@ -92541,7 +90890,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55437:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55433:23:13", @@ -92556,7 +90904,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55433:72:13", @@ -92591,7 +90938,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55417:89:13", @@ -92743,12 +91089,10 @@ "id": 16081, "nodeType": "FunctionDefinition", "src": "55519:192:13", - "nodes": [], "body": { "id": 16080, "nodeType": "Block", "src": "55603:108:13", - "nodes": [], "statements": [ { "expression": { @@ -92860,7 +91204,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55633:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55629:23:13", @@ -92875,7 +91218,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55629:74:13", @@ -92910,7 +91252,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55613:91:13", @@ -93062,12 +91403,10 @@ "id": 16104, "nodeType": "FunctionDefinition", "src": "55717:181:13", - "nodes": [], "body": { "id": 16103, "nodeType": "Block", "src": "55792:106:13", - "nodes": [], "statements": [ { "expression": { @@ -93179,7 +91518,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55822:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55818:23:13", @@ -93194,7 +91532,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55818:72:13", @@ -93229,7 +91566,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55802:89:13", @@ -93381,12 +91717,10 @@ "id": 16127, "nodeType": "FunctionDefinition", "src": "55904:187:13", - "nodes": [], "body": { "id": 16126, "nodeType": "Block", "src": "55982:109:13", - "nodes": [], "statements": [ { "expression": { @@ -93498,7 +91832,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56012:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56008:23:13", @@ -93513,7 +91846,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56008:75:13", @@ -93548,7 +91880,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55992:92:13", @@ -93701,12 +92032,10 @@ "id": 16150, "nodeType": "FunctionDefinition", "src": "56097:170:13", - "nodes": [], "body": { "id": 16149, "nodeType": "Block", "src": "56163:104:13", - "nodes": [], "statements": [ { "expression": { @@ -93818,7 +92147,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56193:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56189:23:13", @@ -93833,7 +92161,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56189:70:13", @@ -93868,7 +92195,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56173:87:13", @@ -94020,12 +92346,10 @@ "id": 16173, "nodeType": "FunctionDefinition", "src": "56273:181:13", - "nodes": [], "body": { "id": 16172, "nodeType": "Block", "src": "56348:106:13", - "nodes": [], "statements": [ { "expression": { @@ -94137,7 +92461,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56378:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56374:23:13", @@ -94152,7 +92475,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56374:72:13", @@ -94187,7 +92509,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56358:89:13", @@ -94339,12 +92660,10 @@ "id": 16196, "nodeType": "FunctionDefinition", "src": "56460:170:13", - "nodes": [], "body": { "id": 16195, "nodeType": "Block", "src": "56526:104:13", - "nodes": [], "statements": [ { "expression": { @@ -94456,7 +92775,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56556:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56552:23:13", @@ -94471,7 +92789,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56552:70:13", @@ -94506,7 +92823,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56536:87:13", @@ -94658,12 +92974,10 @@ "id": 16219, "nodeType": "FunctionDefinition", "src": "56636:176:13", - "nodes": [], "body": { "id": 16218, "nodeType": "Block", "src": "56705:107:13", - "nodes": [], "statements": [ { "expression": { @@ -94775,7 +93089,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56735:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56731:23:13", @@ -94790,7 +93103,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56731:73:13", @@ -94825,7 +93137,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56715:90:13", @@ -94978,12 +93289,10 @@ "id": 16242, "nodeType": "FunctionDefinition", "src": "56818:176:13", - "nodes": [], "body": { "id": 16241, "nodeType": "Block", "src": "56887:107:13", - "nodes": [], "statements": [ { "expression": { @@ -95095,7 +93404,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56917:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56913:23:13", @@ -95110,7 +93418,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56913:73:13", @@ -95145,7 +93452,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56897:90:13", @@ -95298,12 +93604,10 @@ "id": 16265, "nodeType": "FunctionDefinition", "src": "57000:187:13", - "nodes": [], "body": { "id": 16264, "nodeType": "Block", "src": "57078:109:13", - "nodes": [], "statements": [ { "expression": { @@ -95415,7 +93719,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57108:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57104:23:13", @@ -95430,7 +93733,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57104:75:13", @@ -95465,7 +93767,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57088:92:13", @@ -95618,12 +93919,10 @@ "id": 16288, "nodeType": "FunctionDefinition", "src": "57193:176:13", - "nodes": [], "body": { "id": 16287, "nodeType": "Block", "src": "57262:107:13", - "nodes": [], "statements": [ { "expression": { @@ -95735,7 +94034,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57292:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57288:23:13", @@ -95750,7 +94048,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57288:73:13", @@ -95785,7 +94082,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57272:90:13", @@ -95938,12 +94234,10 @@ "id": 16311, "nodeType": "FunctionDefinition", "src": "57375:182:13", - "nodes": [], "body": { "id": 16310, "nodeType": "Block", "src": "57447:110:13", - "nodes": [], "statements": [ { "expression": { @@ -96055,7 +94349,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57477:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57473:23:13", @@ -96070,7 +94363,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57473:76:13", @@ -96105,7 +94397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57457:93:13", @@ -96259,12 +94550,10 @@ "id": 16334, "nodeType": "FunctionDefinition", "src": "57563:181:13", - "nodes": [], "body": { "id": 16333, "nodeType": "Block", "src": "57638:106:13", - "nodes": [], "statements": [ { "expression": { @@ -96376,7 +94665,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57668:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57664:23:13", @@ -96391,7 +94679,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57664:72:13", @@ -96426,7 +94713,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57648:89:13", @@ -96578,12 +94864,10 @@ "id": 16357, "nodeType": "FunctionDefinition", "src": "57750:192:13", - "nodes": [], "body": { "id": 16356, "nodeType": "Block", "src": "57834:108:13", - "nodes": [], "statements": [ { "expression": { @@ -96695,7 +94979,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57864:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57860:23:13", @@ -96710,7 +94993,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57860:74:13", @@ -96745,7 +95027,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57844:91:13", @@ -96897,12 +95178,10 @@ "id": 16380, "nodeType": "FunctionDefinition", "src": "57948:181:13", - "nodes": [], "body": { "id": 16379, "nodeType": "Block", "src": "58023:106:13", - "nodes": [], "statements": [ { "expression": { @@ -97014,7 +95293,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58053:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58049:23:13", @@ -97029,7 +95307,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58049:72:13", @@ -97064,7 +95341,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58033:89:13", @@ -97216,12 +95492,10 @@ "id": 16403, "nodeType": "FunctionDefinition", "src": "58135:187:13", - "nodes": [], "body": { "id": 16402, "nodeType": "Block", "src": "58213:109:13", - "nodes": [], "statements": [ { "expression": { @@ -97333,7 +95607,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58243:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58239:23:13", @@ -97348,7 +95621,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58239:75:13", @@ -97383,7 +95655,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58223:92:13", @@ -97536,12 +95807,10 @@ "id": 16426, "nodeType": "FunctionDefinition", "src": "58328:192:13", - "nodes": [], "body": { "id": 16425, "nodeType": "Block", "src": "58412:108:13", - "nodes": [], "statements": [ { "expression": { @@ -97653,7 +95922,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58442:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58438:23:13", @@ -97668,7 +95936,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58438:74:13", @@ -97703,7 +95970,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58422:91:13", @@ -97855,12 +96121,10 @@ "id": 16449, "nodeType": "FunctionDefinition", "src": "58526:203:13", - "nodes": [], "body": { "id": 16448, "nodeType": "Block", "src": "58619:110:13", - "nodes": [], "statements": [ { "expression": { @@ -97972,7 +96236,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58649:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58645:23:13", @@ -97987,7 +96250,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58645:76:13", @@ -98022,7 +96284,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58629:93:13", @@ -98174,12 +96435,10 @@ "id": 16472, "nodeType": "FunctionDefinition", "src": "58735:192:13", - "nodes": [], "body": { "id": 16471, "nodeType": "Block", "src": "58819:108:13", - "nodes": [], "statements": [ { "expression": { @@ -98291,7 +96550,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58849:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58845:23:13", @@ -98306,7 +96564,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58845:74:13", @@ -98341,7 +96598,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58829:91:13", @@ -98493,12 +96749,10 @@ "id": 16495, "nodeType": "FunctionDefinition", "src": "58933:198:13", - "nodes": [], "body": { "id": 16494, "nodeType": "Block", "src": "59020:111:13", - "nodes": [], "statements": [ { "expression": { @@ -98610,7 +96864,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59050:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59046:23:13", @@ -98625,7 +96878,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59046:77:13", @@ -98660,7 +96912,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59030:94:13", @@ -98813,12 +97064,10 @@ "id": 16518, "nodeType": "FunctionDefinition", "src": "59137:181:13", - "nodes": [], "body": { "id": 16517, "nodeType": "Block", "src": "59212:106:13", - "nodes": [], "statements": [ { "expression": { @@ -98930,7 +97179,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59242:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59238:23:13", @@ -98945,7 +97193,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59238:72:13", @@ -98980,7 +97227,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59222:89:13", @@ -99132,12 +97378,10 @@ "id": 16541, "nodeType": "FunctionDefinition", "src": "59324:192:13", - "nodes": [], "body": { "id": 16540, "nodeType": "Block", "src": "59408:108:13", - "nodes": [], "statements": [ { "expression": { @@ -99249,7 +97493,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59438:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59434:23:13", @@ -99264,7 +97507,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59434:74:13", @@ -99299,7 +97541,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59418:91:13", @@ -99451,12 +97692,10 @@ "id": 16564, "nodeType": "FunctionDefinition", "src": "59522:181:13", - "nodes": [], "body": { "id": 16563, "nodeType": "Block", "src": "59597:106:13", - "nodes": [], "statements": [ { "expression": { @@ -99568,7 +97807,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59627:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59623:23:13", @@ -99583,7 +97821,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59623:72:13", @@ -99618,7 +97855,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59607:89:13", @@ -99770,12 +98006,10 @@ "id": 16587, "nodeType": "FunctionDefinition", "src": "59709:187:13", - "nodes": [], "body": { "id": 16586, "nodeType": "Block", "src": "59787:109:13", - "nodes": [], "statements": [ { "expression": { @@ -99887,7 +98121,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59817:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59813:23:13", @@ -99902,7 +98135,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59813:75:13", @@ -99937,7 +98169,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59797:92:13", @@ -100090,12 +98321,10 @@ "id": 16610, "nodeType": "FunctionDefinition", "src": "59902:187:13", - "nodes": [], "body": { "id": 16609, "nodeType": "Block", "src": "59980:109:13", - "nodes": [], "statements": [ { "expression": { @@ -100207,7 +98436,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60010:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60006:23:13", @@ -100222,7 +98450,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60006:75:13", @@ -100257,7 +98484,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59990:92:13", @@ -100410,12 +98636,10 @@ "id": 16633, "nodeType": "FunctionDefinition", "src": "60095:198:13", - "nodes": [], "body": { "id": 16632, "nodeType": "Block", "src": "60182:111:13", - "nodes": [], "statements": [ { "expression": { @@ -100527,7 +98751,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60212:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60208:23:13", @@ -100542,7 +98765,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60208:77:13", @@ -100577,7 +98799,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60192:94:13", @@ -100730,12 +98951,10 @@ "id": 16656, "nodeType": "FunctionDefinition", "src": "60299:187:13", - "nodes": [], "body": { "id": 16655, "nodeType": "Block", "src": "60377:109:13", - "nodes": [], "statements": [ { "expression": { @@ -100847,7 +99066,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60407:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60403:23:13", @@ -100862,7 +99080,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60403:75:13", @@ -100897,7 +99114,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60387:92:13", @@ -101050,12 +99266,10 @@ "id": 16679, "nodeType": "FunctionDefinition", "src": "60492:193:13", - "nodes": [], "body": { "id": 16678, "nodeType": "Block", "src": "60573:112:13", - "nodes": [], "statements": [ { "expression": { @@ -101167,7 +99381,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60603:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60599:23:13", @@ -101182,7 +99395,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60599:78:13", @@ -101217,7 +99429,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60583:95:13", @@ -101371,12 +99582,10 @@ "id": 16702, "nodeType": "FunctionDefinition", "src": "60691:170:13", - "nodes": [], "body": { "id": 16701, "nodeType": "Block", "src": "60757:104:13", - "nodes": [], "statements": [ { "expression": { @@ -101488,7 +99697,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60787:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60783:23:13", @@ -101503,7 +99711,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60783:70:13", @@ -101538,7 +99745,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60767:87:13", @@ -101690,12 +99896,10 @@ "id": 16725, "nodeType": "FunctionDefinition", "src": "60867:181:13", - "nodes": [], "body": { "id": 16724, "nodeType": "Block", "src": "60942:106:13", - "nodes": [], "statements": [ { "expression": { @@ -101807,7 +100011,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60972:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60968:23:13", @@ -101822,7 +100025,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60968:72:13", @@ -101857,7 +100059,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60952:89:13", @@ -102009,12 +100210,10 @@ "id": 16748, "nodeType": "FunctionDefinition", "src": "61054:170:13", - "nodes": [], "body": { "id": 16747, "nodeType": "Block", "src": "61120:104:13", - "nodes": [], "statements": [ { "expression": { @@ -102126,7 +100325,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61150:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61146:23:13", @@ -102141,7 +100339,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61146:70:13", @@ -102176,7 +100373,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61130:87:13", @@ -102328,12 +100524,10 @@ "id": 16771, "nodeType": "FunctionDefinition", "src": "61230:176:13", - "nodes": [], "body": { "id": 16770, "nodeType": "Block", "src": "61299:107:13", - "nodes": [], "statements": [ { "expression": { @@ -102445,7 +100639,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61329:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61325:23:13", @@ -102460,7 +100653,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61325:73:13", @@ -102495,7 +100687,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61309:90:13", @@ -102648,12 +100839,10 @@ "id": 16794, "nodeType": "FunctionDefinition", "src": "61412:181:13", - "nodes": [], "body": { "id": 16793, "nodeType": "Block", "src": "61487:106:13", - "nodes": [], "statements": [ { "expression": { @@ -102765,7 +100954,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61517:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61513:23:13", @@ -102780,7 +100968,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61513:72:13", @@ -102815,7 +101002,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61497:89:13", @@ -102967,12 +101153,10 @@ "id": 16817, "nodeType": "FunctionDefinition", "src": "61599:192:13", - "nodes": [], "body": { "id": 16816, "nodeType": "Block", "src": "61683:108:13", - "nodes": [], "statements": [ { "expression": { @@ -103084,7 +101268,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61713:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61709:23:13", @@ -103099,7 +101282,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61709:74:13", @@ -103134,7 +101316,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61693:91:13", @@ -103286,12 +101467,10 @@ "id": 16840, "nodeType": "FunctionDefinition", "src": "61797:181:13", - "nodes": [], "body": { "id": 16839, "nodeType": "Block", "src": "61872:106:13", - "nodes": [], "statements": [ { "expression": { @@ -103403,7 +101582,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61902:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61898:23:13", @@ -103418,7 +101596,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61898:72:13", @@ -103453,7 +101630,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61882:89:13", @@ -103605,12 +101781,10 @@ "id": 16863, "nodeType": "FunctionDefinition", "src": "61984:187:13", - "nodes": [], "body": { "id": 16862, "nodeType": "Block", "src": "62062:109:13", - "nodes": [], "statements": [ { "expression": { @@ -103722,7 +101896,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62092:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62088:23:13", @@ -103737,7 +101910,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62088:75:13", @@ -103772,7 +101944,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62072:92:13", @@ -103925,12 +102096,10 @@ "id": 16886, "nodeType": "FunctionDefinition", "src": "62177:170:13", - "nodes": [], "body": { "id": 16885, "nodeType": "Block", "src": "62243:104:13", - "nodes": [], "statements": [ { "expression": { @@ -104042,7 +102211,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62273:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62269:23:13", @@ -104057,7 +102225,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62269:70:13", @@ -104092,7 +102259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62253:87:13", @@ -104244,12 +102410,10 @@ "id": 16909, "nodeType": "FunctionDefinition", "src": "62353:181:13", - "nodes": [], "body": { "id": 16908, "nodeType": "Block", "src": "62428:106:13", - "nodes": [], "statements": [ { "expression": { @@ -104361,7 +102525,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62458:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62454:23:13", @@ -104376,7 +102539,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62454:72:13", @@ -104411,7 +102573,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62438:89:13", @@ -104563,12 +102724,10 @@ "id": 16932, "nodeType": "FunctionDefinition", "src": "62540:170:13", - "nodes": [], "body": { "id": 16931, "nodeType": "Block", "src": "62606:104:13", - "nodes": [], "statements": [ { "expression": { @@ -104680,7 +102839,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62636:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62632:23:13", @@ -104695,7 +102853,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62632:70:13", @@ -104730,7 +102887,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62616:87:13", @@ -104882,12 +103038,10 @@ "id": 16955, "nodeType": "FunctionDefinition", "src": "62716:176:13", - "nodes": [], "body": { "id": 16954, "nodeType": "Block", "src": "62785:107:13", - "nodes": [], "statements": [ { "expression": { @@ -104999,7 +103153,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62815:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62811:23:13", @@ -105014,7 +103167,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62811:73:13", @@ -105049,7 +103201,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62795:90:13", @@ -105202,12 +103353,10 @@ "id": 16978, "nodeType": "FunctionDefinition", "src": "62898:176:13", - "nodes": [], "body": { "id": 16977, "nodeType": "Block", "src": "62967:107:13", - "nodes": [], "statements": [ { "expression": { @@ -105319,7 +103468,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62997:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62993:23:13", @@ -105334,7 +103482,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62993:73:13", @@ -105369,7 +103516,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62977:90:13", @@ -105522,12 +103668,10 @@ "id": 17001, "nodeType": "FunctionDefinition", "src": "63080:187:13", - "nodes": [], "body": { "id": 17000, "nodeType": "Block", "src": "63158:109:13", - "nodes": [], "statements": [ { "expression": { @@ -105639,7 +103783,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63188:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63184:23:13", @@ -105654,7 +103797,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63184:75:13", @@ -105689,7 +103831,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63168:92:13", @@ -105842,12 +103983,10 @@ "id": 17024, "nodeType": "FunctionDefinition", "src": "63273:176:13", - "nodes": [], "body": { "id": 17023, "nodeType": "Block", "src": "63342:107:13", - "nodes": [], "statements": [ { "expression": { @@ -105959,7 +104098,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63372:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63368:23:13", @@ -105974,7 +104112,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63368:73:13", @@ -106009,7 +104146,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63352:90:13", @@ -106162,12 +104298,10 @@ "id": 17047, "nodeType": "FunctionDefinition", "src": "63455:182:13", - "nodes": [], "body": { "id": 17046, "nodeType": "Block", "src": "63527:110:13", - "nodes": [], "statements": [ { "expression": { @@ -106279,7 +104413,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63557:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63553:23:13", @@ -106294,7 +104427,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63553:76:13", @@ -106329,7 +104461,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63537:93:13", @@ -106483,12 +104614,10 @@ "id": 17070, "nodeType": "FunctionDefinition", "src": "63643:176:13", - "nodes": [], "body": { "id": 17069, "nodeType": "Block", "src": "63712:107:13", - "nodes": [], "statements": [ { "expression": { @@ -106600,7 +104729,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63742:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63738:23:13", @@ -106615,7 +104743,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63738:73:13", @@ -106650,7 +104777,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63722:90:13", @@ -106803,12 +104929,10 @@ "id": 17093, "nodeType": "FunctionDefinition", "src": "63825:187:13", - "nodes": [], "body": { "id": 17092, "nodeType": "Block", "src": "63903:109:13", - "nodes": [], "statements": [ { "expression": { @@ -106920,7 +105044,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63933:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63929:23:13", @@ -106935,7 +105058,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63929:75:13", @@ -106970,7 +105092,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63913:92:13", @@ -107123,12 +105244,10 @@ "id": 17116, "nodeType": "FunctionDefinition", "src": "64018:176:13", - "nodes": [], "body": { "id": 17115, "nodeType": "Block", "src": "64087:107:13", - "nodes": [], "statements": [ { "expression": { @@ -107240,7 +105359,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64117:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64113:23:13", @@ -107255,7 +105373,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64113:73:13", @@ -107290,7 +105407,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64097:90:13", @@ -107443,12 +105559,10 @@ "id": 17139, "nodeType": "FunctionDefinition", "src": "64200:182:13", - "nodes": [], "body": { "id": 17138, "nodeType": "Block", "src": "64272:110:13", - "nodes": [], "statements": [ { "expression": { @@ -107560,7 +105674,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64302:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64298:23:13", @@ -107575,7 +105688,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64298:76:13", @@ -107610,7 +105722,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64282:93:13", @@ -107764,12 +105875,10 @@ "id": 17162, "nodeType": "FunctionDefinition", "src": "64388:187:13", - "nodes": [], "body": { "id": 17161, "nodeType": "Block", "src": "64466:109:13", - "nodes": [], "statements": [ { "expression": { @@ -107881,7 +105990,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64496:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64492:23:13", @@ -107896,7 +106004,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64492:75:13", @@ -107931,7 +106038,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64476:92:13", @@ -108084,12 +106190,10 @@ "id": 17185, "nodeType": "FunctionDefinition", "src": "64581:198:13", - "nodes": [], "body": { "id": 17184, "nodeType": "Block", "src": "64668:111:13", - "nodes": [], "statements": [ { "expression": { @@ -108201,7 +106305,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64698:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64694:23:13", @@ -108216,7 +106319,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64694:77:13", @@ -108251,7 +106353,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64678:94:13", @@ -108404,12 +106505,10 @@ "id": 17208, "nodeType": "FunctionDefinition", "src": "64785:187:13", - "nodes": [], "body": { "id": 17207, "nodeType": "Block", "src": "64863:109:13", - "nodes": [], "statements": [ { "expression": { @@ -108521,7 +106620,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64893:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64889:23:13", @@ -108536,7 +106634,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64889:75:13", @@ -108571,7 +106668,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64873:92:13", @@ -108724,12 +106820,10 @@ "id": 17231, "nodeType": "FunctionDefinition", "src": "64978:193:13", - "nodes": [], "body": { "id": 17230, "nodeType": "Block", "src": "65059:112:13", - "nodes": [], "statements": [ { "expression": { @@ -108841,7 +106935,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65089:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65085:23:13", @@ -108856,7 +106949,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65085:78:13", @@ -108891,7 +106983,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65069:95:13", @@ -109045,12 +107136,10 @@ "id": 17254, "nodeType": "FunctionDefinition", "src": "65177:176:13", - "nodes": [], "body": { "id": 17253, "nodeType": "Block", "src": "65246:107:13", - "nodes": [], "statements": [ { "expression": { @@ -109162,7 +107251,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65276:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65272:23:13", @@ -109177,7 +107265,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65272:73:13", @@ -109212,7 +107299,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65256:90:13", @@ -109365,12 +107451,10 @@ "id": 17277, "nodeType": "FunctionDefinition", "src": "65359:187:13", - "nodes": [], "body": { "id": 17276, "nodeType": "Block", "src": "65437:109:13", - "nodes": [], "statements": [ { "expression": { @@ -109482,7 +107566,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65467:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65463:23:13", @@ -109497,7 +107580,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65463:75:13", @@ -109532,7 +107614,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65447:92:13", @@ -109685,12 +107766,10 @@ "id": 17300, "nodeType": "FunctionDefinition", "src": "65552:176:13", - "nodes": [], "body": { "id": 17299, "nodeType": "Block", "src": "65621:107:13", - "nodes": [], "statements": [ { "expression": { @@ -109802,7 +107881,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65651:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65647:23:13", @@ -109817,7 +107895,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65647:73:13", @@ -109852,7 +107929,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65631:90:13", @@ -110005,12 +108081,10 @@ "id": 17323, "nodeType": "FunctionDefinition", "src": "65734:182:13", - "nodes": [], "body": { "id": 17322, "nodeType": "Block", "src": "65806:110:13", - "nodes": [], "statements": [ { "expression": { @@ -110122,7 +108196,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65836:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65832:23:13", @@ -110137,7 +108210,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65832:76:13", @@ -110172,7 +108244,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65816:93:13", @@ -110326,12 +108397,10 @@ "id": 17346, "nodeType": "FunctionDefinition", "src": "65922:182:13", - "nodes": [], "body": { "id": 17345, "nodeType": "Block", "src": "65994:110:13", - "nodes": [], "statements": [ { "expression": { @@ -110443,7 +108512,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66024:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66020:23:13", @@ -110458,7 +108526,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66020:76:13", @@ -110493,7 +108560,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66004:93:13", @@ -110647,12 +108713,10 @@ "id": 17369, "nodeType": "FunctionDefinition", "src": "66110:193:13", - "nodes": [], "body": { "id": 17368, "nodeType": "Block", "src": "66191:112:13", - "nodes": [], "statements": [ { "expression": { @@ -110764,7 +108828,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66221:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66217:23:13", @@ -110779,7 +108842,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66217:78:13", @@ -110814,7 +108876,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66201:95:13", @@ -110968,12 +109029,10 @@ "id": 17392, "nodeType": "FunctionDefinition", "src": "66309:182:13", - "nodes": [], "body": { "id": 17391, "nodeType": "Block", "src": "66381:110:13", - "nodes": [], "statements": [ { "expression": { @@ -111085,7 +109144,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66411:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66407:23:13", @@ -111100,7 +109158,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66407:76:13", @@ -111135,7 +109192,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66391:93:13", @@ -111289,12 +109345,10 @@ "id": 17415, "nodeType": "FunctionDefinition", "src": "66497:188:13", - "nodes": [], "body": { "id": 17414, "nodeType": "Block", "src": "66572:113:13", - "nodes": [], "statements": [ { "expression": { @@ -111406,7 +109460,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66602:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66598:23:13", @@ -111421,7 +109474,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66598:79:13", @@ -111456,7 +109508,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66582:96:13", diff --git a/out/console2.sol/console2.json b/out/console2.sol/console2.json index e0d4fcf..fe1c2c9 100644 --- a/out/console2.sol/console2.json +++ b/out/console2.sol/console2.json @@ -1,64 +1,16 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220050355f1c76e40fbe7e61ab05f95467caa58518ba7dae3395e52b7a99342facd64736f6c63430008110033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c028c1dd0ed19188e7c6dc80e4408b81260e0145589ebacd77a3b08b177589a164736f6c634300080f0033", "sourceMap": "525:68782:14:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;525:68782:14;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220050355f1c76e40fbe7e61ab05f95467caa58518ba7dae3395e52b7a99342facd64736f6c63430008110033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c028c1dd0ed19188e7c6dc80e4408b81260e0145589ebacd77a3b08b177589a164736f6c634300080f0033", "sourceMap": "525:68782:14:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"The original console.sol uses `int` and `uint` for computing function selectors, but it should use `int256` and `uint256`. This modified version fixes that. This version is recommended over `console.sol` if you don't need compatibility with Hardhat as the logs will show up in forge stack traces. If you do need compatibility with Hardhat, you must use `console.sol`. Reference: https://github.com/NomicFoundation/hardhat/issues/2178\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/console2.sol\":\"console2\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/console2.sol": "console2" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/console2.sol", "id": 25513, @@ -74,7 +26,6 @@ "id": 17418, "nodeType": "PragmaDirective", "src": "32:32:14", - "nodes": [], "literals": [ "solidity", ">=", @@ -94,7 +45,6 @@ "id": 17425, "nodeType": "VariableDeclaration", "src": "548:86:14", - "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE_ADDRESS", @@ -168,7 +118,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "583:51:14", @@ -184,12 +133,10 @@ "id": 17441, "nodeType": "FunctionDefinition", "src": "641:376:14", - "nodes": [], "body": { "id": 17440, "nodeType": "Block", "src": "701:316:14", - "nodes": [], "statements": [ { "assignments": [ @@ -243,7 +190,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "743:6:14", "memberName": "length", "nodeType": "MemberAccess", "src": "735:14:14", @@ -494,12 +440,10 @@ "id": 17452, "nodeType": "FunctionDefinition", "src": "1023:95:14", - "nodes": [], "body": { "id": 17451, "nodeType": "Block", "src": "1052:66:14", - "nodes": [], "statements": [ { "expression": { @@ -547,7 +491,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1082:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1078:23:14", @@ -562,7 +505,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1078:32:14", @@ -597,7 +539,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1062:49:14", @@ -639,12 +580,10 @@ "id": 17466, "nodeType": "FunctionDefinition", "src": "1124:117:14", - "nodes": [], "body": { "id": 17465, "nodeType": "Block", "src": "1165:76:14", - "nodes": [], "statements": [ { "expression": { @@ -708,7 +647,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1195:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1191:23:14", @@ -723,7 +661,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1191:42:14", @@ -758,7 +695,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1175:59:14", @@ -828,12 +764,10 @@ "id": 17480, "nodeType": "FunctionDefinition", "src": "1247:120:14", - "nodes": [], "body": { "id": 17479, "nodeType": "Block", "src": "1290:77:14", - "nodes": [], "statements": [ { "expression": { @@ -897,7 +831,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1320:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1316:23:14", @@ -912,7 +845,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1316:43:14", @@ -947,7 +879,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1300:60:14", @@ -1017,12 +948,10 @@ "id": 17494, "nodeType": "FunctionDefinition", "src": "1373:127:14", - "nodes": [], "body": { "id": 17493, "nodeType": "Block", "src": "1424:76:14", - "nodes": [], "statements": [ { "expression": { @@ -1086,7 +1015,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1454:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1450:23:14", @@ -1101,7 +1029,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1450:42:14", @@ -1136,7 +1063,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1434:59:14", @@ -1206,12 +1132,10 @@ "id": 17508, "nodeType": "FunctionDefinition", "src": "1506:114:14", - "nodes": [], "body": { "id": 17507, "nodeType": "Block", "src": "1546:74:14", - "nodes": [], "statements": [ { "expression": { @@ -1275,7 +1199,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1576:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1572:23:14", @@ -1290,7 +1213,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1572:40:14", @@ -1325,7 +1247,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1556:57:14", @@ -1395,12 +1316,10 @@ "id": 17522, "nodeType": "FunctionDefinition", "src": "1626:123:14", - "nodes": [], "body": { "id": 17521, "nodeType": "Block", "src": "1672:77:14", - "nodes": [], "statements": [ { "expression": { @@ -1464,7 +1383,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1702:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1698:23:14", @@ -1479,7 +1397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1698:43:14", @@ -1514,7 +1431,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1682:60:14", @@ -1585,12 +1501,10 @@ "id": 17536, "nodeType": "FunctionDefinition", "src": "1755:124:14", - "nodes": [], "body": { "id": 17535, "nodeType": "Block", "src": "1804:75:14", - "nodes": [], "statements": [ { "expression": { @@ -1654,7 +1568,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1834:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1830:23:14", @@ -1669,7 +1582,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1830:41:14", @@ -1704,7 +1616,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1814:58:14", @@ -1774,12 +1685,10 @@ "id": 17550, "nodeType": "FunctionDefinition", "src": "1885:120:14", - "nodes": [], "body": { "id": 17549, "nodeType": "Block", "src": "1929:76:14", - "nodes": [], "statements": [ { "expression": { @@ -1843,7 +1752,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "1959:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1955:23:14", @@ -1858,7 +1766,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1955:42:14", @@ -1893,7 +1800,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1939:59:14", @@ -1963,12 +1869,10 @@ "id": 17564, "nodeType": "FunctionDefinition", "src": "2011:120:14", - "nodes": [], "body": { "id": 17563, "nodeType": "Block", "src": "2055:76:14", - "nodes": [], "statements": [ { "expression": { @@ -2032,7 +1936,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2085:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2081:23:14", @@ -2047,7 +1950,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2081:42:14", @@ -2082,7 +1984,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2065:59:14", @@ -2152,12 +2053,10 @@ "id": 17578, "nodeType": "FunctionDefinition", "src": "2137:120:14", - "nodes": [], "body": { "id": 17577, "nodeType": "Block", "src": "2181:76:14", - "nodes": [], "statements": [ { "expression": { @@ -2221,7 +2120,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2211:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2207:23:14", @@ -2236,7 +2134,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2207:42:14", @@ -2271,7 +2168,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2191:59:14", @@ -2341,12 +2237,10 @@ "id": 17592, "nodeType": "FunctionDefinition", "src": "2263:120:14", - "nodes": [], "body": { "id": 17591, "nodeType": "Block", "src": "2307:76:14", - "nodes": [], "statements": [ { "expression": { @@ -2410,7 +2304,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2337:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2333:23:14", @@ -2425,7 +2318,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2333:42:14", @@ -2460,7 +2352,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2317:59:14", @@ -2530,12 +2421,10 @@ "id": 17606, "nodeType": "FunctionDefinition", "src": "2389:120:14", - "nodes": [], "body": { "id": 17605, "nodeType": "Block", "src": "2433:76:14", - "nodes": [], "statements": [ { "expression": { @@ -2599,7 +2488,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2463:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2459:23:14", @@ -2614,7 +2502,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2459:42:14", @@ -2649,7 +2536,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2443:59:14", @@ -2719,12 +2605,10 @@ "id": 17620, "nodeType": "FunctionDefinition", "src": "2515:120:14", - "nodes": [], "body": { "id": 17619, "nodeType": "Block", "src": "2559:76:14", - "nodes": [], "statements": [ { "expression": { @@ -2788,7 +2672,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2589:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2585:23:14", @@ -2803,7 +2686,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2585:42:14", @@ -2838,7 +2720,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2569:59:14", @@ -2908,12 +2789,10 @@ "id": 17634, "nodeType": "FunctionDefinition", "src": "2641:120:14", - "nodes": [], "body": { "id": 17633, "nodeType": "Block", "src": "2685:76:14", - "nodes": [], "statements": [ { "expression": { @@ -2977,7 +2856,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2715:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2711:23:14", @@ -2992,7 +2870,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2711:42:14", @@ -3027,7 +2904,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2695:59:14", @@ -3097,12 +2973,10 @@ "id": 17648, "nodeType": "FunctionDefinition", "src": "2767:120:14", - "nodes": [], "body": { "id": 17647, "nodeType": "Block", "src": "2811:76:14", - "nodes": [], "statements": [ { "expression": { @@ -3166,7 +3040,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2841:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2837:23:14", @@ -3181,7 +3054,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2837:42:14", @@ -3216,7 +3088,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2821:59:14", @@ -3286,12 +3157,10 @@ "id": 17662, "nodeType": "FunctionDefinition", "src": "2893:120:14", - "nodes": [], "body": { "id": 17661, "nodeType": "Block", "src": "2937:76:14", - "nodes": [], "statements": [ { "expression": { @@ -3355,7 +3224,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2967:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2963:23:14", @@ -3370,7 +3238,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2963:42:14", @@ -3405,7 +3272,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2947:59:14", @@ -3475,12 +3341,10 @@ "id": 17676, "nodeType": "FunctionDefinition", "src": "3019:123:14", - "nodes": [], "body": { "id": 17675, "nodeType": "Block", "src": "3065:77:14", - "nodes": [], "statements": [ { "expression": { @@ -3544,7 +3408,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3095:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3091:23:14", @@ -3559,7 +3422,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3091:43:14", @@ -3594,7 +3456,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3075:60:14", @@ -3664,12 +3525,10 @@ "id": 17690, "nodeType": "FunctionDefinition", "src": "3148:123:14", - "nodes": [], "body": { "id": 17689, "nodeType": "Block", "src": "3194:77:14", - "nodes": [], "statements": [ { "expression": { @@ -3733,7 +3592,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3224:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3220:23:14", @@ -3748,7 +3606,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3220:43:14", @@ -3783,7 +3640,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3204:60:14", @@ -3853,12 +3709,10 @@ "id": 17704, "nodeType": "FunctionDefinition", "src": "3277:123:14", - "nodes": [], "body": { "id": 17703, "nodeType": "Block", "src": "3323:77:14", - "nodes": [], "statements": [ { "expression": { @@ -3922,7 +3776,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3353:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3349:23:14", @@ -3937,7 +3790,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3349:43:14", @@ -3972,7 +3824,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3333:60:14", @@ -4042,12 +3893,10 @@ "id": 17718, "nodeType": "FunctionDefinition", "src": "3406:123:14", - "nodes": [], "body": { "id": 17717, "nodeType": "Block", "src": "3452:77:14", - "nodes": [], "statements": [ { "expression": { @@ -4111,7 +3960,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3482:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3478:23:14", @@ -4126,7 +3974,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3478:43:14", @@ -4161,7 +4008,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3462:60:14", @@ -4231,12 +4077,10 @@ "id": 17732, "nodeType": "FunctionDefinition", "src": "3535:123:14", - "nodes": [], "body": { "id": 17731, "nodeType": "Block", "src": "3581:77:14", - "nodes": [], "statements": [ { "expression": { @@ -4300,7 +4144,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3611:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3607:23:14", @@ -4315,7 +4158,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3607:43:14", @@ -4350,7 +4192,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3591:60:14", @@ -4420,12 +4261,10 @@ "id": 17746, "nodeType": "FunctionDefinition", "src": "3664:123:14", - "nodes": [], "body": { "id": 17745, "nodeType": "Block", "src": "3710:77:14", - "nodes": [], "statements": [ { "expression": { @@ -4489,7 +4328,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3740:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3736:23:14", @@ -4504,7 +4342,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3736:43:14", @@ -4539,7 +4376,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3720:60:14", @@ -4609,12 +4445,10 @@ "id": 17760, "nodeType": "FunctionDefinition", "src": "3793:123:14", - "nodes": [], "body": { "id": 17759, "nodeType": "Block", "src": "3839:77:14", - "nodes": [], "statements": [ { "expression": { @@ -4678,7 +4512,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3869:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3865:23:14", @@ -4693,7 +4526,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3865:43:14", @@ -4728,7 +4560,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3849:60:14", @@ -4798,12 +4629,10 @@ "id": 17774, "nodeType": "FunctionDefinition", "src": "3922:123:14", - "nodes": [], "body": { "id": 17773, "nodeType": "Block", "src": "3968:77:14", - "nodes": [], "statements": [ { "expression": { @@ -4867,7 +4696,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "3998:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3994:23:14", @@ -4882,7 +4710,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3994:43:14", @@ -4917,7 +4744,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3978:60:14", @@ -4987,12 +4813,10 @@ "id": 17788, "nodeType": "FunctionDefinition", "src": "4051:123:14", - "nodes": [], "body": { "id": 17787, "nodeType": "Block", "src": "4097:77:14", - "nodes": [], "statements": [ { "expression": { @@ -5056,7 +4880,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4127:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4123:23:14", @@ -5071,7 +4894,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4123:43:14", @@ -5106,7 +4928,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4107:60:14", @@ -5176,12 +4997,10 @@ "id": 17802, "nodeType": "FunctionDefinition", "src": "4180:123:14", - "nodes": [], "body": { "id": 17801, "nodeType": "Block", "src": "4226:77:14", - "nodes": [], "statements": [ { "expression": { @@ -5245,7 +5064,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4256:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4252:23:14", @@ -5260,7 +5078,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4252:43:14", @@ -5295,7 +5112,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4236:60:14", @@ -5365,12 +5181,10 @@ "id": 17816, "nodeType": "FunctionDefinition", "src": "4309:123:14", - "nodes": [], "body": { "id": 17815, "nodeType": "Block", "src": "4355:77:14", - "nodes": [], "statements": [ { "expression": { @@ -5434,7 +5248,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4385:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4381:23:14", @@ -5449,7 +5262,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4381:43:14", @@ -5484,7 +5296,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4365:60:14", @@ -5554,12 +5365,10 @@ "id": 17830, "nodeType": "FunctionDefinition", "src": "4438:123:14", - "nodes": [], "body": { "id": 17829, "nodeType": "Block", "src": "4484:77:14", - "nodes": [], "statements": [ { "expression": { @@ -5623,7 +5432,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4514:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4510:23:14", @@ -5638,7 +5446,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4510:43:14", @@ -5673,7 +5480,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4494:60:14", @@ -5743,12 +5549,10 @@ "id": 17844, "nodeType": "FunctionDefinition", "src": "4567:123:14", - "nodes": [], "body": { "id": 17843, "nodeType": "Block", "src": "4613:77:14", - "nodes": [], "statements": [ { "expression": { @@ -5812,7 +5616,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4643:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4639:23:14", @@ -5827,7 +5630,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4639:43:14", @@ -5862,7 +5664,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4623:60:14", @@ -5932,12 +5733,10 @@ "id": 17858, "nodeType": "FunctionDefinition", "src": "4696:123:14", - "nodes": [], "body": { "id": 17857, "nodeType": "Block", "src": "4742:77:14", - "nodes": [], "statements": [ { "expression": { @@ -6001,7 +5800,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4772:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4768:23:14", @@ -6016,7 +5814,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4768:43:14", @@ -6051,7 +5848,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4752:60:14", @@ -6121,12 +5917,10 @@ "id": 17872, "nodeType": "FunctionDefinition", "src": "4825:123:14", - "nodes": [], "body": { "id": 17871, "nodeType": "Block", "src": "4871:77:14", - "nodes": [], "statements": [ { "expression": { @@ -6190,7 +5984,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "4901:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4897:23:14", @@ -6205,7 +5998,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4897:43:14", @@ -6240,7 +6032,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4881:60:14", @@ -6310,12 +6101,10 @@ "id": 17886, "nodeType": "FunctionDefinition", "src": "4954:123:14", - "nodes": [], "body": { "id": 17885, "nodeType": "Block", "src": "5000:77:14", - "nodes": [], "statements": [ { "expression": { @@ -6379,7 +6168,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5030:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5026:23:14", @@ -6394,7 +6182,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5026:43:14", @@ -6429,7 +6216,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5010:60:14", @@ -6499,12 +6285,10 @@ "id": 17900, "nodeType": "FunctionDefinition", "src": "5083:123:14", - "nodes": [], "body": { "id": 17899, "nodeType": "Block", "src": "5129:77:14", - "nodes": [], "statements": [ { "expression": { @@ -6568,7 +6352,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5159:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5155:23:14", @@ -6583,7 +6366,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5155:43:14", @@ -6618,7 +6400,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5139:60:14", @@ -6688,12 +6469,10 @@ "id": 17914, "nodeType": "FunctionDefinition", "src": "5212:123:14", - "nodes": [], "body": { "id": 17913, "nodeType": "Block", "src": "5258:77:14", - "nodes": [], "statements": [ { "expression": { @@ -6757,7 +6536,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5288:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5284:23:14", @@ -6772,7 +6550,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5284:43:14", @@ -6807,7 +6584,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5268:60:14", @@ -6877,12 +6653,10 @@ "id": 17928, "nodeType": "FunctionDefinition", "src": "5341:123:14", - "nodes": [], "body": { "id": 17927, "nodeType": "Block", "src": "5387:77:14", - "nodes": [], "statements": [ { "expression": { @@ -6946,7 +6720,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5417:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5413:23:14", @@ -6961,7 +6734,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5413:43:14", @@ -6996,7 +6768,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5397:60:14", @@ -7066,12 +6837,10 @@ "id": 17942, "nodeType": "FunctionDefinition", "src": "5470:123:14", - "nodes": [], "body": { "id": 17941, "nodeType": "Block", "src": "5516:77:14", - "nodes": [], "statements": [ { "expression": { @@ -7135,7 +6904,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5546:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5542:23:14", @@ -7150,7 +6918,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5542:43:14", @@ -7185,7 +6952,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5526:60:14", @@ -7255,12 +7021,10 @@ "id": 17956, "nodeType": "FunctionDefinition", "src": "5599:123:14", - "nodes": [], "body": { "id": 17955, "nodeType": "Block", "src": "5645:77:14", - "nodes": [], "statements": [ { "expression": { @@ -7324,7 +7088,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5675:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5671:23:14", @@ -7339,7 +7102,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5671:43:14", @@ -7374,7 +7136,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5655:60:14", @@ -7444,12 +7205,10 @@ "id": 17970, "nodeType": "FunctionDefinition", "src": "5728:123:14", - "nodes": [], "body": { "id": 17969, "nodeType": "Block", "src": "5774:77:14", - "nodes": [], "statements": [ { "expression": { @@ -7513,7 +7272,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5804:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5800:23:14", @@ -7528,7 +7286,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5800:43:14", @@ -7563,7 +7320,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5784:60:14", @@ -7633,12 +7389,10 @@ "id": 17984, "nodeType": "FunctionDefinition", "src": "5857:123:14", - "nodes": [], "body": { "id": 17983, "nodeType": "Block", "src": "5903:77:14", - "nodes": [], "statements": [ { "expression": { @@ -7702,7 +7456,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "5933:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5929:23:14", @@ -7717,7 +7470,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5929:43:14", @@ -7752,7 +7504,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5913:60:14", @@ -7822,12 +7573,10 @@ "id": 17998, "nodeType": "FunctionDefinition", "src": "5986:116:14", - "nodes": [], "body": { "id": 17997, "nodeType": "Block", "src": "6025:77:14", - "nodes": [], "statements": [ { "expression": { @@ -7891,7 +7640,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6055:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6051:23:14", @@ -7906,7 +7654,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6051:43:14", @@ -7941,7 +7688,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6035:60:14", @@ -8011,12 +7757,10 @@ "id": 18012, "nodeType": "FunctionDefinition", "src": "6108:114:14", - "nodes": [], "body": { "id": 18011, "nodeType": "Block", "src": "6146:76:14", - "nodes": [], "statements": [ { "expression": { @@ -8080,7 +7824,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6176:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6172:23:14", @@ -8095,7 +7838,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6172:42:14", @@ -8130,7 +7872,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6156:59:14", @@ -8200,12 +7941,10 @@ "id": 18026, "nodeType": "FunctionDefinition", "src": "6228:121:14", - "nodes": [], "body": { "id": 18025, "nodeType": "Block", "src": "6273:76:14", - "nodes": [], "statements": [ { "expression": { @@ -8269,7 +8008,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6303:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6299:23:14", @@ -8284,7 +8022,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6299:42:14", @@ -8319,7 +8056,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6283:59:14", @@ -8389,12 +8125,10 @@ "id": 18040, "nodeType": "FunctionDefinition", "src": "6355:110:14", - "nodes": [], "body": { "id": 18039, "nodeType": "Block", "src": "6391:74:14", - "nodes": [], "statements": [ { "expression": { @@ -8458,7 +8192,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6421:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6417:23:14", @@ -8473,7 +8206,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6417:40:14", @@ -8508,7 +8240,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6401:57:14", @@ -8578,12 +8309,10 @@ "id": 18054, "nodeType": "FunctionDefinition", "src": "6471:116:14", - "nodes": [], "body": { "id": 18053, "nodeType": "Block", "src": "6510:77:14", - "nodes": [], "statements": [ { "expression": { @@ -8647,7 +8376,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6540:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6536:23:14", @@ -8662,7 +8390,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6536:43:14", @@ -8697,7 +8424,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6520:60:14", @@ -8768,12 +8494,10 @@ "id": 18071, "nodeType": "FunctionDefinition", "src": "6593:140:14", - "nodes": [], "body": { "id": 18070, "nodeType": "Block", "src": "6644:89:14", - "nodes": [], "statements": [ { "expression": { @@ -8853,7 +8577,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6674:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6670:23:14", @@ -8868,7 +8591,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6670:55:14", @@ -8903,7 +8625,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6654:72:14", @@ -9000,12 +8721,10 @@ "id": 18088, "nodeType": "FunctionDefinition", "src": "6739:145:14", - "nodes": [], "body": { "id": 18087, "nodeType": "Block", "src": "6796:88:14", - "nodes": [], "statements": [ { "expression": { @@ -9085,7 +8804,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6826:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6822:23:14", @@ -9100,7 +8818,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6822:54:14", @@ -9135,7 +8852,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6806:71:14", @@ -9232,12 +8948,10 @@ "id": 18105, "nodeType": "FunctionDefinition", "src": "6890:134:14", - "nodes": [], "body": { "id": 18104, "nodeType": "Block", "src": "6938:86:14", - "nodes": [], "statements": [ { "expression": { @@ -9317,7 +9031,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "6968:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6964:23:14", @@ -9332,7 +9045,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6964:52:14", @@ -9367,7 +9079,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6948:69:14", @@ -9464,12 +9175,10 @@ "id": 18122, "nodeType": "FunctionDefinition", "src": "7030:140:14", - "nodes": [], "body": { "id": 18121, "nodeType": "Block", "src": "7081:89:14", - "nodes": [], "statements": [ { "expression": { @@ -9549,7 +9258,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7111:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7107:23:14", @@ -9564,7 +9272,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7107:55:14", @@ -9599,7 +9306,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7091:72:14", @@ -9697,12 +9403,10 @@ "id": 18139, "nodeType": "FunctionDefinition", "src": "7176:145:14", - "nodes": [], "body": { "id": 18138, "nodeType": "Block", "src": "7233:88:14", - "nodes": [], "statements": [ { "expression": { @@ -9782,7 +9486,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7263:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7259:23:14", @@ -9797,7 +9500,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7259:54:14", @@ -9832,7 +9534,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7243:71:14", @@ -9929,12 +9630,10 @@ "id": 18156, "nodeType": "FunctionDefinition", "src": "7327:143:14", - "nodes": [], "body": { "id": 18155, "nodeType": "Block", "src": "7383:87:14", - "nodes": [], "statements": [ { "expression": { @@ -10014,7 +9713,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7413:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7409:23:14", @@ -10029,7 +9727,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7409:53:14", @@ -10064,7 +9761,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7393:70:14", @@ -10161,12 +9857,10 @@ "id": 18173, "nodeType": "FunctionDefinition", "src": "7476:150:14", - "nodes": [], "body": { "id": 18172, "nodeType": "Block", "src": "7539:87:14", - "nodes": [], "statements": [ { "expression": { @@ -10246,7 +9940,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7569:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7565:23:14", @@ -10261,7 +9954,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7565:53:14", @@ -10296,7 +9988,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7549:70:14", @@ -10393,12 +10084,10 @@ "id": 18190, "nodeType": "FunctionDefinition", "src": "7632:139:14", - "nodes": [], "body": { "id": 18189, "nodeType": "Block", "src": "7686:85:14", - "nodes": [], "statements": [ { "expression": { @@ -10478,7 +10167,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7716:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7712:23:14", @@ -10493,7 +10181,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7712:51:14", @@ -10528,7 +10215,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7696:68:14", @@ -10625,12 +10311,10 @@ "id": 18207, "nodeType": "FunctionDefinition", "src": "7777:145:14", - "nodes": [], "body": { "id": 18206, "nodeType": "Block", "src": "7834:88:14", - "nodes": [], "statements": [ { "expression": { @@ -10710,7 +10394,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7864:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7860:23:14", @@ -10725,7 +10408,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7860:54:14", @@ -10760,7 +10442,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7844:71:14", @@ -10858,12 +10539,10 @@ "id": 18224, "nodeType": "FunctionDefinition", "src": "7928:134:14", - "nodes": [], "body": { "id": 18223, "nodeType": "Block", "src": "7976:86:14", - "nodes": [], "statements": [ { "expression": { @@ -10943,7 +10622,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8006:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8002:23:14", @@ -10958,7 +10636,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8002:52:14", @@ -10993,7 +10670,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7986:69:14", @@ -11090,12 +10766,10 @@ "id": 18241, "nodeType": "FunctionDefinition", "src": "8068:139:14", - "nodes": [], "body": { "id": 18240, "nodeType": "Block", "src": "8122:85:14", - "nodes": [], "statements": [ { "expression": { @@ -11175,7 +10849,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8152:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8148:23:14", @@ -11190,7 +10863,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8148:51:14", @@ -11225,7 +10897,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8132:68:14", @@ -11322,12 +10993,10 @@ "id": 18258, "nodeType": "FunctionDefinition", "src": "8213:128:14", - "nodes": [], "body": { "id": 18257, "nodeType": "Block", "src": "8258:83:14", - "nodes": [], "statements": [ { "expression": { @@ -11407,7 +11076,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8288:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8284:23:14", @@ -11422,7 +11090,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8284:49:14", @@ -11457,7 +11124,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8268:66:14", @@ -11554,12 +11220,10 @@ "id": 18275, "nodeType": "FunctionDefinition", "src": "8347:134:14", - "nodes": [], "body": { "id": 18274, "nodeType": "Block", "src": "8395:86:14", - "nodes": [], "statements": [ { "expression": { @@ -11639,7 +11303,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8425:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8421:23:14", @@ -11654,7 +11317,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8421:52:14", @@ -11689,7 +11351,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8405:69:14", @@ -11787,12 +11448,10 @@ "id": 18292, "nodeType": "FunctionDefinition", "src": "8487:140:14", - "nodes": [], "body": { "id": 18291, "nodeType": "Block", "src": "8538:89:14", - "nodes": [], "statements": [ { "expression": { @@ -11872,7 +11531,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8568:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8564:23:14", @@ -11887,7 +11545,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8564:55:14", @@ -11922,7 +11579,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8548:72:14", @@ -12020,12 +11676,10 @@ "id": 18309, "nodeType": "FunctionDefinition", "src": "8633:145:14", - "nodes": [], "body": { "id": 18308, "nodeType": "Block", "src": "8690:88:14", - "nodes": [], "statements": [ { "expression": { @@ -12105,7 +11759,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8720:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8716:23:14", @@ -12120,7 +11773,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8716:54:14", @@ -12155,7 +11807,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8700:71:14", @@ -12253,12 +11904,10 @@ "id": 18326, "nodeType": "FunctionDefinition", "src": "8784:134:14", - "nodes": [], "body": { "id": 18325, "nodeType": "Block", "src": "8832:86:14", - "nodes": [], "statements": [ { "expression": { @@ -12338,7 +11987,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8862:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8858:23:14", @@ -12353,7 +12001,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8858:52:14", @@ -12388,7 +12035,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8842:69:14", @@ -12486,12 +12132,10 @@ "id": 18343, "nodeType": "FunctionDefinition", "src": "8924:140:14", - "nodes": [], "body": { "id": 18342, "nodeType": "Block", "src": "8975:89:14", - "nodes": [], "statements": [ { "expression": { @@ -12571,7 +12215,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9005:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9001:23:14", @@ -12586,7 +12229,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9001:55:14", @@ -12621,7 +12263,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8985:72:14", @@ -12720,12 +12361,10 @@ "id": 18363, "nodeType": "FunctionDefinition", "src": "9070:164:14", - "nodes": [], "body": { "id": 18362, "nodeType": "Block", "src": "9133:101:14", - "nodes": [], "statements": [ { "expression": { @@ -12821,7 +12460,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9163:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9159:23:14", @@ -12836,7 +12474,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9159:67:14", @@ -12871,7 +12508,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9143:84:14", @@ -12995,12 +12631,10 @@ "id": 18383, "nodeType": "FunctionDefinition", "src": "9240:169:14", - "nodes": [], "body": { "id": 18382, "nodeType": "Block", "src": "9309:100:14", - "nodes": [], "statements": [ { "expression": { @@ -13096,7 +12730,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9339:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9335:23:14", @@ -13111,7 +12744,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9335:66:14", @@ -13146,7 +12778,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9319:83:14", @@ -13270,12 +12901,10 @@ "id": 18403, "nodeType": "FunctionDefinition", "src": "9415:158:14", - "nodes": [], "body": { "id": 18402, "nodeType": "Block", "src": "9475:98:14", - "nodes": [], "statements": [ { "expression": { @@ -13371,7 +13000,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9505:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9501:23:14", @@ -13386,7 +13014,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9501:64:14", @@ -13421,7 +13048,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9485:81:14", @@ -13545,12 +13171,10 @@ "id": 18423, "nodeType": "FunctionDefinition", "src": "9579:164:14", - "nodes": [], "body": { "id": 18422, "nodeType": "Block", "src": "9642:101:14", - "nodes": [], "statements": [ { "expression": { @@ -13646,7 +13270,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9672:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9668:23:14", @@ -13661,7 +13284,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9668:67:14", @@ -13696,7 +13318,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9652:84:14", @@ -13821,12 +13442,10 @@ "id": 18443, "nodeType": "FunctionDefinition", "src": "9749:169:14", - "nodes": [], "body": { "id": 18442, "nodeType": "Block", "src": "9818:100:14", - "nodes": [], "statements": [ { "expression": { @@ -13922,7 +13541,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "9848:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9844:23:14", @@ -13937,7 +13555,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9844:66:14", @@ -13972,7 +13589,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9828:83:14", @@ -14096,12 +13712,10 @@ "id": 18463, "nodeType": "FunctionDefinition", "src": "9924:174:14", - "nodes": [], "body": { "id": 18462, "nodeType": "Block", "src": "9999:99:14", - "nodes": [], "statements": [ { "expression": { @@ -14197,7 +13811,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10029:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10025:23:14", @@ -14212,7 +13825,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10025:65:14", @@ -14247,7 +13859,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10009:82:14", @@ -14371,12 +13982,10 @@ "id": 18483, "nodeType": "FunctionDefinition", "src": "10104:163:14", - "nodes": [], "body": { "id": 18482, "nodeType": "Block", "src": "10170:97:14", - "nodes": [], "statements": [ { "expression": { @@ -14472,7 +14081,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10200:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10196:23:14", @@ -14487,7 +14095,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10196:63:14", @@ -14522,7 +14129,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10180:80:14", @@ -14646,12 +14252,10 @@ "id": 18503, "nodeType": "FunctionDefinition", "src": "10273:169:14", - "nodes": [], "body": { "id": 18502, "nodeType": "Block", "src": "10342:100:14", - "nodes": [], "statements": [ { "expression": { @@ -14747,7 +14351,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10372:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10368:23:14", @@ -14762,7 +14365,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10368:66:14", @@ -14797,7 +14399,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10352:83:14", @@ -14922,12 +14523,10 @@ "id": 18523, "nodeType": "FunctionDefinition", "src": "10448:158:14", - "nodes": [], "body": { "id": 18522, "nodeType": "Block", "src": "10508:98:14", - "nodes": [], "statements": [ { "expression": { @@ -15023,7 +14622,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10538:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10534:23:14", @@ -15038,7 +14636,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10534:64:14", @@ -15073,7 +14670,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10518:81:14", @@ -15197,12 +14793,10 @@ "id": 18543, "nodeType": "FunctionDefinition", "src": "10612:163:14", - "nodes": [], "body": { "id": 18542, "nodeType": "Block", "src": "10678:97:14", - "nodes": [], "statements": [ { "expression": { @@ -15298,7 +14892,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10708:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10704:23:14", @@ -15313,7 +14906,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10704:63:14", @@ -15348,7 +14940,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10688:80:14", @@ -15472,12 +15063,10 @@ "id": 18563, "nodeType": "FunctionDefinition", "src": "10781:152:14", - "nodes": [], "body": { "id": 18562, "nodeType": "Block", "src": "10838:95:14", - "nodes": [], "statements": [ { "expression": { @@ -15573,7 +15162,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "10868:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10864:23:14", @@ -15588,7 +15176,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10864:61:14", @@ -15623,7 +15210,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10848:78:14", @@ -15747,12 +15333,10 @@ "id": 18583, "nodeType": "FunctionDefinition", "src": "10939:158:14", - "nodes": [], "body": { "id": 18582, "nodeType": "Block", "src": "10999:98:14", - "nodes": [], "statements": [ { "expression": { @@ -15848,7 +15432,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11029:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11025:23:14", @@ -15863,7 +15446,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11025:64:14", @@ -15898,7 +15480,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11009:81:14", @@ -16023,12 +15604,10 @@ "id": 18603, "nodeType": "FunctionDefinition", "src": "11103:164:14", - "nodes": [], "body": { "id": 18602, "nodeType": "Block", "src": "11166:101:14", - "nodes": [], "statements": [ { "expression": { @@ -16124,7 +15703,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11196:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11192:23:14", @@ -16139,7 +15717,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11192:67:14", @@ -16174,7 +15751,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11176:84:14", @@ -16299,12 +15875,10 @@ "id": 18623, "nodeType": "FunctionDefinition", "src": "11273:169:14", - "nodes": [], "body": { "id": 18622, "nodeType": "Block", "src": "11342:100:14", - "nodes": [], "statements": [ { "expression": { @@ -16400,7 +15974,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11372:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11368:23:14", @@ -16415,7 +15988,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11368:66:14", @@ -16450,7 +16022,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11352:83:14", @@ -16575,12 +16146,10 @@ "id": 18643, "nodeType": "FunctionDefinition", "src": "11448:158:14", - "nodes": [], "body": { "id": 18642, "nodeType": "Block", "src": "11508:98:14", - "nodes": [], "statements": [ { "expression": { @@ -16676,7 +16245,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11538:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11534:23:14", @@ -16691,7 +16259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11534:64:14", @@ -16726,7 +16293,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11518:81:14", @@ -16851,12 +16417,10 @@ "id": 18663, "nodeType": "FunctionDefinition", "src": "11612:164:14", - "nodes": [], "body": { "id": 18662, "nodeType": "Block", "src": "11675:101:14", - "nodes": [], "statements": [ { "expression": { @@ -16952,7 +16516,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11705:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11701:23:14", @@ -16967,7 +16530,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11701:67:14", @@ -17002,7 +16564,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11685:84:14", @@ -17128,12 +16689,10 @@ "id": 18683, "nodeType": "FunctionDefinition", "src": "11782:169:14", - "nodes": [], "body": { "id": 18682, "nodeType": "Block", "src": "11851:100:14", - "nodes": [], "statements": [ { "expression": { @@ -17229,7 +16788,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "11881:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11877:23:14", @@ -17244,7 +16802,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11877:66:14", @@ -17279,7 +16836,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11861:83:14", @@ -17403,12 +16959,10 @@ "id": 18703, "nodeType": "FunctionDefinition", "src": "11957:174:14", - "nodes": [], "body": { "id": 18702, "nodeType": "Block", "src": "12032:99:14", - "nodes": [], "statements": [ { "expression": { @@ -17504,7 +17058,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12062:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12058:23:14", @@ -17519,7 +17072,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12058:65:14", @@ -17554,7 +17106,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12042:82:14", @@ -17678,12 +17229,10 @@ "id": 18723, "nodeType": "FunctionDefinition", "src": "12137:163:14", - "nodes": [], "body": { "id": 18722, "nodeType": "Block", "src": "12203:97:14", - "nodes": [], "statements": [ { "expression": { @@ -17779,7 +17328,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12233:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12229:23:14", @@ -17794,7 +17342,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12229:63:14", @@ -17829,7 +17376,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12213:80:14", @@ -17953,12 +17499,10 @@ "id": 18743, "nodeType": "FunctionDefinition", "src": "12306:169:14", - "nodes": [], "body": { "id": 18742, "nodeType": "Block", "src": "12375:100:14", - "nodes": [], "statements": [ { "expression": { @@ -18054,7 +17598,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12405:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12401:23:14", @@ -18069,7 +17612,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12401:66:14", @@ -18104,7 +17646,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12385:83:14", @@ -18229,12 +17770,10 @@ "id": 18763, "nodeType": "FunctionDefinition", "src": "12481:174:14", - "nodes": [], "body": { "id": 18762, "nodeType": "Block", "src": "12556:99:14", - "nodes": [], "statements": [ { "expression": { @@ -18330,7 +17869,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12586:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12582:23:14", @@ -18345,7 +17883,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12582:65:14", @@ -18380,7 +17917,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12566:82:14", @@ -18504,12 +18040,10 @@ "id": 18783, "nodeType": "FunctionDefinition", "src": "12661:179:14", - "nodes": [], "body": { "id": 18782, "nodeType": "Block", "src": "12742:98:14", - "nodes": [], "statements": [ { "expression": { @@ -18605,7 +18139,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12772:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12768:23:14", @@ -18620,7 +18153,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12768:64:14", @@ -18655,7 +18187,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12752:81:14", @@ -18779,12 +18310,10 @@ "id": 18803, "nodeType": "FunctionDefinition", "src": "12846:168:14", - "nodes": [], "body": { "id": 18802, "nodeType": "Block", "src": "12918:96:14", - "nodes": [], "statements": [ { "expression": { @@ -18880,7 +18409,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "12948:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12944:23:14", @@ -18895,7 +18423,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12944:62:14", @@ -18930,7 +18457,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12928:79:14", @@ -19054,12 +18580,10 @@ "id": 18823, "nodeType": "FunctionDefinition", "src": "13020:174:14", - "nodes": [], "body": { "id": 18822, "nodeType": "Block", "src": "13095:99:14", - "nodes": [], "statements": [ { "expression": { @@ -19155,7 +18679,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13125:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13121:23:14", @@ -19170,7 +18693,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13121:65:14", @@ -19205,7 +18727,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13105:82:14", @@ -19330,12 +18851,10 @@ "id": 18843, "nodeType": "FunctionDefinition", "src": "13200:163:14", - "nodes": [], "body": { "id": 18842, "nodeType": "Block", "src": "13266:97:14", - "nodes": [], "statements": [ { "expression": { @@ -19431,7 +18950,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13296:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13292:23:14", @@ -19446,7 +18964,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13292:63:14", @@ -19481,7 +18998,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13276:80:14", @@ -19605,12 +19121,10 @@ "id": 18863, "nodeType": "FunctionDefinition", "src": "13369:168:14", - "nodes": [], "body": { "id": 18862, "nodeType": "Block", "src": "13441:96:14", - "nodes": [], "statements": [ { "expression": { @@ -19706,7 +19220,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13471:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13467:23:14", @@ -19721,7 +19234,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13467:62:14", @@ -19756,7 +19268,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13451:79:14", @@ -19880,12 +19391,10 @@ "id": 18883, "nodeType": "FunctionDefinition", "src": "13543:157:14", - "nodes": [], "body": { "id": 18882, "nodeType": "Block", "src": "13606:94:14", - "nodes": [], "statements": [ { "expression": { @@ -19981,7 +19490,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13636:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13632:23:14", @@ -19996,7 +19504,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13632:60:14", @@ -20031,7 +19538,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13616:77:14", @@ -20155,12 +19661,10 @@ "id": 18903, "nodeType": "FunctionDefinition", "src": "13706:163:14", - "nodes": [], "body": { "id": 18902, "nodeType": "Block", "src": "13772:97:14", - "nodes": [], "statements": [ { "expression": { @@ -20256,7 +19760,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13802:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13798:23:14", @@ -20271,7 +19774,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13798:63:14", @@ -20306,7 +19808,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13782:80:14", @@ -20431,12 +19932,10 @@ "id": 18923, "nodeType": "FunctionDefinition", "src": "13875:169:14", - "nodes": [], "body": { "id": 18922, "nodeType": "Block", "src": "13944:100:14", - "nodes": [], "statements": [ { "expression": { @@ -20532,7 +20031,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13974:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13970:23:14", @@ -20547,7 +20045,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13970:66:14", @@ -20582,7 +20079,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13954:83:14", @@ -20707,12 +20203,10 @@ "id": 18943, "nodeType": "FunctionDefinition", "src": "14050:174:14", - "nodes": [], "body": { "id": 18942, "nodeType": "Block", "src": "14125:99:14", - "nodes": [], "statements": [ { "expression": { @@ -20808,7 +20302,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14155:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14151:23:14", @@ -20823,7 +20316,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14151:65:14", @@ -20858,7 +20350,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14135:82:14", @@ -20983,12 +20474,10 @@ "id": 18963, "nodeType": "FunctionDefinition", "src": "14230:163:14", - "nodes": [], "body": { "id": 18962, "nodeType": "Block", "src": "14296:97:14", - "nodes": [], "statements": [ { "expression": { @@ -21084,7 +20573,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14326:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14322:23:14", @@ -21099,7 +20587,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14322:63:14", @@ -21134,7 +20621,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14306:80:14", @@ -21259,12 +20745,10 @@ "id": 18983, "nodeType": "FunctionDefinition", "src": "14399:169:14", - "nodes": [], "body": { "id": 18982, "nodeType": "Block", "src": "14468:100:14", - "nodes": [], "statements": [ { "expression": { @@ -21360,7 +20844,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14498:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14494:23:14", @@ -21375,7 +20858,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14494:66:14", @@ -21410,7 +20892,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14478:83:14", @@ -21536,12 +21017,10 @@ "id": 19003, "nodeType": "FunctionDefinition", "src": "14574:158:14", - "nodes": [], "body": { "id": 19002, "nodeType": "Block", "src": "14634:98:14", - "nodes": [], "statements": [ { "expression": { @@ -21637,7 +21116,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14664:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14660:23:14", @@ -21652,7 +21130,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14660:64:14", @@ -21687,7 +21164,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14644:81:14", @@ -21811,12 +21287,10 @@ "id": 19023, "nodeType": "FunctionDefinition", "src": "14738:163:14", - "nodes": [], "body": { "id": 19022, "nodeType": "Block", "src": "14804:97:14", - "nodes": [], "statements": [ { "expression": { @@ -21912,7 +21386,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14834:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14830:23:14", @@ -21927,7 +21400,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14830:63:14", @@ -21962,7 +21434,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14814:80:14", @@ -22086,12 +21557,10 @@ "id": 19043, "nodeType": "FunctionDefinition", "src": "14907:152:14", - "nodes": [], "body": { "id": 19042, "nodeType": "Block", "src": "14964:95:14", - "nodes": [], "statements": [ { "expression": { @@ -22187,7 +21656,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14994:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14990:23:14", @@ -22202,7 +21670,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14990:61:14", @@ -22237,7 +21704,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14974:78:14", @@ -22361,12 +21827,10 @@ "id": 19063, "nodeType": "FunctionDefinition", "src": "15065:158:14", - "nodes": [], "body": { "id": 19062, "nodeType": "Block", "src": "15125:98:14", - "nodes": [], "statements": [ { "expression": { @@ -22462,7 +21926,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15155:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15151:23:14", @@ -22477,7 +21940,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15151:64:14", @@ -22512,7 +21974,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15135:81:14", @@ -22637,12 +22098,10 @@ "id": 19083, "nodeType": "FunctionDefinition", "src": "15229:163:14", - "nodes": [], "body": { "id": 19082, "nodeType": "Block", "src": "15295:97:14", - "nodes": [], "statements": [ { "expression": { @@ -22738,7 +22197,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15325:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15321:23:14", @@ -22753,7 +22211,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15321:63:14", @@ -22788,7 +22245,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15305:80:14", @@ -22912,12 +22368,10 @@ "id": 19103, "nodeType": "FunctionDefinition", "src": "15398:168:14", - "nodes": [], "body": { "id": 19102, "nodeType": "Block", "src": "15470:96:14", - "nodes": [], "statements": [ { "expression": { @@ -23013,7 +22467,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15500:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15496:23:14", @@ -23028,7 +22481,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15496:62:14", @@ -23063,7 +22515,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15480:79:14", @@ -23187,12 +22638,10 @@ "id": 19123, "nodeType": "FunctionDefinition", "src": "15572:157:14", - "nodes": [], "body": { "id": 19122, "nodeType": "Block", "src": "15635:94:14", - "nodes": [], "statements": [ { "expression": { @@ -23288,7 +22737,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15665:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15661:23:14", @@ -23303,7 +22751,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15661:60:14", @@ -23338,7 +22785,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15645:77:14", @@ -23462,12 +22908,10 @@ "id": 19143, "nodeType": "FunctionDefinition", "src": "15735:163:14", - "nodes": [], "body": { "id": 19142, "nodeType": "Block", "src": "15801:97:14", - "nodes": [], "statements": [ { "expression": { @@ -23563,7 +23007,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15831:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15827:23:14", @@ -23578,7 +23021,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15827:63:14", @@ -23613,7 +23055,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15811:80:14", @@ -23738,12 +23179,10 @@ "id": 19163, "nodeType": "FunctionDefinition", "src": "15904:152:14", - "nodes": [], "body": { "id": 19162, "nodeType": "Block", "src": "15961:95:14", - "nodes": [], "statements": [ { "expression": { @@ -23839,7 +23278,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15991:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15987:23:14", @@ -23854,7 +23292,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15987:61:14", @@ -23889,7 +23326,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15971:78:14", @@ -24013,12 +23449,10 @@ "id": 19183, "nodeType": "FunctionDefinition", "src": "16062:157:14", - "nodes": [], "body": { "id": 19182, "nodeType": "Block", "src": "16125:94:14", - "nodes": [], "statements": [ { "expression": { @@ -24114,7 +23548,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16155:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16151:23:14", @@ -24129,7 +23562,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16151:60:14", @@ -24164,7 +23596,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16135:77:14", @@ -24288,12 +23719,10 @@ "id": 19203, "nodeType": "FunctionDefinition", "src": "16225:146:14", - "nodes": [], "body": { "id": 19202, "nodeType": "Block", "src": "16279:92:14", - "nodes": [], "statements": [ { "expression": { @@ -24389,7 +23818,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16309:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16305:23:14", @@ -24404,7 +23832,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16305:58:14", @@ -24439,7 +23866,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16289:75:14", @@ -24563,12 +23989,10 @@ "id": 19223, "nodeType": "FunctionDefinition", "src": "16377:152:14", - "nodes": [], "body": { "id": 19222, "nodeType": "Block", "src": "16434:95:14", - "nodes": [], "statements": [ { "expression": { @@ -24664,7 +24088,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16464:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16460:23:14", @@ -24679,7 +24102,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16460:61:14", @@ -24714,7 +24136,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16444:78:14", @@ -24839,12 +24260,10 @@ "id": 19243, "nodeType": "FunctionDefinition", "src": "16535:158:14", - "nodes": [], "body": { "id": 19242, "nodeType": "Block", "src": "16595:98:14", - "nodes": [], "statements": [ { "expression": { @@ -24940,7 +24359,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16625:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16621:23:14", @@ -24955,7 +24373,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16621:64:14", @@ -24990,7 +24407,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16605:81:14", @@ -25115,12 +24531,10 @@ "id": 19263, "nodeType": "FunctionDefinition", "src": "16699:163:14", - "nodes": [], "body": { "id": 19262, "nodeType": "Block", "src": "16765:97:14", - "nodes": [], "statements": [ { "expression": { @@ -25216,7 +24630,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16795:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16791:23:14", @@ -25231,7 +24644,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16791:63:14", @@ -25266,7 +24678,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16775:80:14", @@ -25391,12 +24802,10 @@ "id": 19283, "nodeType": "FunctionDefinition", "src": "16868:152:14", - "nodes": [], "body": { "id": 19282, "nodeType": "Block", "src": "16925:95:14", - "nodes": [], "statements": [ { "expression": { @@ -25492,7 +24901,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "16955:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16951:23:14", @@ -25507,7 +24915,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16951:61:14", @@ -25542,7 +24949,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16935:78:14", @@ -25667,12 +25073,10 @@ "id": 19303, "nodeType": "FunctionDefinition", "src": "17026:158:14", - "nodes": [], "body": { "id": 19302, "nodeType": "Block", "src": "17086:98:14", - "nodes": [], "statements": [ { "expression": { @@ -25768,7 +25172,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17116:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17112:23:14", @@ -25783,7 +25186,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17112:64:14", @@ -25818,7 +25220,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17096:81:14", @@ -25944,12 +25345,10 @@ "id": 19323, "nodeType": "FunctionDefinition", "src": "17190:164:14", - "nodes": [], "body": { "id": 19322, "nodeType": "Block", "src": "17253:101:14", - "nodes": [], "statements": [ { "expression": { @@ -26045,7 +25444,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17283:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17279:23:14", @@ -26060,7 +25458,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17279:67:14", @@ -26095,7 +25492,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17263:84:14", @@ -26220,12 +25616,10 @@ "id": 19343, "nodeType": "FunctionDefinition", "src": "17360:169:14", - "nodes": [], "body": { "id": 19342, "nodeType": "Block", "src": "17429:100:14", - "nodes": [], "statements": [ { "expression": { @@ -26321,7 +25715,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17459:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17455:23:14", @@ -26336,7 +25729,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17455:66:14", @@ -26371,7 +25763,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17439:83:14", @@ -26496,12 +25887,10 @@ "id": 19363, "nodeType": "FunctionDefinition", "src": "17535:158:14", - "nodes": [], "body": { "id": 19362, "nodeType": "Block", "src": "17595:98:14", - "nodes": [], "statements": [ { "expression": { @@ -26597,7 +25986,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17625:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17621:23:14", @@ -26612,7 +26000,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17621:64:14", @@ -26647,7 +26034,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17605:81:14", @@ -26772,12 +26158,10 @@ "id": 19383, "nodeType": "FunctionDefinition", "src": "17699:164:14", - "nodes": [], "body": { "id": 19382, "nodeType": "Block", "src": "17762:101:14", - "nodes": [], "statements": [ { "expression": { @@ -26873,7 +26257,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17792:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17788:23:14", @@ -26888,7 +26271,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17788:67:14", @@ -26923,7 +26305,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17772:84:14", @@ -27049,12 +26430,10 @@ "id": 19403, "nodeType": "FunctionDefinition", "src": "17869:169:14", - "nodes": [], "body": { "id": 19402, "nodeType": "Block", "src": "17938:100:14", - "nodes": [], "statements": [ { "expression": { @@ -27150,7 +26529,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "17968:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17964:23:14", @@ -27165,7 +26543,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17964:66:14", @@ -27200,7 +26577,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17948:83:14", @@ -27325,12 +26701,10 @@ "id": 19423, "nodeType": "FunctionDefinition", "src": "18044:174:14", - "nodes": [], "body": { "id": 19422, "nodeType": "Block", "src": "18119:99:14", - "nodes": [], "statements": [ { "expression": { @@ -27426,7 +26800,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18149:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18145:23:14", @@ -27441,7 +26814,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18145:65:14", @@ -27476,7 +26848,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18129:82:14", @@ -27601,12 +26972,10 @@ "id": 19443, "nodeType": "FunctionDefinition", "src": "18224:163:14", - "nodes": [], "body": { "id": 19442, "nodeType": "Block", "src": "18290:97:14", - "nodes": [], "statements": [ { "expression": { @@ -27702,7 +27071,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18320:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18316:23:14", @@ -27717,7 +27085,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18316:63:14", @@ -27752,7 +27119,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18300:80:14", @@ -27877,12 +27243,10 @@ "id": 19463, "nodeType": "FunctionDefinition", "src": "18393:169:14", - "nodes": [], "body": { "id": 19462, "nodeType": "Block", "src": "18462:100:14", - "nodes": [], "statements": [ { "expression": { @@ -27978,7 +27342,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18492:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18488:23:14", @@ -27993,7 +27356,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18488:66:14", @@ -28028,7 +27390,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18472:83:14", @@ -28154,12 +27515,10 @@ "id": 19483, "nodeType": "FunctionDefinition", "src": "18568:158:14", - "nodes": [], "body": { "id": 19482, "nodeType": "Block", "src": "18628:98:14", - "nodes": [], "statements": [ { "expression": { @@ -28255,7 +27614,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18658:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18654:23:14", @@ -28270,7 +27628,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18654:64:14", @@ -28305,7 +27662,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18638:81:14", @@ -28430,12 +27786,10 @@ "id": 19503, "nodeType": "FunctionDefinition", "src": "18732:163:14", - "nodes": [], "body": { "id": 19502, "nodeType": "Block", "src": "18798:97:14", - "nodes": [], "statements": [ { "expression": { @@ -28531,7 +27885,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18828:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18824:23:14", @@ -28546,7 +27899,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18824:63:14", @@ -28581,7 +27933,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18808:80:14", @@ -28706,12 +28057,10 @@ "id": 19523, "nodeType": "FunctionDefinition", "src": "18901:152:14", - "nodes": [], "body": { "id": 19522, "nodeType": "Block", "src": "18958:95:14", - "nodes": [], "statements": [ { "expression": { @@ -28807,7 +28156,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "18988:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18984:23:14", @@ -28822,7 +28170,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18984:61:14", @@ -28857,7 +28204,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18968:78:14", @@ -28982,12 +28328,10 @@ "id": 19543, "nodeType": "FunctionDefinition", "src": "19059:158:14", - "nodes": [], "body": { "id": 19542, "nodeType": "Block", "src": "19119:98:14", - "nodes": [], "statements": [ { "expression": { @@ -29083,7 +28427,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19149:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19145:23:14", @@ -29098,7 +28441,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19145:64:14", @@ -29133,7 +28475,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19129:81:14", @@ -29259,12 +28600,10 @@ "id": 19563, "nodeType": "FunctionDefinition", "src": "19223:164:14", - "nodes": [], "body": { "id": 19562, "nodeType": "Block", "src": "19286:101:14", - "nodes": [], "statements": [ { "expression": { @@ -29360,7 +28699,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19316:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19312:23:14", @@ -29375,7 +28713,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19312:67:14", @@ -29410,7 +28747,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19296:84:14", @@ -29536,12 +28872,10 @@ "id": 19583, "nodeType": "FunctionDefinition", "src": "19393:169:14", - "nodes": [], "body": { "id": 19582, "nodeType": "Block", "src": "19462:100:14", - "nodes": [], "statements": [ { "expression": { @@ -29637,7 +28971,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19492:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19488:23:14", @@ -29652,7 +28985,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19488:66:14", @@ -29687,7 +29019,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19472:83:14", @@ -29813,12 +29144,10 @@ "id": 19603, "nodeType": "FunctionDefinition", "src": "19568:158:14", - "nodes": [], "body": { "id": 19602, "nodeType": "Block", "src": "19628:98:14", - "nodes": [], "statements": [ { "expression": { @@ -29914,7 +29243,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19658:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19654:23:14", @@ -29929,7 +29257,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19654:64:14", @@ -29964,7 +29291,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19638:81:14", @@ -30090,12 +29416,10 @@ "id": 19623, "nodeType": "FunctionDefinition", "src": "19732:164:14", - "nodes": [], "body": { "id": 19622, "nodeType": "Block", "src": "19795:101:14", - "nodes": [], "statements": [ { "expression": { @@ -30191,7 +29515,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "19825:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19821:23:14", @@ -30206,7 +29529,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19821:67:14", @@ -30241,7 +29563,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19805:84:14", @@ -30368,12 +29689,10 @@ "id": 19646, "nodeType": "FunctionDefinition", "src": "19902:188:14", - "nodes": [], "body": { "id": 19645, "nodeType": "Block", "src": "19977:113:14", - "nodes": [], "statements": [ { "expression": { @@ -30485,7 +29804,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20007:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20003:23:14", @@ -30500,7 +29818,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20003:79:14", @@ -30535,7 +29852,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19987:96:14", @@ -30686,12 +30002,10 @@ "id": 19669, "nodeType": "FunctionDefinition", "src": "20096:193:14", - "nodes": [], "body": { "id": 19668, "nodeType": "Block", "src": "20177:112:14", - "nodes": [], "statements": [ { "expression": { @@ -30803,7 +30117,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20207:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20203:23:14", @@ -30818,7 +30131,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20203:78:14", @@ -30853,7 +30165,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20187:95:14", @@ -31004,12 +30315,10 @@ "id": 19692, "nodeType": "FunctionDefinition", "src": "20295:182:14", - "nodes": [], "body": { "id": 19691, "nodeType": "Block", "src": "20367:110:14", - "nodes": [], "statements": [ { "expression": { @@ -31121,7 +30430,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20397:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20393:23:14", @@ -31136,7 +30444,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20393:76:14", @@ -31171,7 +30478,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20377:93:14", @@ -31322,12 +30628,10 @@ "id": 19715, "nodeType": "FunctionDefinition", "src": "20483:188:14", - "nodes": [], "body": { "id": 19714, "nodeType": "Block", "src": "20558:113:14", - "nodes": [], "statements": [ { "expression": { @@ -31439,7 +30743,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20588:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20584:23:14", @@ -31454,7 +30757,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20584:79:14", @@ -31489,7 +30791,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20568:96:14", @@ -31641,12 +30942,10 @@ "id": 19738, "nodeType": "FunctionDefinition", "src": "20677:193:14", - "nodes": [], "body": { "id": 19737, "nodeType": "Block", "src": "20758:112:14", - "nodes": [], "statements": [ { "expression": { @@ -31758,7 +31057,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20788:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20784:23:14", @@ -31773,7 +31071,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20784:78:14", @@ -31808,7 +31105,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20768:95:14", @@ -31959,12 +31255,10 @@ "id": 19761, "nodeType": "FunctionDefinition", "src": "20876:198:14", - "nodes": [], "body": { "id": 19760, "nodeType": "Block", "src": "20963:111:14", - "nodes": [], "statements": [ { "expression": { @@ -32076,7 +31370,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "20993:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20989:23:14", @@ -32091,7 +31384,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20989:77:14", @@ -32126,7 +31418,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20973:94:14", @@ -32277,12 +31568,10 @@ "id": 19784, "nodeType": "FunctionDefinition", "src": "21080:187:14", - "nodes": [], "body": { "id": 19783, "nodeType": "Block", "src": "21158:109:14", - "nodes": [], "statements": [ { "expression": { @@ -32394,7 +31683,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21188:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21184:23:14", @@ -32409,7 +31697,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21184:75:14", @@ -32444,7 +31731,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21168:92:14", @@ -32595,12 +31881,10 @@ "id": 19807, "nodeType": "FunctionDefinition", "src": "21273:193:14", - "nodes": [], "body": { "id": 19806, "nodeType": "Block", "src": "21354:112:14", - "nodes": [], "statements": [ { "expression": { @@ -32712,7 +31996,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21384:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21380:23:14", @@ -32727,7 +32010,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21380:78:14", @@ -32762,7 +32044,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21364:95:14", @@ -32914,12 +32195,10 @@ "id": 19830, "nodeType": "FunctionDefinition", "src": "21472:182:14", - "nodes": [], "body": { "id": 19829, "nodeType": "Block", "src": "21544:110:14", - "nodes": [], "statements": [ { "expression": { @@ -33031,7 +32310,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21574:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21570:23:14", @@ -33046,7 +32324,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21570:76:14", @@ -33081,7 +32358,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21554:93:14", @@ -33232,12 +32508,10 @@ "id": 19853, "nodeType": "FunctionDefinition", "src": "21660:187:14", - "nodes": [], "body": { "id": 19852, "nodeType": "Block", "src": "21738:109:14", - "nodes": [], "statements": [ { "expression": { @@ -33349,7 +32623,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21768:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21764:23:14", @@ -33364,7 +32637,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21764:75:14", @@ -33399,7 +32671,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21748:92:14", @@ -33550,12 +32821,10 @@ "id": 19876, "nodeType": "FunctionDefinition", "src": "21853:176:14", - "nodes": [], "body": { "id": 19875, "nodeType": "Block", "src": "21922:107:14", - "nodes": [], "statements": [ { "expression": { @@ -33667,7 +32936,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "21952:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21948:23:14", @@ -33682,7 +32950,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21948:73:14", @@ -33717,7 +32984,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21932:90:14", @@ -33868,12 +33134,10 @@ "id": 19899, "nodeType": "FunctionDefinition", "src": "22035:182:14", - "nodes": [], "body": { "id": 19898, "nodeType": "Block", "src": "22107:110:14", - "nodes": [], "statements": [ { "expression": { @@ -33985,7 +33249,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22137:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22133:23:14", @@ -34000,7 +33263,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22133:76:14", @@ -34035,7 +33297,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22117:93:14", @@ -34187,12 +33448,10 @@ "id": 19922, "nodeType": "FunctionDefinition", "src": "22223:188:14", - "nodes": [], "body": { "id": 19921, "nodeType": "Block", "src": "22298:113:14", - "nodes": [], "statements": [ { "expression": { @@ -34304,7 +33563,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22328:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22324:23:14", @@ -34319,7 +33577,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22324:79:14", @@ -34354,7 +33611,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22308:96:14", @@ -34506,12 +33762,10 @@ "id": 19945, "nodeType": "FunctionDefinition", "src": "22417:193:14", - "nodes": [], "body": { "id": 19944, "nodeType": "Block", "src": "22498:112:14", - "nodes": [], "statements": [ { "expression": { @@ -34623,7 +33877,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22528:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22524:23:14", @@ -34638,7 +33891,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22524:78:14", @@ -34673,7 +33925,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22508:95:14", @@ -34825,12 +34076,10 @@ "id": 19968, "nodeType": "FunctionDefinition", "src": "22616:182:14", - "nodes": [], "body": { "id": 19967, "nodeType": "Block", "src": "22688:110:14", - "nodes": [], "statements": [ { "expression": { @@ -34942,7 +34191,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22718:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22714:23:14", @@ -34957,7 +34205,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22714:76:14", @@ -34992,7 +34239,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22698:93:14", @@ -35144,12 +34390,10 @@ "id": 19991, "nodeType": "FunctionDefinition", "src": "22804:188:14", - "nodes": [], "body": { "id": 19990, "nodeType": "Block", "src": "22879:113:14", - "nodes": [], "statements": [ { "expression": { @@ -35261,7 +34505,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "22909:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22905:23:14", @@ -35276,7 +34519,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22905:79:14", @@ -35311,7 +34553,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22889:96:14", @@ -35464,12 +34705,10 @@ "id": 20014, "nodeType": "FunctionDefinition", "src": "22998:193:14", - "nodes": [], "body": { "id": 20013, "nodeType": "Block", "src": "23079:112:14", - "nodes": [], "statements": [ { "expression": { @@ -35581,7 +34820,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23109:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23105:23:14", @@ -35596,7 +34834,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23105:78:14", @@ -35631,7 +34868,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23089:95:14", @@ -35782,12 +35018,10 @@ "id": 20037, "nodeType": "FunctionDefinition", "src": "23197:198:14", - "nodes": [], "body": { "id": 20036, "nodeType": "Block", "src": "23284:111:14", - "nodes": [], "statements": [ { "expression": { @@ -35899,7 +35133,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23314:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23310:23:14", @@ -35914,7 +35147,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23310:77:14", @@ -35949,7 +35181,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23294:94:14", @@ -36100,12 +35331,10 @@ "id": 20060, "nodeType": "FunctionDefinition", "src": "23401:187:14", - "nodes": [], "body": { "id": 20059, "nodeType": "Block", "src": "23479:109:14", - "nodes": [], "statements": [ { "expression": { @@ -36217,7 +35446,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23509:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23505:23:14", @@ -36232,7 +35460,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23505:75:14", @@ -36267,7 +35494,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23489:92:14", @@ -36418,12 +35644,10 @@ "id": 20083, "nodeType": "FunctionDefinition", "src": "23594:193:14", - "nodes": [], "body": { "id": 20082, "nodeType": "Block", "src": "23675:112:14", - "nodes": [], "statements": [ { "expression": { @@ -36535,7 +35759,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23705:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23701:23:14", @@ -36550,7 +35773,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23701:78:14", @@ -36585,7 +35807,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23685:95:14", @@ -36737,12 +35958,10 @@ "id": 20106, "nodeType": "FunctionDefinition", "src": "23793:198:14", - "nodes": [], "body": { "id": 20105, "nodeType": "Block", "src": "23880:111:14", - "nodes": [], "statements": [ { "expression": { @@ -36854,7 +36073,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "23910:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23906:23:14", @@ -36869,7 +36087,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23906:77:14", @@ -36904,7 +36121,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23890:94:14", @@ -37055,12 +36271,10 @@ "id": 20129, "nodeType": "FunctionDefinition", "src": "23997:203:14", - "nodes": [], "body": { "id": 20128, "nodeType": "Block", "src": "24090:110:14", - "nodes": [], "statements": [ { "expression": { @@ -37172,7 +36386,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24120:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24116:23:14", @@ -37187,7 +36400,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24116:76:14", @@ -37222,7 +36434,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24100:93:14", @@ -37373,12 +36584,10 @@ "id": 20152, "nodeType": "FunctionDefinition", "src": "24206:192:14", - "nodes": [], "body": { "id": 20151, "nodeType": "Block", "src": "24290:108:14", - "nodes": [], "statements": [ { "expression": { @@ -37490,7 +36699,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24320:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24316:23:14", @@ -37505,7 +36713,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24316:74:14", @@ -37540,7 +36747,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24300:91:14", @@ -37691,12 +36897,10 @@ "id": 20175, "nodeType": "FunctionDefinition", "src": "24404:198:14", - "nodes": [], "body": { "id": 20174, "nodeType": "Block", "src": "24491:111:14", - "nodes": [], "statements": [ { "expression": { @@ -37808,7 +37012,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24521:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24517:23:14", @@ -37823,7 +37026,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24517:77:14", @@ -37858,7 +37060,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24501:94:14", @@ -38010,12 +37211,10 @@ "id": 20198, "nodeType": "FunctionDefinition", "src": "24608:187:14", - "nodes": [], "body": { "id": 20197, "nodeType": "Block", "src": "24686:109:14", - "nodes": [], "statements": [ { "expression": { @@ -38127,7 +37326,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24716:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24712:23:14", @@ -38142,7 +37340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24712:75:14", @@ -38177,7 +37374,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24696:92:14", @@ -38328,12 +37524,10 @@ "id": 20221, "nodeType": "FunctionDefinition", "src": "24801:192:14", - "nodes": [], "body": { "id": 20220, "nodeType": "Block", "src": "24885:108:14", - "nodes": [], "statements": [ { "expression": { @@ -38445,7 +37639,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24915:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24911:23:14", @@ -38460,7 +37653,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24911:74:14", @@ -38495,7 +37687,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24895:91:14", @@ -38646,12 +37837,10 @@ "id": 20244, "nodeType": "FunctionDefinition", "src": "24999:181:14", - "nodes": [], "body": { "id": 20243, "nodeType": "Block", "src": "25074:106:14", - "nodes": [], "statements": [ { "expression": { @@ -38763,7 +37952,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25104:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25100:23:14", @@ -38778,7 +37966,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25100:72:14", @@ -38813,7 +38000,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25084:89:14", @@ -38964,12 +38150,10 @@ "id": 20267, "nodeType": "FunctionDefinition", "src": "25186:187:14", - "nodes": [], "body": { "id": 20266, "nodeType": "Block", "src": "25264:109:14", - "nodes": [], "statements": [ { "expression": { @@ -39081,7 +38265,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25294:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25290:23:14", @@ -39096,7 +38279,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25290:75:14", @@ -39131,7 +38313,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25274:92:14", @@ -39283,12 +38464,10 @@ "id": 20290, "nodeType": "FunctionDefinition", "src": "25379:193:14", - "nodes": [], "body": { "id": 20289, "nodeType": "Block", "src": "25460:112:14", - "nodes": [], "statements": [ { "expression": { @@ -39400,7 +38579,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25490:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25486:23:14", @@ -39415,7 +38593,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25486:78:14", @@ -39450,7 +38627,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25470:95:14", @@ -39602,12 +38778,10 @@ "id": 20313, "nodeType": "FunctionDefinition", "src": "25578:198:14", - "nodes": [], "body": { "id": 20312, "nodeType": "Block", "src": "25665:111:14", - "nodes": [], "statements": [ { "expression": { @@ -39719,7 +38893,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25695:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25691:23:14", @@ -39734,7 +38907,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25691:77:14", @@ -39769,7 +38941,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25675:94:14", @@ -39921,12 +39092,10 @@ "id": 20336, "nodeType": "FunctionDefinition", "src": "25782:187:14", - "nodes": [], "body": { "id": 20335, "nodeType": "Block", "src": "25860:109:14", - "nodes": [], "statements": [ { "expression": { @@ -40038,7 +39207,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "25890:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25886:23:14", @@ -40053,7 +39221,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25886:75:14", @@ -40088,7 +39255,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25870:92:14", @@ -40240,12 +39406,10 @@ "id": 20359, "nodeType": "FunctionDefinition", "src": "25975:193:14", - "nodes": [], "body": { "id": 20358, "nodeType": "Block", "src": "26056:112:14", - "nodes": [], "statements": [ { "expression": { @@ -40357,7 +39521,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26086:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26082:23:14", @@ -40372,7 +39535,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26082:78:14", @@ -40407,7 +39569,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26066:95:14", @@ -40560,12 +39721,10 @@ "id": 20382, "nodeType": "FunctionDefinition", "src": "26174:182:14", - "nodes": [], "body": { "id": 20381, "nodeType": "Block", "src": "26246:110:14", - "nodes": [], "statements": [ { "expression": { @@ -40677,7 +39836,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26276:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26272:23:14", @@ -40692,7 +39850,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26272:76:14", @@ -40727,7 +39884,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26256:93:14", @@ -40878,12 +40034,10 @@ "id": 20405, "nodeType": "FunctionDefinition", "src": "26362:187:14", - "nodes": [], "body": { "id": 20404, "nodeType": "Block", "src": "26440:109:14", - "nodes": [], "statements": [ { "expression": { @@ -40995,7 +40149,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26470:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26466:23:14", @@ -41010,7 +40163,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26466:75:14", @@ -41045,7 +40197,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26450:92:14", @@ -41196,12 +40347,10 @@ "id": 20428, "nodeType": "FunctionDefinition", "src": "26555:176:14", - "nodes": [], "body": { "id": 20427, "nodeType": "Block", "src": "26624:107:14", - "nodes": [], "statements": [ { "expression": { @@ -41313,7 +40462,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26654:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26650:23:14", @@ -41328,7 +40476,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26650:73:14", @@ -41363,7 +40510,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26634:90:14", @@ -41514,12 +40660,10 @@ "id": 20451, "nodeType": "FunctionDefinition", "src": "26737:182:14", - "nodes": [], "body": { "id": 20450, "nodeType": "Block", "src": "26809:110:14", - "nodes": [], "statements": [ { "expression": { @@ -41631,7 +40775,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "26839:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26835:23:14", @@ -41646,7 +40789,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26835:76:14", @@ -41681,7 +40823,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26819:93:14", @@ -41833,12 +40974,10 @@ "id": 20474, "nodeType": "FunctionDefinition", "src": "26925:187:14", - "nodes": [], "body": { "id": 20473, "nodeType": "Block", "src": "27003:109:14", - "nodes": [], "statements": [ { "expression": { @@ -41950,7 +41089,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27033:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27029:23:14", @@ -41965,7 +41103,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27029:75:14", @@ -42000,7 +41137,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27013:92:14", @@ -42151,12 +41287,10 @@ "id": 20497, "nodeType": "FunctionDefinition", "src": "27118:192:14", - "nodes": [], "body": { "id": 20496, "nodeType": "Block", "src": "27202:108:14", - "nodes": [], "statements": [ { "expression": { @@ -42268,7 +41402,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27232:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27228:23:14", @@ -42283,7 +41416,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27228:74:14", @@ -42318,7 +41450,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27212:91:14", @@ -42469,12 +41600,10 @@ "id": 20520, "nodeType": "FunctionDefinition", "src": "27316:181:14", - "nodes": [], "body": { "id": 20519, "nodeType": "Block", "src": "27391:106:14", - "nodes": [], "statements": [ { "expression": { @@ -42586,7 +41715,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27421:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27417:23:14", @@ -42601,7 +41729,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27417:72:14", @@ -42636,7 +41763,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27401:89:14", @@ -42787,12 +41913,10 @@ "id": 20543, "nodeType": "FunctionDefinition", "src": "27503:187:14", - "nodes": [], "body": { "id": 20542, "nodeType": "Block", "src": "27581:109:14", - "nodes": [], "statements": [ { "expression": { @@ -42904,7 +42028,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27611:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27607:23:14", @@ -42919,7 +42042,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27607:75:14", @@ -42954,7 +42076,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27591:92:14", @@ -43106,12 +42227,10 @@ "id": 20566, "nodeType": "FunctionDefinition", "src": "27696:176:14", - "nodes": [], "body": { "id": 20565, "nodeType": "Block", "src": "27765:107:14", - "nodes": [], "statements": [ { "expression": { @@ -43223,7 +42342,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27795:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27791:23:14", @@ -43238,7 +42356,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27791:73:14", @@ -43273,7 +42390,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27775:90:14", @@ -43424,12 +42540,10 @@ "id": 20589, "nodeType": "FunctionDefinition", "src": "27878:181:14", - "nodes": [], "body": { "id": 20588, "nodeType": "Block", "src": "27953:106:14", - "nodes": [], "statements": [ { "expression": { @@ -43541,7 +42655,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27983:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27979:23:14", @@ -43556,7 +42669,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27979:72:14", @@ -43591,7 +42703,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27963:89:14", @@ -43742,12 +42853,10 @@ "id": 20612, "nodeType": "FunctionDefinition", "src": "28065:170:14", - "nodes": [], "body": { "id": 20611, "nodeType": "Block", "src": "28131:104:14", - "nodes": [], "statements": [ { "expression": { @@ -43859,7 +42968,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28161:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28157:23:14", @@ -43874,7 +42982,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28157:70:14", @@ -43909,7 +43016,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28141:87:14", @@ -44060,12 +43166,10 @@ "id": 20635, "nodeType": "FunctionDefinition", "src": "28241:176:14", - "nodes": [], "body": { "id": 20634, "nodeType": "Block", "src": "28310:107:14", - "nodes": [], "statements": [ { "expression": { @@ -44177,7 +43281,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28340:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28336:23:14", @@ -44192,7 +43295,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28336:73:14", @@ -44227,7 +43329,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28320:90:14", @@ -44379,12 +43480,10 @@ "id": 20658, "nodeType": "FunctionDefinition", "src": "28423:182:14", - "nodes": [], "body": { "id": 20657, "nodeType": "Block", "src": "28495:110:14", - "nodes": [], "statements": [ { "expression": { @@ -44496,7 +43595,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28525:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28521:23:14", @@ -44511,7 +43609,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28521:76:14", @@ -44546,7 +43643,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28505:93:14", @@ -44698,12 +43794,10 @@ "id": 20681, "nodeType": "FunctionDefinition", "src": "28611:187:14", - "nodes": [], "body": { "id": 20680, "nodeType": "Block", "src": "28689:109:14", - "nodes": [], "statements": [ { "expression": { @@ -44815,7 +43909,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28719:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28715:23:14", @@ -44830,7 +43923,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28715:75:14", @@ -44865,7 +43957,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28699:92:14", @@ -45017,12 +44108,10 @@ "id": 20704, "nodeType": "FunctionDefinition", "src": "28804:176:14", - "nodes": [], "body": { "id": 20703, "nodeType": "Block", "src": "28873:107:14", - "nodes": [], "statements": [ { "expression": { @@ -45134,7 +44223,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "28903:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28899:23:14", @@ -45149,7 +44237,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28899:73:14", @@ -45184,7 +44271,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28883:90:14", @@ -45336,12 +44422,10 @@ "id": 20727, "nodeType": "FunctionDefinition", "src": "28986:182:14", - "nodes": [], "body": { "id": 20726, "nodeType": "Block", "src": "29058:110:14", - "nodes": [], "statements": [ { "expression": { @@ -45453,7 +44537,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29088:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29084:23:14", @@ -45468,7 +44551,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29084:76:14", @@ -45503,7 +44585,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29068:93:14", @@ -45656,12 +44737,10 @@ "id": 20750, "nodeType": "FunctionDefinition", "src": "29174:188:14", - "nodes": [], "body": { "id": 20749, "nodeType": "Block", "src": "29249:113:14", - "nodes": [], "statements": [ { "expression": { @@ -45773,7 +44852,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29279:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29275:23:14", @@ -45788,7 +44866,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29275:79:14", @@ -45823,7 +44900,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29259:96:14", @@ -45975,12 +45051,10 @@ "id": 20773, "nodeType": "FunctionDefinition", "src": "29368:193:14", - "nodes": [], "body": { "id": 20772, "nodeType": "Block", "src": "29449:112:14", - "nodes": [], "statements": [ { "expression": { @@ -46092,7 +45166,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29479:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29475:23:14", @@ -46107,7 +45180,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29475:78:14", @@ -46142,7 +45214,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29459:95:14", @@ -46294,12 +45365,10 @@ "id": 20796, "nodeType": "FunctionDefinition", "src": "29567:182:14", - "nodes": [], "body": { "id": 20795, "nodeType": "Block", "src": "29639:110:14", - "nodes": [], "statements": [ { "expression": { @@ -46411,7 +45480,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29669:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29665:23:14", @@ -46426,7 +45494,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29665:76:14", @@ -46461,7 +45528,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29649:93:14", @@ -46613,12 +45679,10 @@ "id": 20819, "nodeType": "FunctionDefinition", "src": "29755:188:14", - "nodes": [], "body": { "id": 20818, "nodeType": "Block", "src": "29830:113:14", - "nodes": [], "statements": [ { "expression": { @@ -46730,7 +45794,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "29860:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29856:23:14", @@ -46745,7 +45808,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29856:79:14", @@ -46780,7 +45842,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29840:96:14", @@ -46933,12 +45994,10 @@ "id": 20842, "nodeType": "FunctionDefinition", "src": "29949:193:14", - "nodes": [], "body": { "id": 20841, "nodeType": "Block", "src": "30030:112:14", - "nodes": [], "statements": [ { "expression": { @@ -47050,7 +46109,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30060:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30056:23:14", @@ -47065,7 +46123,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30056:78:14", @@ -47100,7 +46157,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30040:95:14", @@ -47252,12 +46308,10 @@ "id": 20865, "nodeType": "FunctionDefinition", "src": "30148:198:14", - "nodes": [], "body": { "id": 20864, "nodeType": "Block", "src": "30235:111:14", - "nodes": [], "statements": [ { "expression": { @@ -47369,7 +46423,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30265:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30261:23:14", @@ -47384,7 +46437,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30261:77:14", @@ -47419,7 +46471,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30245:94:14", @@ -47571,12 +46622,10 @@ "id": 20888, "nodeType": "FunctionDefinition", "src": "30352:187:14", - "nodes": [], "body": { "id": 20887, "nodeType": "Block", "src": "30430:109:14", - "nodes": [], "statements": [ { "expression": { @@ -47688,7 +46737,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30460:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30456:23:14", @@ -47703,7 +46751,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30456:75:14", @@ -47738,7 +46785,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30440:92:14", @@ -47890,12 +46936,10 @@ "id": 20911, "nodeType": "FunctionDefinition", "src": "30545:193:14", - "nodes": [], "body": { "id": 20910, "nodeType": "Block", "src": "30626:112:14", - "nodes": [], "statements": [ { "expression": { @@ -48007,7 +47051,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30656:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30652:23:14", @@ -48022,7 +47065,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30652:78:14", @@ -48057,7 +47099,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30636:95:14", @@ -48210,12 +47251,10 @@ "id": 20934, "nodeType": "FunctionDefinition", "src": "30744:182:14", - "nodes": [], "body": { "id": 20933, "nodeType": "Block", "src": "30816:110:14", - "nodes": [], "statements": [ { "expression": { @@ -48327,7 +47366,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "30846:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30842:23:14", @@ -48342,7 +47380,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30842:76:14", @@ -48377,7 +47414,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30826:93:14", @@ -48529,12 +47565,10 @@ "id": 20957, "nodeType": "FunctionDefinition", "src": "30932:187:14", - "nodes": [], "body": { "id": 20956, "nodeType": "Block", "src": "31010:109:14", - "nodes": [], "statements": [ { "expression": { @@ -48646,7 +47680,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31040:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31036:23:14", @@ -48661,7 +47694,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31036:75:14", @@ -48696,7 +47728,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31020:92:14", @@ -48848,12 +47879,10 @@ "id": 20980, "nodeType": "FunctionDefinition", "src": "31125:176:14", - "nodes": [], "body": { "id": 20979, "nodeType": "Block", "src": "31194:107:14", - "nodes": [], "statements": [ { "expression": { @@ -48965,7 +47994,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31224:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31220:23:14", @@ -48980,7 +48008,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31220:73:14", @@ -49015,7 +48042,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31204:90:14", @@ -49167,12 +48193,10 @@ "id": 21003, "nodeType": "FunctionDefinition", "src": "31307:182:14", - "nodes": [], "body": { "id": 21002, "nodeType": "Block", "src": "31379:110:14", - "nodes": [], "statements": [ { "expression": { @@ -49284,7 +48308,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31409:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31405:23:14", @@ -49299,7 +48322,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31405:76:14", @@ -49334,7 +48356,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31389:93:14", @@ -49487,12 +48508,10 @@ "id": 21026, "nodeType": "FunctionDefinition", "src": "31495:188:14", - "nodes": [], "body": { "id": 21025, "nodeType": "Block", "src": "31570:113:14", - "nodes": [], "statements": [ { "expression": { @@ -49604,7 +48623,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31600:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31596:23:14", @@ -49619,7 +48637,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31596:79:14", @@ -49654,7 +48671,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31580:96:14", @@ -49807,12 +48823,10 @@ "id": 21049, "nodeType": "FunctionDefinition", "src": "31689:193:14", - "nodes": [], "body": { "id": 21048, "nodeType": "Block", "src": "31770:112:14", - "nodes": [], "statements": [ { "expression": { @@ -49924,7 +48938,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31800:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31796:23:14", @@ -49939,7 +48952,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31796:78:14", @@ -49974,7 +48986,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31780:95:14", @@ -50127,12 +49138,10 @@ "id": 21072, "nodeType": "FunctionDefinition", "src": "31888:182:14", - "nodes": [], "body": { "id": 21071, "nodeType": "Block", "src": "31960:110:14", - "nodes": [], "statements": [ { "expression": { @@ -50244,7 +49253,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "31990:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31986:23:14", @@ -50259,7 +49267,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31986:76:14", @@ -50294,7 +49301,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31970:93:14", @@ -50447,12 +49453,10 @@ "id": 21095, "nodeType": "FunctionDefinition", "src": "32076:188:14", - "nodes": [], "body": { "id": 21094, "nodeType": "Block", "src": "32151:113:14", - "nodes": [], "statements": [ { "expression": { @@ -50564,7 +49568,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32181:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32177:23:14", @@ -50579,7 +49582,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32177:79:14", @@ -50614,7 +49616,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32161:96:14", @@ -50768,12 +49769,10 @@ "id": 21118, "nodeType": "FunctionDefinition", "src": "32270:193:14", - "nodes": [], "body": { "id": 21117, "nodeType": "Block", "src": "32351:112:14", - "nodes": [], "statements": [ { "expression": { @@ -50885,7 +49884,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32381:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32377:23:14", @@ -50900,7 +49898,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32377:78:14", @@ -50935,7 +49932,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32361:95:14", @@ -51086,12 +50082,10 @@ "id": 21141, "nodeType": "FunctionDefinition", "src": "32469:198:14", - "nodes": [], "body": { "id": 21140, "nodeType": "Block", "src": "32556:111:14", - "nodes": [], "statements": [ { "expression": { @@ -51203,7 +50197,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32586:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32582:23:14", @@ -51218,7 +50211,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32582:77:14", @@ -51253,7 +50245,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32566:94:14", @@ -51404,12 +50395,10 @@ "id": 21164, "nodeType": "FunctionDefinition", "src": "32673:187:14", - "nodes": [], "body": { "id": 21163, "nodeType": "Block", "src": "32751:109:14", - "nodes": [], "statements": [ { "expression": { @@ -51521,7 +50510,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32781:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32777:23:14", @@ -51536,7 +50524,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32777:75:14", @@ -51571,7 +50558,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32761:92:14", @@ -51722,12 +50708,10 @@ "id": 21187, "nodeType": "FunctionDefinition", "src": "32866:193:14", - "nodes": [], "body": { "id": 21186, "nodeType": "Block", "src": "32947:112:14", - "nodes": [], "statements": [ { "expression": { @@ -51839,7 +50823,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "32977:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32973:23:14", @@ -51854,7 +50837,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32973:78:14", @@ -51889,7 +50871,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32957:95:14", @@ -52041,12 +51022,10 @@ "id": 21210, "nodeType": "FunctionDefinition", "src": "33065:198:14", - "nodes": [], "body": { "id": 21209, "nodeType": "Block", "src": "33152:111:14", - "nodes": [], "statements": [ { "expression": { @@ -52158,7 +51137,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33182:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33178:23:14", @@ -52173,7 +51151,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33178:77:14", @@ -52208,7 +51185,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33162:94:14", @@ -52359,12 +51335,10 @@ "id": 21233, "nodeType": "FunctionDefinition", "src": "33269:203:14", - "nodes": [], "body": { "id": 21232, "nodeType": "Block", "src": "33362:110:14", - "nodes": [], "statements": [ { "expression": { @@ -52476,7 +51450,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33392:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33388:23:14", @@ -52491,7 +51464,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33388:76:14", @@ -52526,7 +51498,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33372:93:14", @@ -52677,12 +51648,10 @@ "id": 21256, "nodeType": "FunctionDefinition", "src": "33478:192:14", - "nodes": [], "body": { "id": 21255, "nodeType": "Block", "src": "33562:108:14", - "nodes": [], "statements": [ { "expression": { @@ -52794,7 +51763,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33592:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33588:23:14", @@ -52809,7 +51777,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33588:74:14", @@ -52844,7 +51811,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33572:91:14", @@ -52995,12 +51961,10 @@ "id": 21279, "nodeType": "FunctionDefinition", "src": "33676:198:14", - "nodes": [], "body": { "id": 21278, "nodeType": "Block", "src": "33763:111:14", - "nodes": [], "statements": [ { "expression": { @@ -53112,7 +52076,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33793:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33789:23:14", @@ -53127,7 +52090,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33789:77:14", @@ -53162,7 +52124,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33773:94:14", @@ -53314,12 +52275,10 @@ "id": 21302, "nodeType": "FunctionDefinition", "src": "33880:187:14", - "nodes": [], "body": { "id": 21301, "nodeType": "Block", "src": "33958:109:14", - "nodes": [], "statements": [ { "expression": { @@ -53431,7 +52390,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "33988:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33984:23:14", @@ -53446,7 +52404,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33984:75:14", @@ -53481,7 +52438,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33968:92:14", @@ -53632,12 +52588,10 @@ "id": 21325, "nodeType": "FunctionDefinition", "src": "34073:192:14", - "nodes": [], "body": { "id": 21324, "nodeType": "Block", "src": "34157:108:14", - "nodes": [], "statements": [ { "expression": { @@ -53749,7 +52703,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34187:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34183:23:14", @@ -53764,7 +52717,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34183:74:14", @@ -53799,7 +52751,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34167:91:14", @@ -53950,12 +52901,10 @@ "id": 21348, "nodeType": "FunctionDefinition", "src": "34271:181:14", - "nodes": [], "body": { "id": 21347, "nodeType": "Block", "src": "34346:106:14", - "nodes": [], "statements": [ { "expression": { @@ -54067,7 +53016,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34376:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34372:23:14", @@ -54082,7 +53030,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34372:72:14", @@ -54117,7 +53064,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34356:89:14", @@ -54268,12 +53214,10 @@ "id": 21371, "nodeType": "FunctionDefinition", "src": "34458:187:14", - "nodes": [], "body": { "id": 21370, "nodeType": "Block", "src": "34536:109:14", - "nodes": [], "statements": [ { "expression": { @@ -54385,7 +53329,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34566:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34562:23:14", @@ -54400,7 +53343,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34562:75:14", @@ -54435,7 +53377,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34546:92:14", @@ -54587,12 +53528,10 @@ "id": 21394, "nodeType": "FunctionDefinition", "src": "34651:193:14", - "nodes": [], "body": { "id": 21393, "nodeType": "Block", "src": "34732:112:14", - "nodes": [], "statements": [ { "expression": { @@ -54704,7 +53643,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34762:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34758:23:14", @@ -54719,7 +53657,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34758:78:14", @@ -54754,7 +53691,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34742:95:14", @@ -54906,12 +53842,10 @@ "id": 21417, "nodeType": "FunctionDefinition", "src": "34850:198:14", - "nodes": [], "body": { "id": 21416, "nodeType": "Block", "src": "34937:111:14", - "nodes": [], "statements": [ { "expression": { @@ -55023,7 +53957,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "34967:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34963:23:14", @@ -55038,7 +53971,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34963:77:14", @@ -55073,7 +54005,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34947:94:14", @@ -55225,12 +54156,10 @@ "id": 21440, "nodeType": "FunctionDefinition", "src": "35054:187:14", - "nodes": [], "body": { "id": 21439, "nodeType": "Block", "src": "35132:109:14", - "nodes": [], "statements": [ { "expression": { @@ -55342,7 +54271,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35162:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35158:23:14", @@ -55357,7 +54285,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35158:75:14", @@ -55392,7 +54319,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35142:92:14", @@ -55544,12 +54470,10 @@ "id": 21463, "nodeType": "FunctionDefinition", "src": "35247:193:14", - "nodes": [], "body": { "id": 21462, "nodeType": "Block", "src": "35328:112:14", - "nodes": [], "statements": [ { "expression": { @@ -55661,7 +54585,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35358:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35354:23:14", @@ -55676,7 +54599,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35354:78:14", @@ -55711,7 +54633,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35338:95:14", @@ -55864,12 +54785,10 @@ "id": 21486, "nodeType": "FunctionDefinition", "src": "35446:198:14", - "nodes": [], "body": { "id": 21485, "nodeType": "Block", "src": "35533:111:14", - "nodes": [], "statements": [ { "expression": { @@ -55981,7 +54900,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35563:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35559:23:14", @@ -55996,7 +54914,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35559:77:14", @@ -56031,7 +54948,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35543:94:14", @@ -56182,12 +55098,10 @@ "id": 21509, "nodeType": "FunctionDefinition", "src": "35650:203:14", - "nodes": [], "body": { "id": 21508, "nodeType": "Block", "src": "35743:110:14", - "nodes": [], "statements": [ { "expression": { @@ -56299,7 +55213,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35773:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35769:23:14", @@ -56314,7 +55227,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35769:76:14", @@ -56349,7 +55261,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35753:93:14", @@ -56500,12 +55411,10 @@ "id": 21532, "nodeType": "FunctionDefinition", "src": "35859:192:14", - "nodes": [], "body": { "id": 21531, "nodeType": "Block", "src": "35943:108:14", - "nodes": [], "statements": [ { "expression": { @@ -56617,7 +55526,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "35973:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35969:23:14", @@ -56632,7 +55540,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35969:74:14", @@ -56667,7 +55574,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35953:91:14", @@ -56818,12 +55724,10 @@ "id": 21555, "nodeType": "FunctionDefinition", "src": "36057:198:14", - "nodes": [], "body": { "id": 21554, "nodeType": "Block", "src": "36144:111:14", - "nodes": [], "statements": [ { "expression": { @@ -56935,7 +55839,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36174:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36170:23:14", @@ -56950,7 +55853,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36170:77:14", @@ -56985,7 +55887,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36154:94:14", @@ -57137,12 +56038,10 @@ "id": 21578, "nodeType": "FunctionDefinition", "src": "36261:203:14", - "nodes": [], "body": { "id": 21577, "nodeType": "Block", "src": "36354:110:14", - "nodes": [], "statements": [ { "expression": { @@ -57254,7 +56153,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36384:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36380:23:14", @@ -57269,7 +56167,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36380:76:14", @@ -57304,7 +56201,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36364:93:14", @@ -57455,12 +56351,10 @@ "id": 21601, "nodeType": "FunctionDefinition", "src": "36470:208:14", - "nodes": [], "body": { "id": 21600, "nodeType": "Block", "src": "36569:109:14", - "nodes": [], "statements": [ { "expression": { @@ -57572,7 +56466,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36599:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36595:23:14", @@ -57587,7 +56480,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36595:75:14", @@ -57622,7 +56514,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36579:92:14", @@ -57773,12 +56664,10 @@ "id": 21624, "nodeType": "FunctionDefinition", "src": "36684:197:14", - "nodes": [], "body": { "id": 21623, "nodeType": "Block", "src": "36774:107:14", - "nodes": [], "statements": [ { "expression": { @@ -57890,7 +56779,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "36804:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36800:23:14", @@ -57905,7 +56793,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36800:73:14", @@ -57940,7 +56827,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36784:90:14", @@ -58091,12 +56977,10 @@ "id": 21647, "nodeType": "FunctionDefinition", "src": "36887:203:14", - "nodes": [], "body": { "id": 21646, "nodeType": "Block", "src": "36980:110:14", - "nodes": [], "statements": [ { "expression": { @@ -58208,7 +57092,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37010:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37006:23:14", @@ -58223,7 +57106,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37006:76:14", @@ -58258,7 +57140,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36990:93:14", @@ -58410,12 +57291,10 @@ "id": 21670, "nodeType": "FunctionDefinition", "src": "37096:192:14", - "nodes": [], "body": { "id": 21669, "nodeType": "Block", "src": "37180:108:14", - "nodes": [], "statements": [ { "expression": { @@ -58527,7 +57406,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37210:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37206:23:14", @@ -58542,7 +57420,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37206:74:14", @@ -58577,7 +57454,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37190:91:14", @@ -58728,12 +57604,10 @@ "id": 21693, "nodeType": "FunctionDefinition", "src": "37294:197:14", - "nodes": [], "body": { "id": 21692, "nodeType": "Block", "src": "37384:107:14", - "nodes": [], "statements": [ { "expression": { @@ -58845,7 +57719,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37414:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37410:23:14", @@ -58860,7 +57733,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37410:73:14", @@ -58895,7 +57767,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37394:90:14", @@ -59046,12 +57917,10 @@ "id": 21716, "nodeType": "FunctionDefinition", "src": "37497:186:14", - "nodes": [], "body": { "id": 21715, "nodeType": "Block", "src": "37578:105:14", - "nodes": [], "statements": [ { "expression": { @@ -59163,7 +58032,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37608:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37604:23:14", @@ -59178,7 +58046,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37604:71:14", @@ -59213,7 +58080,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37588:88:14", @@ -59364,12 +58230,10 @@ "id": 21739, "nodeType": "FunctionDefinition", "src": "37689:192:14", - "nodes": [], "body": { "id": 21738, "nodeType": "Block", "src": "37773:108:14", - "nodes": [], "statements": [ { "expression": { @@ -59481,7 +58345,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "37803:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37799:23:14", @@ -59496,7 +58359,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37799:74:14", @@ -59531,7 +58393,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37783:91:14", @@ -59683,12 +58544,10 @@ "id": 21762, "nodeType": "FunctionDefinition", "src": "37887:198:14", - "nodes": [], "body": { "id": 21761, "nodeType": "Block", "src": "37974:111:14", - "nodes": [], "statements": [ { "expression": { @@ -59800,7 +58659,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38004:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38000:23:14", @@ -59815,7 +58673,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38000:77:14", @@ -59850,7 +58707,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37984:94:14", @@ -60002,12 +58858,10 @@ "id": 21785, "nodeType": "FunctionDefinition", "src": "38091:203:14", - "nodes": [], "body": { "id": 21784, "nodeType": "Block", "src": "38184:110:14", - "nodes": [], "statements": [ { "expression": { @@ -60119,7 +58973,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38214:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38210:23:14", @@ -60134,7 +58987,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38210:76:14", @@ -60169,7 +59021,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38194:93:14", @@ -60321,12 +59172,10 @@ "id": 21808, "nodeType": "FunctionDefinition", "src": "38300:192:14", - "nodes": [], "body": { "id": 21807, "nodeType": "Block", "src": "38384:108:14", - "nodes": [], "statements": [ { "expression": { @@ -60438,7 +59287,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38414:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38410:23:14", @@ -60453,7 +59301,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38410:74:14", @@ -60488,7 +59335,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38394:91:14", @@ -60640,12 +59486,10 @@ "id": 21831, "nodeType": "FunctionDefinition", "src": "38498:198:14", - "nodes": [], "body": { "id": 21830, "nodeType": "Block", "src": "38585:111:14", - "nodes": [], "statements": [ { "expression": { @@ -60757,7 +59601,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38615:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38611:23:14", @@ -60772,7 +59615,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38611:77:14", @@ -60807,7 +59649,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38595:94:14", @@ -60960,12 +59801,10 @@ "id": 21854, "nodeType": "FunctionDefinition", "src": "38702:187:14", - "nodes": [], "body": { "id": 21853, "nodeType": "Block", "src": "38780:109:14", - "nodes": [], "statements": [ { "expression": { @@ -61077,7 +59916,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "38810:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38806:23:14", @@ -61092,7 +59930,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38806:75:14", @@ -61127,7 +59964,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38790:92:14", @@ -61278,12 +60114,10 @@ "id": 21877, "nodeType": "FunctionDefinition", "src": "38895:192:14", - "nodes": [], "body": { "id": 21876, "nodeType": "Block", "src": "38979:108:14", - "nodes": [], "statements": [ { "expression": { @@ -61395,7 +60229,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39009:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39005:23:14", @@ -61410,7 +60243,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39005:74:14", @@ -61445,7 +60277,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38989:91:14", @@ -61596,12 +60427,10 @@ "id": 21900, "nodeType": "FunctionDefinition", "src": "39093:181:14", - "nodes": [], "body": { "id": 21899, "nodeType": "Block", "src": "39168:106:14", - "nodes": [], "statements": [ { "expression": { @@ -61713,7 +60542,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39198:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39194:23:14", @@ -61728,7 +60556,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39194:72:14", @@ -61763,7 +60590,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39178:89:14", @@ -61914,12 +60740,10 @@ "id": 21923, "nodeType": "FunctionDefinition", "src": "39280:187:14", - "nodes": [], "body": { "id": 21922, "nodeType": "Block", "src": "39358:109:14", - "nodes": [], "statements": [ { "expression": { @@ -62031,7 +60855,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39388:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39384:23:14", @@ -62046,7 +60869,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39384:75:14", @@ -62081,7 +60903,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39368:92:14", @@ -62233,12 +61054,10 @@ "id": 21946, "nodeType": "FunctionDefinition", "src": "39473:192:14", - "nodes": [], "body": { "id": 21945, "nodeType": "Block", "src": "39557:108:14", - "nodes": [], "statements": [ { "expression": { @@ -62350,7 +61169,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39587:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39583:23:14", @@ -62365,7 +61183,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39583:74:14", @@ -62400,7 +61217,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39567:91:14", @@ -62551,12 +61367,10 @@ "id": 21969, "nodeType": "FunctionDefinition", "src": "39671:197:14", - "nodes": [], "body": { "id": 21968, "nodeType": "Block", "src": "39761:107:14", - "nodes": [], "statements": [ { "expression": { @@ -62668,7 +61482,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39791:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39787:23:14", @@ -62683,7 +61496,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39787:73:14", @@ -62718,7 +61530,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39771:90:14", @@ -62869,12 +61680,10 @@ "id": 21992, "nodeType": "FunctionDefinition", "src": "39874:186:14", - "nodes": [], "body": { "id": 21991, "nodeType": "Block", "src": "39955:105:14", - "nodes": [], "statements": [ { "expression": { @@ -62986,7 +61795,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "39985:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39981:23:14", @@ -63001,7 +61809,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39981:71:14", @@ -63036,7 +61843,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39965:88:14", @@ -63187,12 +61993,10 @@ "id": 22015, "nodeType": "FunctionDefinition", "src": "40066:192:14", - "nodes": [], "body": { "id": 22014, "nodeType": "Block", "src": "40150:108:14", - "nodes": [], "statements": [ { "expression": { @@ -63304,7 +62108,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40180:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40176:23:14", @@ -63319,7 +62122,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40176:74:14", @@ -63354,7 +62156,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40160:91:14", @@ -63506,12 +62307,10 @@ "id": 22038, "nodeType": "FunctionDefinition", "src": "40264:181:14", - "nodes": [], "body": { "id": 22037, "nodeType": "Block", "src": "40339:106:14", - "nodes": [], "statements": [ { "expression": { @@ -63623,7 +62422,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40369:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40365:23:14", @@ -63638,7 +62436,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40365:72:14", @@ -63673,7 +62470,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40349:89:14", @@ -63824,12 +62620,10 @@ "id": 22061, "nodeType": "FunctionDefinition", "src": "40451:186:14", - "nodes": [], "body": { "id": 22060, "nodeType": "Block", "src": "40532:105:14", - "nodes": [], "statements": [ { "expression": { @@ -63941,7 +62735,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40562:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40558:23:14", @@ -63956,7 +62749,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40558:71:14", @@ -63991,7 +62783,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40542:88:14", @@ -64142,12 +62933,10 @@ "id": 22084, "nodeType": "FunctionDefinition", "src": "40643:175:14", - "nodes": [], "body": { "id": 22083, "nodeType": "Block", "src": "40715:103:14", - "nodes": [], "statements": [ { "expression": { @@ -64259,7 +63048,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40745:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40741:23:14", @@ -64274,7 +63062,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40741:69:14", @@ -64309,7 +63096,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40725:86:14", @@ -64460,12 +63246,10 @@ "id": 22107, "nodeType": "FunctionDefinition", "src": "40824:181:14", - "nodes": [], "body": { "id": 22106, "nodeType": "Block", "src": "40899:106:14", - "nodes": [], "statements": [ { "expression": { @@ -64577,7 +63361,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "40929:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40925:23:14", @@ -64592,7 +63375,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40925:72:14", @@ -64627,7 +63409,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40909:89:14", @@ -64779,12 +63560,10 @@ "id": 22130, "nodeType": "FunctionDefinition", "src": "41011:187:14", - "nodes": [], "body": { "id": 22129, "nodeType": "Block", "src": "41089:109:14", - "nodes": [], "statements": [ { "expression": { @@ -64896,7 +63675,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41119:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41115:23:14", @@ -64911,7 +63689,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41115:75:14", @@ -64946,7 +63723,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41099:92:14", @@ -65098,12 +63874,10 @@ "id": 22153, "nodeType": "FunctionDefinition", "src": "41204:192:14", - "nodes": [], "body": { "id": 22152, "nodeType": "Block", "src": "41288:108:14", - "nodes": [], "statements": [ { "expression": { @@ -65215,7 +63989,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41318:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41314:23:14", @@ -65230,7 +64003,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41314:74:14", @@ -65265,7 +64037,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41298:91:14", @@ -65417,12 +64188,10 @@ "id": 22176, "nodeType": "FunctionDefinition", "src": "41402:181:14", - "nodes": [], "body": { "id": 22175, "nodeType": "Block", "src": "41477:106:14", - "nodes": [], "statements": [ { "expression": { @@ -65534,7 +64303,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41507:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41503:23:14", @@ -65549,7 +64317,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41503:72:14", @@ -65584,7 +64351,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41487:89:14", @@ -65736,12 +64502,10 @@ "id": 22199, "nodeType": "FunctionDefinition", "src": "41589:187:14", - "nodes": [], "body": { "id": 22198, "nodeType": "Block", "src": "41667:109:14", - "nodes": [], "statements": [ { "expression": { @@ -65853,7 +64617,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41697:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41693:23:14", @@ -65868,7 +64631,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41693:75:14", @@ -65903,7 +64665,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41677:92:14", @@ -66056,12 +64817,10 @@ "id": 22222, "nodeType": "FunctionDefinition", "src": "41782:193:14", - "nodes": [], "body": { "id": 22221, "nodeType": "Block", "src": "41863:112:14", - "nodes": [], "statements": [ { "expression": { @@ -66173,7 +64932,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "41893:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41889:23:14", @@ -66188,7 +64946,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41889:78:14", @@ -66223,7 +64980,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41873:95:14", @@ -66375,12 +65131,10 @@ "id": 22245, "nodeType": "FunctionDefinition", "src": "41981:198:14", - "nodes": [], "body": { "id": 22244, "nodeType": "Block", "src": "42068:111:14", - "nodes": [], "statements": [ { "expression": { @@ -66492,7 +65246,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42098:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42094:23:14", @@ -66507,7 +65260,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42094:77:14", @@ -66542,7 +65294,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42078:94:14", @@ -66694,12 +65445,10 @@ "id": 22268, "nodeType": "FunctionDefinition", "src": "42185:187:14", - "nodes": [], "body": { "id": 22267, "nodeType": "Block", "src": "42263:109:14", - "nodes": [], "statements": [ { "expression": { @@ -66811,7 +65560,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42293:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42289:23:14", @@ -66826,7 +65574,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42289:75:14", @@ -66861,7 +65608,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42273:92:14", @@ -67013,12 +65759,10 @@ "id": 22291, "nodeType": "FunctionDefinition", "src": "42378:193:14", - "nodes": [], "body": { "id": 22290, "nodeType": "Block", "src": "42459:112:14", - "nodes": [], "statements": [ { "expression": { @@ -67130,7 +65874,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42489:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42485:23:14", @@ -67145,7 +65888,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42485:78:14", @@ -67180,7 +65922,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42469:95:14", @@ -67333,12 +66074,10 @@ "id": 22314, "nodeType": "FunctionDefinition", "src": "42577:198:14", - "nodes": [], "body": { "id": 22313, "nodeType": "Block", "src": "42664:111:14", - "nodes": [], "statements": [ { "expression": { @@ -67450,7 +66189,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42694:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42690:23:14", @@ -67465,7 +66203,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42690:77:14", @@ -67500,7 +66237,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42674:94:14", @@ -67652,12 +66388,10 @@ "id": 22337, "nodeType": "FunctionDefinition", "src": "42781:203:14", - "nodes": [], "body": { "id": 22336, "nodeType": "Block", "src": "42874:110:14", - "nodes": [], "statements": [ { "expression": { @@ -67769,7 +66503,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "42904:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42900:23:14", @@ -67784,7 +66517,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42900:76:14", @@ -67819,7 +66551,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42884:93:14", @@ -67971,12 +66702,10 @@ "id": 22360, "nodeType": "FunctionDefinition", "src": "42990:192:14", - "nodes": [], "body": { "id": 22359, "nodeType": "Block", "src": "43074:108:14", - "nodes": [], "statements": [ { "expression": { @@ -68088,7 +66817,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43104:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43100:23:14", @@ -68103,7 +66831,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43100:74:14", @@ -68138,7 +66865,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43084:91:14", @@ -68290,12 +67016,10 @@ "id": 22383, "nodeType": "FunctionDefinition", "src": "43188:198:14", - "nodes": [], "body": { "id": 22382, "nodeType": "Block", "src": "43275:111:14", - "nodes": [], "statements": [ { "expression": { @@ -68407,7 +67131,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43305:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43301:23:14", @@ -68422,7 +67145,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43301:77:14", @@ -68457,7 +67179,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43285:94:14", @@ -68610,12 +67331,10 @@ "id": 22406, "nodeType": "FunctionDefinition", "src": "43392:187:14", - "nodes": [], "body": { "id": 22405, "nodeType": "Block", "src": "43470:109:14", - "nodes": [], "statements": [ { "expression": { @@ -68727,7 +67446,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43500:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43496:23:14", @@ -68742,7 +67460,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43496:75:14", @@ -68777,7 +67494,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43480:92:14", @@ -68929,12 +67645,10 @@ "id": 22429, "nodeType": "FunctionDefinition", "src": "43585:192:14", - "nodes": [], "body": { "id": 22428, "nodeType": "Block", "src": "43669:108:14", - "nodes": [], "statements": [ { "expression": { @@ -69046,7 +67760,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43699:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43695:23:14", @@ -69061,7 +67774,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43695:74:14", @@ -69096,7 +67808,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43679:91:14", @@ -69248,12 +67959,10 @@ "id": 22452, "nodeType": "FunctionDefinition", "src": "43783:181:14", - "nodes": [], "body": { "id": 22451, "nodeType": "Block", "src": "43858:106:14", - "nodes": [], "statements": [ { "expression": { @@ -69365,7 +68074,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "43888:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43884:23:14", @@ -69380,7 +68088,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43884:72:14", @@ -69415,7 +68122,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43868:89:14", @@ -69567,12 +68273,10 @@ "id": 22475, "nodeType": "FunctionDefinition", "src": "43970:187:14", - "nodes": [], "body": { "id": 22474, "nodeType": "Block", "src": "44048:109:14", - "nodes": [], "statements": [ { "expression": { @@ -69684,7 +68388,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44078:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44074:23:14", @@ -69699,7 +68402,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44074:75:14", @@ -69734,7 +68436,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44058:92:14", @@ -69887,12 +68588,10 @@ "id": 22498, "nodeType": "FunctionDefinition", "src": "44163:193:14", - "nodes": [], "body": { "id": 22497, "nodeType": "Block", "src": "44244:112:14", - "nodes": [], "statements": [ { "expression": { @@ -70004,7 +68703,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44274:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44270:23:14", @@ -70019,7 +68717,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44270:78:14", @@ -70054,7 +68751,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44254:95:14", @@ -70207,12 +68903,10 @@ "id": 22521, "nodeType": "FunctionDefinition", "src": "44362:198:14", - "nodes": [], "body": { "id": 22520, "nodeType": "Block", "src": "44449:111:14", - "nodes": [], "statements": [ { "expression": { @@ -70324,7 +69018,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44479:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44475:23:14", @@ -70339,7 +69032,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44475:77:14", @@ -70374,7 +69066,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44459:94:14", @@ -70527,12 +69218,10 @@ "id": 22544, "nodeType": "FunctionDefinition", "src": "44566:187:14", - "nodes": [], "body": { "id": 22543, "nodeType": "Block", "src": "44644:109:14", - "nodes": [], "statements": [ { "expression": { @@ -70644,7 +69333,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44674:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44670:23:14", @@ -70659,7 +69347,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44670:75:14", @@ -70694,7 +69381,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44654:92:14", @@ -70847,12 +69533,10 @@ "id": 22567, "nodeType": "FunctionDefinition", "src": "44759:193:14", - "nodes": [], "body": { "id": 22566, "nodeType": "Block", "src": "44840:112:14", - "nodes": [], "statements": [ { "expression": { @@ -70964,7 +69648,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "44870:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44866:23:14", @@ -70979,7 +69662,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44866:78:14", @@ -71014,7 +69696,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44850:95:14", @@ -71168,12 +69849,10 @@ "id": 22590, "nodeType": "FunctionDefinition", "src": "44958:182:14", - "nodes": [], "body": { "id": 22589, "nodeType": "Block", "src": "45030:110:14", - "nodes": [], "statements": [ { "expression": { @@ -71285,7 +69964,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45060:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45056:23:14", @@ -71300,7 +69978,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45056:76:14", @@ -71335,7 +70012,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45040:93:14", @@ -71486,12 +70162,10 @@ "id": 22613, "nodeType": "FunctionDefinition", "src": "45146:187:14", - "nodes": [], "body": { "id": 22612, "nodeType": "Block", "src": "45224:109:14", - "nodes": [], "statements": [ { "expression": { @@ -71603,7 +70277,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45254:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45250:23:14", @@ -71618,7 +70291,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45250:75:14", @@ -71653,7 +70325,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45234:92:14", @@ -71804,12 +70475,10 @@ "id": 22636, "nodeType": "FunctionDefinition", "src": "45339:176:14", - "nodes": [], "body": { "id": 22635, "nodeType": "Block", "src": "45408:107:14", - "nodes": [], "statements": [ { "expression": { @@ -71921,7 +70590,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45438:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45434:23:14", @@ -71936,7 +70604,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45434:73:14", @@ -71971,7 +70638,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45418:90:14", @@ -72122,12 +70788,10 @@ "id": 22659, "nodeType": "FunctionDefinition", "src": "45521:182:14", - "nodes": [], "body": { "id": 22658, "nodeType": "Block", "src": "45593:110:14", - "nodes": [], "statements": [ { "expression": { @@ -72239,7 +70903,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45623:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45619:23:14", @@ -72254,7 +70917,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45619:76:14", @@ -72289,7 +70951,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45603:93:14", @@ -72441,12 +71102,10 @@ "id": 22682, "nodeType": "FunctionDefinition", "src": "45709:187:14", - "nodes": [], "body": { "id": 22681, "nodeType": "Block", "src": "45787:109:14", - "nodes": [], "statements": [ { "expression": { @@ -72558,7 +71217,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "45817:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45813:23:14", @@ -72573,7 +71231,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45813:75:14", @@ -72608,7 +71265,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45797:92:14", @@ -72759,12 +71415,10 @@ "id": 22705, "nodeType": "FunctionDefinition", "src": "45902:192:14", - "nodes": [], "body": { "id": 22704, "nodeType": "Block", "src": "45986:108:14", - "nodes": [], "statements": [ { "expression": { @@ -72876,7 +71530,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46016:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46012:23:14", @@ -72891,7 +71544,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46012:74:14", @@ -72926,7 +71578,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45996:91:14", @@ -73077,12 +71728,10 @@ "id": 22728, "nodeType": "FunctionDefinition", "src": "46100:181:14", - "nodes": [], "body": { "id": 22727, "nodeType": "Block", "src": "46175:106:14", - "nodes": [], "statements": [ { "expression": { @@ -73194,7 +71843,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46205:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46201:23:14", @@ -73209,7 +71857,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46201:72:14", @@ -73244,7 +71891,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46185:89:14", @@ -73395,12 +72041,10 @@ "id": 22751, "nodeType": "FunctionDefinition", "src": "46287:187:14", - "nodes": [], "body": { "id": 22750, "nodeType": "Block", "src": "46365:109:14", - "nodes": [], "statements": [ { "expression": { @@ -73512,7 +72156,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46395:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46391:23:14", @@ -73527,7 +72170,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46391:75:14", @@ -73562,7 +72204,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46375:92:14", @@ -73714,12 +72355,10 @@ "id": 22774, "nodeType": "FunctionDefinition", "src": "46480:176:14", - "nodes": [], "body": { "id": 22773, "nodeType": "Block", "src": "46549:107:14", - "nodes": [], "statements": [ { "expression": { @@ -73831,7 +72470,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46579:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46575:23:14", @@ -73846,7 +72484,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46575:73:14", @@ -73881,7 +72518,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46559:90:14", @@ -74032,12 +72668,10 @@ "id": 22797, "nodeType": "FunctionDefinition", "src": "46662:181:14", - "nodes": [], "body": { "id": 22796, "nodeType": "Block", "src": "46737:106:14", - "nodes": [], "statements": [ { "expression": { @@ -74149,7 +72783,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46767:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46763:23:14", @@ -74164,7 +72797,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46763:72:14", @@ -74199,7 +72831,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46747:89:14", @@ -74350,12 +72981,10 @@ "id": 22820, "nodeType": "FunctionDefinition", "src": "46849:170:14", - "nodes": [], "body": { "id": 22819, "nodeType": "Block", "src": "46915:104:14", - "nodes": [], "statements": [ { "expression": { @@ -74467,7 +73096,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "46945:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46941:23:14", @@ -74482,7 +73110,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46941:70:14", @@ -74517,7 +73144,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46925:87:14", @@ -74668,12 +73294,10 @@ "id": 22843, "nodeType": "FunctionDefinition", "src": "47025:176:14", - "nodes": [], "body": { "id": 22842, "nodeType": "Block", "src": "47094:107:14", - "nodes": [], "statements": [ { "expression": { @@ -74785,7 +73409,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47124:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47120:23:14", @@ -74800,7 +73423,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47120:73:14", @@ -74835,7 +73457,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47104:90:14", @@ -74987,12 +73608,10 @@ "id": 22866, "nodeType": "FunctionDefinition", "src": "47207:182:14", - "nodes": [], "body": { "id": 22865, "nodeType": "Block", "src": "47279:110:14", - "nodes": [], "statements": [ { "expression": { @@ -75104,7 +73723,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47309:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47305:23:14", @@ -75119,7 +73737,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47305:76:14", @@ -75154,7 +73771,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47289:93:14", @@ -75306,12 +73922,10 @@ "id": 22889, "nodeType": "FunctionDefinition", "src": "47395:187:14", - "nodes": [], "body": { "id": 22888, "nodeType": "Block", "src": "47473:109:14", - "nodes": [], "statements": [ { "expression": { @@ -75423,7 +74037,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47503:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47499:23:14", @@ -75438,7 +74051,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47499:75:14", @@ -75473,7 +74085,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47483:92:14", @@ -75625,12 +74236,10 @@ "id": 22912, "nodeType": "FunctionDefinition", "src": "47588:176:14", - "nodes": [], "body": { "id": 22911, "nodeType": "Block", "src": "47657:107:14", - "nodes": [], "statements": [ { "expression": { @@ -75742,7 +74351,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47687:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47683:23:14", @@ -75757,7 +74365,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47683:73:14", @@ -75792,7 +74399,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47667:90:14", @@ -75944,12 +74550,10 @@ "id": 22935, "nodeType": "FunctionDefinition", "src": "47770:182:14", - "nodes": [], "body": { "id": 22934, "nodeType": "Block", "src": "47842:110:14", - "nodes": [], "statements": [ { "expression": { @@ -76061,7 +74665,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "47872:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47868:23:14", @@ -76076,7 +74679,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47868:76:14", @@ -76111,7 +74713,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47852:93:14", @@ -76264,12 +74865,10 @@ "id": 22958, "nodeType": "FunctionDefinition", "src": "47958:187:14", - "nodes": [], "body": { "id": 22957, "nodeType": "Block", "src": "48036:109:14", - "nodes": [], "statements": [ { "expression": { @@ -76381,7 +74980,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48066:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48062:23:14", @@ -76396,7 +74994,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48062:75:14", @@ -76431,7 +75028,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48046:92:14", @@ -76582,12 +75178,10 @@ "id": 22981, "nodeType": "FunctionDefinition", "src": "48151:192:14", - "nodes": [], "body": { "id": 22980, "nodeType": "Block", "src": "48235:108:14", - "nodes": [], "statements": [ { "expression": { @@ -76699,7 +75293,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48265:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48261:23:14", @@ -76714,7 +75307,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48261:74:14", @@ -76749,7 +75341,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48245:91:14", @@ -76900,12 +75491,10 @@ "id": 23004, "nodeType": "FunctionDefinition", "src": "48349:181:14", - "nodes": [], "body": { "id": 23003, "nodeType": "Block", "src": "48424:106:14", - "nodes": [], "statements": [ { "expression": { @@ -77017,7 +75606,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48454:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48450:23:14", @@ -77032,7 +75620,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48450:72:14", @@ -77067,7 +75654,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48434:89:14", @@ -77218,12 +75804,10 @@ "id": 23027, "nodeType": "FunctionDefinition", "src": "48536:187:14", - "nodes": [], "body": { "id": 23026, "nodeType": "Block", "src": "48614:109:14", - "nodes": [], "statements": [ { "expression": { @@ -77335,7 +75919,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48644:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48640:23:14", @@ -77350,7 +75933,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48640:75:14", @@ -77385,7 +75967,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48624:92:14", @@ -77537,12 +76118,10 @@ "id": 23050, "nodeType": "FunctionDefinition", "src": "48729:192:14", - "nodes": [], "body": { "id": 23049, "nodeType": "Block", "src": "48813:108:14", - "nodes": [], "statements": [ { "expression": { @@ -77654,7 +76233,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "48843:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48839:23:14", @@ -77669,7 +76247,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48839:74:14", @@ -77704,7 +76281,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48823:91:14", @@ -77855,12 +76431,10 @@ "id": 23073, "nodeType": "FunctionDefinition", "src": "48927:197:14", - "nodes": [], "body": { "id": 23072, "nodeType": "Block", "src": "49017:107:14", - "nodes": [], "statements": [ { "expression": { @@ -77972,7 +76546,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49047:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49043:23:14", @@ -77987,7 +76560,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49043:73:14", @@ -78022,7 +76594,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49027:90:14", @@ -78173,12 +76744,10 @@ "id": 23096, "nodeType": "FunctionDefinition", "src": "49130:186:14", - "nodes": [], "body": { "id": 23095, "nodeType": "Block", "src": "49211:105:14", - "nodes": [], "statements": [ { "expression": { @@ -78290,7 +76859,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49241:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49237:23:14", @@ -78305,7 +76873,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49237:71:14", @@ -78340,7 +76907,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49221:88:14", @@ -78491,12 +77057,10 @@ "id": 23119, "nodeType": "FunctionDefinition", "src": "49322:192:14", - "nodes": [], "body": { "id": 23118, "nodeType": "Block", "src": "49406:108:14", - "nodes": [], "statements": [ { "expression": { @@ -78608,7 +77172,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49436:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49432:23:14", @@ -78623,7 +77186,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49432:74:14", @@ -78658,7 +77220,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49416:91:14", @@ -78810,12 +77371,10 @@ "id": 23142, "nodeType": "FunctionDefinition", "src": "49520:181:14", - "nodes": [], "body": { "id": 23141, "nodeType": "Block", "src": "49595:106:14", - "nodes": [], "statements": [ { "expression": { @@ -78927,7 +77486,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49625:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49621:23:14", @@ -78942,7 +77500,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49621:72:14", @@ -78977,7 +77534,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49605:89:14", @@ -79128,12 +77684,10 @@ "id": 23165, "nodeType": "FunctionDefinition", "src": "49707:186:14", - "nodes": [], "body": { "id": 23164, "nodeType": "Block", "src": "49788:105:14", - "nodes": [], "statements": [ { "expression": { @@ -79245,7 +77799,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "49818:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49814:23:14", @@ -79260,7 +77813,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49814:71:14", @@ -79295,7 +77847,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49798:88:14", @@ -79446,12 +77997,10 @@ "id": 23188, "nodeType": "FunctionDefinition", "src": "49899:175:14", - "nodes": [], "body": { "id": 23187, "nodeType": "Block", "src": "49971:103:14", - "nodes": [], "statements": [ { "expression": { @@ -79563,7 +78112,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50001:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49997:23:14", @@ -79578,7 +78126,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49997:69:14", @@ -79613,7 +78160,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49981:86:14", @@ -79764,12 +78310,10 @@ "id": 23211, "nodeType": "FunctionDefinition", "src": "50080:181:14", - "nodes": [], "body": { "id": 23210, "nodeType": "Block", "src": "50155:106:14", - "nodes": [], "statements": [ { "expression": { @@ -79881,7 +78425,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50185:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50181:23:14", @@ -79896,7 +78439,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50181:72:14", @@ -79931,7 +78473,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50165:89:14", @@ -80083,12 +78624,10 @@ "id": 23234, "nodeType": "FunctionDefinition", "src": "50267:187:14", - "nodes": [], "body": { "id": 23233, "nodeType": "Block", "src": "50345:109:14", - "nodes": [], "statements": [ { "expression": { @@ -80200,7 +78739,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50375:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50371:23:14", @@ -80215,7 +78753,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50371:75:14", @@ -80250,7 +78787,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50355:92:14", @@ -80402,12 +78938,10 @@ "id": 23257, "nodeType": "FunctionDefinition", "src": "50460:192:14", - "nodes": [], "body": { "id": 23256, "nodeType": "Block", "src": "50544:108:14", - "nodes": [], "statements": [ { "expression": { @@ -80519,7 +79053,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50574:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50570:23:14", @@ -80534,7 +79067,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50570:74:14", @@ -80569,7 +79101,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50554:91:14", @@ -80721,12 +79252,10 @@ "id": 23280, "nodeType": "FunctionDefinition", "src": "50658:181:14", - "nodes": [], "body": { "id": 23279, "nodeType": "Block", "src": "50733:106:14", - "nodes": [], "statements": [ { "expression": { @@ -80838,7 +79367,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50763:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50759:23:14", @@ -80853,7 +79381,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50759:72:14", @@ -80888,7 +79415,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50743:89:14", @@ -81040,12 +79566,10 @@ "id": 23303, "nodeType": "FunctionDefinition", "src": "50845:187:14", - "nodes": [], "body": { "id": 23302, "nodeType": "Block", "src": "50923:109:14", - "nodes": [], "statements": [ { "expression": { @@ -81157,7 +79681,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "50953:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50949:23:14", @@ -81172,7 +79695,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50949:75:14", @@ -81207,7 +79729,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50933:92:14", @@ -81360,12 +79881,10 @@ "id": 23326, "nodeType": "FunctionDefinition", "src": "51038:176:14", - "nodes": [], "body": { "id": 23325, "nodeType": "Block", "src": "51107:107:14", - "nodes": [], "statements": [ { "expression": { @@ -81477,7 +79996,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51137:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51133:23:14", @@ -81492,7 +80010,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51133:73:14", @@ -81527,7 +80044,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51117:90:14", @@ -81678,12 +80194,10 @@ "id": 23349, "nodeType": "FunctionDefinition", "src": "51220:181:14", - "nodes": [], "body": { "id": 23348, "nodeType": "Block", "src": "51295:106:14", - "nodes": [], "statements": [ { "expression": { @@ -81795,7 +80309,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51325:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51321:23:14", @@ -81810,7 +80323,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51321:72:14", @@ -81845,7 +80357,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51305:89:14", @@ -81996,12 +80507,10 @@ "id": 23372, "nodeType": "FunctionDefinition", "src": "51407:170:14", - "nodes": [], "body": { "id": 23371, "nodeType": "Block", "src": "51473:104:14", - "nodes": [], "statements": [ { "expression": { @@ -82113,7 +80622,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51503:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51499:23:14", @@ -82128,7 +80636,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51499:70:14", @@ -82163,7 +80670,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51483:87:14", @@ -82314,12 +80820,10 @@ "id": 23395, "nodeType": "FunctionDefinition", "src": "51583:176:14", - "nodes": [], "body": { "id": 23394, "nodeType": "Block", "src": "51652:107:14", - "nodes": [], "statements": [ { "expression": { @@ -82431,7 +80935,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51682:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51678:23:14", @@ -82446,7 +80949,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51678:73:14", @@ -82481,7 +80983,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51662:90:14", @@ -82633,12 +81134,10 @@ "id": 23418, "nodeType": "FunctionDefinition", "src": "51765:181:14", - "nodes": [], "body": { "id": 23417, "nodeType": "Block", "src": "51840:106:14", - "nodes": [], "statements": [ { "expression": { @@ -82750,7 +81249,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "51870:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51866:23:14", @@ -82765,7 +81263,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51866:72:14", @@ -82800,7 +81297,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51850:89:14", @@ -82951,12 +81447,10 @@ "id": 23441, "nodeType": "FunctionDefinition", "src": "51952:186:14", - "nodes": [], "body": { "id": 23440, "nodeType": "Block", "src": "52033:105:14", - "nodes": [], "statements": [ { "expression": { @@ -83068,7 +81562,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52063:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52059:23:14", @@ -83083,7 +81576,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52059:71:14", @@ -83118,7 +81610,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52043:88:14", @@ -83269,12 +81760,10 @@ "id": 23464, "nodeType": "FunctionDefinition", "src": "52144:175:14", - "nodes": [], "body": { "id": 23463, "nodeType": "Block", "src": "52216:103:14", - "nodes": [], "statements": [ { "expression": { @@ -83386,7 +81875,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52246:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52242:23:14", @@ -83401,7 +81889,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52242:69:14", @@ -83436,7 +81923,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52226:86:14", @@ -83587,12 +82073,10 @@ "id": 23487, "nodeType": "FunctionDefinition", "src": "52325:181:14", - "nodes": [], "body": { "id": 23486, "nodeType": "Block", "src": "52400:106:14", - "nodes": [], "statements": [ { "expression": { @@ -83704,7 +82188,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52430:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52426:23:14", @@ -83719,7 +82202,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52426:72:14", @@ -83754,7 +82236,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52410:89:14", @@ -83906,12 +82387,10 @@ "id": 23510, "nodeType": "FunctionDefinition", "src": "52512:170:14", - "nodes": [], "body": { "id": 23509, "nodeType": "Block", "src": "52578:104:14", - "nodes": [], "statements": [ { "expression": { @@ -84023,7 +82502,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52608:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52604:23:14", @@ -84038,7 +82516,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52604:70:14", @@ -84073,7 +82550,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52588:87:14", @@ -84224,12 +82700,10 @@ "id": 23533, "nodeType": "FunctionDefinition", "src": "52688:175:14", - "nodes": [], "body": { "id": 23532, "nodeType": "Block", "src": "52760:103:14", - "nodes": [], "statements": [ { "expression": { @@ -84341,7 +82815,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52790:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52786:23:14", @@ -84356,7 +82829,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52786:69:14", @@ -84391,7 +82863,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52770:86:14", @@ -84542,12 +83013,10 @@ "id": 23556, "nodeType": "FunctionDefinition", "src": "52869:164:14", - "nodes": [], "body": { "id": 23555, "nodeType": "Block", "src": "52932:101:14", - "nodes": [], "statements": [ { "expression": { @@ -84659,7 +83128,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "52962:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52958:23:14", @@ -84674,7 +83142,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52958:67:14", @@ -84709,7 +83176,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52942:84:14", @@ -84860,12 +83326,10 @@ "id": 23579, "nodeType": "FunctionDefinition", "src": "53039:170:14", - "nodes": [], "body": { "id": 23578, "nodeType": "Block", "src": "53105:104:14", - "nodes": [], "statements": [ { "expression": { @@ -84977,7 +83441,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53135:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53131:23:14", @@ -84992,7 +83455,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53131:70:14", @@ -85027,7 +83489,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53115:87:14", @@ -85179,12 +83640,10 @@ "id": 23602, "nodeType": "FunctionDefinition", "src": "53215:176:14", - "nodes": [], "body": { "id": 23601, "nodeType": "Block", "src": "53284:107:14", - "nodes": [], "statements": [ { "expression": { @@ -85296,7 +83755,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53314:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53310:23:14", @@ -85311,7 +83769,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53310:73:14", @@ -85346,7 +83803,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53294:90:14", @@ -85498,12 +83954,10 @@ "id": 23625, "nodeType": "FunctionDefinition", "src": "53397:181:14", - "nodes": [], "body": { "id": 23624, "nodeType": "Block", "src": "53472:106:14", - "nodes": [], "statements": [ { "expression": { @@ -85615,7 +84069,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53502:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53498:23:14", @@ -85630,7 +84083,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53498:72:14", @@ -85665,7 +84117,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53482:89:14", @@ -85817,12 +84268,10 @@ "id": 23648, "nodeType": "FunctionDefinition", "src": "53584:170:14", - "nodes": [], "body": { "id": 23647, "nodeType": "Block", "src": "53650:104:14", - "nodes": [], "statements": [ { "expression": { @@ -85934,7 +84383,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53680:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53676:23:14", @@ -85949,7 +84397,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53676:70:14", @@ -85984,7 +84431,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53660:87:14", @@ -86136,12 +84582,10 @@ "id": 23671, "nodeType": "FunctionDefinition", "src": "53760:176:14", - "nodes": [], "body": { "id": 23670, "nodeType": "Block", "src": "53829:107:14", - "nodes": [], "statements": [ { "expression": { @@ -86253,7 +84697,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "53859:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53855:23:14", @@ -86268,7 +84711,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53855:73:14", @@ -86303,7 +84745,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53839:90:14", @@ -86456,12 +84897,10 @@ "id": 23694, "nodeType": "FunctionDefinition", "src": "53942:182:14", - "nodes": [], "body": { "id": 23693, "nodeType": "Block", "src": "54014:110:14", - "nodes": [], "statements": [ { "expression": { @@ -86573,7 +85012,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54044:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54040:23:14", @@ -86588,7 +85026,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54040:76:14", @@ -86623,7 +85060,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54024:93:14", @@ -86775,12 +85211,10 @@ "id": 23717, "nodeType": "FunctionDefinition", "src": "54130:187:14", - "nodes": [], "body": { "id": 23716, "nodeType": "Block", "src": "54208:109:14", - "nodes": [], "statements": [ { "expression": { @@ -86892,7 +85326,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54238:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54234:23:14", @@ -86907,7 +85340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54234:75:14", @@ -86942,7 +85374,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54218:92:14", @@ -87094,12 +85525,10 @@ "id": 23740, "nodeType": "FunctionDefinition", "src": "54323:176:14", - "nodes": [], "body": { "id": 23739, "nodeType": "Block", "src": "54392:107:14", - "nodes": [], "statements": [ { "expression": { @@ -87211,7 +85640,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54422:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54418:23:14", @@ -87226,7 +85654,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54418:73:14", @@ -87261,7 +85688,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54402:90:14", @@ -87413,12 +85839,10 @@ "id": 23763, "nodeType": "FunctionDefinition", "src": "54505:182:14", - "nodes": [], "body": { "id": 23762, "nodeType": "Block", "src": "54577:110:14", - "nodes": [], "statements": [ { "expression": { @@ -87530,7 +85954,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54607:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54603:23:14", @@ -87545,7 +85968,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54603:76:14", @@ -87580,7 +86002,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54587:93:14", @@ -87733,12 +86154,10 @@ "id": 23786, "nodeType": "FunctionDefinition", "src": "54693:187:14", - "nodes": [], "body": { "id": 23785, "nodeType": "Block", "src": "54771:109:14", - "nodes": [], "statements": [ { "expression": { @@ -87850,7 +86269,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "54801:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54797:23:14", @@ -87865,7 +86283,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54797:75:14", @@ -87900,7 +86317,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54781:92:14", @@ -88052,12 +86468,10 @@ "id": 23809, "nodeType": "FunctionDefinition", "src": "54886:192:14", - "nodes": [], "body": { "id": 23808, "nodeType": "Block", "src": "54970:108:14", - "nodes": [], "statements": [ { "expression": { @@ -88169,7 +86583,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55000:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54996:23:14", @@ -88184,7 +86597,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54996:74:14", @@ -88219,7 +86631,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54980:91:14", @@ -88371,12 +86782,10 @@ "id": 23832, "nodeType": "FunctionDefinition", "src": "55084:181:14", - "nodes": [], "body": { "id": 23831, "nodeType": "Block", "src": "55159:106:14", - "nodes": [], "statements": [ { "expression": { @@ -88488,7 +86897,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55189:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55185:23:14", @@ -88503,7 +86911,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55185:72:14", @@ -88538,7 +86945,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55169:89:14", @@ -88690,12 +87096,10 @@ "id": 23855, "nodeType": "FunctionDefinition", "src": "55271:187:14", - "nodes": [], "body": { "id": 23854, "nodeType": "Block", "src": "55349:109:14", - "nodes": [], "statements": [ { "expression": { @@ -88807,7 +87211,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55379:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55375:23:14", @@ -88822,7 +87225,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55375:75:14", @@ -88857,7 +87259,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55359:92:14", @@ -89010,12 +87411,10 @@ "id": 23878, "nodeType": "FunctionDefinition", "src": "55464:176:14", - "nodes": [], "body": { "id": 23877, "nodeType": "Block", "src": "55533:107:14", - "nodes": [], "statements": [ { "expression": { @@ -89127,7 +87526,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55563:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55559:23:14", @@ -89142,7 +87540,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55559:73:14", @@ -89177,7 +87574,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55543:90:14", @@ -89329,12 +87725,10 @@ "id": 23901, "nodeType": "FunctionDefinition", "src": "55646:181:14", - "nodes": [], "body": { "id": 23900, "nodeType": "Block", "src": "55721:106:14", - "nodes": [], "statements": [ { "expression": { @@ -89446,7 +87840,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55751:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55747:23:14", @@ -89461,7 +87854,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55747:72:14", @@ -89496,7 +87888,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55731:89:14", @@ -89648,12 +88039,10 @@ "id": 23924, "nodeType": "FunctionDefinition", "src": "55833:170:14", - "nodes": [], "body": { "id": 23923, "nodeType": "Block", "src": "55899:104:14", - "nodes": [], "statements": [ { "expression": { @@ -89765,7 +88154,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "55929:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55925:23:14", @@ -89780,7 +88168,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55925:70:14", @@ -89815,7 +88202,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55909:87:14", @@ -89967,12 +88353,10 @@ "id": 23947, "nodeType": "FunctionDefinition", "src": "56009:176:14", - "nodes": [], "body": { "id": 23946, "nodeType": "Block", "src": "56078:107:14", - "nodes": [], "statements": [ { "expression": { @@ -90084,7 +88468,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56108:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56104:23:14", @@ -90099,7 +88482,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56104:73:14", @@ -90134,7 +88516,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56088:90:14", @@ -90287,12 +88668,10 @@ "id": 23970, "nodeType": "FunctionDefinition", "src": "56191:182:14", - "nodes": [], "body": { "id": 23969, "nodeType": "Block", "src": "56263:110:14", - "nodes": [], "statements": [ { "expression": { @@ -90404,7 +88783,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56293:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56289:23:14", @@ -90419,7 +88797,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56289:76:14", @@ -90454,7 +88831,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56273:93:14", @@ -90607,12 +88983,10 @@ "id": 23993, "nodeType": "FunctionDefinition", "src": "56379:187:14", - "nodes": [], "body": { "id": 23992, "nodeType": "Block", "src": "56457:109:14", - "nodes": [], "statements": [ { "expression": { @@ -90724,7 +89098,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56487:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56483:23:14", @@ -90739,7 +89112,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56483:75:14", @@ -90774,7 +89146,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56467:92:14", @@ -90927,12 +89298,10 @@ "id": 24016, "nodeType": "FunctionDefinition", "src": "56572:176:14", - "nodes": [], "body": { "id": 24015, "nodeType": "Block", "src": "56641:107:14", - "nodes": [], "statements": [ { "expression": { @@ -91044,7 +89413,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56671:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56667:23:14", @@ -91059,7 +89427,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56667:73:14", @@ -91094,7 +89461,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56651:90:14", @@ -91247,12 +89613,10 @@ "id": 24039, "nodeType": "FunctionDefinition", "src": "56754:182:14", - "nodes": [], "body": { "id": 24038, "nodeType": "Block", "src": "56826:110:14", - "nodes": [], "statements": [ { "expression": { @@ -91364,7 +89728,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "56856:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56852:23:14", @@ -91379,7 +89742,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56852:76:14", @@ -91414,7 +89776,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56836:93:14", @@ -91568,12 +89929,10 @@ "id": 24062, "nodeType": "FunctionDefinition", "src": "56942:188:14", - "nodes": [], "body": { "id": 24061, "nodeType": "Block", "src": "57017:113:14", - "nodes": [], "statements": [ { "expression": { @@ -91685,7 +90044,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57047:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57043:23:14", @@ -91700,7 +90058,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57043:79:14", @@ -91735,7 +90092,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57027:96:14", @@ -91887,12 +90243,10 @@ "id": 24085, "nodeType": "FunctionDefinition", "src": "57136:193:14", - "nodes": [], "body": { "id": 24084, "nodeType": "Block", "src": "57217:112:14", - "nodes": [], "statements": [ { "expression": { @@ -92004,7 +90358,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57247:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57243:23:14", @@ -92019,7 +90372,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57243:78:14", @@ -92054,7 +90406,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57227:95:14", @@ -92206,12 +90557,10 @@ "id": 24108, "nodeType": "FunctionDefinition", "src": "57335:182:14", - "nodes": [], "body": { "id": 24107, "nodeType": "Block", "src": "57407:110:14", - "nodes": [], "statements": [ { "expression": { @@ -92323,7 +90672,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57437:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57433:23:14", @@ -92338,7 +90686,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57433:76:14", @@ -92373,7 +90720,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57417:93:14", @@ -92525,12 +90871,10 @@ "id": 24131, "nodeType": "FunctionDefinition", "src": "57523:188:14", - "nodes": [], "body": { "id": 24130, "nodeType": "Block", "src": "57598:113:14", - "nodes": [], "statements": [ { "expression": { @@ -92642,7 +90986,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57628:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57624:23:14", @@ -92657,7 +91000,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57624:79:14", @@ -92692,7 +91034,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57608:96:14", @@ -92845,12 +91186,10 @@ "id": 24154, "nodeType": "FunctionDefinition", "src": "57717:193:14", - "nodes": [], "body": { "id": 24153, "nodeType": "Block", "src": "57798:112:14", - "nodes": [], "statements": [ { "expression": { @@ -92962,7 +91301,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "57828:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57824:23:14", @@ -92977,7 +91315,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57824:78:14", @@ -93012,7 +91349,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57808:95:14", @@ -93164,12 +91500,10 @@ "id": 24177, "nodeType": "FunctionDefinition", "src": "57916:198:14", - "nodes": [], "body": { "id": 24176, "nodeType": "Block", "src": "58003:111:14", - "nodes": [], "statements": [ { "expression": { @@ -93281,7 +91615,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58033:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58029:23:14", @@ -93296,7 +91629,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58029:77:14", @@ -93331,7 +91663,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58013:94:14", @@ -93483,12 +91814,10 @@ "id": 24200, "nodeType": "FunctionDefinition", "src": "58120:187:14", - "nodes": [], "body": { "id": 24199, "nodeType": "Block", "src": "58198:109:14", - "nodes": [], "statements": [ { "expression": { @@ -93600,7 +91929,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58228:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58224:23:14", @@ -93615,7 +91943,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58224:75:14", @@ -93650,7 +91977,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58208:92:14", @@ -93802,12 +92128,10 @@ "id": 24223, "nodeType": "FunctionDefinition", "src": "58313:193:14", - "nodes": [], "body": { "id": 24222, "nodeType": "Block", "src": "58394:112:14", - "nodes": [], "statements": [ { "expression": { @@ -93919,7 +92243,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58424:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58420:23:14", @@ -93934,7 +92257,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58420:78:14", @@ -93969,7 +92291,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58404:95:14", @@ -94122,12 +92443,10 @@ "id": 24246, "nodeType": "FunctionDefinition", "src": "58512:182:14", - "nodes": [], "body": { "id": 24245, "nodeType": "Block", "src": "58584:110:14", - "nodes": [], "statements": [ { "expression": { @@ -94239,7 +92558,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58614:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58610:23:14", @@ -94254,7 +92572,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58610:76:14", @@ -94289,7 +92606,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58594:93:14", @@ -94441,12 +92757,10 @@ "id": 24269, "nodeType": "FunctionDefinition", "src": "58700:187:14", - "nodes": [], "body": { "id": 24268, "nodeType": "Block", "src": "58778:109:14", - "nodes": [], "statements": [ { "expression": { @@ -94558,7 +92872,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58808:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58804:23:14", @@ -94573,7 +92886,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58804:75:14", @@ -94608,7 +92920,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58788:92:14", @@ -94760,12 +93071,10 @@ "id": 24292, "nodeType": "FunctionDefinition", "src": "58893:176:14", - "nodes": [], "body": { "id": 24291, "nodeType": "Block", "src": "58962:107:14", - "nodes": [], "statements": [ { "expression": { @@ -94877,7 +93186,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "58992:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58988:23:14", @@ -94892,7 +93200,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58988:73:14", @@ -94927,7 +93234,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58972:90:14", @@ -95079,12 +93385,10 @@ "id": 24315, "nodeType": "FunctionDefinition", "src": "59075:182:14", - "nodes": [], "body": { "id": 24314, "nodeType": "Block", "src": "59147:110:14", - "nodes": [], "statements": [ { "expression": { @@ -95196,7 +93500,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59177:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59173:23:14", @@ -95211,7 +93514,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59173:76:14", @@ -95246,7 +93548,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59157:93:14", @@ -95399,12 +93700,10 @@ "id": 24338, "nodeType": "FunctionDefinition", "src": "59263:188:14", - "nodes": [], "body": { "id": 24337, "nodeType": "Block", "src": "59338:113:14", - "nodes": [], "statements": [ { "expression": { @@ -95516,7 +93815,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59368:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59364:23:14", @@ -95531,7 +93829,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59364:79:14", @@ -95566,7 +93863,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59348:96:14", @@ -95719,12 +94015,10 @@ "id": 24361, "nodeType": "FunctionDefinition", "src": "59457:193:14", - "nodes": [], "body": { "id": 24360, "nodeType": "Block", "src": "59538:112:14", - "nodes": [], "statements": [ { "expression": { @@ -95836,7 +94130,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59568:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59564:23:14", @@ -95851,7 +94144,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59564:78:14", @@ -95886,7 +94178,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59548:95:14", @@ -96039,12 +94330,10 @@ "id": 24384, "nodeType": "FunctionDefinition", "src": "59656:182:14", - "nodes": [], "body": { "id": 24383, "nodeType": "Block", "src": "59728:110:14", - "nodes": [], "statements": [ { "expression": { @@ -96156,7 +94445,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59758:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59754:23:14", @@ -96171,7 +94459,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59754:76:14", @@ -96206,7 +94493,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59738:93:14", @@ -96359,12 +94645,10 @@ "id": 24407, "nodeType": "FunctionDefinition", "src": "59844:188:14", - "nodes": [], "body": { "id": 24406, "nodeType": "Block", "src": "59919:113:14", - "nodes": [], "statements": [ { "expression": { @@ -96476,7 +94760,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "59949:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59945:23:14", @@ -96491,7 +94774,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59945:79:14", @@ -96526,7 +94808,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59929:96:14", @@ -96680,12 +94961,10 @@ "id": 24430, "nodeType": "FunctionDefinition", "src": "60038:193:14", - "nodes": [], "body": { "id": 24429, "nodeType": "Block", "src": "60119:112:14", - "nodes": [], "statements": [ { "expression": { @@ -96797,7 +95076,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60149:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60145:23:14", @@ -96812,7 +95090,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60145:78:14", @@ -96847,7 +95124,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60129:95:14", @@ -96999,12 +95275,10 @@ "id": 24453, "nodeType": "FunctionDefinition", "src": "60237:198:14", - "nodes": [], "body": { "id": 24452, "nodeType": "Block", "src": "60324:111:14", - "nodes": [], "statements": [ { "expression": { @@ -97116,7 +95390,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60354:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60350:23:14", @@ -97131,7 +95404,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60350:77:14", @@ -97166,7 +95438,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60334:94:14", @@ -97318,12 +95589,10 @@ "id": 24476, "nodeType": "FunctionDefinition", "src": "60441:187:14", - "nodes": [], "body": { "id": 24475, "nodeType": "Block", "src": "60519:109:14", - "nodes": [], "statements": [ { "expression": { @@ -97435,7 +95704,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60549:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60545:23:14", @@ -97450,7 +95718,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60545:75:14", @@ -97485,7 +95752,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60529:92:14", @@ -97637,12 +95903,10 @@ "id": 24499, "nodeType": "FunctionDefinition", "src": "60634:193:14", - "nodes": [], "body": { "id": 24498, "nodeType": "Block", "src": "60715:112:14", - "nodes": [], "statements": [ { "expression": { @@ -97754,7 +96018,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60745:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60741:23:14", @@ -97769,7 +96032,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60741:78:14", @@ -97804,7 +96066,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60725:95:14", @@ -97957,12 +96218,10 @@ "id": 24522, "nodeType": "FunctionDefinition", "src": "60833:198:14", - "nodes": [], "body": { "id": 24521, "nodeType": "Block", "src": "60920:111:14", - "nodes": [], "statements": [ { "expression": { @@ -98074,7 +96333,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "60950:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60946:23:14", @@ -98089,7 +96347,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60946:77:14", @@ -98124,7 +96381,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60930:94:14", @@ -98276,12 +96532,10 @@ "id": 24545, "nodeType": "FunctionDefinition", "src": "61037:203:14", - "nodes": [], "body": { "id": 24544, "nodeType": "Block", "src": "61130:110:14", - "nodes": [], "statements": [ { "expression": { @@ -98393,7 +96647,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61160:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61156:23:14", @@ -98408,7 +96661,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61156:76:14", @@ -98443,7 +96695,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61140:93:14", @@ -98595,12 +96846,10 @@ "id": 24568, "nodeType": "FunctionDefinition", "src": "61246:192:14", - "nodes": [], "body": { "id": 24567, "nodeType": "Block", "src": "61330:108:14", - "nodes": [], "statements": [ { "expression": { @@ -98712,7 +96961,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61360:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61356:23:14", @@ -98727,7 +96975,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61356:74:14", @@ -98762,7 +97009,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61340:91:14", @@ -98914,12 +97160,10 @@ "id": 24591, "nodeType": "FunctionDefinition", "src": "61444:198:14", - "nodes": [], "body": { "id": 24590, "nodeType": "Block", "src": "61531:111:14", - "nodes": [], "statements": [ { "expression": { @@ -99031,7 +97275,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61561:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61557:23:14", @@ -99046,7 +97289,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61557:77:14", @@ -99081,7 +97323,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61541:94:14", @@ -99234,12 +97475,10 @@ "id": 24614, "nodeType": "FunctionDefinition", "src": "61648:187:14", - "nodes": [], "body": { "id": 24613, "nodeType": "Block", "src": "61726:109:14", - "nodes": [], "statements": [ { "expression": { @@ -99351,7 +97590,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61756:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61752:23:14", @@ -99366,7 +97604,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61752:75:14", @@ -99401,7 +97638,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61736:92:14", @@ -99553,12 +97789,10 @@ "id": 24637, "nodeType": "FunctionDefinition", "src": "61841:192:14", - "nodes": [], "body": { "id": 24636, "nodeType": "Block", "src": "61925:108:14", - "nodes": [], "statements": [ { "expression": { @@ -99670,7 +97904,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "61955:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61951:23:14", @@ -99685,7 +97918,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61951:74:14", @@ -99720,7 +97952,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61935:91:14", @@ -99872,12 +98103,10 @@ "id": 24660, "nodeType": "FunctionDefinition", "src": "62039:181:14", - "nodes": [], "body": { "id": 24659, "nodeType": "Block", "src": "62114:106:14", - "nodes": [], "statements": [ { "expression": { @@ -99989,7 +98218,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62144:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62140:23:14", @@ -100004,7 +98232,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62140:72:14", @@ -100039,7 +98266,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62124:89:14", @@ -100191,12 +98417,10 @@ "id": 24683, "nodeType": "FunctionDefinition", "src": "62226:187:14", - "nodes": [], "body": { "id": 24682, "nodeType": "Block", "src": "62304:109:14", - "nodes": [], "statements": [ { "expression": { @@ -100308,7 +98532,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62334:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62330:23:14", @@ -100323,7 +98546,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62330:75:14", @@ -100358,7 +98580,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62314:92:14", @@ -100511,12 +98732,10 @@ "id": 24706, "nodeType": "FunctionDefinition", "src": "62419:193:14", - "nodes": [], "body": { "id": 24705, "nodeType": "Block", "src": "62500:112:14", - "nodes": [], "statements": [ { "expression": { @@ -100628,7 +98847,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62530:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62526:23:14", @@ -100643,7 +98861,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62526:78:14", @@ -100678,7 +98895,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62510:95:14", @@ -100831,12 +99047,10 @@ "id": 24729, "nodeType": "FunctionDefinition", "src": "62618:198:14", - "nodes": [], "body": { "id": 24728, "nodeType": "Block", "src": "62705:111:14", - "nodes": [], "statements": [ { "expression": { @@ -100948,7 +99162,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62735:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62731:23:14", @@ -100963,7 +99176,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62731:77:14", @@ -100998,7 +99210,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62715:94:14", @@ -101151,12 +99362,10 @@ "id": 24752, "nodeType": "FunctionDefinition", "src": "62822:187:14", - "nodes": [], "body": { "id": 24751, "nodeType": "Block", "src": "62900:109:14", - "nodes": [], "statements": [ { "expression": { @@ -101268,7 +99477,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "62930:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62926:23:14", @@ -101283,7 +99491,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62926:75:14", @@ -101318,7 +99525,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62910:92:14", @@ -101471,12 +99677,10 @@ "id": 24775, "nodeType": "FunctionDefinition", "src": "63015:193:14", - "nodes": [], "body": { "id": 24774, "nodeType": "Block", "src": "63096:112:14", - "nodes": [], "statements": [ { "expression": { @@ -101588,7 +99792,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63126:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63122:23:14", @@ -101603,7 +99806,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63122:78:14", @@ -101638,7 +99840,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63106:95:14", @@ -101792,12 +99993,10 @@ "id": 24798, "nodeType": "FunctionDefinition", "src": "63214:182:14", - "nodes": [], "body": { "id": 24797, "nodeType": "Block", "src": "63286:110:14", - "nodes": [], "statements": [ { "expression": { @@ -101909,7 +100108,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63316:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63312:23:14", @@ -101924,7 +100122,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63312:76:14", @@ -101959,7 +100156,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63296:93:14", @@ -102111,12 +100307,10 @@ "id": 24821, "nodeType": "FunctionDefinition", "src": "63402:187:14", - "nodes": [], "body": { "id": 24820, "nodeType": "Block", "src": "63480:109:14", - "nodes": [], "statements": [ { "expression": { @@ -102228,7 +100422,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63510:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63506:23:14", @@ -102243,7 +100436,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63506:75:14", @@ -102278,7 +100470,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63490:92:14", @@ -102430,12 +100621,10 @@ "id": 24844, "nodeType": "FunctionDefinition", "src": "63595:176:14", - "nodes": [], "body": { "id": 24843, "nodeType": "Block", "src": "63664:107:14", - "nodes": [], "statements": [ { "expression": { @@ -102547,7 +100736,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63694:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63690:23:14", @@ -102562,7 +100750,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63690:73:14", @@ -102597,7 +100784,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63674:90:14", @@ -102749,12 +100935,10 @@ "id": 24867, "nodeType": "FunctionDefinition", "src": "63777:182:14", - "nodes": [], "body": { "id": 24866, "nodeType": "Block", "src": "63849:110:14", - "nodes": [], "statements": [ { "expression": { @@ -102866,7 +101050,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "63879:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63875:23:14", @@ -102881,7 +101064,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63875:76:14", @@ -102916,7 +101098,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63859:93:14", @@ -103069,12 +101250,10 @@ "id": 24890, "nodeType": "FunctionDefinition", "src": "63965:187:14", - "nodes": [], "body": { "id": 24889, "nodeType": "Block", "src": "64043:109:14", - "nodes": [], "statements": [ { "expression": { @@ -103186,7 +101365,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64073:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64069:23:14", @@ -103201,7 +101379,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64069:75:14", @@ -103236,7 +101413,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64053:92:14", @@ -103388,12 +101564,10 @@ "id": 24913, "nodeType": "FunctionDefinition", "src": "64158:192:14", - "nodes": [], "body": { "id": 24912, "nodeType": "Block", "src": "64242:108:14", - "nodes": [], "statements": [ { "expression": { @@ -103505,7 +101679,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64272:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64268:23:14", @@ -103520,7 +101693,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64268:74:14", @@ -103555,7 +101727,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64252:91:14", @@ -103707,12 +101878,10 @@ "id": 24936, "nodeType": "FunctionDefinition", "src": "64356:181:14", - "nodes": [], "body": { "id": 24935, "nodeType": "Block", "src": "64431:106:14", - "nodes": [], "statements": [ { "expression": { @@ -103824,7 +101993,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64461:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64457:23:14", @@ -103839,7 +102007,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64457:72:14", @@ -103874,7 +102041,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64441:89:14", @@ -104026,12 +102192,10 @@ "id": 24959, "nodeType": "FunctionDefinition", "src": "64543:187:14", - "nodes": [], "body": { "id": 24958, "nodeType": "Block", "src": "64621:109:14", - "nodes": [], "statements": [ { "expression": { @@ -104143,7 +102307,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64651:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64647:23:14", @@ -104158,7 +102321,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64647:75:14", @@ -104193,7 +102355,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64631:92:14", @@ -104346,12 +102507,10 @@ "id": 24982, "nodeType": "FunctionDefinition", "src": "64736:176:14", - "nodes": [], "body": { "id": 24981, "nodeType": "Block", "src": "64805:107:14", - "nodes": [], "statements": [ { "expression": { @@ -104463,7 +102622,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "64835:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64831:23:14", @@ -104478,7 +102636,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64831:73:14", @@ -104513,7 +102670,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64815:90:14", @@ -104665,12 +102821,10 @@ "id": 25005, "nodeType": "FunctionDefinition", "src": "64918:181:14", - "nodes": [], "body": { "id": 25004, "nodeType": "Block", "src": "64993:106:14", - "nodes": [], "statements": [ { "expression": { @@ -104782,7 +102936,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65023:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65019:23:14", @@ -104797,7 +102950,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65019:72:14", @@ -104832,7 +102984,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65003:89:14", @@ -104984,12 +103135,10 @@ "id": 25028, "nodeType": "FunctionDefinition", "src": "65105:170:14", - "nodes": [], "body": { "id": 25027, "nodeType": "Block", "src": "65171:104:14", - "nodes": [], "statements": [ { "expression": { @@ -105101,7 +103250,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65201:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65197:23:14", @@ -105116,7 +103264,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65197:70:14", @@ -105151,7 +103298,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65181:87:14", @@ -105303,12 +103449,10 @@ "id": 25051, "nodeType": "FunctionDefinition", "src": "65281:176:14", - "nodes": [], "body": { "id": 25050, "nodeType": "Block", "src": "65350:107:14", - "nodes": [], "statements": [ { "expression": { @@ -105420,7 +103564,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65380:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65376:23:14", @@ -105435,7 +103578,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65376:73:14", @@ -105470,7 +103612,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65360:90:14", @@ -105623,12 +103764,10 @@ "id": 25074, "nodeType": "FunctionDefinition", "src": "65463:182:14", - "nodes": [], "body": { "id": 25073, "nodeType": "Block", "src": "65535:110:14", - "nodes": [], "statements": [ { "expression": { @@ -105740,7 +103879,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65565:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65561:23:14", @@ -105755,7 +103893,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65561:76:14", @@ -105790,7 +103927,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65545:93:14", @@ -105943,12 +104079,10 @@ "id": 25097, "nodeType": "FunctionDefinition", "src": "65651:187:14", - "nodes": [], "body": { "id": 25096, "nodeType": "Block", "src": "65729:109:14", - "nodes": [], "statements": [ { "expression": { @@ -106060,7 +104194,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65759:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65755:23:14", @@ -106075,7 +104208,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65755:75:14", @@ -106110,7 +104242,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65739:92:14", @@ -106263,12 +104394,10 @@ "id": 25120, "nodeType": "FunctionDefinition", "src": "65844:176:14", - "nodes": [], "body": { "id": 25119, "nodeType": "Block", "src": "65913:107:14", - "nodes": [], "statements": [ { "expression": { @@ -106380,7 +104509,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "65943:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65939:23:14", @@ -106395,7 +104523,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65939:73:14", @@ -106430,7 +104557,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65923:90:14", @@ -106583,12 +104709,10 @@ "id": 25143, "nodeType": "FunctionDefinition", "src": "66026:182:14", - "nodes": [], "body": { "id": 25142, "nodeType": "Block", "src": "66098:110:14", - "nodes": [], "statements": [ { "expression": { @@ -106700,7 +104824,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66128:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66124:23:14", @@ -106715,7 +104838,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66124:76:14", @@ -106750,7 +104872,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66108:93:14", @@ -106904,12 +105025,10 @@ "id": 25166, "nodeType": "FunctionDefinition", "src": "66214:188:14", - "nodes": [], "body": { "id": 25165, "nodeType": "Block", "src": "66289:113:14", - "nodes": [], "statements": [ { "expression": { @@ -107021,7 +105140,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66319:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66315:23:14", @@ -107036,7 +105154,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66315:79:14", @@ -107071,7 +105188,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66299:96:14", @@ -107224,12 +105340,10 @@ "id": 25189, "nodeType": "FunctionDefinition", "src": "66408:193:14", - "nodes": [], "body": { "id": 25188, "nodeType": "Block", "src": "66489:112:14", - "nodes": [], "statements": [ { "expression": { @@ -107341,7 +105455,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66519:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66515:23:14", @@ -107356,7 +105469,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66515:78:14", @@ -107391,7 +105503,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66499:95:14", @@ -107544,12 +105655,10 @@ "id": 25212, "nodeType": "FunctionDefinition", "src": "66607:182:14", - "nodes": [], "body": { "id": 25211, "nodeType": "Block", "src": "66679:110:14", - "nodes": [], "statements": [ { "expression": { @@ -107661,7 +105770,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66709:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66705:23:14", @@ -107676,7 +105784,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66705:76:14", @@ -107711,7 +105818,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66689:93:14", @@ -107864,12 +105970,10 @@ "id": 25235, "nodeType": "FunctionDefinition", "src": "66795:188:14", - "nodes": [], "body": { "id": 25234, "nodeType": "Block", "src": "66870:113:14", - "nodes": [], "statements": [ { "expression": { @@ -107981,7 +106085,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "66900:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66896:23:14", @@ -107996,7 +106099,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66896:79:14", @@ -108031,7 +106133,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66880:96:14", @@ -108185,12 +106286,10 @@ "id": 25258, "nodeType": "FunctionDefinition", "src": "66989:193:14", - "nodes": [], "body": { "id": 25257, "nodeType": "Block", "src": "67070:112:14", - "nodes": [], "statements": [ { "expression": { @@ -108302,7 +106401,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "67100:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67096:23:14", @@ -108317,7 +106415,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67096:78:14", @@ -108352,7 +106449,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67080:95:14", @@ -108505,12 +106601,10 @@ "id": 25281, "nodeType": "FunctionDefinition", "src": "67188:198:14", - "nodes": [], "body": { "id": 25280, "nodeType": "Block", "src": "67275:111:14", - "nodes": [], "statements": [ { "expression": { @@ -108622,7 +106716,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "67305:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67301:23:14", @@ -108637,7 +106730,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67301:77:14", @@ -108672,7 +106764,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67285:94:14", @@ -108825,12 +106916,10 @@ "id": 25304, "nodeType": "FunctionDefinition", "src": "67392:187:14", - "nodes": [], "body": { "id": 25303, "nodeType": "Block", "src": "67470:109:14", - "nodes": [], "statements": [ { "expression": { @@ -108942,7 +107031,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "67500:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67496:23:14", @@ -108957,7 +107045,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67496:75:14", @@ -108992,7 +107079,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67480:92:14", @@ -109145,12 +107231,10 @@ "id": 25327, "nodeType": "FunctionDefinition", "src": "67585:193:14", - "nodes": [], "body": { "id": 25326, "nodeType": "Block", "src": "67666:112:14", - "nodes": [], "statements": [ { "expression": { @@ -109262,7 +107346,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "67696:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67692:23:14", @@ -109277,7 +107360,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67692:78:14", @@ -109312,7 +107394,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67676:95:14", @@ -109466,12 +107547,10 @@ "id": 25350, "nodeType": "FunctionDefinition", "src": "67784:182:14", - "nodes": [], "body": { "id": 25349, "nodeType": "Block", "src": "67856:110:14", - "nodes": [], "statements": [ { "expression": { @@ -109583,7 +107662,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "67886:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67882:23:14", @@ -109598,7 +107676,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67882:76:14", @@ -109633,7 +107710,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67866:93:14", @@ -109786,12 +107862,10 @@ "id": 25373, "nodeType": "FunctionDefinition", "src": "67972:187:14", - "nodes": [], "body": { "id": 25372, "nodeType": "Block", "src": "68050:109:14", - "nodes": [], "statements": [ { "expression": { @@ -109903,7 +107977,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "68080:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68076:23:14", @@ -109918,7 +107991,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68076:75:14", @@ -109953,7 +108025,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68060:92:14", @@ -110106,12 +108177,10 @@ "id": 25396, "nodeType": "FunctionDefinition", "src": "68165:176:14", - "nodes": [], "body": { "id": 25395, "nodeType": "Block", "src": "68234:107:14", - "nodes": [], "statements": [ { "expression": { @@ -110223,7 +108292,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "68264:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68260:23:14", @@ -110238,7 +108306,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68260:73:14", @@ -110273,7 +108340,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68244:90:14", @@ -110426,12 +108492,10 @@ "id": 25419, "nodeType": "FunctionDefinition", "src": "68347:182:14", - "nodes": [], "body": { "id": 25418, "nodeType": "Block", "src": "68419:110:14", - "nodes": [], "statements": [ { "expression": { @@ -110543,7 +108607,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "68449:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68445:23:14", @@ -110558,7 +108621,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68445:76:14", @@ -110593,7 +108655,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68429:93:14", @@ -110747,12 +108808,10 @@ "id": 25442, "nodeType": "FunctionDefinition", "src": "68535:188:14", - "nodes": [], "body": { "id": 25441, "nodeType": "Block", "src": "68610:113:14", - "nodes": [], "statements": [ { "expression": { @@ -110864,7 +108923,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "68640:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68636:23:14", @@ -110879,7 +108937,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68636:79:14", @@ -110914,7 +108971,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68620:96:14", @@ -111068,12 +109124,10 @@ "id": 25465, "nodeType": "FunctionDefinition", "src": "68729:193:14", - "nodes": [], "body": { "id": 25464, "nodeType": "Block", "src": "68810:112:14", - "nodes": [], "statements": [ { "expression": { @@ -111185,7 +109239,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "68840:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68836:23:14", @@ -111200,7 +109253,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68836:78:14", @@ -111235,7 +109287,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68820:95:14", @@ -111389,12 +109440,10 @@ "id": 25488, "nodeType": "FunctionDefinition", "src": "68928:182:14", - "nodes": [], "body": { "id": 25487, "nodeType": "Block", "src": "69000:110:14", - "nodes": [], "statements": [ { "expression": { @@ -111506,7 +109555,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "69030:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "69026:23:14", @@ -111521,7 +109569,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69026:76:14", @@ -111556,7 +109603,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69010:93:14", @@ -111710,12 +109756,10 @@ "id": 25511, "nodeType": "FunctionDefinition", "src": "69116:188:14", - "nodes": [], "body": { "id": 25510, "nodeType": "Block", "src": "69191:113:14", - "nodes": [], "statements": [ { "expression": { @@ -111827,7 +109871,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "69221:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "69217:23:14", @@ -111842,7 +109885,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69217:79:14", @@ -111877,7 +109919,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69201:96:14", diff --git a/out/test.sol/DSTest.json b/out/test.sol/DSTest.json index 39fcf0d..8e57027 100644 --- a/out/test.sol/DSTest.json +++ b/out/test.sol/DSTest.json @@ -296,362 +296,19 @@ } ], "bytecode": { - "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5061024e8061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101bf565b60408051601f198184030181529082905261012c916101e3565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b509150508080602001905181019061018691906101f6565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b50600093019283525090919050565b6001600160e01b03198316815260006101db600483018461018f565b949350505050565b60006101ef828461018f565b9392505050565b60006020828403121561020857600080fd5b815180151581146101ef57600080fdfea26469706673582212204ee3101c9c12fe2d58575b126113957847d2e8350823f104b6f1697b3aa96f3a64736f6c63430008110033", + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b506102598061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212205604e6eb3af0cee6761e0f0a6af86ca165749c50cae10bd75ef29b3fa6334d7f64736f6c634300080f0033", "sourceMap": "715:15435:0:-:0;;;1572:26;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;715:15435;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101bf565b60408051601f198184030181529082905261012c916101e3565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b509150508080602001905181019061018691906101f6565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b50600093019283525090919050565b6001600160e01b03198316815260006101db600483018461018f565b949350505050565b60006101ef828461018f565b9392505050565b60006020828403121561020857600080fd5b815180151581146101ef57600080fdfea26469706673582212204ee3101c9c12fe2d58575b126113957847d2e8350823f104b6f1697b3aa96f3a64736f6c63430008110033", - "sourceMap": "715:15435:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1819:584;;;:::i;:::-;;;179:14:23;;172:22;154:41;;142:2;127:18;1819:584:0;;;;;;;1572:26;;;;;;;;;1819:584;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;380:51:23;;;-1:-1:-1;;;447:18:23;;;440:34;2196:43:0;;;;;;;;;353:18:23;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;485:322:23:-;526:3;564:5;558:12;588:1;598:128;612:6;609:1;606:13;598:128;;;709:4;694:13;;;690:24;;684:31;671:11;;;664:52;627:12;598:128;;;-1:-1:-1;781:1:23;745:16;;770:13;;;-1:-1:-1;745:16:23;;485:322;-1:-1:-1;485:322:23:o;812:278::-;-1:-1:-1;;;;;;997:33:23;;985:46;;967:3;1047:37;1081:1;1072:11;;1064:6;1047:37;:::i;:::-;1040:44;812:278;-1:-1:-1;;;;812:278:23:o;1095:189::-;1224:3;1249:29;1274:3;1266:6;1249:29;:::i;:::-;1242:36;1095:189;-1:-1:-1;;;1095:189:23:o;1289:277::-;1356:6;1409:2;1397:9;1388:7;1384:23;1380:32;1377:52;;;1425:1;1422;1415:12;1377:52;1457:9;1451:16;1510:5;1503:13;1496:21;1489:5;1486:32;1476:60;;1532:1;1529;1522:12", + "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212205604e6eb3af0cee6761e0f0a6af86ca165749c50cae10bd75ef29b3fa6334d7f64736f6c634300080f0033", + "sourceMap": "715:15435:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1819:584;;;:::i;:::-;;;179:14:32;;172:22;154:41;;142:2;127:18;1819:584:0;;;;;;;1572:26;;;;;;;;;1819:584;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;380:51:32;;;-1:-1:-1;;;447:18:32;;;440:34;2196:43:0;;;;;;;;;353:18:32;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;485:336:32:-;526:3;564:5;558:12;588:1;598:128;612:6;609:1;606:13;598:128;;;709:4;694:13;;;690:24;;684:31;671:11;;;664:52;627:12;598:128;;;744:6;741:1;738:13;735:48;;;779:1;770:6;765:3;761:16;754:27;735:48;-1:-1:-1;799:16:32;;;;;485:336;-1:-1:-1;;485:336:32:o;826:278::-;-1:-1:-1;;;;;;1011:33:32;;999:46;;981:3;1061:37;1095:1;1086:11;;1078:6;1061:37;:::i;:::-;1054:44;826:278;-1:-1:-1;;;;826:278:32:o;1109:189::-;1238:3;1263:29;1288:3;1280:6;1263:29;:::i;:::-;1256:36;1109:189;-1:-1:-1;;;1109:189:32:o;1303:277::-;1370:6;1423:2;1411:9;1402:7;1398:23;1394:32;1391:52;;;1439:1;1436;1429:12;1391:52;1471:9;1465:16;1524:5;1517:13;1510:21;1503:5;1500:32;1490:60;;1546:1;1543;1536:12", "linkReferences": {} }, "methodIdentifiers": { "IS_TEST()": "fa7626d4", "failed()": "ba414fa6" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/lib/ds-test/src/test.sol\":\"DSTest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address", - "name": "val", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_named_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes", - "name": "val", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes32", - "name": "val", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "string", - "name": "val", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_named_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "logs", - "anonymous": false - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "IS_TEST", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "failed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/lib/ds-test/src/test.sol": "DSTest" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/lib/ds-test/src/test.sol": { - "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", - "urls": [ - "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", - "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" - ], - "license": "GPL-3.0-or-later" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", "id": 1787, @@ -667,7 +324,6 @@ "id": 1, "nodeType": "PragmaDirective", "src": "689:24:0", - "nodes": [], "literals": [ "solidity", ">=", @@ -684,7 +340,6 @@ "id": 5, "nodeType": "EventDefinition", "src": "737:38:0", - "nodes": [], "anonymous": false, "eventSelector": "41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", "name": "log", @@ -729,7 +384,6 @@ "id": 9, "nodeType": "EventDefinition", "src": "780:37:0", - "nodes": [], "anonymous": false, "eventSelector": "e7950ede0394b9f2ce4a5a1bf5a7e1852411f7e6661b4308c913c4bfd11027e4", "name": "logs", @@ -774,7 +428,6 @@ "id": 13, "nodeType": "EventDefinition", "src": "823:39:0", - "nodes": [], "anonymous": false, "eventSelector": "7ae74c527414ae135fd97047b12921a5ec3911b804197855d67e25c7b75ee6f3", "name": "log_address", @@ -820,7 +473,6 @@ "id": 17, "nodeType": "EventDefinition", "src": "867:39:0", - "nodes": [], "anonymous": false, "eventSelector": "e81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e3", "name": "log_bytes32", @@ -865,7 +517,6 @@ "id": 21, "nodeType": "EventDefinition", "src": "911:35:0", - "nodes": [], "anonymous": false, "eventSelector": "0eb5d52624c8d28ada9fc55a8c502ed5aa3fbe2fb6e91b71b5f376882b1d2fb8", "name": "log_int", @@ -910,7 +561,6 @@ "id": 25, "nodeType": "EventDefinition", "src": "951:36:0", - "nodes": [], "anonymous": false, "eventSelector": "2cab9790510fd8bdfbd2115288db33fec66691d476efc5427cfd4c0969301755", "name": "log_uint", @@ -955,7 +605,6 @@ "id": 29, "nodeType": "EventDefinition", "src": "992:37:0", - "nodes": [], "anonymous": false, "eventSelector": "23b62ad0584d24a75f0bf3560391ef5659ec6db1269c56e11aa241d637f19b20", "name": "log_bytes", @@ -1000,7 +649,6 @@ "id": 33, "nodeType": "EventDefinition", "src": "1034:38:0", - "nodes": [], "anonymous": false, "eventSelector": "0b2e13ff20ac7b474198655583edf70dedd2c1dc980e329c4fbb2fc0748b796b", "name": "log_string", @@ -1045,7 +693,6 @@ "id": 39, "nodeType": "EventDefinition", "src": "1078:55:0", - "nodes": [], "anonymous": false, "eventSelector": "9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f", "name": "log_named_address", @@ -1119,7 +766,6 @@ "id": 45, "nodeType": "EventDefinition", "src": "1138:55:0", - "nodes": [], "anonymous": false, "eventSelector": "afb795c9c61e4fe7468c386f925d7a5429ecad9c0495ddb8d38d690614d32f99", "name": "log_named_bytes32", @@ -1192,7 +838,6 @@ "id": 53, "nodeType": "EventDefinition", "src": "1198:66:0", - "nodes": [], "anonymous": false, "eventSelector": "5da6ce9d51151ba10c09a559ef24d520b9dac5c5b8810ae8434e4d0d86411a95", "name": "log_named_decimal_int", @@ -1293,7 +938,6 @@ "id": 61, "nodeType": "EventDefinition", "src": "1269:67:0", - "nodes": [], "anonymous": false, "eventSelector": "eb8ba43ced7537421946bd43e828b8b2b8428927aa8f801c13d934bf11aca57b", "name": "log_named_decimal_uint", @@ -1394,7 +1038,6 @@ "id": 67, "nodeType": "EventDefinition", "src": "1341:51:0", - "nodes": [], "anonymous": false, "eventSelector": "2fe632779174374378442a8e978bccfbdcc1d6b2b0d81f7e8eb776ab2286f168", "name": "log_named_int", @@ -1467,7 +1110,6 @@ "id": 73, "nodeType": "EventDefinition", "src": "1397:52:0", - "nodes": [], "anonymous": false, "eventSelector": "b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8", "name": "log_named_uint", @@ -1540,7 +1182,6 @@ "id": 79, "nodeType": "EventDefinition", "src": "1454:53:0", - "nodes": [], "anonymous": false, "eventSelector": "d26e16cad4548705e4c9e2d94f98ee91c289085ee425594fd5635fa2964ccf18", "name": "log_named_bytes", @@ -1613,7 +1254,6 @@ "id": 85, "nodeType": "EventDefinition", "src": "1512:54:0", - "nodes": [], "anonymous": false, "eventSelector": "280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583", "name": "log_named_string", @@ -1686,7 +1326,6 @@ "id": 88, "nodeType": "VariableDeclaration", "src": "1572:26:0", - "nodes": [], "constant": false, "functionSelector": "fa7626d4", "mutability": "mutable", @@ -1731,7 +1370,6 @@ "id": 90, "nodeType": "VariableDeclaration", "src": "1604:20:0", - "nodes": [], "constant": false, "mutability": "mutable", "name": "_failed", @@ -1759,7 +1397,6 @@ "id": 107, "nodeType": "VariableDeclaration", "src": "1631:104:0", - "nodes": [], "constant": true, "mutability": "constant", "name": "HEVM_ADDRESS", @@ -1833,7 +1470,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1703:28:0", @@ -1876,7 +1512,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1695:37:0", @@ -1919,7 +1554,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1687:46:0", @@ -1962,7 +1596,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1679:55:0", @@ -2005,7 +1638,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1671:64:0", @@ -2021,12 +1653,10 @@ "id": 111, "nodeType": "ModifierDefinition", "src": "1742:27:0", - "nodes": [], "body": { "id": 110, "nodeType": "Block", "src": "1763:6:0", - "nodes": [], "statements": [ { "id": 109, @@ -2050,12 +1680,10 @@ "id": 117, "nodeType": "ModifierDefinition", "src": "1774:39:0", - "nodes": [], "body": { "id": 116, "nodeType": "Block", "src": "1807:6:0", - "nodes": [], "statements": [ { "id": 115, @@ -2107,12 +1735,10 @@ "id": 172, "nodeType": "FunctionDefinition", "src": "1819:584:0", - "nodes": [], "body": { "id": 171, "nodeType": "Block", "src": "1859:544:0", - "nodes": [], "statements": [ { "condition": { @@ -2207,7 +1833,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1984:16:0", @@ -2310,7 +1935,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2135:34:0", @@ -2353,7 +1977,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2128:42:0", @@ -2428,7 +2051,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2221:17:0", @@ -2467,7 +2089,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2200:6:0", "memberName": "encode", "nodeType": "MemberAccess", "src": "2196:10:0", @@ -2482,7 +2103,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2196:43:0", @@ -2521,7 +2141,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2090:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2086:16:0", @@ -2536,7 +2155,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2086:175:0", @@ -2571,7 +2189,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2060:4:0", "memberName": "call", "nodeType": "MemberAccess", "src": "2047:17:0", @@ -2586,7 +2203,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2047:232:0", @@ -2699,7 +2315,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2316:6:0", "memberName": "decode", "nodeType": "MemberAccess", "src": "2312:10:0", @@ -2714,7 +2329,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2312:27:0", @@ -2843,12 +2457,10 @@ "id": 216, "nodeType": "FunctionDefinition", "src": "2410:424:0", - "nodes": [], "body": { "id": 215, "nodeType": "Block", "src": "2435:399:0", - "nodes": [], "statements": [ { "condition": { @@ -2872,7 +2484,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2449:16:0", @@ -2975,7 +2586,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2579:43:0", @@ -3018,7 +2628,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2572:51:0", @@ -3093,7 +2702,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2670:17:0", @@ -3156,7 +2764,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2697:13:0", @@ -3199,7 +2806,6 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2689:22:0", @@ -3242,7 +2848,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2649:6:0", "memberName": "encode", "nodeType": "MemberAccess", "src": "2645:10:0", @@ -3257,7 +2862,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2645:67:0", @@ -3296,7 +2900,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "2538:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2534:16:0", @@ -3311,7 +2914,6 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2534:196:0", @@ -3346,7 +2948,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2512:4:0", "memberName": "call", "nodeType": "MemberAccess", "src": "2499:17:0", @@ -3361,7 +2962,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2499:245:0", @@ -3469,12 +3069,10 @@ "id": 231, "nodeType": "FunctionDefinition", "src": "2840:242:0", - "nodes": [], "body": { "id": 230, "nodeType": "Block", "src": "2895:187:0", - "nodes": [], "statements": [ { "assignments": [ @@ -3687,12 +3285,10 @@ "id": 252, "nodeType": "ModifierDefinition", "src": "3088:161:0", - "nodes": [], "body": { "id": 251, "nodeType": "Block", "src": "3108:141:0", - "nodes": [], "statements": [ { "assignments": [ @@ -3749,7 +3345,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3134:9:0", @@ -3822,7 +3417,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3178:9:0", @@ -3925,7 +3519,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3202:40:0", @@ -3956,12 +3549,10 @@ "id": 269, "nodeType": "FunctionDefinition", "src": "3255:157:0", - "nodes": [], "body": { "id": 268, "nodeType": "Block", "src": "3300:112:0", - "nodes": [], "statements": [ { "condition": { @@ -4043,7 +3634,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3345:30:0", @@ -4079,7 +3669,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3389:6:0", @@ -4152,12 +3741,10 @@ "id": 290, "nodeType": "FunctionDefinition", "src": "3418:191:0", - "nodes": [], "body": { "id": 289, "nodeType": "Block", "src": "3482:127:0", - "nodes": [], "statements": [ { "condition": { @@ -4255,7 +3842,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3527:30:0", @@ -4312,7 +3898,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3571:21:0", @@ -4412,12 +3997,10 @@ "id": 320, "nodeType": "FunctionDefinition", "src": "3615:277:0", - "nodes": [], "body": { "id": 319, "nodeType": "Block", "src": "3664:228:0", - "nodes": [], "statements": [ { "condition": { @@ -4514,7 +4097,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3705:44:0", @@ -4588,7 +4170,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3768:34:0", @@ -4662,7 +4243,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3821:34:0", @@ -4698,7 +4278,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3869:6:0", @@ -4800,12 +4379,10 @@ "id": 345, "nodeType": "FunctionDefinition", "src": "3897:185:0", - "nodes": [], "body": { "id": 344, "nodeType": "Block", "src": "3965:117:0", - "nodes": [], "statements": [ { "condition": { @@ -4918,7 +4495,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4006:31:0", @@ -4999,7 +4575,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4051:14:0", @@ -5128,12 +4703,10 @@ "id": 375, "nodeType": "FunctionDefinition", "src": "4088:277:0", - "nodes": [], "body": { "id": 374, "nodeType": "Block", "src": "4137:228:0", - "nodes": [], "statements": [ { "condition": { @@ -5230,7 +4803,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4178:44:0", @@ -5304,7 +4876,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4241:34:0", @@ -5378,7 +4949,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4294:34:0", @@ -5414,7 +4984,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4342:6:0", @@ -5514,12 +5083,10 @@ "id": 400, "nodeType": "FunctionDefinition", "src": "4370:185:0", - "nodes": [], "body": { "id": 399, "nodeType": "Block", "src": "4438:117:0", - "nodes": [], "statements": [ { "condition": { @@ -5632,7 +5199,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4479:31:0", @@ -5713,7 +5279,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4524:14:0", @@ -5840,12 +5405,10 @@ "id": 413, "nodeType": "FunctionDefinition", "src": "4560:82:0", - "nodes": [], "body": { "id": 412, "nodeType": "Block", "src": "4611:31:0", - "nodes": [], "statements": [ { "expression": { @@ -5914,7 +5477,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4621:14:0", @@ -6011,12 +5573,10 @@ "id": 429, "nodeType": "FunctionDefinition", "src": "4647:106:0", - "nodes": [], "body": { "id": 428, "nodeType": "Block", "src": "4717:36:0", - "nodes": [], "statements": [ { "expression": { @@ -6101,7 +5661,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4727:19:0", @@ -6225,12 +5784,10 @@ "id": 459, "nodeType": "FunctionDefinition", "src": "4759:257:0", - "nodes": [], "body": { "id": 458, "nodeType": "Block", "src": "4800:216:0", - "nodes": [], "statements": [ { "condition": { @@ -6327,7 +5884,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4841:40:0", @@ -6401,7 +5957,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4900:30:0", @@ -6475,7 +6030,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4949:30:0", @@ -6511,7 +6065,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4993:6:0", @@ -6611,12 +6164,10 @@ "id": 484, "nodeType": "FunctionDefinition", "src": "5021:176:0", - "nodes": [], "body": { "id": 483, "nodeType": "Block", "src": "5081:116:0", - "nodes": [], "statements": [ { "condition": { @@ -6729,7 +6280,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5122:30:0", @@ -6810,7 +6360,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5166:14:0", @@ -6937,12 +6486,10 @@ "id": 514, "nodeType": "FunctionDefinition", "src": "5202:262:0", - "nodes": [], "body": { "id": 513, "nodeType": "Block", "src": "5245:219:0", - "nodes": [], "statements": [ { "condition": { @@ -7039,7 +6586,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5286:41:0", @@ -7113,7 +6659,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5346:31:0", @@ -7187,7 +6732,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5396:31:0", @@ -7223,7 +6767,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5441:6:0", @@ -7323,12 +6866,10 @@ "id": 539, "nodeType": "FunctionDefinition", "src": "5469:178:0", - "nodes": [], "body": { "id": 538, "nodeType": "Block", "src": "5531:116:0", - "nodes": [], "statements": [ { "condition": { @@ -7441,7 +6982,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5572:30:0", @@ -7522,7 +7062,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5616:14:0", @@ -7649,12 +7188,10 @@ "id": 573, "nodeType": "FunctionDefinition", "src": "5652:323:0", - "nodes": [], "body": { "id": 572, "nodeType": "Block", "src": "5715:260:0", - "nodes": [], "statements": [ { "condition": { @@ -7751,7 +7288,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5756:48:0", @@ -7841,7 +7377,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5823:48:0", @@ -7931,7 +7466,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5890:48:0", @@ -7967,7 +7501,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5952:6:0", @@ -8094,12 +7627,10 @@ "id": 601, "nodeType": "FunctionDefinition", "src": "5980:215:0", - "nodes": [], "body": { "id": 600, "nodeType": "Block", "src": "6062:133:0", - "nodes": [], "statements": [ { "condition": { @@ -8212,7 +7743,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6103:30:0", @@ -8303,7 +7833,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6147:31:0", @@ -8457,12 +7986,10 @@ "id": 635, "nodeType": "FunctionDefinition", "src": "6200:328:0", - "nodes": [], "body": { "id": 634, "nodeType": "Block", "src": "6265:263:0", - "nodes": [], "statements": [ { "condition": { @@ -8559,7 +8086,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6306:49:0", @@ -8649,7 +8175,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6374:49:0", @@ -8739,7 +8264,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6442:49:0", @@ -8775,7 +8299,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6505:6:0", @@ -8902,12 +8425,10 @@ "id": 663, "nodeType": "FunctionDefinition", "src": "6533:217:0", - "nodes": [], "body": { "id": 662, "nodeType": "Block", "src": "6617:133:0", - "nodes": [], "statements": [ { "condition": { @@ -9020,7 +8541,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6658:30:0", @@ -9111,7 +8631,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6702:31:0", @@ -9265,12 +8784,10 @@ "id": 693, "nodeType": "FunctionDefinition", "src": "6756:259:0", - "nodes": [], "body": { "id": 692, "nodeType": "Block", "src": "6799:216:0", - "nodes": [], "statements": [ { "condition": { @@ -9367,7 +8884,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6840:40:0", @@ -9441,7 +8957,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6899:30:0", @@ -9515,7 +9030,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6948:30:0", @@ -9551,7 +9065,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6992:6:0", @@ -9651,12 +9164,10 @@ "id": 718, "nodeType": "FunctionDefinition", "src": "7020:178:0", - "nodes": [], "body": { "id": 717, "nodeType": "Block", "src": "7082:116:0", - "nodes": [], "statements": [ { "condition": { @@ -9769,7 +9280,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7123:30:0", @@ -9844,7 +9354,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7167:14:0", @@ -9971,12 +9480,10 @@ "id": 748, "nodeType": "FunctionDefinition", "src": "7203:254:0", - "nodes": [], "body": { "id": 747, "nodeType": "Block", "src": "7244:213:0", - "nodes": [], "statements": [ { "condition": { @@ -10073,7 +9580,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7285:39:0", @@ -10147,7 +9653,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7343:29:0", @@ -10221,7 +9726,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7391:29:0", @@ -10257,7 +9761,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7434:6:0", @@ -10357,12 +9860,10 @@ "id": 773, "nodeType": "FunctionDefinition", "src": "7462:176:0", - "nodes": [], "body": { "id": 772, "nodeType": "Block", "src": "7522:116:0", - "nodes": [], "statements": [ { "condition": { @@ -10475,7 +9976,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7563:30:0", @@ -10550,7 +10050,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7607:14:0", @@ -10677,12 +10176,10 @@ "id": 807, "nodeType": "FunctionDefinition", "src": "7643:320:0", - "nodes": [], "body": { "id": 806, "nodeType": "Block", "src": "7706:257:0", - "nodes": [], "statements": [ { "condition": { @@ -10779,7 +10276,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7747:47:0", @@ -10869,7 +10365,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7813:47:0", @@ -10959,7 +10454,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7879:47:0", @@ -10995,7 +10489,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7940:6:0", @@ -11122,12 +10615,10 @@ "id": 835, "nodeType": "FunctionDefinition", "src": "7968:215:0", - "nodes": [], "body": { "id": 834, "nodeType": "Block", "src": "8050:133:0", - "nodes": [], "statements": [ { "condition": { @@ -11240,7 +10731,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8091:30:0", @@ -11331,7 +10821,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8135:31:0", @@ -11485,12 +10974,10 @@ "id": 869, "nodeType": "FunctionDefinition", "src": "8188:325:0", - "nodes": [], "body": { "id": 868, "nodeType": "Block", "src": "8253:260:0", - "nodes": [], "statements": [ { "condition": { @@ -11587,7 +11074,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8294:48:0", @@ -11677,7 +11163,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8361:48:0", @@ -11767,7 +11252,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8428:48:0", @@ -11803,7 +11287,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8490:6:0", @@ -11930,12 +11413,10 @@ "id": 897, "nodeType": "FunctionDefinition", "src": "8518:217:0", - "nodes": [], "body": { "id": 896, "nodeType": "Block", "src": "8602:133:0", - "nodes": [], "statements": [ { "condition": { @@ -12048,7 +11529,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8643:30:0", @@ -12139,7 +11619,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8687:31:0", @@ -12293,12 +11772,10 @@ "id": 927, "nodeType": "FunctionDefinition", "src": "8741:259:0", - "nodes": [], "body": { "id": 926, "nodeType": "Block", "src": "8784:216:0", - "nodes": [], "statements": [ { "condition": { @@ -12395,7 +11872,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8824:41:0", @@ -12469,7 +11945,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8884:30:0", @@ -12543,7 +12018,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8933:30:0", @@ -12579,7 +12053,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8977:6:0", @@ -12679,12 +12152,10 @@ "id": 952, "nodeType": "FunctionDefinition", "src": "9005:177:0", - "nodes": [], "body": { "id": 951, "nodeType": "Block", "src": "9067:115:0", - "nodes": [], "statements": [ { "condition": { @@ -12797,7 +12268,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9107:30:0", @@ -12872,7 +12342,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9151:14:0", @@ -12999,12 +12468,10 @@ "id": 982, "nodeType": "FunctionDefinition", "src": "9187:254:0", - "nodes": [], "body": { "id": 981, "nodeType": "Block", "src": "9228:213:0", - "nodes": [], "statements": [ { "condition": { @@ -13101,7 +12568,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9268:40:0", @@ -13175,7 +12641,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9327:29:0", @@ -13249,7 +12714,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9375:29:0", @@ -13285,7 +12749,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9418:6:0", @@ -13385,12 +12848,10 @@ "id": 1007, "nodeType": "FunctionDefinition", "src": "9446:175:0", - "nodes": [], "body": { "id": 1006, "nodeType": "Block", "src": "9506:115:0", - "nodes": [], "statements": [ { "condition": { @@ -13503,7 +12964,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9546:30:0", @@ -13578,7 +13038,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9590:14:0", @@ -13705,12 +13164,10 @@ "id": 1041, "nodeType": "FunctionDefinition", "src": "9626:320:0", - "nodes": [], "body": { "id": 1040, "nodeType": "Block", "src": "9689:257:0", - "nodes": [], "statements": [ { "condition": { @@ -13807,7 +13264,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9729:48:0", @@ -13897,7 +13353,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9796:47:0", @@ -13987,7 +13442,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9862:47:0", @@ -14023,7 +13477,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9923:6:0", @@ -14150,12 +13603,10 @@ "id": 1069, "nodeType": "FunctionDefinition", "src": "9951:214:0", - "nodes": [], "body": { "id": 1068, "nodeType": "Block", "src": "10033:132:0", - "nodes": [], "statements": [ { "condition": { @@ -14268,7 +13719,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10073:30:0", @@ -14359,7 +13809,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10117:31:0", @@ -14513,12 +13962,10 @@ "id": 1103, "nodeType": "FunctionDefinition", "src": "10170:325:0", - "nodes": [], "body": { "id": 1102, "nodeType": "Block", "src": "10235:260:0", - "nodes": [], "statements": [ { "condition": { @@ -14615,7 +14062,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10275:49:0", @@ -14705,7 +14151,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10343:48:0", @@ -14795,7 +14240,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10410:48:0", @@ -14831,7 +14275,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10472:6:0", @@ -14958,12 +14401,10 @@ "id": 1131, "nodeType": "FunctionDefinition", "src": "10500:216:0", - "nodes": [], "body": { "id": 1130, "nodeType": "Block", "src": "10584:132:0", - "nodes": [], "statements": [ { "condition": { @@ -15076,7 +14517,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10624:30:0", @@ -15167,7 +14607,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10668:31:0", @@ -15321,12 +14760,10 @@ "id": 1161, "nodeType": "FunctionDefinition", "src": "10722:259:0", - "nodes": [], "body": { "id": 1160, "nodeType": "Block", "src": "10765:216:0", - "nodes": [], "statements": [ { "condition": { @@ -15423,7 +14860,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10806:40:0", @@ -15497,7 +14933,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10865:30:0", @@ -15571,7 +15006,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10914:30:0", @@ -15607,7 +15041,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10958:6:0", @@ -15707,12 +15140,10 @@ "id": 1186, "nodeType": "FunctionDefinition", "src": "10986:178:0", - "nodes": [], "body": { "id": 1185, "nodeType": "Block", "src": "11048:116:0", - "nodes": [], "statements": [ { "condition": { @@ -15825,7 +15256,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11089:30:0", @@ -15900,7 +15330,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11133:14:0", @@ -16027,12 +15456,10 @@ "id": 1216, "nodeType": "FunctionDefinition", "src": "11169:254:0", - "nodes": [], "body": { "id": 1215, "nodeType": "Block", "src": "11210:213:0", - "nodes": [], "statements": [ { "condition": { @@ -16129,7 +15556,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11251:39:0", @@ -16203,7 +15629,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11309:29:0", @@ -16277,7 +15702,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11357:29:0", @@ -16313,7 +15737,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11400:6:0", @@ -16413,12 +15836,10 @@ "id": 1241, "nodeType": "FunctionDefinition", "src": "11428:176:0", - "nodes": [], "body": { "id": 1240, "nodeType": "Block", "src": "11488:116:0", - "nodes": [], "statements": [ { "condition": { @@ -16531,7 +15952,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11529:30:0", @@ -16606,7 +16026,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11573:14:0", @@ -16733,12 +16152,10 @@ "id": 1275, "nodeType": "FunctionDefinition", "src": "11609:320:0", - "nodes": [], "body": { "id": 1274, "nodeType": "Block", "src": "11672:257:0", - "nodes": [], "statements": [ { "condition": { @@ -16835,7 +16252,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11713:47:0", @@ -16925,7 +16341,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11779:47:0", @@ -17015,7 +16430,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11845:47:0", @@ -17051,7 +16465,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11906:6:0", @@ -17178,12 +16591,10 @@ "id": 1303, "nodeType": "FunctionDefinition", "src": "11934:215:0", - "nodes": [], "body": { "id": 1302, "nodeType": "Block", "src": "12016:133:0", - "nodes": [], "statements": [ { "condition": { @@ -17296,7 +16707,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12057:30:0", @@ -17387,7 +16797,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12101:31:0", @@ -17541,12 +16950,10 @@ "id": 1337, "nodeType": "FunctionDefinition", "src": "12154:325:0", - "nodes": [], "body": { "id": 1336, "nodeType": "Block", "src": "12219:260:0", - "nodes": [], "statements": [ { "condition": { @@ -17643,7 +17050,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12260:48:0", @@ -17733,7 +17139,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12327:48:0", @@ -17823,7 +17228,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12394:48:0", @@ -17859,7 +17263,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12456:6:0", @@ -17986,12 +17389,10 @@ "id": 1365, "nodeType": "FunctionDefinition", "src": "12484:217:0", - "nodes": [], "body": { "id": 1364, "nodeType": "Block", "src": "12568:133:0", - "nodes": [], "statements": [ { "condition": { @@ -18104,7 +17505,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12609:30:0", @@ -18195,7 +17595,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12653:31:0", @@ -18349,12 +17748,10 @@ "id": 1395, "nodeType": "FunctionDefinition", "src": "12707:259:0", - "nodes": [], "body": { "id": 1394, "nodeType": "Block", "src": "12750:216:0", - "nodes": [], "statements": [ { "condition": { @@ -18451,7 +17848,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12790:41:0", @@ -18525,7 +17921,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12850:30:0", @@ -18599,7 +17994,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12899:30:0", @@ -18635,7 +18029,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12943:6:0", @@ -18735,12 +18128,10 @@ "id": 1420, "nodeType": "FunctionDefinition", "src": "12971:177:0", - "nodes": [], "body": { "id": 1419, "nodeType": "Block", "src": "13033:115:0", - "nodes": [], "statements": [ { "condition": { @@ -18853,7 +18244,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13073:30:0", @@ -18928,7 +18318,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13117:14:0", @@ -19055,12 +18444,10 @@ "id": 1450, "nodeType": "FunctionDefinition", "src": "13153:254:0", - "nodes": [], "body": { "id": 1449, "nodeType": "Block", "src": "13194:213:0", - "nodes": [], "statements": [ { "condition": { @@ -19157,7 +18544,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13234:40:0", @@ -19231,7 +18617,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13293:29:0", @@ -19305,7 +18690,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13341:29:0", @@ -19341,7 +18725,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13384:6:0", @@ -19441,12 +18824,10 @@ "id": 1475, "nodeType": "FunctionDefinition", "src": "13412:175:0", - "nodes": [], "body": { "id": 1474, "nodeType": "Block", "src": "13472:115:0", - "nodes": [], "statements": [ { "condition": { @@ -19559,7 +18940,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13512:30:0", @@ -19634,7 +19014,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13556:14:0", @@ -19761,12 +19140,10 @@ "id": 1509, "nodeType": "FunctionDefinition", "src": "13592:320:0", - "nodes": [], "body": { "id": 1508, "nodeType": "Block", "src": "13655:257:0", - "nodes": [], "statements": [ { "condition": { @@ -19863,7 +19240,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13695:48:0", @@ -19953,7 +19329,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13762:47:0", @@ -20043,7 +19418,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13828:47:0", @@ -20079,7 +19453,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13889:6:0", @@ -20206,12 +19579,10 @@ "id": 1537, "nodeType": "FunctionDefinition", "src": "13917:214:0", - "nodes": [], "body": { "id": 1536, "nodeType": "Block", "src": "13999:132:0", - "nodes": [], "statements": [ { "condition": { @@ -20324,7 +19695,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14039:30:0", @@ -20415,7 +19785,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14083:31:0", @@ -20569,12 +19938,10 @@ "id": 1571, "nodeType": "FunctionDefinition", "src": "14136:325:0", - "nodes": [], "body": { "id": 1570, "nodeType": "Block", "src": "14201:260:0", - "nodes": [], "statements": [ { "condition": { @@ -20671,7 +20038,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14241:49:0", @@ -20761,7 +20127,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14309:48:0", @@ -20851,7 +20216,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14376:48:0", @@ -20887,7 +20251,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14438:6:0", @@ -21014,12 +20377,10 @@ "id": 1599, "nodeType": "FunctionDefinition", "src": "14466:216:0", - "nodes": [], "body": { "id": 1598, "nodeType": "Block", "src": "14550:132:0", - "nodes": [], "statements": [ { "condition": { @@ -21132,7 +20493,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14590:30:0", @@ -21223,7 +20583,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14634:31:0", @@ -21377,12 +20736,10 @@ "id": 1639, "nodeType": "FunctionDefinition", "src": "14688:344:0", - "nodes": [], "body": { "id": 1638, "nodeType": "Block", "src": "14749:283:0", - "nodes": [], "statements": [ { "condition": { @@ -21436,7 +20793,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14777:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14773:16:0", @@ -21451,7 +20807,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14773:19:0", @@ -21486,7 +20841,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14763:30:0", @@ -21539,7 +20893,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "14811:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14807:16:0", @@ -21554,7 +20907,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14807:19:0", @@ -21589,7 +20941,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14797:30:0", @@ -21657,7 +21008,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14848:43:0", @@ -21731,7 +21081,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14910:33:0", @@ -21805,7 +21154,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14962:33:0", @@ -21841,7 +21189,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15009:6:0", @@ -21941,12 +21288,10 @@ "id": 1674, "nodeType": "FunctionDefinition", "src": "15037:254:0", - "nodes": [], "body": { "id": 1673, "nodeType": "Block", "src": "15117:174:0", - "nodes": [], "statements": [ { "condition": { @@ -22000,7 +21345,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15145:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15141:16:0", @@ -22015,7 +21359,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15141:19:0", @@ -22050,7 +21393,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15131:30:0", @@ -22103,7 +21445,6 @@ "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15179:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15175:16:0", @@ -22118,7 +21459,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15175:19:0", @@ -22153,7 +21493,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15165:30:0", @@ -22237,7 +21576,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15216:30:0", @@ -22318,7 +21656,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15260:14:0", @@ -22445,12 +21782,10 @@ "id": 1726, "nodeType": "FunctionDefinition", "src": "15297:345:0", - "nodes": [], "body": { "id": 1725, "nodeType": "Block", "src": "15379:263:0", - "nodes": [], "statements": [ { "expression": { @@ -22528,7 +21863,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15414:6:0", "memberName": "length", "nodeType": "MemberAccess", "src": "15412:8:0", @@ -22557,7 +21891,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15426:6:0", "memberName": "length", "nodeType": "MemberAccess", "src": "15424:8:0", @@ -22835,7 +22168,6 @@ "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15471:6:0", "memberName": "length", "nodeType": "MemberAccess", "src": "15469:8:0", @@ -23053,12 +22385,10 @@ "id": 1758, "nodeType": "FunctionDefinition", "src": "15647:291:0", - "nodes": [], "body": { "id": 1757, "nodeType": "Block", "src": "15707:231:0", - "nodes": [], "statements": [ { "condition": { @@ -23126,7 +22456,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15722:14:0", @@ -23193,7 +22522,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15757:42:0", @@ -23267,7 +22595,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15818:32:0", @@ -23341,7 +22668,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15869:32:0", @@ -23377,7 +22703,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15915:6:0", @@ -23477,12 +22802,10 @@ "id": 1785, "nodeType": "FunctionDefinition", "src": "15943:205:0", - "nodes": [], "body": { "id": 1784, "nodeType": "Block", "src": "16022:126:0", - "nodes": [], "statements": [ { "condition": { @@ -23550,7 +22873,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16037:14:0", @@ -23633,7 +22955,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16072:30:0", @@ -23706,7 +23027,6 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16116:15:0", diff --git a/out/test.sol/Test.json b/out/test.sol/Test.json index 71c4046..da05264 100644 --- a/out/test.sol/Test.json +++ b/out/test.sol/Test.json @@ -405,549 +405,6 @@ "IS_TEST()": "fa7626d4", "failed()": "ba414fa6" }, - "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Test.sol\":\"Test\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]}},\"version\":1}", - "metadata": { - "compiler": { - "version": "0.8.17+commit.8df45f5f" - }, - "language": "Solidity", - "output": { - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "val", - "type": "uint256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256[]", - "name": "val", - "type": "int256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "val", - "type": "address[]", - "indexed": false - } - ], - "type": "event", - "name": "log_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address", - "name": "val", - "type": "address", - "indexed": false - } - ], - "type": "event", - "name": "log_named_address", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256[]", - "name": "val", - "type": "uint256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256[]", - "name": "val", - "type": "int256[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "address[]", - "name": "val", - "type": "address[]", - "indexed": false - } - ], - "type": "event", - "name": "log_named_array", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes", - "name": "val", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "bytes32", - "name": "val", - "type": "bytes32", - "indexed": false - } - ], - "type": "event", - "name": "log_named_bytes32", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - }, - { - "internalType": "uint256", - "name": "decimals", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_decimal_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "int256", - "name": "val", - "type": "int256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_int", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "string", - "name": "val", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_named_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "key", - "type": "string", - "indexed": false - }, - { - "internalType": "uint256", - "name": "val", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_named_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string", - "indexed": false - } - ], - "type": "event", - "name": "log_string", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256", - "indexed": false - } - ], - "type": "event", - "name": "log_uint", - "anonymous": false - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes", - "indexed": false - } - ], - "type": "event", - "name": "logs", - "anonymous": false - }, - { - "inputs": [], - "stateMutability": "view", - "type": "function", - "name": "IS_TEST", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - }, - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "function", - "name": "failed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ] - } - ], - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } - }, - "settings": { - "remappings": [ - ":ds-test/=lib/forge-std/lib/ds-test/src/", - ":forge-std/=lib/forge-std/src/" - ], - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "compilationTarget": { - "lib/forge-std/src/Test.sol": "Test" - }, - "libraries": {} - }, - "sources": { - "lib/forge-std/lib/ds-test/src/test.sol": { - "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", - "urls": [ - "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", - "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" - ], - "license": "GPL-3.0-or-later" - }, - "lib/forge-std/src/Base.sol": { - "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", - "urls": [ - "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", - "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdAssertions.sol": { - "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", - "urls": [ - "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", - "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdChains.sol": { - "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", - "urls": [ - "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", - "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdCheats.sol": { - "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", - "urls": [ - "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", - "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdError.sol": { - "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", - "urls": [ - "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", - "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdJson.sol": { - "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", - "urls": [ - "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", - "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdMath.sol": { - "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", - "urls": [ - "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", - "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdStorage.sol": { - "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", - "urls": [ - "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", - "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" - ], - "license": "MIT" - }, - "lib/forge-std/src/StdUtils.sol": { - "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", - "urls": [ - "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", - "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" - ], - "license": "MIT" - }, - "lib/forge-std/src/Test.sol": { - "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", - "urls": [ - "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", - "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" - ], - "license": "MIT" - }, - "lib/forge-std/src/Vm.sol": { - "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", - "urls": [ - "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", - "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" - ], - "license": "MIT" - }, - "lib/forge-std/src/console.sol": { - "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", - "urls": [ - "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", - "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" - ], - "license": "MIT" - }, - "lib/forge-std/src/console2.sol": { - "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", - "urls": [ - "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", - "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" - ], - "license": "MIT" - } - }, - "version": 1 - }, "ast": { "absolutePath": "lib/forge-std/src/Test.sol", "id": 8196, @@ -1005,7 +462,6 @@ "id": 8155, "nodeType": "PragmaDirective", "src": "32:31:11", - "nodes": [], "literals": [ "solidity", ">=", @@ -1020,7 +476,6 @@ "id": 8157, "nodeType": "ImportDirective", "src": "131:38:11", - "nodes": [], "absolutePath": "lib/forge-std/src/console.sol", "file": "./console.sol", "nameLocation": "-1:-1:-1", @@ -1046,7 +501,6 @@ "id": 8159, "nodeType": "ImportDirective", "src": "170:40:11", - "nodes": [], "absolutePath": "lib/forge-std/src/console2.sol", "file": "./console2.sol", "nameLocation": "-1:-1:-1", @@ -1072,7 +526,6 @@ "id": 8161, "nodeType": "ImportDirective", "src": "211:50:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdAssertions.sol", "file": "./StdAssertions.sol", "nameLocation": "-1:-1:-1", @@ -1098,7 +551,6 @@ "id": 8163, "nodeType": "ImportDirective", "src": "262:42:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdChains.sol", "file": "./StdChains.sol", "nameLocation": "-1:-1:-1", @@ -1124,7 +576,6 @@ "id": 8165, "nodeType": "ImportDirective", "src": "305:42:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdCheats.sol", "file": "./StdCheats.sol", "nameLocation": "-1:-1:-1", @@ -1150,7 +601,6 @@ "id": 8167, "nodeType": "ImportDirective", "src": "348:40:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdError.sol", "file": "./StdError.sol", "nameLocation": "-1:-1:-1", @@ -1176,7 +626,6 @@ "id": 8169, "nodeType": "ImportDirective", "src": "389:38:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdJson.sol", "file": "./StdJson.sol", "nameLocation": "-1:-1:-1", @@ -1202,7 +651,6 @@ "id": 8171, "nodeType": "ImportDirective", "src": "428:38:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdMath.sol", "file": "./StdMath.sol", "nameLocation": "-1:-1:-1", @@ -1228,7 +676,6 @@ "id": 8174, "nodeType": "ImportDirective", "src": "467:56:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -1266,7 +713,6 @@ "id": 8176, "nodeType": "ImportDirective", "src": "524:40:11", - "nodes": [], "absolutePath": "lib/forge-std/src/StdUtils.sol", "file": "./StdUtils.sol", "nameLocation": "-1:-1:-1", @@ -1292,7 +738,6 @@ "id": 8178, "nodeType": "ImportDirective", "src": "565:28:11", - "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -1318,7 +763,6 @@ "id": 8180, "nodeType": "ImportDirective", "src": "615:36:11", - "nodes": [], "absolutePath": "lib/forge-std/src/Base.sol", "file": "./Base.sol", "nameLocation": "-1:-1:-1", @@ -1344,7 +788,6 @@ "id": 8182, "nodeType": "ImportDirective", "src": "652:40:11", - "nodes": [], "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", "file": "ds-test/test.sol", "nameLocation": "-1:-1:-1", @@ -1370,16 +813,12 @@ "id": 8195, "nodeType": "ContractDefinition", "src": "709:268:11", - "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 8183, "name": "DSTest", - "nameLocations": [ - "735:6:11" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, "src": "735:6:11" @@ -1392,9 +831,6 @@ "baseName": { "id": 8185, "name": "StdAssertions", - "nameLocations": [ - "743:13:11" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 2708, "src": "743:13:11" @@ -1407,9 +843,6 @@ "baseName": { "id": 8187, "name": "StdChains", - "nameLocations": [ - "758:9:11" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 3244, "src": "758:9:11" @@ -1422,9 +855,6 @@ "baseName": { "id": 8189, "name": "StdCheats", - "nameLocations": [ - "769:9:11" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 5181, "src": "769:9:11" @@ -1437,9 +867,6 @@ "baseName": { "id": 8191, "name": "StdUtils", - "nameLocations": [ - "780:8:11" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 8153, "src": "780:8:11" @@ -1452,9 +879,6 @@ "baseName": { "id": 8193, "name": "TestBase", - "nameLocations": [ - "790:8:11" - ], "nodeType": "IdentifierPath", "referencedDeclaration": 1843, "src": "790:8:11" diff --git a/src/TaxToken.sol b/src/TaxToken.sol index 9727f47..7e7c55e 100644 --- a/src/TaxToken.sol +++ b/src/TaxToken.sol @@ -1,7 +1,10 @@ //SPDX-License-Identifier: MIT pragma solidity ^0.8.6; -import { IERC20, ITreasury, IVesting, IUniswapV2Factory, IUniswapV2Router02 } from "./interfaces/InterfacesAggregated.sol"; +import { IERC20 } from "./interfaces/IERC20.sol"; +import { ITreasury, IVesting } from "./interfaces/InterfacesAggregated.sol"; +import { IUniswapV2Factory } from "./interfaces/IUniswapV2Factory.sol"; +import { IUniswapV2Router02 } from "./interfaces/IUniswapV2Router.sol"; import { ERC20 } from "./interfaces/ERC20.sol"; import "./extensions/Ownable.sol"; diff --git a/src/Treasury.sol b/src/Treasury.sol index e4d8bad..7ab67e7 100644 --- a/src/Treasury.sol +++ b/src/Treasury.sol @@ -1,7 +1,8 @@ //SPDX-License-Identifier: MIT pragma solidity ^0.8.6; -import { IERC20, IUniswapV2Router02 } from "./interfaces/InterfacesAggregated.sol"; +import { IERC20 } from "./interfaces/IERC20.sol"; +import { IUniswapV2Router02 } from "./interfaces/IUniswapV2Router.sol"; import "./extensions/Ownable.sol"; diff --git a/src/Vesting.sol b/src/Vesting.sol index 1fa81a9..c9c4e01 100644 --- a/src/Vesting.sol +++ b/src/Vesting.sol @@ -2,7 +2,7 @@ pragma solidity ^0.8.13; import "./extensions/Ownable.sol"; -import {IERC20} from "./interfaces/Interfaces.sol"; +import {IERC20} from "./interfaces/IERC20.sol"; /// @dev Vesting Schedule: 12% day 1 then 8% every month thereafter. @@ -21,6 +21,8 @@ contract Vesting is Ownable { uint256 public vestingStartUnix; /// @notice block timestamp of when vesting has begun bool public vestingEnabled; /// @notice vesting enabled when true. + uint256 public totalTokensToVest; + Investor[] investorLibrary; /// @notice array of investors. /// @param account The wallet address of investor. @@ -122,6 +124,8 @@ contract Vesting is Ownable { investors[_account] = true; investorLibrary.push(Investor(_account, _tokensToVest, 0)); + + totalTokensToVest += _tokensToVest; emit InvestorAdded(_account); } @@ -175,6 +179,12 @@ contract Vesting is Ownable { // View // ---- + /// @notice This function returns the amount of total tokens this contract will vest + /// @return uint256 total amount of tokens to vest. + function getAllVestedTokens() external view returns (uint256) { + return totalTokensToVest; + } + /// @notice This function returns the amount of tokens to claim for a specified investor. /// @param _account address of investor. /// @return uint256 amount of tokens to claim. diff --git a/src/interfaces/ERC20.sol b/src/interfaces/ERC20.sol new file mode 100644 index 0000000..8e8a04a --- /dev/null +++ b/src/interfaces/ERC20.sol @@ -0,0 +1,506 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity ^0.8.6; + +import "../extensions/Context.sol"; +import "./IERC20.sol"; + +library SafeMath { + /** + * @dev Returns the addition of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + uint256 c = a + b; + if (c < a) return (false, 0); + return (true, c); + } + } + + /** + * @dev Returns the subtraction of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + if (b > a) return (false, 0); + return (true, a - b); + } + } + + /** + * @dev Returns the multiplication of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + // Gas optimization: this is cheaper than requiring 'a' not being zero, but the + // benefit is lost if 'b' is also tested. + // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 + if (a == 0) return (true, 0); + uint256 c = a * b; + if (c / a != b) return (false, 0); + return (true, c); + } + } + + /** + * @dev Returns the division of two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + if (b == 0) return (false, 0); + return (true, a / b); + } + } + + /** + * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + if (b == 0) return (false, 0); + return (true, a % b); + } + } + + /** + * @dev Returns the addition of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `+` operator. + * + * Requirements: + * + * - Addition cannot overflow. + */ + function add(uint256 a, uint256 b) internal pure returns (uint256) { + return a + b; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting on + * overflow (when the result is negative). + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b) internal pure returns (uint256) { + return a - b; + } + + /** + * @dev Returns the multiplication of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `*` operator. + * + * Requirements: + * + * - Multiplication cannot overflow. + */ + function mul(uint256 a, uint256 b) internal pure returns (uint256) { + return a * b; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting on + * division by zero. The result is rounded towards zero. + * + * Counterpart to Solidity's `/` operator. + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b) internal pure returns (uint256) { + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting when dividing by zero. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b) internal pure returns (uint256) { + return a % b; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting with custom message on + * overflow (when the result is negative). + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {trySub}. + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + unchecked { + require(b <= a, errorMessage); + return a - b; + } + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting with custom message on + * division by zero. The result is rounded towards zero. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + unchecked { + require(b > 0, errorMessage); + return a / b; + } + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting with custom message when dividing by zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryMod}. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + unchecked { + require(b > 0, errorMessage); + return a % b; + } + } +} + +/** + * @dev Implementation of the {IERC20} interface. + * + * This implementation is agnostic to the way tokens are created. This means + * that a supply mechanism has to be added in a derived contract using {_mint}. + * For a generic mechanism see {ERC20PresetMinterPauser}. + * + * TIP: For a detailed writeup see our guide + * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How + * to implement supply mechanisms]. + * + * We have followed general OpenZeppelin guidelines: functions revert instead + * of returning `false` on failure. This behavior is nonetheless conventional + * and does not conflict with the expectations of ERC20 applications. + * + * Additionally, an {Approval} event is emitted on calls to {transferFrom}. + * This allows applications to reconstruct the allowance for all accounts just + * by listening to said events. Other implementations of the EIP may not emit + * these events, as it isn't required by the specification. + * + * Finally, the non-standard {decreaseAllowance} and {increaseAllowance} + * functions have been added to mitigate the well-known issues around setting + * allowances. See {IERC20-approve}. + */ +contract ERC20 is Context, IERC20 { + using SafeMath for uint256; + + mapping (address => uint256) private _balances; + + mapping (address => mapping (address => uint256)) private _allowances; + + uint256 private _totalSupply; + + string private _name; + string private _symbol; + uint8 private _decimals; + + /** + * @dev Sets the values for {name} and {symbol}, initializes {decimals} with + * a default value of 18. + * + * To select a different value for {decimals}, use {_setupDecimals}. + * + * All three of these values are immutable: they can only be set once during + * construction. + */ + constructor (string memory name_, string memory symbol_) { + _name = name_; + _symbol = symbol_; + _decimals = 18; + } + + /** + * @dev Returns the name of the token. + */ + function name() public view virtual returns (string memory) { + return _name; + } + + /** + * @dev Returns the symbol of the token, usually a shorter version of the + * name. + */ + function symbol() public view virtual returns (string memory) { + return _symbol; + } + + /** + * @dev Returns the number of decimals used to get its user representation. + * For example, if `decimals` equals `2`, a balance of `505` tokens should + * be displayed to a user as `5,05` (`505 / 10 ** 2`). + * + * Tokens usually opt for a value of 18, imitating the relationship between + * Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is + * called. + * + * NOTE: This information is only used for _display_ purposes: it in + * no way affects any of the arithmetic of the contract, including + * {IERC20-balanceOf} and {IERC20-transfer}. + */ + function decimals() public view virtual returns (uint8) { + return _decimals; + } + + /** + * @dev See {IERC20-totalSupply}. + */ + function totalSupply() public view virtual override returns (uint256) { + return _totalSupply; + } + + /** + * @dev See {IERC20-balanceOf}. + */ + function balanceOf(address account) public view virtual override returns (uint256) { + return _balances[account]; + } + + /** + * @dev See {IERC20-transfer}. + * + * Requirements: + * + * - `recipient` cannot be the zero address. + * - the caller must have a balance of at least `amount`. + */ + function transfer(address recipient, uint256 amount) public virtual override returns (bool) { + _transfer(_msgSender(), recipient, amount); + return true; + } + + /** + * @dev See {IERC20-allowance}. + */ + function allowance(address owner, address spender) public view virtual override returns (uint256) { + return _allowances[owner][spender]; + } + + /** + * @dev See {IERC20-approve}. + * + * Requirements: + * + * - `spender` cannot be the zero address. + */ + function approve(address spender, uint256 amount) public virtual override returns (bool) { + _approve(_msgSender(), spender, amount); + return true; + } + + /** + * @dev See {IERC20-transferFrom}. + * + * Emits an {Approval} event indicating the updated allowance. This is not + * required by the EIP. See the note at the beginning of {ERC20}. + * + * Requirements: + * + * - `sender` and `recipient` cannot be the zero address. + * - `sender` must have a balance of at least `amount`. + * - the caller must have allowance for ``sender``'s tokens of at least + * `amount`. + */ + function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) { + _transfer(sender, recipient, amount); + _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); + return true; + } + + /** + * @dev Atomically increases the allowance granted to `spender` by the caller. + * + * This is an alternative to {approve} that can be used as a mitigation for + * problems described in {IERC20-approve}. + * + * Emits an {Approval} event indicating the updated allowance. + * + * Requirements: + * + * - `spender` cannot be the zero address. + */ + function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { + _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); + return true; + } + + /** + * @dev Atomically decreases the allowance granted to `spender` by the caller. + * + * This is an alternative to {approve} that can be used as a mitigation for + * problems described in {IERC20-approve}. + * + * Emits an {Approval} event indicating the updated allowance. + * + * Requirements: + * + * - `spender` cannot be the zero address. + * - `spender` must have allowance for the caller of at least + * `subtractedValue`. + */ + function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { + _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); + return true; + } + + /** + * @dev Moves tokens `amount` from `sender` to `recipient`. + * + * This is internal function is equivalent to {transfer}, and can be used to + * e.g. implement automatic token fees, slashing mechanisms, etc. + * + * Emits a {Transfer} event. + * + * Requirements: + * + * - `sender` cannot be the zero address. + * - `recipient` cannot be the zero address. + * - `sender` must have a balance of at least `amount`. + */ + function _transfer(address sender, address recipient, uint256 amount) internal virtual { + require(sender != address(0), "ERC20: transfer from the zero address"); + require(recipient != address(0), "ERC20: transfer to the zero address"); + + + _beforeTokenTransfer(sender, recipient, amount); + + _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance"); + _balances[recipient] = _balances[recipient].add(amount); + emit Transfer(sender, recipient, amount); + } + + /** @dev Creates `amount` tokens and assigns them to `account`, increasing + * the total supply. + * + * Emits a {Transfer} event with `from` set to the zero address. + * + * Requirements: + * + * - `to` cannot be the zero address. + */ + function _mint(address account, uint256 amount) internal virtual { + require(account != address(0), "ERC20: mint to the zero address"); + + _beforeTokenTransfer(address(0), account, amount); + + _totalSupply = _totalSupply.add(amount); + _balances[account] = _balances[account].add(amount); + emit Transfer(address(0), account, amount); + } + + /** + * @dev Destroys `amount` tokens from `account`, reducing the + * total supply. + * + * Emits a {Transfer} event with `to` set to the zero address. + * + * Requirements: + * + * - `account` cannot be the zero address. + * - `account` must have at least `amount` tokens. + */ + function _burn(address account, uint256 amount) internal virtual { + require(account != address(0), "ERC20: burn from the zero address"); + + _beforeTokenTransfer(account, address(0), amount); + + _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance"); + _totalSupply = _totalSupply.sub(amount); + emit Transfer(account, address(0), amount); + } + + /** + * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens. + * + * This internal function is equivalent to `approve`, and can be used to + * e.g. set automatic allowances for certain subsystems, etc. + * + * Emits an {Approval} event. + * + * Requirements: + * + * - `owner` cannot be the zero address. + * - `spender` cannot be the zero address. + */ + function _approve(address owner, address spender, uint256 amount) internal virtual { + require(owner != address(0), "ERC20: approve from the zero address"); + require(spender != address(0), "ERC20: approve to the zero address"); + + _allowances[owner][spender] = amount; + emit Approval(owner, spender, amount); + } + + /** + * @dev Sets {decimals} to a value other than the default one of 18. + * + * WARNING: This function should only be called from the constructor. Most + * applications that interact with token contracts will not expect + * {decimals} to ever change, and may work incorrectly if it does. + */ + function _setupDecimals(uint8 decimals_) internal virtual { + _decimals = decimals_; + } + + /** + * @dev Hook that is called before any transfer of tokens. This includes + * minting and burning. + * + * Calling conditions: + * + * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens + * will be to transferred to `to`. + * - when `from` is zero, `amount` tokens will be minted for `to`. + * - when `to` is zero, `amount` of ``from``'s tokens will be burned. + * - `from` and `to` are never both zero. + * + * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. + */ + function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { } +} \ No newline at end of file diff --git a/src/interfaces/IERC20.sol b/src/interfaces/IERC20.sol new file mode 100644 index 0000000..ca52214 --- /dev/null +++ b/src/interfaces/IERC20.sol @@ -0,0 +1,77 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity ^0.8.6; + +interface IERC20 { + /** + * @dev Returns the amount of tokens in existence. + */ + function totalSupply() external view returns (uint256); + + /** + * @dev Returns the amount of tokens owned by `account`. + */ + function balanceOf(address account) external view returns (uint256); + + /** + * @dev Moves `amount` tokens from the caller's account to `recipient`. + * + * Returns a boolean value indicating whether the operation succeeded. + * + * Emits a {Transfer} event. + */ + function transfer(address recipient, uint256 amount) external returns (bool); + + /** + * @dev Returns the remaining number of tokens that `spender` will be + * allowed to spend on behalf of `owner` through {transferFrom}. This is + * zero by default. + * + * This value changes when {approve} or {transferFrom} are called. + */ + function allowance(address owner, address spender) external view returns (uint256); + + /** + * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. + * + * Returns a boolean value indicating whether the operation succeeded. + * + * IMPORTANT: Beware that changing an allowance with this method brings the risk + * that someone may use both the old and the new allowance by unfortunate + * transaction ordering. One possible solution to mitigate this race + * condition is to first reduce the spender's allowance to 0 and set the + * desired value afterwards: + * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 + * + * Emits an {Approval} event. + */ + function approve(address spender, uint256 amount) external returns (bool); + + /** + * @dev Moves `amount` tokens from `sender` to `recipient` using the + * allowance mechanism. `amount` is then deducted from the caller's + * allowance. + * + * Returns a boolean value indicating whether the operation succeeded. + * + * Emits a {Transfer} event. + */ + function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); + + /** + * @dev Emitted when `value` tokens are moved from one account (`from`) to + * another (`to`). + * + * Note that `value` may be zero. + */ + event Transfer(address indexed from, address indexed to, uint256 value); + + /** + * @dev Emitted when the allowance of a `spender` for an `owner` is set by + * a call to {approve}. `value` is the new allowance. + */ + event Approval(address indexed owner, address indexed spender, uint256 value); +} + +abstract contract IERC20Extended is IERC20 { + function decimals() external view virtual returns (uint8); +} \ No newline at end of file diff --git a/src/interfaces/IUniswapV2Factory.sol b/src/interfaces/IUniswapV2Factory.sol new file mode 100644 index 0000000..9ecf1fa --- /dev/null +++ b/src/interfaces/IUniswapV2Factory.sol @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity ^0.8.6; + +interface IUniswapV2Factory { + event PairCreated(address indexed token0, address indexed token1, address pair, uint); + + function feeTo() external view returns (address); + function feeToSetter() external view returns (address); + + function getPair(address tokenA, address tokenB) external view returns (address pair); + function allPairs(uint) external view returns (address pair); + function allPairsLength() external view returns (uint); + + function createPair(address tokenA, address tokenB) external returns (address pair); + + function setFeeTo(address) external; + function setFeeToSetter(address) external; +} \ No newline at end of file diff --git a/src/interfaces/IUniswapV2Pair.sol b/src/interfaces/IUniswapV2Pair.sol new file mode 100644 index 0000000..92346ec --- /dev/null +++ b/src/interfaces/IUniswapV2Pair.sol @@ -0,0 +1,53 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity ^0.8.6; + +interface IUniswapV2Pair { + event Approval(address indexed owner, address indexed spender, uint value); + event Transfer(address indexed from, address indexed to, uint value); + + function name() external pure returns (string memory); + function symbol() external pure returns (string memory); + function decimals() external pure returns (uint8); + function totalSupply() external view returns (uint); + function balanceOf(address owner) external view returns (uint); + function allowance(address owner, address spender) external view returns (uint); + + function approve(address spender, uint value) external returns (bool); + function transfer(address to, uint value) external returns (bool); + function transferFrom(address from, address to, uint value) external returns (bool); + + function DOMAIN_SEPARATOR() external view returns (bytes32); + function PERMIT_TYPEHASH() external pure returns (bytes32); + function nonces(address owner) external view returns (uint); + + function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; + + event Mint(address indexed sender, uint amount0, uint amount1); + event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); + event Swap( + address indexed sender, + uint amount0In, + uint amount1In, + uint amount0Out, + uint amount1Out, + address indexed to + ); + event Sync(uint112 reserve0, uint112 reserve1); + + function MINIMUM_LIQUIDITY() external pure returns (uint); + function factory() external view returns (address); + function token0() external view returns (address); + function token1() external view returns (address); + function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); + function price0CumulativeLast() external view returns (uint); + function price1CumulativeLast() external view returns (uint); + function kLast() external view returns (uint); + + function mint(address to) external returns (uint liquidity); + function burn(address to) external returns (uint amount0, uint amount1); + function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; + function skim(address to) external; + function sync() external; + + function initialize(address, address) external; +} \ No newline at end of file diff --git a/src/interfaces/IUniswapV2Router.sol b/src/interfaces/IUniswapV2Router.sol new file mode 100644 index 0000000..283bef4 --- /dev/null +++ b/src/interfaces/IUniswapV2Router.sol @@ -0,0 +1,137 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity ^0.8.6; + +interface IUniswapV2Router01 { + function factory() external pure returns (address); + function WETH() external pure returns (address); + + function addLiquidity( + address tokenA, + address tokenB, + uint amountADesired, + uint amountBDesired, + uint amountAMin, + uint amountBMin, + address to, + uint deadline + ) external returns (uint amountA, uint amountB, uint liquidity); + function addLiquidityETH( + address token, + uint amountTokenDesired, + uint amountTokenMin, + uint amountETHMin, + address to, + uint deadline + ) external payable returns (uint amountToken, uint amountETH, uint liquidity); + function removeLiquidity( + address tokenA, + address tokenB, + uint liquidity, + uint amountAMin, + uint amountBMin, + address to, + uint deadline + ) external returns (uint amountA, uint amountB); + function removeLiquidityETH( + address token, + uint liquidity, + uint amountTokenMin, + uint amountETHMin, + address to, + uint deadline + ) external returns (uint amountToken, uint amountETH); + function removeLiquidityWithPermit( + address tokenA, + address tokenB, + uint liquidity, + uint amountAMin, + uint amountBMin, + address to, + uint deadline, + bool approveMax, uint8 v, bytes32 r, bytes32 s + ) external returns (uint amountA, uint amountB); + function removeLiquidityETHWithPermit( + address token, + uint liquidity, + uint amountTokenMin, + uint amountETHMin, + address to, + uint deadline, + bool approveMax, uint8 v, bytes32 r, bytes32 s + ) external returns (uint amountToken, uint amountETH); + function swapExactTokensForTokens( + uint amountIn, + uint amountOutMin, + address[] calldata path, + address to, + uint deadline + ) external returns (uint[] memory amounts); + function swapTokensForExactTokens( + uint amountOut, + uint amountInMax, + address[] calldata path, + address to, + uint deadline + ) external returns (uint[] memory amounts); + function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) + external + payable + returns (uint[] memory amounts); + function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) + external + returns (uint[] memory amounts); + function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) + external + returns (uint[] memory amounts); + function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) + external + payable + returns (uint[] memory amounts); + + function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); + function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); + function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); + function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); + function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); +} + +interface IUniswapV2Router02 is IUniswapV2Router01 { + function removeLiquidityETHSupportingFeeOnTransferTokens( + address token, + uint liquidity, + uint amountTokenMin, + uint amountETHMin, + address to, + uint deadline + ) external returns (uint amountETH); + function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( + address token, + uint liquidity, + uint amountTokenMin, + uint amountETHMin, + address to, + uint deadline, + bool approveMax, uint8 v, bytes32 r, bytes32 s + ) external returns (uint amountETH); + + function swapExactTokensForTokensSupportingFeeOnTransferTokens( + uint amountIn, + uint amountOutMin, + address[] calldata path, + address to, + uint deadline + ) external; + function swapExactETHForTokensSupportingFeeOnTransferTokens( + uint amountOutMin, + address[] calldata path, + address to, + uint deadline + ) external payable; + function swapExactTokensForETHSupportingFeeOnTransferTokens( + uint amountIn, + uint amountOutMin, + address[] calldata path, + address to, + uint deadline + ) external; +} \ No newline at end of file diff --git a/src/interfaces/Interfaces.sol b/src/interfaces/Interfaces.sol deleted file mode 100644 index c9baa2c..0000000 --- a/src/interfaces/Interfaces.sol +++ /dev/null @@ -1,368 +0,0 @@ -// SPDX-License-Identifier: GPL-3.0-or-later -pragma solidity ^0.8.6; - -interface IDAO { - function updateTeamBalance(uint256 amount) external; - function updateMarketingBalance(uint256 amount) external; -} - -interface AggregatorInterface { - function latestAnswer() external view returns (int256); - function latestTimestamp() external view returns (uint256); - function latestRound() external view returns (uint256); - function getAnswer(uint256 roundId) external view returns (int256); - function getTimestamp(uint256 roundId) external view returns (uint256); - - event AnswerUpdated(int256 indexed current, uint256 indexed roundId, uint256 updatedAt); - event NewRound(uint256 indexed roundId, address indexed startedBy, uint256 startedAt); -} - -interface IERC20 { - /** - * @dev Returns the amount of tokens in existence. - */ - function totalSupply() external view returns (uint256); - - /** - * @dev Returns the amount of tokens owned by `account`. - */ - function balanceOf(address account) external view returns (uint256); - - /** - * @dev Moves `amount` tokens from the caller's account to `recipient`. - * - * Returns a boolean value indicating whether the operation succeeded. - * - * Emits a {Transfer} event. - */ - function transfer(address recipient, uint256 amount) external returns (bool); - - /** - * @dev Returns the remaining number of tokens that `spender` will be - * allowed to spend on behalf of `owner` through {transferFrom}. This is - * zero by default. - * - * This value changes when {approve} or {transferFrom} are called. - */ - function allowance(address owner, address spender) external view returns (uint256); - - /** - * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. - * - * Returns a boolean value indicating whether the operation succeeded. - * - * IMPORTANT: Beware that changing an allowance with this method brings the risk - * that someone may use both the old and the new allowance by unfortunate - * transaction ordering. One possible solution to mitigate this race - * condition is to first reduce the spender's allowance to 0 and set the - * desired value afterwards: - * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 - * - * Emits an {Approval} event. - */ - function approve(address spender, uint256 amount) external returns (bool); - - /** - * @dev Moves `amount` tokens from `sender` to `recipient` using the - * allowance mechanism. `amount` is then deducted from the caller's - * allowance. - * - * Returns a boolean value indicating whether the operation succeeded. - * - * Emits a {Transfer} event. - */ - function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); - - /** - * @dev Emitted when `value` tokens are moved from one account (`from`) to - * another (`to`). - * - * Note that `value` may be zero. - */ - event Transfer(address indexed from, address indexed to, uint256 value); - - /** - * @dev Emitted when the allowance of a `spender` for an `owner` is set by - * a call to {approve}. `value` is the new allowance. - */ - event Approval(address indexed owner, address indexed spender, uint256 value); -} - -abstract contract IERC20Extended is IERC20 { - function decimals() external view virtual returns (uint8); -} - -interface IWETH { - function deposit() external payable; - function withdraw(uint) external; - function balanceOf(address account) external view returns (uint256); - function transfer(address to, uint value) external returns (bool); -} - -interface IUniswapV2Factory { - event PairCreated(address indexed token0, address indexed token1, address pair, uint); - - function feeTo() external view returns (address); - function feeToSetter() external view returns (address); - - function getPair(address tokenA, address tokenB) external view returns (address pair); - function allPairs(uint) external view returns (address pair); - function allPairsLength() external view returns (uint); - - function createPair(address tokenA, address tokenB) external returns (address pair); - - function setFeeTo(address) external; - function setFeeToSetter(address) external; -} - -interface IUniswapV2Pair { - event Approval(address indexed owner, address indexed spender, uint value); - event Transfer(address indexed from, address indexed to, uint value); - - function name() external pure returns (string memory); - function symbol() external pure returns (string memory); - function decimals() external pure returns (uint8); - function totalSupply() external view returns (uint); - function balanceOf(address owner) external view returns (uint); - function allowance(address owner, address spender) external view returns (uint); - - function approve(address spender, uint value) external returns (bool); - function transfer(address to, uint value) external returns (bool); - function transferFrom(address from, address to, uint value) external returns (bool); - - function DOMAIN_SEPARATOR() external view returns (bytes32); - function PERMIT_TYPEHASH() external pure returns (bytes32); - function nonces(address owner) external view returns (uint); - - function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; - - event Mint(address indexed sender, uint amount0, uint amount1); - event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); - event Swap( - address indexed sender, - uint amount0In, - uint amount1In, - uint amount0Out, - uint amount1Out, - address indexed to - ); - event Sync(uint112 reserve0, uint112 reserve1); - - function MINIMUM_LIQUIDITY() external pure returns (uint); - function factory() external view returns (address); - function token0() external view returns (address); - function token1() external view returns (address); - function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); - function price0CumulativeLast() external view returns (uint); - function price1CumulativeLast() external view returns (uint); - function kLast() external view returns (uint); - - function mint(address to) external returns (uint liquidity); - function burn(address to) external returns (uint amount0, uint amount1); - function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; - function skim(address to) external; - function sync() external; - - function initialize(address, address) external; -} - -interface IUniswapV2Router01 { - function factory() external pure returns (address); - function WETH() external pure returns (address); - - function addLiquidity( - address tokenA, - address tokenB, - uint amountADesired, - uint amountBDesired, - uint amountAMin, - uint amountBMin, - address to, - uint deadline - ) external returns (uint amountA, uint amountB, uint liquidity); - function addLiquidityETH( - address token, - uint amountTokenDesired, - uint amountTokenMin, - uint amountETHMin, - address to, - uint deadline - ) external payable returns (uint amountToken, uint amountETH, uint liquidity); - function removeLiquidity( - address tokenA, - address tokenB, - uint liquidity, - uint amountAMin, - uint amountBMin, - address to, - uint deadline - ) external returns (uint amountA, uint amountB); - function removeLiquidityETH( - address token, - uint liquidity, - uint amountTokenMin, - uint amountETHMin, - address to, - uint deadline - ) external returns (uint amountToken, uint amountETH); - function removeLiquidityWithPermit( - address tokenA, - address tokenB, - uint liquidity, - uint amountAMin, - uint amountBMin, - address to, - uint deadline, - bool approveMax, uint8 v, bytes32 r, bytes32 s - ) external returns (uint amountA, uint amountB); - function removeLiquidityETHWithPermit( - address token, - uint liquidity, - uint amountTokenMin, - uint amountETHMin, - address to, - uint deadline, - bool approveMax, uint8 v, bytes32 r, bytes32 s - ) external returns (uint amountToken, uint amountETH); - function swapExactTokensForTokens( - uint amountIn, - uint amountOutMin, - address[] calldata path, - address to, - uint deadline - ) external returns (uint[] memory amounts); - function swapTokensForExactTokens( - uint amountOut, - uint amountInMax, - address[] calldata path, - address to, - uint deadline - ) external returns (uint[] memory amounts); - function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) - external - payable - returns (uint[] memory amounts); - function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) - external - returns (uint[] memory amounts); - function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) - external - returns (uint[] memory amounts); - function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) - external - payable - returns (uint[] memory amounts); - - function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); - function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); - function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); - function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); - function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); -} - -interface IUniswapV2Router02 is IUniswapV2Router01 { - function removeLiquidityETHSupportingFeeOnTransferTokens( - address token, - uint liquidity, - uint amountTokenMin, - uint amountETHMin, - address to, - uint deadline - ) external returns (uint amountETH); - function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( - address token, - uint liquidity, - uint amountTokenMin, - uint amountETHMin, - address to, - uint deadline, - bool approveMax, uint8 v, bytes32 r, bytes32 s - ) external returns (uint amountETH); - - function swapExactTokensForTokensSupportingFeeOnTransferTokens( - uint amountIn, - uint amountOutMin, - address[] calldata path, - address to, - uint deadline - ) external; - function swapExactETHForTokensSupportingFeeOnTransferTokens( - uint amountOutMin, - address[] calldata path, - address to, - uint deadline - ) external payable; - function swapExactTokensForETHSupportingFeeOnTransferTokens( - uint amountIn, - uint amountOutMin, - address[] calldata path, - address to, - uint deadline - ) external; -} - -//////////////////////////////// -////////// Dividend //////////// -//////////////////////////////// - -/* -@title Dividend-Paying Token Interface -@author Roger Wu (https://github.com/roger-wu) -@dev An interface for a dividend-paying token contract. -*/ -interface IDividendPayingToken { - /// @notice View the amount of dividend in wei that an address can withdraw. - /// @param _owner The address of a token holder. - /// @return The amount of dividend in wei that `_owner` can withdraw. - function dividendOf(address _owner) external view returns(uint256); - - /// @notice Distributes ether to token holders as dividends. - /// @dev SHOULD distribute the paid ether to token holders as dividends. - /// SHOULD NOT directly transfer ether to token holders in this function. - /// MUST emit a `DividendsDistributed` event when the amount of distributed ether is greater than 0. - function distributeDividends() external payable; - - /// @notice Withdraws the ether distributed to the sender. - /// @dev SHOULD transfer `dividendOf(msg.sender)` wei to `msg.sender`, and `dividendOf(msg.sender)` SHOULD be 0 after the transfer. - /// MUST emit a `DividendWithdrawn` event if the amount of ether transferred is greater than 0. - function withdrawDividend() external; - - /// @dev This event MUST emit when ether is distributed to token holders. - /// @param from The address which sends ether to this contract. - /// @param weiAmount The amount of distributed ether in wei. - event DividendsDistributed( - address indexed from, - uint256 weiAmount - ); - - /// @dev This event MUST emit when an address withdraws their dividend. - /// @param to The address which withdraws ether from this contract. - /// @param weiAmount The amount of withdrawn ether in wei. - event DividendWithdrawn( - address indexed to, - uint256 weiAmount - ); -} - -/* -@title Dividend-Paying Token Optional Interface -@author Roger Wu (https://github.com/roger-wu) -@dev OPTIONAL functions for a dividend-paying token contract. -*/ -interface IDividendPayingTokenOptional { - /// @notice View the amount of dividend in wei that an address can withdraw. - /// @param _owner The address of a token holder. - /// @return The amount of dividend in wei that `_owner` can withdraw. - function withdrawableDividendOf(address _owner) external view returns(uint256); - - /// @notice View the amount of dividend in wei that an address has withdrawn. - /// @param _owner The address of a token holder. - /// @return The amount of dividend in wei that `_owner` has withdrawn. - function withdrawnDividendOf(address _owner) external view returns(uint256); - - /// @notice View the amount of dividend in wei that an address has earned in total. - /// @dev accumulativeDividendOf(_owner) = withdrawableDividendOf(_owner) + withdrawnDividendOf(_owner) - /// @param _owner The address of a token holder. - /// @return The amount of dividend in wei that `_owner` has earned in total. - function accumulativeDividendOf(address _owner) external view returns(uint256); -} \ No newline at end of file diff --git a/src/interfaces/InterfacesAggregated.sol b/src/interfaces/InterfacesAggregated.sol new file mode 100644 index 0000000..16813b9 --- /dev/null +++ b/src/interfaces/InterfacesAggregated.sol @@ -0,0 +1,14 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity ^0.8.6; + +interface IUniswapV2Factory { + function createPair(address tokenA, address tokenB) external returns (address pair); +} + +interface ITreasury { + function updateTaxesAccrued(uint amt) external; +} + +interface IVesting { + function getAllVestedTokens() external view returns (uint256 amount); +} \ No newline at end of file diff --git a/src/libraries/SafeMath.sol b/src/libraries/SafeMath.sol new file mode 100644 index 0000000..7f6c7d8 --- /dev/null +++ b/src/libraries/SafeMath.sol @@ -0,0 +1,215 @@ +// SPDX-License-Identifier: MIT +// OpenZeppelin Contracts (last updated v4.6.0) (utils/math/SafeMath.sol) + +pragma solidity ^0.8.0; + +// CAUTION +// This version of SafeMath should only be used with Solidity 0.8 or later, +// because it relies on the compiler's built in overflow checks. + +/** + * @dev Wrappers over Solidity's arithmetic operations. + * + * NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler + * now has built in overflow checking. + */ +library SafeMath { + /** + * @dev Returns the addition of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + uint256 c = a + b; + if (c < a) return (false, 0); + return (true, c); + } + } + + /** + * @dev Returns the subtraction of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + if (b > a) return (false, 0); + return (true, a - b); + } + } + + /** + * @dev Returns the multiplication of two unsigned integers, with an overflow flag. + * + * _Available since v3.4._ + */ + function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + // Gas optimization: this is cheaper than requiring 'a' not being zero, but the + // benefit is lost if 'b' is also tested. + // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 + if (a == 0) return (true, 0); + uint256 c = a * b; + if (c / a != b) return (false, 0); + return (true, c); + } + } + + /** + * @dev Returns the division of two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + if (b == 0) return (false, 0); + return (true, a / b); + } + } + + /** + * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. + * + * _Available since v3.4._ + */ + function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { + unchecked { + if (b == 0) return (false, 0); + return (true, a % b); + } + } + + /** + * @dev Returns the addition of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `+` operator. + * + * Requirements: + * + * - Addition cannot overflow. + */ + function add(uint256 a, uint256 b) internal pure returns (uint256) { + return a + b; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting on + * overflow (when the result is negative). + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b) internal pure returns (uint256) { + return a - b; + } + + /** + * @dev Returns the multiplication of two unsigned integers, reverting on + * overflow. + * + * Counterpart to Solidity's `*` operator. + * + * Requirements: + * + * - Multiplication cannot overflow. + */ + function mul(uint256 a, uint256 b) internal pure returns (uint256) { + return a * b; + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting on + * division by zero. The result is rounded towards zero. + * + * Counterpart to Solidity's `/` operator. + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b) internal pure returns (uint256) { + return a / b; + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting when dividing by zero. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b) internal pure returns (uint256) { + return a % b; + } + + /** + * @dev Returns the subtraction of two unsigned integers, reverting with custom message on + * overflow (when the result is negative). + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {trySub}. + * + * Counterpart to Solidity's `-` operator. + * + * Requirements: + * + * - Subtraction cannot overflow. + */ + function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + unchecked { + require(b <= a, errorMessage); + return a - b; + } + } + + /** + * @dev Returns the integer division of two unsigned integers, reverting with custom message on + * division by zero. The result is rounded towards zero. + * + * Counterpart to Solidity's `/` operator. Note: this function uses a + * `revert` opcode (which leaves remaining gas untouched) while Solidity + * uses an invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + unchecked { + require(b > 0, errorMessage); + return a / b; + } + } + + /** + * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), + * reverting with custom message when dividing by zero. + * + * CAUTION: This function is deprecated because it requires allocating memory for the error + * message unnecessarily. For custom revert reasons use {tryMod}. + * + * Counterpart to Solidity's `%` operator. This function uses a `revert` + * opcode (which leaves remaining gas untouched) while Solidity uses an + * invalid opcode to revert (consuming all remaining gas). + * + * Requirements: + * + * - The divisor cannot be zero. + */ + function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { + unchecked { + require(b > 0, errorMessage); + return a % b; + } + } +} \ No newline at end of file diff --git a/src/users/Actor.sol b/src/users/Actor.sol index 18c67cf..c44c2e7 100644 --- a/src/users/Actor.sol +++ b/src/users/Actor.sol @@ -2,7 +2,7 @@ pragma solidity ^0.8.6; pragma experimental ABIEncoderV2; -import { IERC20 } from "../interfaces/Interfaces.sol"; +import { IERC20 } from "../interfaces/IERC20.sol"; contract Actor { diff --git a/test/MainDeployment.t.sol b/test/MainDeployment.t.sol new file mode 100644 index 0000000..0e9a838 --- /dev/null +++ b/test/MainDeployment.t.sol @@ -0,0 +1,126 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.13; + +import "../lib/forge-std/src/Test.sol"; +import "./Utility.sol"; + +// Import sol files. +import { TaxToken } from "../src/TaxToken.sol"; +import { Treasury } from "../src/Treasury.sol"; +import { Vesting } from "../src/Vesting.sol"; + +contract MainDeploymentTest is Utility, Test { + Vesting vesting; + TaxToken proveToken; + Treasury treasury; + + function setUp() public { + createActors(); + setUpTokens(); + + /// @dev Don't need to set up token with treasury because vesting contract should be whitelisted. + + // Deploy the TaxToken. + proveToken = new TaxToken( + 1_000_000_000, // Initial liquidity (220M) + 'Prove Zero', // Name of token + 'PROVE', // Symbol of token + 18, // Precision of decimals + 1_000_000_000, // Max wallet (220M) + 1_000_000_000 // Max transaction (220M) + ); + + // IDEALLY add investors here. + + // Finally, deploy Vesting contract. + vesting = new Vesting( + address(proveToken), + address(dev) + ); + + // Set vesting address on token. + proveToken.setVesting(address(vesting)); + } + + // Initial State Test. + function test_mainDeploymentTest_init_state() public { + assertEq(proveToken.totalSupply(), 1_000_000_000 ether); + assertEq(proveToken.balanceOf(address(this)), 1_000_000_000 ether); + assertEq(proveToken.balanceOf(address(vesting)), 0); + assertEq(proveToken.owner(), address(this)); + assertEq(proveToken.vesting(), address(vesting)); + assertEq(proveToken.whitelist(proveToken.vesting()), true); + assertEq(proveToken.whitelist(address(proveToken)), true); + assertEq(proveToken.whitelist(proveToken.owner()), true); + + assertEq(vesting.proveToken(), address(proveToken)); + assertEq(vesting.vestingStartUnix(), 0); + assertEq(vesting.vestingEnabled(), false); + assertEq(vesting.owner(), address(dev)); + } + + /// @dev Verifies claim() state changes + function test_mainDeploymentTest_claim() public { + uint _amount = 1_000_000 ether; + + // Transfer PROVE tokens to vesting contract + proveToken.transfer(address(vesting), _amount); + + // Jon is trying to claim + vm.startPrank(address(jon)); + + // Add jon as investor + assert(dev.try_addInvestor(address(vesting), address(jon), _amount)); + + // Enable vesting + assert(dev.try_enableVesting(address(vesting))); + + // Pre-State check + assertEq(proveToken.balanceOf(address(jon)), 0); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + assertEq(proveToken.balanceOf(address(jon)), _amount * 12 / 100); + + // Skip 4 weeks + skip(4 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + assertEq(proveToken.balanceOf(address(jon)), _amount * 20 / 100); + + // Skip 4 weeks + skip(4 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + assertEq(proveToken.balanceOf(address(jon)), _amount * 28 / 100); + + // Skip 12 weeks + skip(12 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + assertEq(proveToken.balanceOf(address(jon)), _amount * 52 / 100); + + // Skip 24 weeks + skip(24 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + assertEq(proveToken.balanceOf(address(jon)), _amount); + + vm.stopPrank(); + } + +} diff --git a/test/Utility.sol b/test/Utility.sol index f2395db..e74f932 100644 --- a/test/Utility.sol +++ b/test/Utility.sol @@ -35,6 +35,7 @@ contract Utility is DSTest { address constant DAI = 0x6B175474E89094C44Da98b954EedeAC495271d0F; address constant WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; address constant WBTC = 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599; + address constant FRAX = 0x853d955aCEf822Db058eb8505911ED77F175b99e; IERC20 constant usdc = IERC20(USDC); IERC20 constant dai = IERC20(DAI); diff --git a/test/Vesting.t.sol b/test/Vesting.t.sol index c424ffd..256ef9e 100644 --- a/test/Vesting.t.sol +++ b/test/Vesting.t.sol @@ -5,8 +5,6 @@ import "../lib/forge-std/src/Test.sol"; import "./Utility.sol"; // Import sol files. -import { TaxToken } from "../src/TaxToken.sol"; -import { Treasury } from "../src/Treasury.sol"; import { Vesting } from "../src/Vesting.sol"; contract VestingTest is Utility, Test { @@ -16,36 +14,16 @@ contract VestingTest is Utility, Test { createActors(); setUpTokens(); - // (1) Deploy the TaxToken. - proveToken = new TaxToken( - 1_000_000_000, // Initial liquidity (220M) - 'Prove Zero', // Name of token - 'PROVE', // Symbol of token - 18, // Precision of decimals - 220_000_000, // Max wallet (220M) - 220_000_000 // Max transaction (220M) - ); - - // (2) Deploy the Treasury. - treasury = new Treasury( - address(this), - address(proveToken), - USDC - ); - - // (3) Update the TaxToken "treasury" state variable. - proveToken.setTreasury(address(treasury)); - - // Finally, deploy Vesting contract + // deploy Vesting contract vesting = new Vesting( - address(proveToken), + FRAX, address(dev) ); } // Initial State Test. function test_vesting_init_state() public { - assertEq(vesting.proveToken(), address(proveToken)); + assertEq(vesting.proveToken(), FRAX); assertEq(vesting.vestingStartUnix(), 0); assertEq(vesting.vestingEnabled(), false); } @@ -159,6 +137,7 @@ contract VestingTest is Utility, Test { assertEq(vesting.investors(address(joe)), false); Vesting.Investor[] memory tempArr = vesting.getInvestorLibrary(); assertEq(tempArr.length, 0); + assertEq(vesting.getAllVestedTokens(), 0); // Call addInvestor(). assert(dev.try_addInvestor(address(vesting), address(joe), 10 ether)); @@ -170,6 +149,8 @@ contract VestingTest is Utility, Test { assertEq(tempArr[0].account, address(joe)); assertEq(tempArr[0].tokensToVest, 10 ether); assertEq(tempArr[0].tokensClaimed, 0); + + assertEq(vesting.getAllVestedTokens(), 10 ether); } // ~ removeInvestor() tests ~ @@ -320,7 +301,7 @@ contract VestingTest is Utility, Test { /// @dev Verifies claim() restrictions function test_vesting_claim_restrictions() public { // *First fill up the contract with PROVE tokens - deal(proveToken, address(vesting), 5_000_000 ether); + deal(vesting.proveToken(), address(vesting), 5_000_000 ether); // Jon is trying to claim vm.startPrank(address(jon)); @@ -359,7 +340,7 @@ contract VestingTest is Utility, Test { uint _amount = 1_000_000 ether; // *First fill up the contract with PROVE tokens - deal(vesting.proveToken, address(vesting), _amount); + deal(vesting.proveToken(), address(vesting), _amount); //Jon is trying to claim vm.startPrank(address(jon)); @@ -421,7 +402,7 @@ contract VestingTest is Utility, Test { /// @dev Verifies claim() edge cases function test_vesting_claim_edge_cases() public { // *First fill up the contract with PROVE tokens - deal(vesting.proveToken, address(vesting), 5_000_000 ether); + deal(vesting.proveToken(), address(vesting), 5_000_000 ether); //Enable vesting assert(dev.try_enableVesting(address(vesting))); @@ -474,7 +455,7 @@ contract VestingTest is Utility, Test { _amount = bound(_amount, 100_000 ether, 100_000_000 ether); // *First fill up the contract with PROVE tokens - deal(vesting.proveToken, address(vesting), _amount); + deal(vesting.proveToken(), address(vesting), _amount); //Jon is trying to claim vm.startPrank(address(jon)); @@ -538,7 +519,7 @@ contract VestingTest is Utility, Test { _amount = bound(_amount, 100_000 ether, 100_000_000 ether); // *First fill up the contract with PROVE tokens - deal(vesting.proveToken, address(vesting), _amount * 3); + deal(vesting.proveToken(), address(vesting), _amount * 3); //Enable vesting assert(dev.try_enableVesting(address(vesting))); From 4e4bc572a0ed88641b724ee7e93f1d78ae2419e7 Mon Sep 17 00:00:00 2001 From: giozaarour Date: Fri, 24 Feb 2023 02:23:35 -0800 Subject: [PATCH 3/3] added claim tests to MainDeploument test file --- cache/solidity-files-cache.json | 348 +- out/Actor.sol/Actor.json | 742 +- out/Base.sol/CommonBase.json | 102 + out/Base.sol/ScriptBase.json | 102 + out/Base.sol/TestBase.json | 102 + out/Context.sol/Context.json | 128 +- out/Contract.s.sol/ContractScript.json | 223 +- out/ERC20.sol/ERC20.json | 2849 +-- out/ERC20.sol/SafeMath.json | 2521 +-- out/IERC20.sol/IERC20.json | 510 +- out/IERC20.sol/IERC20Extended.json | 523 +- .../IUniswapV2Factory.json | 402 +- out/IUniswapV2Pair.sol/IUniswapV2Pair.json | 1419 +- .../IUniswapV2Router01.json | 1972 ++- .../IUniswapV2Router02.json | 2171 ++- out/InterfacesAggregated.sol/ITreasury.json | 147 +- .../IUniswapV2Factory.json | 159 +- out/InterfacesAggregated.sol/IVesting.json | 148 +- .../MainDeploymentTest.json | 13682 +++++++++++++-- out/Ownable.sol/Ownable.json | 576 +- out/SafeMath.sol/SafeMath.json | 968 +- out/Script.sol/Script.json | 167 + out/StdAssertions.sol/StdAssertions.json | 632 + out/StdChains.sol/StdChains.json | 201 + out/StdCheats.sol/StdCheats.json | 635 + out/StdCheats.sol/StdCheatsSafe.json | 635 + out/StdError.sol/stdError.json | 200 +- out/StdJson.sol/stdJson.json | 224 +- out/StdMath.sol/stdMath.json | 73 +- out/StdStorage.sol/stdStorage.json | 500 +- out/StdStorage.sol/stdStorageSafe.json | 551 +- out/StdUtils.sol/StdUtils.json | 176 + out/TaxToken.sol/TaxToken.json | 2062 ++- out/Treasury.sol/Treasury.json | 845 +- out/Utility.sol/Hevm.json | 2098 ++- out/Utility.sol/User.json | 2081 ++- out/Utility.sol/Utility.json | 2690 ++- out/Vesting.sol/Vesting.json | 3795 ++-- out/Vesting.t.sol/VestingTest.json | 14428 +++++++++------- out/Vm.sol/Vm.json | 3065 ++++ out/Vm.sol/VmSafe.json | 2273 +++ out/console.sol/console.json | 1953 ++- out/console2.sol/console2.json | 1963 ++- out/test.sol/DSTest.json | 686 +- out/test.sol/Test.json | 576 + test/MainDeployment.t.sol | 210 + 46 files changed, 55530 insertions(+), 16983 deletions(-) diff --git a/cache/solidity-files-cache.json b/cache/solidity-files-cache.json index 3c1ee05..9ee3729 100644 --- a/cache/solidity-files-cache.json +++ b/cache/solidity-files-cache.json @@ -12,7 +12,7 @@ }, "files": { "lib/forge-std/lib/ds-test/src/test.sol": { - "lastModificationDate": 1672766956382, + "lastModificationDate": 1673910529029, "contentHash": "962996f0e05d5218857a538a62d7c47e", "sourceName": "lib/forge-std/lib/ds-test/src/test.sol", "solcConfig": { @@ -22,7 +22,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -33,7 +34,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -45,12 +47,12 @@ "versionRequirement": ">=0.5.0", "artifacts": { "DSTest": { - "0.8.15+commit.e14f2714.Linux.gcc": "test.sol/DSTest.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "test.sol/DSTest.json" } } }, "lib/forge-std/src/Base.sol": { - "lastModificationDate": 1672766954867, + "lastModificationDate": 1673910519703, "contentHash": "1870c8c1d5470db8c3e956c839db8364", "sourceName": "lib/forge-std/src/Base.sol", "solcConfig": { @@ -60,7 +62,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -71,7 +74,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -86,18 +90,18 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "CommonBase": { - "0.8.15+commit.e14f2714.Linux.gcc": "Base.sol/CommonBase.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Base.sol/CommonBase.json" }, "ScriptBase": { - "0.8.15+commit.e14f2714.Linux.gcc": "Base.sol/ScriptBase.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Base.sol/ScriptBase.json" }, "TestBase": { - "0.8.15+commit.e14f2714.Linux.gcc": "Base.sol/TestBase.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Base.sol/TestBase.json" } } }, "lib/forge-std/src/Script.sol": { - "lastModificationDate": 1672766954877, + "lastModificationDate": 1673910519723, "contentHash": "83c39354c1e43190bce4dc43860dc786", "sourceName": "lib/forge-std/src/Script.sol", "solcConfig": { @@ -107,7 +111,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -118,7 +123,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -141,12 +147,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "Script": { - "0.8.15+commit.e14f2714.Linux.gcc": "Script.sol/Script.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Script.sol/Script.json" } } }, "lib/forge-std/src/StdAssertions.sol": { - "lastModificationDate": 1672766954881, + "lastModificationDate": 1673910519732, "contentHash": "93fa608efd4df1e671b043437fddd457", "sourceName": "lib/forge-std/src/StdAssertions.sol", "solcConfig": { @@ -156,7 +162,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -167,7 +174,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -182,12 +190,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdAssertions": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdAssertions.sol/StdAssertions.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdAssertions.sol/StdAssertions.json" } } }, "lib/forge-std/src/StdChains.sol": { - "lastModificationDate": 1672766954887, + "lastModificationDate": 1673910519743, "contentHash": "80138bc1765b08a6db58237c26985fd9", "sourceName": "lib/forge-std/src/StdChains.sol", "solcConfig": { @@ -197,7 +205,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -208,7 +217,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -222,12 +232,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdChains": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdChains.sol/StdChains.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdChains.sol/StdChains.json" } } }, "lib/forge-std/src/StdCheats.sol": { - "lastModificationDate": 1672766954893, + "lastModificationDate": 1673910519752, "contentHash": "979104d2f33c34c269636f70cfc84a02", "sourceName": "lib/forge-std/src/StdCheats.sol", "solcConfig": { @@ -237,7 +247,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -248,7 +259,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -263,15 +275,15 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdCheats": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdCheats.sol/StdCheats.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdCheats.sol/StdCheats.json" }, "StdCheatsSafe": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdCheats.sol/StdCheatsSafe.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdCheats.sol/StdCheatsSafe.json" } } }, "lib/forge-std/src/StdError.sol": { - "lastModificationDate": 1672766954899, + "lastModificationDate": 1673910519761, "contentHash": "64c896e1276a291776e5ea5aecb3870a", "sourceName": "lib/forge-std/src/StdError.sol", "solcConfig": { @@ -281,7 +293,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -292,7 +305,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -304,12 +318,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "stdError": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdError.sol/stdError.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdError.sol/stdError.json" } } }, "lib/forge-std/src/StdJson.sol": { - "lastModificationDate": 1672766954900, + "lastModificationDate": 1673910519770, "contentHash": "016de2d7ee55960094cc97ec792025bb", "sourceName": "lib/forge-std/src/StdJson.sol", "solcConfig": { @@ -319,7 +333,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -330,7 +345,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -344,12 +360,12 @@ "versionRequirement": ">=0.6.0, <0.9.0", "artifacts": { "stdJson": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdJson.sol/stdJson.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdJson.sol/stdJson.json" } } }, "lib/forge-std/src/StdMath.sol": { - "lastModificationDate": 1672766954907, + "lastModificationDate": 1673910519779, "contentHash": "9da8f453eba6bb98f3d75bc6822bfb29", "sourceName": "lib/forge-std/src/StdMath.sol", "solcConfig": { @@ -359,7 +375,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -370,7 +387,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -382,12 +400,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "stdMath": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdMath.sol/stdMath.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdMath.sol/stdMath.json" } } }, "lib/forge-std/src/StdStorage.sol": { - "lastModificationDate": 1672766954908, + "lastModificationDate": 1673910519788, "contentHash": "1b6b8a6cbaaaf5a72860a56f0cde4e33", "sourceName": "lib/forge-std/src/StdStorage.sol", "solcConfig": { @@ -397,7 +415,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -408,7 +427,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -422,15 +442,15 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "stdStorage": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdStorage.sol/stdStorage.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdStorage.sol/stdStorage.json" }, "stdStorageSafe": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdStorage.sol/stdStorageSafe.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdStorage.sol/stdStorageSafe.json" } } }, "lib/forge-std/src/StdUtils.sol": { - "lastModificationDate": 1672766954914, + "lastModificationDate": 1673910519798, "contentHash": "ec75addbeee075c61fa5aff2faee0465", "sourceName": "lib/forge-std/src/StdUtils.sol", "solcConfig": { @@ -440,7 +460,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -451,7 +472,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -465,12 +487,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "StdUtils": { - "0.8.15+commit.e14f2714.Linux.gcc": "StdUtils.sol/StdUtils.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "StdUtils.sol/StdUtils.json" } } }, "lib/forge-std/src/Test.sol": { - "lastModificationDate": 1672766954920, + "lastModificationDate": 1673910519808, "contentHash": "9ca73393dbc2f8cde2aa628f8d05c5d5", "sourceName": "lib/forge-std/src/Test.sol", "solcConfig": { @@ -480,7 +502,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -491,7 +514,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -517,12 +541,12 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "Test": { - "0.8.15+commit.e14f2714.Linux.gcc": "Test.sol/Test.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Test.sol/Test.json" } } }, "lib/forge-std/src/Vm.sol": { - "lastModificationDate": 1672766954924, + "lastModificationDate": 1673910519817, "contentHash": "9e6cb90f4c6f4f00605959af21cbc67b", "sourceName": "lib/forge-std/src/Vm.sol", "solcConfig": { @@ -532,7 +556,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -543,7 +568,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -555,15 +581,15 @@ "versionRequirement": ">=0.6.2, <0.9.0", "artifacts": { "Vm": { - "0.8.15+commit.e14f2714.Linux.gcc": "Vm.sol/Vm.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Vm.sol/Vm.json" }, "VmSafe": { - "0.8.15+commit.e14f2714.Linux.gcc": "Vm.sol/VmSafe.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Vm.sol/VmSafe.json" } } }, "lib/forge-std/src/console.sol": { - "lastModificationDate": 1672766954931, + "lastModificationDate": 1673910519826, "contentHash": "100b8a33b917da1147740d7ab8b0ded3", "sourceName": "lib/forge-std/src/console.sol", "solcConfig": { @@ -573,7 +599,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -584,7 +611,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -596,12 +624,12 @@ "versionRequirement": ">=0.4.22, <0.9.0", "artifacts": { "console": { - "0.8.15+commit.e14f2714.Linux.gcc": "console.sol/console.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "console.sol/console.json" } } }, "lib/forge-std/src/console2.sol": { - "lastModificationDate": 1672766954940, + "lastModificationDate": 1673910519836, "contentHash": "2096b4e5f252c5df9909cccbe3d2da2e", "sourceName": "lib/forge-std/src/console2.sol", "solcConfig": { @@ -611,7 +639,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -622,7 +651,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -634,13 +664,13 @@ "versionRequirement": ">=0.4.22, <0.9.0", "artifacts": { "console2": { - "0.8.15+commit.e14f2714.Linux.gcc": "console2.sol/console2.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "console2.sol/console2.json" } } }, "script/Contract.s.sol": { - "lastModificationDate": 1672766952697, - "contentHash": "3642d05d9c479368231825c40aaa276a", + "lastModificationDate": 1673910167545, + "contentHash": "f4eb8c62468835e958df7ab2af105bb9", "sourceName": "script/Contract.s.sol", "solcConfig": { "settings": { @@ -649,7 +679,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -660,7 +691,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -684,12 +716,12 @@ "versionRequirement": "^0.8.13", "artifacts": { "ContractScript": { - "0.8.15+commit.e14f2714.Linux.gcc": "Contract.s.sol/ContractScript.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Contract.s.sol/ContractScript.json" } } }, "src/TaxToken.sol": { - "lastModificationDate": 1677191445474, + "lastModificationDate": 1677232597652, "contentHash": "d61a72f0a379ddf2bde556aab1faffef", "sourceName": "src/TaxToken.sol", "solcConfig": { @@ -699,7 +731,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -710,7 +743,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -730,12 +764,12 @@ "versionRequirement": "^0.8.6", "artifacts": { "TaxToken": { - "0.8.15+commit.e14f2714.Linux.gcc": "TaxToken.sol/TaxToken.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "TaxToken.sol/TaxToken.json" } } }, "src/Treasury.sol": { - "lastModificationDate": 1677191472944, + "lastModificationDate": 1677232597653, "contentHash": "f32dfc694e686022fc67762d0176a6db", "sourceName": "src/Treasury.sol", "solcConfig": { @@ -745,7 +779,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -756,7 +791,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -773,12 +809,12 @@ "versionRequirement": "^0.8.6", "artifacts": { "Treasury": { - "0.8.15+commit.e14f2714.Linux.gcc": "Treasury.sol/Treasury.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Treasury.sol/Treasury.json" } } }, "src/Vesting.sol": { - "lastModificationDate": 1677192703826, + "lastModificationDate": 1677232597654, "contentHash": "be5a0dde7e87c1d413822ccf2ea857d1", "sourceName": "src/Vesting.sol", "solcConfig": { @@ -788,7 +824,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -799,7 +836,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -815,12 +853,12 @@ "versionRequirement": "^0.8.13", "artifacts": { "Vesting": { - "0.8.15+commit.e14f2714.Linux.gcc": "Vesting.sol/Vesting.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Vesting.sol/Vesting.json" } } }, "src/extensions/Context.sol": { - "lastModificationDate": 1666048727268, + "lastModificationDate": 1673910167551, "contentHash": "58ff29a788235f168f45e8f9cd54a0f3", "sourceName": "src/extensions/Context.sol", "solcConfig": { @@ -830,7 +868,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -841,7 +880,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -853,12 +893,12 @@ "versionRequirement": "^0.8.6", "artifacts": { "Context": { - "0.8.15+commit.e14f2714.Linux.gcc": "Context.sol/Context.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Context.sol/Context.json" } } }, "src/extensions/Ownable.sol": { - "lastModificationDate": 1666048748879, + "lastModificationDate": 1673910167554, "contentHash": "4dba375b7d8f9a298d15d22922b9cc85", "sourceName": "src/extensions/Ownable.sol", "solcConfig": { @@ -868,7 +908,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -879,7 +920,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -893,12 +935,12 @@ "versionRequirement": "^0.8.4", "artifacts": { "Ownable": { - "0.8.15+commit.e14f2714.Linux.gcc": "Ownable.sol/Ownable.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Ownable.sol/Ownable.json" } } }, "src/interfaces/ERC20.sol": { - "lastModificationDate": 1677191384008, + "lastModificationDate": 1677232597657, "contentHash": "93546a19bfd21d265d795fda9435974e", "sourceName": "src/interfaces/ERC20.sol", "solcConfig": { @@ -908,7 +950,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -919,7 +962,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -934,15 +978,15 @@ "versionRequirement": "^0.8.6", "artifacts": { "ERC20": { - "0.8.15+commit.e14f2714.Linux.gcc": "ERC20.sol/ERC20.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "ERC20.sol/ERC20.json" }, "SafeMath": { - "0.8.15+commit.e14f2714.Linux.gcc": "ERC20.sol/SafeMath.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "ERC20.sol/SafeMath.json" } } }, "src/interfaces/IERC20.sol": { - "lastModificationDate": 1677191294674, + "lastModificationDate": 1677232597657, "contentHash": "0d5f268625dfab773a031f4fae7f8752", "sourceName": "src/interfaces/IERC20.sol", "solcConfig": { @@ -952,7 +996,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -963,7 +1008,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -975,15 +1021,15 @@ "versionRequirement": "^0.8.6", "artifacts": { "IERC20": { - "0.8.15+commit.e14f2714.Linux.gcc": "IERC20.sol/IERC20.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "IERC20.sol/IERC20.json" }, "IERC20Extended": { - "0.8.15+commit.e14f2714.Linux.gcc": "IERC20.sol/IERC20Extended.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "IERC20.sol/IERC20Extended.json" } } }, "src/interfaces/IUniswapV2Factory.sol": { - "lastModificationDate": 1677191294675, + "lastModificationDate": 1677232597659, "contentHash": "3b94ae5d4a6707147a96923b345197d1", "sourceName": "src/interfaces/IUniswapV2Factory.sol", "solcConfig": { @@ -993,7 +1039,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1004,7 +1051,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1016,12 +1064,12 @@ "versionRequirement": "^0.8.6", "artifacts": { "IUniswapV2Factory": { - "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Factory.sol/IUniswapV2Factory.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "IUniswapV2Factory.sol/IUniswapV2Factory.json" } } }, "src/interfaces/IUniswapV2Pair.sol": { - "lastModificationDate": 1677191294674, + "lastModificationDate": 1677232597659, "contentHash": "8631347a590a7b494a262fafd1276f8c", "sourceName": "src/interfaces/IUniswapV2Pair.sol", "solcConfig": { @@ -1031,7 +1079,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1042,7 +1091,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1054,12 +1104,12 @@ "versionRequirement": "^0.8.6", "artifacts": { "IUniswapV2Pair": { - "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Pair.sol/IUniswapV2Pair.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "IUniswapV2Pair.sol/IUniswapV2Pair.json" } } }, "src/interfaces/IUniswapV2Router.sol": { - "lastModificationDate": 1677191294674, + "lastModificationDate": 1677232597661, "contentHash": "e1176fa15ddf5d62d79d6cbf1025e7d1", "sourceName": "src/interfaces/IUniswapV2Router.sol", "solcConfig": { @@ -1069,7 +1119,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1080,7 +1131,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1092,15 +1144,15 @@ "versionRequirement": "^0.8.6", "artifacts": { "IUniswapV2Router01": { - "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Router.sol/IUniswapV2Router01.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "IUniswapV2Router.sol/IUniswapV2Router01.json" }, "IUniswapV2Router02": { - "0.8.15+commit.e14f2714.Linux.gcc": "IUniswapV2Router.sol/IUniswapV2Router02.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "IUniswapV2Router.sol/IUniswapV2Router02.json" } } }, "src/interfaces/InterfacesAggregated.sol": { - "lastModificationDate": 1677191294672, + "lastModificationDate": 1677232597662, "contentHash": "61e39d3fe3f0e71682551f36c043c17d", "sourceName": "src/interfaces/InterfacesAggregated.sol", "solcConfig": { @@ -1110,7 +1162,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1121,7 +1174,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1133,18 +1187,18 @@ "versionRequirement": "^0.8.6", "artifacts": { "ITreasury": { - "0.8.15+commit.e14f2714.Linux.gcc": "InterfacesAggregated.sol/ITreasury.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "InterfacesAggregated.sol/ITreasury.json" }, "IUniswapV2Factory": { - "0.8.15+commit.e14f2714.Linux.gcc": "InterfacesAggregated.sol/IUniswapV2Factory.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "InterfacesAggregated.sol/IUniswapV2Factory.json" }, "IVesting": { - "0.8.15+commit.e14f2714.Linux.gcc": "InterfacesAggregated.sol/IVesting.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "InterfacesAggregated.sol/IVesting.json" } } }, "src/libraries/SafeMath.sol": { - "lastModificationDate": 1677191294677, + "lastModificationDate": 1677232597662, "contentHash": "e6a68bd2e7aefab1a422d6629913316b", "sourceName": "src/libraries/SafeMath.sol", "solcConfig": { @@ -1154,7 +1208,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1165,7 +1220,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1177,12 +1233,12 @@ "versionRequirement": "^0.8.0", "artifacts": { "SafeMath": { - "0.8.15+commit.e14f2714.Linux.gcc": "SafeMath.sol/SafeMath.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "SafeMath.sol/SafeMath.json" } } }, "src/users/Actor.sol": { - "lastModificationDate": 1677191338396, + "lastModificationDate": 1677232597662, "contentHash": "c65d3387dc77540b00756d51672cc313", "sourceName": "src/users/Actor.sol", "solcConfig": { @@ -1192,7 +1248,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1203,7 +1260,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1217,13 +1275,13 @@ "versionRequirement": "^0.8.6", "artifacts": { "Actor": { - "0.8.15+commit.e14f2714.Linux.gcc": "Actor.sol/Actor.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Actor.sol/Actor.json" } } }, "test/MainDeployment.t.sol": { - "lastModificationDate": 1677193158679, - "contentHash": "25357744f92dba89d8efd75ab0e379b9", + "lastModificationDate": 1677234136938, + "contentHash": "f9d79c5fb23c842c97173fc9e8c7ee7d", "sourceName": "test/MainDeployment.t.sol", "solcConfig": { "settings": { @@ -1232,7 +1290,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1243,7 +1302,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1282,12 +1342,12 @@ "versionRequirement": "^0.8.13", "artifacts": { "MainDeploymentTest": { - "0.8.15+commit.e14f2714.Linux.gcc": "MainDeployment.t.sol/MainDeploymentTest.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "MainDeployment.t.sol/MainDeploymentTest.json" } } }, "test/Utility.sol": { - "lastModificationDate": 1677191930205, + "lastModificationDate": 1677232597667, "contentHash": "76ab54711b0825e617d0ce7de5639cd8", "sourceName": "test/Utility.sol", "solcConfig": { @@ -1297,7 +1357,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1308,7 +1369,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1337,18 +1399,18 @@ "versionRequirement": "^0.8.6", "artifacts": { "Hevm": { - "0.8.15+commit.e14f2714.Linux.gcc": "Utility.sol/Hevm.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Utility.sol/Hevm.json" }, "User": { - "0.8.15+commit.e14f2714.Linux.gcc": "Utility.sol/User.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Utility.sol/User.json" }, "Utility": { - "0.8.15+commit.e14f2714.Linux.gcc": "Utility.sol/Utility.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Utility.sol/Utility.json" } } }, "test/Vesting.t.sol": { - "lastModificationDate": 1677192779270, + "lastModificationDate": 1677232597667, "contentHash": "03b084edd55931c61794c7e5f2b31e8e", "sourceName": "test/Vesting.t.sol", "solcConfig": { @@ -1358,7 +1420,8 @@ "runs": 200 }, "metadata": { - "bytecodeHash": "ipfs" + "bytecodeHash": "ipfs", + "appendCBOR": true }, "outputSelection": { "*": { @@ -1369,7 +1432,8 @@ "abi", "evm.bytecode", "evm.deployedBytecode", - "evm.methodIdentifiers" + "evm.methodIdentifiers", + "metadata" ] } }, @@ -1402,7 +1466,7 @@ "versionRequirement": "^0.8.13", "artifacts": { "VestingTest": { - "0.8.15+commit.e14f2714.Linux.gcc": "Vesting.t.sol/VestingTest.json" + "0.8.17+commit.8df45f5f.Linux.gcc": "Vesting.t.sol/VestingTest.json" } } } diff --git a/out/Actor.sol/Actor.json b/out/Actor.sol/Actor.json index 0945b22..0c053dc 100644 --- a/out/Actor.sol/Actor.json +++ b/out/Actor.sol/Actor.json @@ -141,13 +141,13 @@ } ], "bytecode": { - "object": "0x608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033", + "object": "0x608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c63430008110033", "sourceMap": "163:1862:28:-:0;;;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033", - "sourceMap": "163:1862:28:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;731:230;;;;;;:::i;:::-;;:::i;:::-;;;622:14:32;;615:22;597:41;;585:2;570:18;731:230:28;;;;;;;1061:274;;;;;;:::i;:::-;;:::i;1587:240::-;;;;;;:::i;:::-;;:::i;1835:185::-;;;;;;:::i;:::-;;:::i;1343:236::-;;;;;;:::i;:::-;;:::i;522:201::-;;;;;;:::i;:::-;;:::i;731:230::-;830:44;;;;;;;;;;;-1:-1:-1;;;830:44:28;;;;917:35;;-1:-1:-1;;;;;1337:32:32;;;917:35:28;;;1319:51:32;810:7:28;;830:44;893:23;;;;830:44;;1292:18:32;;917:35:28;;;;-1:-1:-1;;917:35:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;917:35:28;-1:-1:-1;;;;;;917:35:28;;;;;;;;;893:60;;;917:35;893:60;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;885:68:28;;731:230;-1:-1:-1;;;;;731:230:28:o;1061:274::-;1182:50;;;;;;;;;;;;;;;;1275:51;;-1:-1:-1;;;;;2396:32:32;;;1275:51:28;;;2378::32;2445:18;;;2438:34;;;1162:7:28;;1182:50;1251:23;;;;1182:50;;2351:18:32;;1275:51:28;;;-1:-1:-1;;1275:51:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1275:51:28;-1:-1:-1;;;;;;1275:51:28;;;;;;;;;1251:76;;;1275:51;1251:76;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1243:84:28;;1061:274;-1:-1:-1;;;;;;1061:274:28:o;1587:240::-;1691:47;;;;;;;;;;;;;;;;1781:37;;-1:-1:-1;;;;;1337:32:32;;;1781:37:28;;;1319:51:32;1671:7:28;;1691:47;1757:23;;;;1691:47;;1292:18:32;;1781:37:28;1173:203:32;1835:185:28;1911:29;;;;;;;;;;;-1:-1:-1;;;1911:29:28;;;;1983:28;;;;;;;;;;;;1891:7;;-1:-1:-1;;;;;1959:23:28;;;1983:28;;;1911:29;;1983:28;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1983:28:28;-1:-1:-1;;;;;;1983:28:28;;;;;;;;;1959:53;;;1983:28;1959:53;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1951:61:28;;1835:185;-1:-1:-1;;;;1835:185:28:o;1343:236::-;1445:45;;;;;;;;;;;;;;;;1533:37;;-1:-1:-1;;;;;1337:32:32;;;1533:37:28;;;1319:51:32;1425:7:28;;1445:45;1509:23;;;;1445:45;;1292:18:32;;1533:37:28;1173:203:32;522:201:28;606:37;;;;;;;;;;;-1:-1:-1;;;606:37:28;;;;686:28;;;;;;;;;;;;586:7;;-1:-1:-1;;;;;662:23:28;;;686:28;;;606:37;;686:28;:::i;14:173:32:-;82:20;;-1:-1:-1;;;;;131:31:32;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:260::-;260:6;268;321:2;309:9;300:7;296:23;292:32;289:52;;;337:1;334;327:12;289:52;360:29;379:9;360:29;:::i;:::-;350:39;;408:38;442:2;431:9;427:18;408:38;:::i;:::-;398:48;;192:260;;;;;:::o;649:328::-;726:6;734;742;795:2;783:9;774:7;770:23;766:32;763:52;;;811:1;808;801:12;763:52;834:29;853:9;834:29;:::i;:::-;824:39;;882:38;916:2;905:9;901:18;882:38;:::i;:::-;872:48;;967:2;956:9;952:18;939:32;929:42;;649:328;;;;;:::o;982:186::-;1041:6;1094:2;1082:9;1073:7;1069:23;1065:32;1062:52;;;1110:1;1107;1100:12;1062:52;1133:29;1152:9;1133:29;:::i;:::-;1123:39;982:186;-1:-1:-1;;;982:186:32:o;1381:258::-;1453:1;1463:113;1477:6;1474:1;1471:13;1463:113;;;1553:11;;;1547:18;1534:11;;;1527:39;1499:2;1492:10;1463:113;;;1594:6;1591:1;1588:13;1585:48;;;1629:1;1620:6;1615:3;1611:16;1604:27;1585:48;;1381:258;;;:::o;1644:276::-;1775:3;1813:6;1807:13;1829:53;1875:6;1870:3;1863:4;1855:6;1851:17;1829:53;:::i;:::-;1898:16;;;;;1644:276;-1:-1:-1;;1644:276:32:o", + "object": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c63430008110033", + "sourceMap": "163:1862:28:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;731:230;;;;;;:::i;:::-;;:::i;:::-;;;622:14:32;;615:22;597:41;;585:2;570:18;731:230:28;;;;;;;1061:274;;;;;;:::i;:::-;;:::i;1587:240::-;;;;;;:::i;:::-;;:::i;1835:185::-;;;;;;:::i;:::-;;:::i;1343:236::-;;;;;;:::i;:::-;;:::i;522:201::-;;;;;;:::i;:::-;;:::i;731:230::-;830:44;;;;;;;;;;;-1:-1:-1;;;830:44:28;;;;917:35;;-1:-1:-1;;;;;1337:32:32;;;917:35:28;;;1319:51:32;810:7:28;;830:44;893:23;;;;830:44;;1292:18:32;;917:35:28;;;;-1:-1:-1;;917:35:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;917:35:28;-1:-1:-1;;;;;;917:35:28;;;;;;;;;893:60;;;917:35;893:60;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;885:68:28;;731:230;-1:-1:-1;;;;;731:230:28:o;1061:274::-;1182:50;;;;;;;;;;;;;;;;1275:51;;-1:-1:-1;;;;;2414:32:32;;;1275:51:28;;;2396::32;2463:18;;;2456:34;;;1162:7:28;;1182:50;1251:23;;;;1182:50;;2369:18:32;;1275:51:28;;;-1:-1:-1;;1275:51:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1275:51:28;-1:-1:-1;;;;;;1275:51:28;;;;;;;;;1251:76;;;1275:51;1251:76;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1243:84:28;;1061:274;-1:-1:-1;;;;;;1061:274:28:o;1587:240::-;1691:47;;;;;;;;;;;;;;;;1781:37;;-1:-1:-1;;;;;1337:32:32;;;1781:37:28;;;1319:51:32;1671:7:28;;1691:47;1757:23;;;;1691:47;;1292:18:32;;1781:37:28;1173:203:32;1835:185:28;1911:29;;;;;;;;;;;-1:-1:-1;;;1911:29:28;;;;1983:28;;;;;;;;;;;;1891:7;;-1:-1:-1;;;;;1959:23:28;;;1983:28;;;1911:29;;1983:28;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1983:28:28;-1:-1:-1;;;;;;1983:28:28;;;;;;;;;1959:53;;;1983:28;1959:53;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1951:61:28;;1835:185;-1:-1:-1;;;;1835:185:28:o;1343:236::-;1445:45;;;;;;;;;;;;;;;;1533:37;;-1:-1:-1;;;;;1337:32:32;;;1533:37:28;;;1319:51:32;1425:7:28;;1445:45;1509:23;;;;1445:45;;1292:18:32;;1533:37:28;1173:203:32;522:201:28;606:37;;;;;;;;;;;-1:-1:-1;;;606:37:28;;;;686:28;;;;;;;;;;;;586:7;;-1:-1:-1;;;;;662:23:28;;;686:28;;;606:37;;686:28;:::i;14:173:32:-;82:20;;-1:-1:-1;;;;;131:31:32;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:260::-;260:6;268;321:2;309:9;300:7;296:23;292:32;289:52;;;337:1;334;327:12;289:52;360:29;379:9;360:29;:::i;:::-;350:39;;408:38;442:2;431:9;427:18;408:38;:::i;:::-;398:48;;192:260;;;;;:::o;649:328::-;726:6;734;742;795:2;783:9;774:7;770:23;766:32;763:52;;;811:1;808;801:12;763:52;834:29;853:9;834:29;:::i;:::-;824:39;;882:38;916:2;905:9;901:18;882:38;:::i;:::-;872:48;;967:2;956:9;952:18;939:32;929:42;;649:328;;;;;:::o;982:186::-;1041:6;1094:2;1082:9;1073:7;1069:23;1065:32;1062:52;;;1110:1;1107;1100:12;1062:52;1133:29;1152:9;1133:29;:::i;:::-;1123:39;982:186;-1:-1:-1;;;982:186:32:o;1381:250::-;1466:1;1476:113;1490:6;1487:1;1484:13;1476:113;;;1566:11;;;1560:18;1547:11;;;1540:39;1512:2;1505:10;1476:113;;;-1:-1:-1;;1623:1:32;1605:16;;1598:27;1381:250::o;1636:289::-;1767:3;1805:6;1799:13;1821:66;1880:6;1875:3;1868:4;1860:6;1856:17;1821:66;:::i;:::-;1903:16;;;;;1636:289;-1:-1:-1;;1636:289:32:o", "linkReferences": {} }, "methodIdentifiers": { @@ -158,24 +158,228 @@ "try_removeInvestor(address,address)": "d0b940f4", "try_withdrawErc20(address,address)": "05e31e36" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokensToVest\",\"type\":\"uint256\"}],\"name\":\"try_addInvestor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"name\":\"try_claim\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"name\":\"try_enableVesting\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"try_getAmountToClaim\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"try_removeInvestor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"try_withdrawErc20\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"ok\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"try_addInvestor(address,address,uint256)\":{\"notice\":\"Ensure, when creating the sig -> leave no spaces between param data types.\"},\"try_enableVesting(address)\":{\"notice\":\"PROVE VESTING ///\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/users/Actor.sol\":\"Actor\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843\",\"dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensToVest", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "try_addInvestor", + "outputs": [ + { + "internalType": "bool", + "name": "ok", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "try_claim", + "outputs": [ + { + "internalType": "bool", + "name": "ok", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "try_enableVesting", + "outputs": [ + { + "internalType": "bool", + "name": "ok", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "try_getAmountToClaim", + "outputs": [ + { + "internalType": "bool", + "name": "ok", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "try_removeInvestor", + "outputs": [ + { + "internalType": "bool", + "name": "ok", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "try_withdrawErc20", + "outputs": [ + { + "internalType": "bool", + "name": "ok", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": { + "try_addInvestor(address,address,uint256)": { + "notice": "Ensure, when creating the sig -> leave no spaces between param data types." + }, + "try_enableVesting(address)": { + "notice": "PROVE VESTING ///" + } + }, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/users/Actor.sol": "Actor" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/users/Actor.sol": { + "keccak256": "0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3", + "urls": [ + "bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843", + "dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5" + ], + "license": "AGPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/users/Actor.sol", - "id": 30365, + "id": 30380, "exportedSymbols": { "Actor": [ - 30364 + 30379 ], "IERC20": [ - 29143 + 29158 ] }, "nodeType": "SourceUnit", "src": "47:1978:28", "nodes": [ { - "id": 30187, + "id": 30202, "nodeType": "PragmaDirective", "src": "47:23:28", + "nodes": [], "literals": [ "solidity", "^", @@ -184,31 +388,33 @@ ] }, { - "id": 30188, + "id": 30203, "nodeType": "PragmaDirective", "src": "72:33:28", + "nodes": [], "literals": [ "experimental", "ABIEncoderV2" ] }, { - "id": 30190, + "id": 30205, "nodeType": "ImportDirective", "src": "109:50:28", + "nodes": [], "absolutePath": "src/interfaces/IERC20.sol", "file": "../interfaces/IERC20.sol", "nameLocation": "-1:-1:-1", - "scope": 30365, - "sourceUnit": 29152, + "scope": 30380, + "sourceUnit": 29167, "symbolAliases": [ { "foreign": { - "id": 30189, + "id": 30204, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "118:6:28", "typeDescriptions": {} }, @@ -218,32 +424,34 @@ "unitAlias": "" }, { - "id": 30364, + "id": 30379, "nodeType": "ContractDefinition", "src": "163:1862:28", "nodes": [ { - "id": 30217, + "id": 30232, "nodeType": "FunctionDefinition", "src": "522:201:28", + "nodes": [], "body": { - "id": 30216, + "id": 30231, "nodeType": "Block", "src": "595:128:28", + "nodes": [], "statements": [ { "assignments": [ - 30199 + 30214 ], "declarations": [ { "constant": false, - "id": 30199, + "id": 30214, "mutability": "mutable", "name": "sig", "nameLocation": "620:3:28", "nodeType": "VariableDeclaration", - "scope": 30216, + "scope": 30231, "src": "606:17:28", "stateVariable": false, "storageLocation": "memory", @@ -252,7 +460,7 @@ "typeString": "string" }, "typeName": { - "id": 30198, + "id": 30213, "name": "string", "nodeType": "ElementaryTypeName", "src": "606:6:28", @@ -264,10 +472,10 @@ "visibility": "internal" } ], - "id": 30201, + "id": 30216, "initialValue": { "hexValue": "656e61626c6556657374696e672829", - "id": 30200, + "id": 30215, "isConstant": false, "isLValue": false, "isPure": true, @@ -286,7 +494,7 @@ }, { "expression": { - "id": 30214, + "id": 30229, "isConstant": false, "isLValue": false, "isPure": false, @@ -294,11 +502,11 @@ "leftHandSide": { "components": [ { - "id": 30202, + "id": 30217, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30196, + "referencedDeclaration": 30211, "src": "655:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -307,7 +515,7 @@ }, null ], - "id": 30203, + "id": 30218, "isConstant": false, "isInlineArray": false, "isLValue": true, @@ -327,11 +535,11 @@ { "arguments": [ { - "id": 30211, + "id": 30226, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30199, + "referencedDeclaration": 30214, "src": "710:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -347,7 +555,7 @@ } ], "expression": { - "id": 30209, + "id": 30224, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -358,11 +566,12 @@ "typeString": "abi" } }, - "id": 30210, + "id": 30225, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "690:19:28", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "686:23:28", @@ -371,12 +580,13 @@ "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 30212, + "id": 30227, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "686:28:28", @@ -397,11 +607,11 @@ "expression": { "arguments": [ { - "id": 30206, + "id": 30221, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30193, + "referencedDeclaration": 30208, "src": "670:9:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -416,7 +626,7 @@ "typeString": "address" } ], - "id": 30205, + "id": 30220, "isConstant": false, "isLValue": false, "isPure": true, @@ -428,19 +638,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30204, + "id": 30219, "name": "address", "nodeType": "ElementaryTypeName", "src": "662:7:28", "typeDescriptions": {} } }, - "id": 30207, + "id": 30222, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:18:28", @@ -450,11 +661,12 @@ "typeString": "address" } }, - "id": 30208, + "id": 30223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "681:4:28", "memberName": "call", "nodeType": "MemberAccess", "src": "662:23:28", @@ -463,12 +675,13 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 30213, + "id": 30228, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:53:28", @@ -484,14 +697,14 @@ "typeString": "tuple()" } }, - "id": 30215, + "id": 30230, "nodeType": "ExpressionStatement", "src": "654:61:28" } ] }, "documentation": { - "id": 30191, + "id": 30206, "nodeType": "StructuredDocumentation", "src": "358:74:28", "text": "PROVE VESTING ///" @@ -503,17 +716,17 @@ "name": "try_enableVesting", "nameLocation": "531:17:28", "parameters": { - "id": 30194, + "id": 30209, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30193, + "id": 30208, "mutability": "mutable", "name": "_contract", "nameLocation": "557:9:28", "nodeType": "VariableDeclaration", - "scope": 30217, + "scope": 30232, "src": "549:17:28", "stateVariable": false, "storageLocation": "default", @@ -522,7 +735,7 @@ "typeString": "address" }, "typeName": { - "id": 30192, + "id": 30207, "name": "address", "nodeType": "ElementaryTypeName", "src": "549:7:28", @@ -538,17 +751,17 @@ "src": "548:19:28" }, "returnParameters": { - "id": 30197, + "id": 30212, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30196, + "id": 30211, "mutability": "mutable", "name": "ok", "nameLocation": "591:2:28", "nodeType": "VariableDeclaration", - "scope": 30217, + "scope": 30232, "src": "586:7:28", "stateVariable": false, "storageLocation": "default", @@ -557,7 +770,7 @@ "typeString": "bool" }, "typeName": { - "id": 30195, + "id": 30210, "name": "bool", "nodeType": "ElementaryTypeName", "src": "586:4:28", @@ -571,33 +784,35 @@ ], "src": "585:9:28" }, - "scope": 30364, + "scope": 30379, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30246, + "id": 30261, "nodeType": "FunctionDefinition", "src": "731:230:28", + "nodes": [], "body": { - "id": 30245, + "id": 30260, "nodeType": "Block", "src": "819:142:28", + "nodes": [], "statements": [ { "assignments": [ - 30227 + 30242 ], "declarations": [ { "constant": false, - "id": 30227, + "id": 30242, "mutability": "mutable", "name": "sig", "nameLocation": "844:3:28", "nodeType": "VariableDeclaration", - "scope": 30245, + "scope": 30260, "src": "830:17:28", "stateVariable": false, "storageLocation": "memory", @@ -606,7 +821,7 @@ "typeString": "string" }, "typeName": { - "id": 30226, + "id": 30241, "name": "string", "nodeType": "ElementaryTypeName", "src": "830:6:28", @@ -618,10 +833,10 @@ "visibility": "internal" } ], - "id": 30229, + "id": 30244, "initialValue": { "hexValue": "77697468647261774572633230286164647265737329", - "id": 30228, + "id": 30243, "isConstant": false, "isLValue": false, "isPure": true, @@ -640,7 +855,7 @@ }, { "expression": { - "id": 30243, + "id": 30258, "isConstant": false, "isLValue": false, "isPure": false, @@ -648,11 +863,11 @@ "leftHandSide": { "components": [ { - "id": 30230, + "id": 30245, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30224, + "referencedDeclaration": 30239, "src": "886:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -661,7 +876,7 @@ }, null ], - "id": 30231, + "id": 30246, "isConstant": false, "isInlineArray": false, "isLValue": true, @@ -681,11 +896,11 @@ { "arguments": [ { - "id": 30239, + "id": 30254, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30227, + "referencedDeclaration": 30242, "src": "941:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -693,11 +908,11 @@ } }, { - "id": 30240, + "id": 30255, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30221, + "referencedDeclaration": 30236, "src": "946:5:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -717,7 +932,7 @@ } ], "expression": { - "id": 30237, + "id": 30252, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -728,11 +943,12 @@ "typeString": "abi" } }, - "id": 30238, + "id": 30253, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "921:19:28", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "917:23:28", @@ -741,12 +957,13 @@ "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 30241, + "id": 30256, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "917:35:28", @@ -767,11 +984,11 @@ "expression": { "arguments": [ { - "id": 30234, + "id": 30249, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30219, + "referencedDeclaration": 30234, "src": "901:9:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -786,7 +1003,7 @@ "typeString": "address" } ], - "id": 30233, + "id": 30248, "isConstant": false, "isLValue": false, "isPure": true, @@ -798,19 +1015,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30232, + "id": 30247, "name": "address", "nodeType": "ElementaryTypeName", "src": "893:7:28", "typeDescriptions": {} } }, - "id": 30235, + "id": 30250, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "893:18:28", @@ -820,11 +1038,12 @@ "typeString": "address" } }, - "id": 30236, + "id": 30251, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "912:4:28", "memberName": "call", "nodeType": "MemberAccess", "src": "893:23:28", @@ -833,12 +1052,13 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 30242, + "id": 30257, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "893:60:28", @@ -854,7 +1074,7 @@ "typeString": "tuple()" } }, - "id": 30244, + "id": 30259, "nodeType": "ExpressionStatement", "src": "885:68:28" } @@ -867,17 +1087,17 @@ "name": "try_withdrawErc20", "nameLocation": "740:17:28", "parameters": { - "id": 30222, + "id": 30237, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30219, + "id": 30234, "mutability": "mutable", "name": "_contract", "nameLocation": "766:9:28", "nodeType": "VariableDeclaration", - "scope": 30246, + "scope": 30261, "src": "758:17:28", "stateVariable": false, "storageLocation": "default", @@ -886,7 +1106,7 @@ "typeString": "address" }, "typeName": { - "id": 30218, + "id": 30233, "name": "address", "nodeType": "ElementaryTypeName", "src": "758:7:28", @@ -900,12 +1120,12 @@ }, { "constant": false, - "id": 30221, + "id": 30236, "mutability": "mutable", "name": "token", "nameLocation": "785:5:28", "nodeType": "VariableDeclaration", - "scope": 30246, + "scope": 30261, "src": "777:13:28", "stateVariable": false, "storageLocation": "default", @@ -914,7 +1134,7 @@ "typeString": "address" }, "typeName": { - "id": 30220, + "id": 30235, "name": "address", "nodeType": "ElementaryTypeName", "src": "777:7:28", @@ -930,17 +1150,17 @@ "src": "757:34:28" }, "returnParameters": { - "id": 30225, + "id": 30240, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30224, + "id": 30239, "mutability": "mutable", "name": "ok", "nameLocation": "815:2:28", "nodeType": "VariableDeclaration", - "scope": 30246, + "scope": 30261, "src": "810:7:28", "stateVariable": false, "storageLocation": "default", @@ -949,7 +1169,7 @@ "typeString": "bool" }, "typeName": { - "id": 30223, + "id": 30238, "name": "bool", "nodeType": "ElementaryTypeName", "src": "810:4:28", @@ -963,33 +1183,35 @@ ], "src": "809:9:28" }, - "scope": 30364, + "scope": 30379, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30279, + "id": 30294, "nodeType": "FunctionDefinition", "src": "1061:274:28", + "nodes": [], "body": { - "id": 30278, + "id": 30293, "nodeType": "Block", "src": "1171:164:28", + "nodes": [], "statements": [ { "assignments": [ - 30259 + 30274 ], "declarations": [ { "constant": false, - "id": 30259, + "id": 30274, "mutability": "mutable", "name": "sig", "nameLocation": "1196:3:28", "nodeType": "VariableDeclaration", - "scope": 30278, + "scope": 30293, "src": "1182:17:28", "stateVariable": false, "storageLocation": "memory", @@ -998,7 +1220,7 @@ "typeString": "string" }, "typeName": { - "id": 30258, + "id": 30273, "name": "string", "nodeType": "ElementaryTypeName", "src": "1182:6:28", @@ -1010,10 +1232,10 @@ "visibility": "internal" } ], - "id": 30261, + "id": 30276, "initialValue": { "hexValue": "616464496e766573746f7228616464726573732c75696e7432353629", - "id": 30260, + "id": 30275, "isConstant": false, "isLValue": false, "isPure": true, @@ -1032,7 +1254,7 @@ }, { "expression": { - "id": 30276, + "id": 30291, "isConstant": false, "isLValue": false, "isPure": false, @@ -1040,11 +1262,11 @@ "leftHandSide": { "components": [ { - "id": 30262, + "id": 30277, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30256, + "referencedDeclaration": 30271, "src": "1244:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1053,7 +1275,7 @@ }, null ], - "id": 30263, + "id": 30278, "isConstant": false, "isInlineArray": false, "isLValue": true, @@ -1073,11 +1295,11 @@ { "arguments": [ { - "id": 30271, + "id": 30286, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30259, + "referencedDeclaration": 30274, "src": "1299:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1085,11 +1307,11 @@ } }, { - "id": 30272, + "id": 30287, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30251, + "referencedDeclaration": 30266, "src": "1304:7:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1097,11 +1319,11 @@ } }, { - "id": 30273, + "id": 30288, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30253, + "referencedDeclaration": 30268, "src": "1313:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1125,7 +1347,7 @@ } ], "expression": { - "id": 30269, + "id": 30284, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1136,11 +1358,12 @@ "typeString": "abi" } }, - "id": 30270, + "id": 30285, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1279:19:28", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1275:23:28", @@ -1149,12 +1372,13 @@ "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 30274, + "id": 30289, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1275:51:28", @@ -1175,11 +1399,11 @@ "expression": { "arguments": [ { - "id": 30266, + "id": 30281, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30249, + "referencedDeclaration": 30264, "src": "1259:9:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1194,7 +1418,7 @@ "typeString": "address" } ], - "id": 30265, + "id": 30280, "isConstant": false, "isLValue": false, "isPure": true, @@ -1206,19 +1430,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30264, + "id": 30279, "name": "address", "nodeType": "ElementaryTypeName", "src": "1251:7:28", "typeDescriptions": {} } }, - "id": 30267, + "id": 30282, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1251:18:28", @@ -1228,11 +1453,12 @@ "typeString": "address" } }, - "id": 30268, + "id": 30283, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1270:4:28", "memberName": "call", "nodeType": "MemberAccess", "src": "1251:23:28", @@ -1241,12 +1467,13 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 30275, + "id": 30290, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1251:76:28", @@ -1262,14 +1489,14 @@ "typeString": "tuple()" } }, - "id": 30277, + "id": 30292, "nodeType": "ExpressionStatement", "src": "1243:84:28" } ] }, "documentation": { - "id": 30247, + "id": 30262, "nodeType": "StructuredDocumentation", "src": "969:86:28", "text": "@notice Ensure, when creating the sig -> leave no spaces between param data types." @@ -1281,17 +1508,17 @@ "name": "try_addInvestor", "nameLocation": "1070:15:28", "parameters": { - "id": 30254, + "id": 30269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30249, + "id": 30264, "mutability": "mutable", "name": "_contract", "nameLocation": "1094:9:28", "nodeType": "VariableDeclaration", - "scope": 30279, + "scope": 30294, "src": "1086:17:28", "stateVariable": false, "storageLocation": "default", @@ -1300,7 +1527,7 @@ "typeString": "address" }, "typeName": { - "id": 30248, + "id": 30263, "name": "address", "nodeType": "ElementaryTypeName", "src": "1086:7:28", @@ -1314,12 +1541,12 @@ }, { "constant": false, - "id": 30251, + "id": 30266, "mutability": "mutable", "name": "account", "nameLocation": "1113:7:28", "nodeType": "VariableDeclaration", - "scope": 30279, + "scope": 30294, "src": "1105:15:28", "stateVariable": false, "storageLocation": "default", @@ -1328,7 +1555,7 @@ "typeString": "address" }, "typeName": { - "id": 30250, + "id": 30265, "name": "address", "nodeType": "ElementaryTypeName", "src": "1105:7:28", @@ -1342,12 +1569,12 @@ }, { "constant": false, - "id": 30253, + "id": 30268, "mutability": "mutable", "name": "tokensToVest", "nameLocation": "1130:12:28", "nodeType": "VariableDeclaration", - "scope": 30279, + "scope": 30294, "src": "1122:20:28", "stateVariable": false, "storageLocation": "default", @@ -1356,7 +1583,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30252, + "id": 30267, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1122:7:28", @@ -1371,17 +1598,17 @@ "src": "1085:58:28" }, "returnParameters": { - "id": 30257, + "id": 30272, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30256, + "id": 30271, "mutability": "mutable", "name": "ok", "nameLocation": "1167:2:28", "nodeType": "VariableDeclaration", - "scope": 30279, + "scope": 30294, "src": "1162:7:28", "stateVariable": false, "storageLocation": "default", @@ -1390,7 +1617,7 @@ "typeString": "bool" }, "typeName": { - "id": 30255, + "id": 30270, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1162:4:28", @@ -1404,33 +1631,35 @@ ], "src": "1161:9:28" }, - "scope": 30364, + "scope": 30379, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30308, + "id": 30323, "nodeType": "FunctionDefinition", "src": "1343:236:28", + "nodes": [], "body": { - "id": 30307, + "id": 30322, "nodeType": "Block", "src": "1434:145:28", + "nodes": [], "statements": [ { "assignments": [ - 30289 + 30304 ], "declarations": [ { "constant": false, - "id": 30289, + "id": 30304, "mutability": "mutable", "name": "sig", "nameLocation": "1459:3:28", "nodeType": "VariableDeclaration", - "scope": 30307, + "scope": 30322, "src": "1445:17:28", "stateVariable": false, "storageLocation": "memory", @@ -1439,7 +1668,7 @@ "typeString": "string" }, "typeName": { - "id": 30288, + "id": 30303, "name": "string", "nodeType": "ElementaryTypeName", "src": "1445:6:28", @@ -1451,10 +1680,10 @@ "visibility": "internal" } ], - "id": 30291, + "id": 30306, "initialValue": { "hexValue": "72656d6f7665496e766573746f72286164647265737329", - "id": 30290, + "id": 30305, "isConstant": false, "isLValue": false, "isPure": true, @@ -1473,7 +1702,7 @@ }, { "expression": { - "id": 30305, + "id": 30320, "isConstant": false, "isLValue": false, "isPure": false, @@ -1481,11 +1710,11 @@ "leftHandSide": { "components": [ { - "id": 30292, + "id": 30307, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30286, + "referencedDeclaration": 30301, "src": "1502:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1494,7 +1723,7 @@ }, null ], - "id": 30293, + "id": 30308, "isConstant": false, "isInlineArray": false, "isLValue": true, @@ -1514,11 +1743,11 @@ { "arguments": [ { - "id": 30301, + "id": 30316, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30289, + "referencedDeclaration": 30304, "src": "1557:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1526,11 +1755,11 @@ } }, { - "id": 30302, + "id": 30317, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30283, + "referencedDeclaration": 30298, "src": "1562:7:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1550,7 +1779,7 @@ } ], "expression": { - "id": 30299, + "id": 30314, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1561,11 +1790,12 @@ "typeString": "abi" } }, - "id": 30300, + "id": 30315, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1537:19:28", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1533:23:28", @@ -1574,12 +1804,13 @@ "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 30303, + "id": 30318, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1533:37:28", @@ -1600,11 +1831,11 @@ "expression": { "arguments": [ { - "id": 30296, + "id": 30311, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30281, + "referencedDeclaration": 30296, "src": "1517:9:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1619,7 +1850,7 @@ "typeString": "address" } ], - "id": 30295, + "id": 30310, "isConstant": false, "isLValue": false, "isPure": true, @@ -1631,19 +1862,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30294, + "id": 30309, "name": "address", "nodeType": "ElementaryTypeName", "src": "1509:7:28", "typeDescriptions": {} } }, - "id": 30297, + "id": 30312, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1509:18:28", @@ -1653,11 +1885,12 @@ "typeString": "address" } }, - "id": 30298, + "id": 30313, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1528:4:28", "memberName": "call", "nodeType": "MemberAccess", "src": "1509:23:28", @@ -1666,12 +1899,13 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 30304, + "id": 30319, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1509:62:28", @@ -1687,7 +1921,7 @@ "typeString": "tuple()" } }, - "id": 30306, + "id": 30321, "nodeType": "ExpressionStatement", "src": "1501:70:28" } @@ -1700,17 +1934,17 @@ "name": "try_removeInvestor", "nameLocation": "1352:18:28", "parameters": { - "id": 30284, + "id": 30299, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30281, + "id": 30296, "mutability": "mutable", "name": "_contract", "nameLocation": "1379:9:28", "nodeType": "VariableDeclaration", - "scope": 30308, + "scope": 30323, "src": "1371:17:28", "stateVariable": false, "storageLocation": "default", @@ -1719,7 +1953,7 @@ "typeString": "address" }, "typeName": { - "id": 30280, + "id": 30295, "name": "address", "nodeType": "ElementaryTypeName", "src": "1371:7:28", @@ -1733,12 +1967,12 @@ }, { "constant": false, - "id": 30283, + "id": 30298, "mutability": "mutable", "name": "account", "nameLocation": "1398:7:28", "nodeType": "VariableDeclaration", - "scope": 30308, + "scope": 30323, "src": "1390:15:28", "stateVariable": false, "storageLocation": "default", @@ -1747,7 +1981,7 @@ "typeString": "address" }, "typeName": { - "id": 30282, + "id": 30297, "name": "address", "nodeType": "ElementaryTypeName", "src": "1390:7:28", @@ -1763,17 +1997,17 @@ "src": "1370:36:28" }, "returnParameters": { - "id": 30287, + "id": 30302, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30286, + "id": 30301, "mutability": "mutable", "name": "ok", "nameLocation": "1430:2:28", "nodeType": "VariableDeclaration", - "scope": 30308, + "scope": 30323, "src": "1425:7:28", "stateVariable": false, "storageLocation": "default", @@ -1782,7 +2016,7 @@ "typeString": "bool" }, "typeName": { - "id": 30285, + "id": 30300, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1425:4:28", @@ -1796,33 +2030,35 @@ ], "src": "1424:9:28" }, - "scope": 30364, + "scope": 30379, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30337, + "id": 30352, "nodeType": "FunctionDefinition", "src": "1587:240:28", + "nodes": [], "body": { - "id": 30336, + "id": 30351, "nodeType": "Block", "src": "1680:147:28", + "nodes": [], "statements": [ { "assignments": [ - 30318 + 30333 ], "declarations": [ { "constant": false, - "id": 30318, + "id": 30333, "mutability": "mutable", "name": "sig", "nameLocation": "1705:3:28", "nodeType": "VariableDeclaration", - "scope": 30336, + "scope": 30351, "src": "1691:17:28", "stateVariable": false, "storageLocation": "memory", @@ -1831,7 +2067,7 @@ "typeString": "string" }, "typeName": { - "id": 30317, + "id": 30332, "name": "string", "nodeType": "ElementaryTypeName", "src": "1691:6:28", @@ -1843,10 +2079,10 @@ "visibility": "internal" } ], - "id": 30320, + "id": 30335, "initialValue": { "hexValue": "676574416d6f756e74546f436c61696d286164647265737329", - "id": 30319, + "id": 30334, "isConstant": false, "isLValue": false, "isPure": true, @@ -1865,7 +2101,7 @@ }, { "expression": { - "id": 30334, + "id": 30349, "isConstant": false, "isLValue": false, "isPure": false, @@ -1873,11 +2109,11 @@ "leftHandSide": { "components": [ { - "id": 30321, + "id": 30336, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30315, + "referencedDeclaration": 30330, "src": "1750:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1886,7 +2122,7 @@ }, null ], - "id": 30322, + "id": 30337, "isConstant": false, "isInlineArray": false, "isLValue": true, @@ -1906,11 +2142,11 @@ { "arguments": [ { - "id": 30330, + "id": 30345, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30318, + "referencedDeclaration": 30333, "src": "1805:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1918,11 +2154,11 @@ } }, { - "id": 30331, + "id": 30346, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30312, + "referencedDeclaration": 30327, "src": "1810:7:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1942,7 +2178,7 @@ } ], "expression": { - "id": 30328, + "id": 30343, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1953,11 +2189,12 @@ "typeString": "abi" } }, - "id": 30329, + "id": 30344, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1785:19:28", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1781:23:28", @@ -1966,12 +2203,13 @@ "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 30332, + "id": 30347, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1781:37:28", @@ -1992,11 +2230,11 @@ "expression": { "arguments": [ { - "id": 30325, + "id": 30340, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30310, + "referencedDeclaration": 30325, "src": "1765:9:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2011,7 +2249,7 @@ "typeString": "address" } ], - "id": 30324, + "id": 30339, "isConstant": false, "isLValue": false, "isPure": true, @@ -2023,19 +2261,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30323, + "id": 30338, "name": "address", "nodeType": "ElementaryTypeName", "src": "1757:7:28", "typeDescriptions": {} } }, - "id": 30326, + "id": 30341, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1757:18:28", @@ -2045,11 +2284,12 @@ "typeString": "address" } }, - "id": 30327, + "id": 30342, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1776:4:28", "memberName": "call", "nodeType": "MemberAccess", "src": "1757:23:28", @@ -2058,12 +2298,13 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 30333, + "id": 30348, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1757:62:28", @@ -2079,7 +2320,7 @@ "typeString": "tuple()" } }, - "id": 30335, + "id": 30350, "nodeType": "ExpressionStatement", "src": "1749:70:28" } @@ -2092,17 +2333,17 @@ "name": "try_getAmountToClaim", "nameLocation": "1596:20:28", "parameters": { - "id": 30313, + "id": 30328, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30310, + "id": 30325, "mutability": "mutable", "name": "_contract", "nameLocation": "1625:9:28", "nodeType": "VariableDeclaration", - "scope": 30337, + "scope": 30352, "src": "1617:17:28", "stateVariable": false, "storageLocation": "default", @@ -2111,7 +2352,7 @@ "typeString": "address" }, "typeName": { - "id": 30309, + "id": 30324, "name": "address", "nodeType": "ElementaryTypeName", "src": "1617:7:28", @@ -2125,12 +2366,12 @@ }, { "constant": false, - "id": 30312, + "id": 30327, "mutability": "mutable", "name": "account", "nameLocation": "1644:7:28", "nodeType": "VariableDeclaration", - "scope": 30337, + "scope": 30352, "src": "1636:15:28", "stateVariable": false, "storageLocation": "default", @@ -2139,7 +2380,7 @@ "typeString": "address" }, "typeName": { - "id": 30311, + "id": 30326, "name": "address", "nodeType": "ElementaryTypeName", "src": "1636:7:28", @@ -2155,17 +2396,17 @@ "src": "1616:36:28" }, "returnParameters": { - "id": 30316, + "id": 30331, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30315, + "id": 30330, "mutability": "mutable", "name": "ok", "nameLocation": "1676:2:28", "nodeType": "VariableDeclaration", - "scope": 30337, + "scope": 30352, "src": "1671:7:28", "stateVariable": false, "storageLocation": "default", @@ -2174,7 +2415,7 @@ "typeString": "bool" }, "typeName": { - "id": 30314, + "id": 30329, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1671:4:28", @@ -2188,33 +2429,35 @@ ], "src": "1670:9:28" }, - "scope": 30364, + "scope": 30379, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30363, + "id": 30378, "nodeType": "FunctionDefinition", "src": "1835:185:28", + "nodes": [], "body": { - "id": 30362, + "id": 30377, "nodeType": "Block", "src": "1900:120:28", + "nodes": [], "statements": [ { "assignments": [ - 30345 + 30360 ], "declarations": [ { "constant": false, - "id": 30345, + "id": 30360, "mutability": "mutable", "name": "sig", "nameLocation": "1925:3:28", "nodeType": "VariableDeclaration", - "scope": 30362, + "scope": 30377, "src": "1911:17:28", "stateVariable": false, "storageLocation": "memory", @@ -2223,7 +2466,7 @@ "typeString": "string" }, "typeName": { - "id": 30344, + "id": 30359, "name": "string", "nodeType": "ElementaryTypeName", "src": "1911:6:28", @@ -2235,10 +2478,10 @@ "visibility": "internal" } ], - "id": 30347, + "id": 30362, "initialValue": { "hexValue": "636c61696d2829", - "id": 30346, + "id": 30361, "isConstant": false, "isLValue": false, "isPure": true, @@ -2257,7 +2500,7 @@ }, { "expression": { - "id": 30360, + "id": 30375, "isConstant": false, "isLValue": false, "isPure": false, @@ -2265,11 +2508,11 @@ "leftHandSide": { "components": [ { - "id": 30348, + "id": 30363, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30342, + "referencedDeclaration": 30357, "src": "1952:2:28", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2278,7 +2521,7 @@ }, null ], - "id": 30349, + "id": 30364, "isConstant": false, "isInlineArray": false, "isLValue": true, @@ -2298,11 +2541,11 @@ { "arguments": [ { - "id": 30357, + "id": 30372, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30345, + "referencedDeclaration": 30360, "src": "2007:3:28", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2318,7 +2561,7 @@ } ], "expression": { - "id": 30355, + "id": 30370, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2329,11 +2572,12 @@ "typeString": "abi" } }, - "id": 30356, + "id": 30371, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1987:19:28", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1983:23:28", @@ -2342,12 +2586,13 @@ "typeString": "function (string memory) pure returns (bytes memory)" } }, - "id": 30358, + "id": 30373, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1983:28:28", @@ -2368,11 +2613,11 @@ "expression": { "arguments": [ { - "id": 30352, + "id": 30367, "name": "_contract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30339, + "referencedDeclaration": 30354, "src": "1967:9:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2387,7 +2632,7 @@ "typeString": "address" } ], - "id": 30351, + "id": 30366, "isConstant": false, "isLValue": false, "isPure": true, @@ -2399,19 +2644,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30350, + "id": 30365, "name": "address", "nodeType": "ElementaryTypeName", "src": "1959:7:28", "typeDescriptions": {} } }, - "id": 30353, + "id": 30368, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1959:18:28", @@ -2421,11 +2667,12 @@ "typeString": "address" } }, - "id": 30354, + "id": 30369, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1978:4:28", "memberName": "call", "nodeType": "MemberAccess", "src": "1959:23:28", @@ -2434,12 +2681,13 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 30359, + "id": 30374, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1959:53:28", @@ -2455,7 +2703,7 @@ "typeString": "tuple()" } }, - "id": 30361, + "id": 30376, "nodeType": "ExpressionStatement", "src": "1951:61:28" } @@ -2468,17 +2716,17 @@ "name": "try_claim", "nameLocation": "1844:9:28", "parameters": { - "id": 30340, + "id": 30355, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30339, + "id": 30354, "mutability": "mutable", "name": "_contract", "nameLocation": "1862:9:28", "nodeType": "VariableDeclaration", - "scope": 30363, + "scope": 30378, "src": "1854:17:28", "stateVariable": false, "storageLocation": "default", @@ -2487,7 +2735,7 @@ "typeString": "address" }, "typeName": { - "id": 30338, + "id": 30353, "name": "address", "nodeType": "ElementaryTypeName", "src": "1854:7:28", @@ -2503,17 +2751,17 @@ "src": "1853:19:28" }, "returnParameters": { - "id": 30343, + "id": 30358, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30342, + "id": 30357, "mutability": "mutable", "name": "ok", "nameLocation": "1896:2:28", "nodeType": "VariableDeclaration", - "scope": 30363, + "scope": 30378, "src": "1891:7:28", "stateVariable": false, "storageLocation": "default", @@ -2522,7 +2770,7 @@ "typeString": "bool" }, "typeName": { - "id": 30341, + "id": 30356, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1891:4:28", @@ -2536,7 +2784,7 @@ ], "src": "1890:9:28" }, - "scope": 30364, + "scope": 30379, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -2549,11 +2797,11 @@ "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 30364 + 30379 ], "name": "Actor", "nameLocation": "172:5:28", - "scope": 30365, + "scope": 30380, "usedErrors": [] } ], diff --git a/out/Base.sol/CommonBase.json b/out/Base.sol/CommonBase.json index 7b9b8f4..d37e287 100644 --- a/out/Base.sol/CommonBase.json +++ b/out/Base.sol/CommonBase.json @@ -11,6 +11,70 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Base.sol\":\"CommonBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/Base.sol": "CommonBase" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/Base.sol", "id": 1856, @@ -41,6 +105,7 @@ "id": 1788, "nodeType": "PragmaDirective", "src": "32:31:1", + "nodes": [], "literals": [ "solidity", ">=", @@ -55,6 +120,7 @@ "id": 1790, "nodeType": "ImportDirective", "src": "65:44:1", + "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -80,6 +146,7 @@ "id": 1793, "nodeType": "ImportDirective", "src": "110:36:1", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -122,6 +189,7 @@ "id": 1807, "nodeType": "VariableDeclaration", "src": "254:94:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "VM_ADDRESS", @@ -193,6 +261,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:28:1", @@ -235,6 +304,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "309:37:1", @@ -277,6 +347,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "301:46:1", @@ -319,6 +390,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "293:55:1", @@ -334,6 +406,7 @@ "id": 1810, "nodeType": "VariableDeclaration", "src": "438:78:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE", @@ -378,6 +451,7 @@ "id": 1824, "nodeType": "VariableDeclaration", "src": "619:105:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_SENDER", @@ -449,6 +523,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "686:35:1", @@ -491,6 +566,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "678:44:1", @@ -533,6 +609,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "670:53:1", @@ -575,6 +652,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:62:1", @@ -590,6 +668,7 @@ "id": 1827, "nodeType": "VariableDeclaration", "src": "799:92:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_TEST_CONTRACT", @@ -634,6 +713,7 @@ "id": 1830, "nodeType": "VariableDeclaration", "src": "898:126:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -677,6 +757,7 @@ "id": 1836, "nodeType": "VariableDeclaration", "src": "1031:40:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -694,6 +775,9 @@ "pathNode": { "id": 1831, "name": "Vm", + "nameLocations": [ + "1031:2:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "1031:2:1" @@ -744,6 +828,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1057:14:1", @@ -759,6 +844,7 @@ "id": 1839, "nodeType": "VariableDeclaration", "src": "1077:28:1", + "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -776,6 +862,9 @@ "pathNode": { "id": 1837, "name": "StdStorage", + "nameLocations": [ + "1077:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1077:10:1" @@ -808,12 +897,16 @@ "id": 1843, "nodeType": "ContractDefinition", "src": "1110:43:1", + "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 1841, "name": "CommonBase", + "nameLocations": [ + "1140:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1140:10:1" @@ -845,6 +938,7 @@ "id": 1848, "nodeType": "VariableDeclaration", "src": "1305:86:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "CREATE2_FACTORY", @@ -889,6 +983,7 @@ "id": 1854, "nodeType": "VariableDeclaration", "src": "1398:52:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "vmSafe", @@ -906,6 +1001,9 @@ "pathNode": { "id": 1849, "name": "VmSafe", + "nameLocations": [ + "1398:6:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1398:6:1" @@ -956,6 +1054,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1432:18:1", @@ -974,6 +1073,9 @@ "baseName": { "id": 1844, "name": "CommonBase", + "nameLocations": [ + "1187:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1187:10:1" diff --git a/out/Base.sol/ScriptBase.json b/out/Base.sol/ScriptBase.json index 7b9b8f4..c664280 100644 --- a/out/Base.sol/ScriptBase.json +++ b/out/Base.sol/ScriptBase.json @@ -11,6 +11,70 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Base.sol\":\"ScriptBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/Base.sol": "ScriptBase" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/Base.sol", "id": 1856, @@ -41,6 +105,7 @@ "id": 1788, "nodeType": "PragmaDirective", "src": "32:31:1", + "nodes": [], "literals": [ "solidity", ">=", @@ -55,6 +120,7 @@ "id": 1790, "nodeType": "ImportDirective", "src": "65:44:1", + "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -80,6 +146,7 @@ "id": 1793, "nodeType": "ImportDirective", "src": "110:36:1", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -122,6 +189,7 @@ "id": 1807, "nodeType": "VariableDeclaration", "src": "254:94:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "VM_ADDRESS", @@ -193,6 +261,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:28:1", @@ -235,6 +304,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "309:37:1", @@ -277,6 +347,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "301:46:1", @@ -319,6 +390,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "293:55:1", @@ -334,6 +406,7 @@ "id": 1810, "nodeType": "VariableDeclaration", "src": "438:78:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE", @@ -378,6 +451,7 @@ "id": 1824, "nodeType": "VariableDeclaration", "src": "619:105:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_SENDER", @@ -449,6 +523,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "686:35:1", @@ -491,6 +566,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "678:44:1", @@ -533,6 +609,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "670:53:1", @@ -575,6 +652,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:62:1", @@ -590,6 +668,7 @@ "id": 1827, "nodeType": "VariableDeclaration", "src": "799:92:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_TEST_CONTRACT", @@ -634,6 +713,7 @@ "id": 1830, "nodeType": "VariableDeclaration", "src": "898:126:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -677,6 +757,7 @@ "id": 1836, "nodeType": "VariableDeclaration", "src": "1031:40:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -694,6 +775,9 @@ "pathNode": { "id": 1831, "name": "Vm", + "nameLocations": [ + "1031:2:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "1031:2:1" @@ -744,6 +828,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1057:14:1", @@ -759,6 +844,7 @@ "id": 1839, "nodeType": "VariableDeclaration", "src": "1077:28:1", + "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -776,6 +862,9 @@ "pathNode": { "id": 1837, "name": "StdStorage", + "nameLocations": [ + "1077:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1077:10:1" @@ -808,12 +897,16 @@ "id": 1843, "nodeType": "ContractDefinition", "src": "1110:43:1", + "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 1841, "name": "CommonBase", + "nameLocations": [ + "1140:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1140:10:1" @@ -845,6 +938,7 @@ "id": 1848, "nodeType": "VariableDeclaration", "src": "1305:86:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "CREATE2_FACTORY", @@ -889,6 +983,7 @@ "id": 1854, "nodeType": "VariableDeclaration", "src": "1398:52:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "vmSafe", @@ -906,6 +1001,9 @@ "pathNode": { "id": 1849, "name": "VmSafe", + "nameLocations": [ + "1398:6:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1398:6:1" @@ -956,6 +1054,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1432:18:1", @@ -974,6 +1073,9 @@ "baseName": { "id": 1844, "name": "CommonBase", + "nameLocations": [ + "1187:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1187:10:1" diff --git a/out/Base.sol/TestBase.json b/out/Base.sol/TestBase.json index 7b9b8f4..f01f730 100644 --- a/out/Base.sol/TestBase.json +++ b/out/Base.sol/TestBase.json @@ -11,6 +11,70 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Base.sol\":\"TestBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/Base.sol": "TestBase" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/Base.sol", "id": 1856, @@ -41,6 +105,7 @@ "id": 1788, "nodeType": "PragmaDirective", "src": "32:31:1", + "nodes": [], "literals": [ "solidity", ">=", @@ -55,6 +120,7 @@ "id": 1790, "nodeType": "ImportDirective", "src": "65:44:1", + "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -80,6 +146,7 @@ "id": 1793, "nodeType": "ImportDirective", "src": "110:36:1", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -122,6 +189,7 @@ "id": 1807, "nodeType": "VariableDeclaration", "src": "254:94:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "VM_ADDRESS", @@ -193,6 +261,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:28:1", @@ -235,6 +304,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "309:37:1", @@ -277,6 +347,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "301:46:1", @@ -319,6 +390,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "293:55:1", @@ -334,6 +406,7 @@ "id": 1810, "nodeType": "VariableDeclaration", "src": "438:78:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE", @@ -378,6 +451,7 @@ "id": 1824, "nodeType": "VariableDeclaration", "src": "619:105:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_SENDER", @@ -449,6 +523,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "686:35:1", @@ -491,6 +566,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "678:44:1", @@ -533,6 +609,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "670:53:1", @@ -575,6 +652,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "662:62:1", @@ -590,6 +668,7 @@ "id": 1827, "nodeType": "VariableDeclaration", "src": "799:92:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "DEFAULT_TEST_CONTRACT", @@ -634,6 +713,7 @@ "id": 1830, "nodeType": "VariableDeclaration", "src": "898:126:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -677,6 +757,7 @@ "id": 1836, "nodeType": "VariableDeclaration", "src": "1031:40:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -694,6 +775,9 @@ "pathNode": { "id": 1831, "name": "Vm", + "nameLocations": [ + "1031:2:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "1031:2:1" @@ -744,6 +828,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1057:14:1", @@ -759,6 +844,7 @@ "id": 1839, "nodeType": "VariableDeclaration", "src": "1077:28:1", + "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -776,6 +862,9 @@ "pathNode": { "id": 1837, "name": "StdStorage", + "nameLocations": [ + "1077:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1077:10:1" @@ -808,12 +897,16 @@ "id": 1843, "nodeType": "ContractDefinition", "src": "1110:43:1", + "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 1841, "name": "CommonBase", + "nameLocations": [ + "1140:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1140:10:1" @@ -845,6 +938,7 @@ "id": 1848, "nodeType": "VariableDeclaration", "src": "1305:86:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "CREATE2_FACTORY", @@ -889,6 +983,7 @@ "id": 1854, "nodeType": "VariableDeclaration", "src": "1398:52:1", + "nodes": [], "constant": true, "mutability": "constant", "name": "vmSafe", @@ -906,6 +1001,9 @@ "pathNode": { "id": 1849, "name": "VmSafe", + "nameLocations": [ + "1398:6:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1398:6:1" @@ -956,6 +1054,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1432:18:1", @@ -974,6 +1073,9 @@ "baseName": { "id": 1844, "name": "CommonBase", + "nameLocations": [ + "1187:10:1" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1840, "src": "1187:10:1" diff --git a/out/Context.sol/Context.json b/out/Context.sol/Context.json index e0a75dd..77b8404 100644 --- a/out/Context.sol/Context.json +++ b/out/Context.sol/Context.json @@ -11,21 +11,70 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/extensions/Context.sol\":\"Context\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/extensions/Context.sol": "Context" + }, + "libraries": {} + }, + "sources": { + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/extensions/Context.sol", - "id": 28108, + "id": 28123, "exportedSymbols": { "Context": [ - 28107 + 28122 ] }, "nodeType": "SourceUnit", "src": "33:929:19", "nodes": [ { - "id": 28083, + "id": 28098, "nodeType": "PragmaDirective", "src": "33:23:19", + "nodes": [], "literals": [ "solidity", "^", @@ -34,25 +83,27 @@ ] }, { - "id": 28107, + "id": 28122, "nodeType": "ContractDefinition", "src": "570:392:19", "nodes": [ { - "id": 28095, + "id": 28110, "nodeType": "FunctionDefinition", "src": "603:115:19", + "nodes": [], "body": { - "id": 28094, + "id": 28109, "nodeType": "Block", "src": "673:45:19", + "nodes": [], "statements": [ { "expression": { "arguments": [ { "expression": { - "id": 28090, + "id": 28105, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63,11 +114,12 @@ "typeString": "msg" } }, - "id": 28091, + "id": 28106, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "703:6:19", "memberName": "sender", "nodeType": "MemberAccess", "src": "699:10:19", @@ -84,7 +136,7 @@ "typeString": "address" } ], - "id": 28089, + "id": 28104, "isConstant": false, "isLValue": false, "isPure": true, @@ -96,7 +148,7 @@ "typeString": "type(address payable)" }, "typeName": { - "id": 28088, + "id": 28103, "name": "address", "nodeType": "ElementaryTypeName", "src": "691:8:19", @@ -104,12 +156,13 @@ "typeDescriptions": {} } }, - "id": 28092, + "id": 28107, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "691:19:19", @@ -119,8 +172,8 @@ "typeString": "address payable" } }, - "functionReturnParameters": 28087, - "id": 28093, + "functionReturnParameters": 28102, + "id": 28108, "nodeType": "Return", "src": "684:26:19" } @@ -132,23 +185,23 @@ "name": "_msgSender", "nameLocation": "612:10:19", "parameters": { - "id": 28084, + "id": 28099, "nodeType": "ParameterList", "parameters": [], "src": "622:2:19" }, "returnParameters": { - "id": 28087, + "id": 28102, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28086, + "id": 28101, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28095, + "scope": 28110, "src": "656:15:19", "stateVariable": false, "storageLocation": "default", @@ -157,7 +210,7 @@ "typeString": "address payable" }, "typeName": { - "id": 28085, + "id": 28100, "name": "address", "nodeType": "ElementaryTypeName", "src": "656:15:19", @@ -172,41 +225,43 @@ ], "src": "655:17:19" }, - "scope": 28107, + "scope": 28122, "stateMutability": "view", "virtual": true, "visibility": "internal" }, { - "id": 28106, + "id": 28121, "nodeType": "FunctionDefinition", "src": "726:233:19", + "nodes": [], "body": { - "id": 28105, + "id": 28120, "nodeType": "Block", "src": "791:168:19", + "nodes": [], "statements": [ { "expression": { - "id": 28100, + "id": 28115, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "802:4:19", "typeDescriptions": { - "typeIdentifier": "t_contract$_Context_$28107", + "typeIdentifier": "t_contract$_Context_$28122", "typeString": "contract Context" } }, - "id": 28101, + "id": 28116, "nodeType": "ExpressionStatement", "src": "802:4:19" }, { "expression": { "expression": { - "id": 28102, + "id": 28117, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -217,11 +272,12 @@ "typeString": "msg" } }, - "id": 28103, + "id": 28118, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "947:4:19", "memberName": "data", "nodeType": "MemberAccess", "src": "943:8:19", @@ -230,8 +286,8 @@ "typeString": "bytes calldata" } }, - "functionReturnParameters": 28099, - "id": 28104, + "functionReturnParameters": 28114, + "id": 28119, "nodeType": "Return", "src": "936:15:19" } @@ -243,23 +299,23 @@ "name": "_msgData", "nameLocation": "735:8:19", "parameters": { - "id": 28096, + "id": 28111, "nodeType": "ParameterList", "parameters": [], "src": "743:2:19" }, "returnParameters": { - "id": 28099, + "id": 28114, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28098, + "id": 28113, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28106, + "scope": 28121, "src": "777:12:19", "stateVariable": false, "storageLocation": "memory", @@ -268,7 +324,7 @@ "typeString": "bytes" }, "typeName": { - "id": 28097, + "id": 28112, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "777:5:19", @@ -282,7 +338,7 @@ ], "src": "776:14:19" }, - "scope": 28107, + "scope": 28122, "stateMutability": "view", "virtual": true, "visibility": "internal" @@ -295,11 +351,11 @@ "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 28107 + 28122 ], "name": "Context", "nameLocation": "588:7:19", - "scope": 28108, + "scope": 28123, "usedErrors": [] } ], diff --git a/out/Contract.s.sol/ContractScript.json b/out/Contract.s.sol/ContractScript.json index cfe6488..f07a543 100644 --- a/out/Contract.s.sol/ContractScript.json +++ b/out/Contract.s.sol/ContractScript.json @@ -29,13 +29,13 @@ } ], "bytecode": { - "object": "0x6080604052600c805460ff1916600117905534801561001d57600080fd5b506101158061002d6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea2646970667358221220510af7d0bee6b4c8863654c39d89a7edd1ba89984ad05bf85d5f83359302e57e64736f6c634300080f0033", - "sourceMap": "97:127:15:-:0;;;758:28:2;;;-1:-1:-1;;758:28:2;782:4;758:28;;;97:127:15;;;;;;;;;;;;;;;;", + "object": "0x6080604052600c805460ff1916600117905534801561001d57600080fd5b506101158061002d6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea26469706673582212201269be7f9d04da86bbc6d612ed9f27b4b2501910ed9f0fe90ea0d27f762365bd64736f6c63430008110033", + "sourceMap": "102:133:15:-:0;;;758:28:2;;;-1:-1:-1;;758:28:2;782:4;758:28;;;102:133:15;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea2646970667358221220510af7d0bee6b4c8863654c39d89a7edd1ba89984ad05bf85d5f83359302e57e64736f6c634300080f0033", - "sourceMap": "97:127:15:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;137:26;;169:53;;;:::i;758:28:2:-;;;;;;;;;;;;179:14:32;;172:22;154:41;;142:2;127:18;758:28:2;;;;;;;169:53:15;317:28:1;309:37;;-1:-1:-1;;;;;201:12:15;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;169:53::o", + "object": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630a9254e4146041578063c0406226146043578063f8ccbf47146049575b600080fd5b005b60416069565b600c5460559060ff1681565b604051901515815260200160405180910390f35b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b031663afc980406040518163ffffffff1660e01b8152600401600060405180830381600087803b15801560c657600080fd5b505af115801560d9573d6000803e3d6000fd5b5050505056fea26469706673582212201269be7f9d04da86bbc6d612ed9f27b4b2501910ed9f0fe90ea0d27f762365bd64736f6c63430008110033", + "sourceMap": "102:133:15:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;143:26;;177:55;;;:::i;758:28:2:-;;;;;;;;;;;;179:14:32;;172:22;154:41;;142:2;127:18;758:28:2;;;;;;;177:55:15;317:28:1;309:37;;-1:-1:-1;;;;;210:12:15;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;177:55::o", "linkReferences": {} }, "methodIdentifiers": { @@ -43,6 +43,168 @@ "run()": "c0406226", "setUp()": "0a9254e4" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"IS_SCRIPT\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"script/Contract.s.sol\":\"ContractScript\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/Script.sol\":{\"keccak256\":\"0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693\",\"dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"script/Contract.s.sol\":{\"keccak256\":\"0xfa3842e8d400d240c8d9eb9cafa7320b271102306745e1f4f54f80e59ee6f160\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://fce9fc8948ce0746d69ec6a1cf4129b38f75b4a5a96fa07567c4708a60b1486f\",\"dweb:/ipfs/QmYejuTf87QwwaMKPvRbpf4XVp9T5CdLkGzkWtwMDBoyEX\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_SCRIPT", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "run" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "setUp" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "script/Contract.s.sol": "ContractScript" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/Script.sol": { + "keccak256": "0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433", + "urls": [ + "bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693", + "dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + }, + "script/Contract.s.sol": { + "keccak256": "0xfa3842e8d400d240c8d9eb9cafa7320b271102306745e1f4f54f80e59ee6f160", + "urls": [ + "bzz-raw://fce9fc8948ce0746d69ec6a1cf4129b38f75b4a5a96fa07567c4708a60b1486f", + "dweb:/ipfs/QmYejuTf87QwwaMKPvRbpf4XVp9T5CdLkGzkWtwMDBoyEX" + ], + "license": "UNLICENSED" + } + }, + "version": 1 + }, "ast": { "absolutePath": "script/Contract.s.sol", "id": 25532, @@ -88,12 +250,13 @@ ] }, "nodeType": "SourceUnit", - "src": "39:186:15", + "src": "40:197:15", "nodes": [ { "id": 25514, "nodeType": "PragmaDirective", - "src": "39:24:15", + "src": "40:24:15", + "nodes": [], "literals": [ "solidity", "^", @@ -104,7 +267,8 @@ { "id": 25515, "nodeType": "ImportDirective", - "src": "65:30:15", + "src": "68:30:15", + "nodes": [], "absolutePath": "lib/forge-std/src/Script.sol", "file": "forge-std/Script.sol", "nameLocation": "-1:-1:-1", @@ -116,16 +280,18 @@ { "id": 25531, "nodeType": "ContractDefinition", - "src": "97:127:15", + "src": "102:133:15", "nodes": [ { "id": 25521, "nodeType": "FunctionDefinition", - "src": "137:26:15", + "src": "143:26:15", + "nodes": [], "body": { "id": 25520, "nodeType": "Block", - "src": "161:2:15", + "src": "167:2:15", + "nodes": [], "statements": [] }, "functionSelector": "0a9254e4", @@ -133,18 +299,18 @@ "kind": "function", "modifiers": [], "name": "setUp", - "nameLocation": "146:5:15", + "nameLocation": "152:5:15", "parameters": { "id": 25518, "nodeType": "ParameterList", "parameters": [], - "src": "151:2:15" + "src": "157:2:15" }, "returnParameters": { "id": 25519, "nodeType": "ParameterList", "parameters": [], - "src": "161:0:15" + "src": "167:0:15" }, "scope": 25531, "stateMutability": "nonpayable", @@ -154,11 +320,13 @@ { "id": 25530, "nodeType": "FunctionDefinition", - "src": "169:53:15", + "src": "177:55:15", + "nodes": [], "body": { "id": 25529, "nodeType": "Block", - "src": "191:31:15", + "src": "199:33:15", + "nodes": [], "statements": [ { "expression": { @@ -171,7 +339,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "201:2:15", + "src": "210:2:15", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" @@ -182,10 +350,11 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "213:9:15", "memberName": "broadcast", "nodeType": "MemberAccess", "referencedDeclaration": 8588, - "src": "201:12:15", + "src": "210:12:15", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" @@ -197,9 +366,10 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "201:14:15", + "src": "210:14:15", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", @@ -208,7 +378,7 @@ }, "id": 25528, "nodeType": "ExpressionStatement", - "src": "201:14:15" + "src": "210:14:15" } ] }, @@ -217,18 +387,18 @@ "kind": "function", "modifiers": [], "name": "run", - "nameLocation": "178:3:15", + "nameLocation": "186:3:15", "parameters": { "id": 25522, "nodeType": "ParameterList", "parameters": [], - "src": "181:2:15" + "src": "189:2:15" }, "returnParameters": { "id": 25523, "nodeType": "ParameterList", "parameters": [], - "src": "191:0:15" + "src": "199:0:15" }, "scope": 25531, "stateMutability": "nonpayable", @@ -242,13 +412,16 @@ "baseName": { "id": 25516, "name": "Script", + "nameLocations": [ + "129:6:15" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1892, - "src": "124:6:15" + "src": "129:6:15" }, "id": 25517, "nodeType": "InheritanceSpecifier", - "src": "124:6:15" + "src": "129:6:15" } ], "canonicalName": "ContractScript", @@ -265,7 +438,7 @@ 3244 ], "name": "ContractScript", - "nameLocation": "106:14:15", + "nameLocation": "111:14:15", "scope": 25532, "usedErrors": [] } diff --git a/out/ERC20.sol/ERC20.json b/out/ERC20.sol/ERC20.json index 1db4e49..58817f5 100644 --- a/out/ERC20.sol/ERC20.json +++ b/out/ERC20.sol/ERC20.json @@ -288,13 +288,13 @@ } ], "bytecode": { - "object": "0x60806040523480156200001157600080fd5b5060405162000ba138038062000ba1833981016040819052620000349162000134565b60036200004283826200022d565b5060046200005182826200022d565b50506005805460ff1916601217905550620002f9565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008f57600080fd5b81516001600160401b0380821115620000ac57620000ac62000067565b604051601f8301601f19908116603f01168101908282118183101715620000d757620000d762000067565b81604052838152602092508683858801011115620000f457600080fd5b600091505b83821015620001185785820183015181830184015290820190620000f9565b838211156200012a5760008385830101525b9695505050505050565b600080604083850312156200014857600080fd5b82516001600160401b03808211156200016057600080fd5b6200016e868387016200007d565b935060208501519150808211156200018557600080fd5b5062000194858286016200007d565b9150509250929050565b600181811c90821680620001b357607f821691505b602082108103620001d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200022857600081815260208120601f850160051c81016020861015620002035750805b601f850160051c820191505b8181101562000224578281556001016200020f565b5050505b505050565b81516001600160401b0381111562000249576200024962000067565b62000261816200025a84546200019e565b84620001da565b602080601f831160018114620002995760008415620002805750858301515b600019600386901b1c1916600185901b17855562000224565b600085815260208120601f198616915b82811015620002ca57888601518255948401946001909101908401620002a9565b5085821015620002e95787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61089880620003096000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012957806370a082311461013c57806395d89b4114610165578063a457c2d71461016d578063a9059cbb14610180578063dd62ed3e1461019357600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101cc565b6040516100c3919061066a565b60405180910390f35b6100df6100da3660046106db565b61025e565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610705565b610274565b60055460405160ff90911681526020016100c3565b6100df6101373660046106db565b6102dd565b6100f361014a366004610741565b6001600160a01b031660009081526020819052604090205490565b6100b6610313565b6100df61017b3660046106db565b610322565b6100df61018e3660046106db565b610371565b6100f36101a136600461075c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6060600380546101db9061078f565b80601f01602080910402602001604051908101604052809291908181526020018280546102079061078f565b80156102545780601f1061022957610100808354040283529160200191610254565b820191906000526020600020905b81548152906001019060200180831161023757829003601f168201915b5050505050905090565b600061026b33848461037e565b50600192915050565b60006102818484846104a8565b6102d384336102ce85604051806060016040528060288152602001610816602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061062b565b61037e565b5060019392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161026b9185906102ce9086610657565b6060600480546101db9061078f565b600061026b33846102ce8560405180606001604052806025815260200161083e602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919061062b565b600061026b3384846104a8565b6001600160a01b0383166103e55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166104465760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831661050c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661056e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6105ab816040518060600160405280602681526020016107f0602691396001600160a01b038616600090815260208190526040902054919061062b565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105da9082610657565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161049b565b6000818484111561064f5760405162461bcd60e51b81526004016103dc919061066a565b505050900390565b600061066382846107c9565b9392505050565b600060208083528351808285015260005b818110156106975785810183015185820160400152820161067b565b818111156106a9576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106d657600080fd5b919050565b600080604083850312156106ee57600080fd5b6106f7836106bf565b946020939093013593505050565b60008060006060848603121561071a57600080fd5b610723846106bf565b9250610731602085016106bf565b9150604084013590509250925092565b60006020828403121561075357600080fd5b610663826106bf565b6000806040838503121561076f57600080fd5b610778836106bf565b9150610786602084016106bf565b90509250929050565b600181811c908216806107a357607f821691505b6020821081036107c357634e487b7160e01b600052602260045260246000fd5b50919050565b600082198211156107ea57634e487b7160e01b600052601160045260246000fd5b50019056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122082521e7438be2b5c4b4f0d0da6244de942a697b82cd1a1b19c67490c4a8735b564736f6c634300080f0033", - "sourceMap": "7736:9750:21:-:0;;;8395:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8463:5;:13;8471:5;8463;:13;:::i;:::-;-1:-1:-1;8487:7:21;:17;8497:7;8487;:17;:::i;:::-;-1:-1:-1;;8515:9:21;:14;;-1:-1:-1;;8515:14:21;8527:2;8515:14;;;-1:-1:-1;7736:9750:21;;14:127:32;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:885;200:5;253:3;246:4;238:6;234:17;230:27;220:55;;271:1;268;261:12;220:55;294:13;;-1:-1:-1;;;;;356:10:32;;;353:36;;;369:18;;:::i;:::-;444:2;438:9;412:2;498:13;;-1:-1:-1;;494:22:32;;;518:2;490:31;486:40;474:53;;;542:18;;;562:22;;;539:46;536:72;;;588:18;;:::i;:::-;628:10;624:2;617:22;663:2;655:6;648:18;685:4;675:14;;730:3;725:2;720;712:6;708:15;704:24;701:33;698:53;;;747:1;744;737:12;698:53;769:1;760:10;;779:133;793:2;790:1;787:9;779:133;;;881:14;;;877:23;;871:30;850:14;;;846:23;;839:63;804:10;;;;779:133;;;930:2;927:1;924:9;921:80;;;989:1;984:2;979;971:6;967:15;963:24;956:35;921:80;1019:6;146:885;-1:-1:-1;;;;;;146:885:32:o;1036:562::-;1135:6;1143;1196:2;1184:9;1175:7;1171:23;1167:32;1164:52;;;1212:1;1209;1202:12;1164:52;1239:16;;-1:-1:-1;;;;;1304:14:32;;;1301:34;;;1331:1;1328;1321:12;1301:34;1354:61;1407:7;1398:6;1387:9;1383:22;1354:61;:::i;:::-;1344:71;;1461:2;1450:9;1446:18;1440:25;1424:41;;1490:2;1480:8;1477:16;1474:36;;;1506:1;1503;1496:12;1474:36;;1529:63;1584:7;1573:8;1562:9;1558:24;1529:63;:::i;:::-;1519:73;;;1036:562;;;;;:::o;1603:380::-;1682:1;1678:12;;;;1725;;;1746:61;;1800:4;1792:6;1788:17;1778:27;;1746:61;1853:2;1845:6;1842:14;1822:18;1819:38;1816:161;;1899:10;1894:3;1890:20;1887:1;1880:31;1934:4;1931:1;1924:15;1962:4;1959:1;1952:15;1816:161;;1603:380;;;:::o;2114:545::-;2216:2;2211:3;2208:11;2205:448;;;2252:1;2277:5;2273:2;2266:17;2322:4;2318:2;2308:19;2392:2;2380:10;2376:19;2373:1;2369:27;2363:4;2359:38;2428:4;2416:10;2413:20;2410:47;;;-1:-1:-1;2451:4:32;2410:47;2506:2;2501:3;2497:12;2494:1;2490:20;2484:4;2480:31;2470:41;;2561:82;2579:2;2572:5;2569:13;2561:82;;;2624:17;;;2605:1;2594:13;2561:82;;;2565:3;;;2205:448;2114:545;;;:::o;2835:1352::-;2955:10;;-1:-1:-1;;;;;2977:30:32;;2974:56;;;3010:18;;:::i;:::-;3039:97;3129:6;3089:38;3121:4;3115:11;3089:38;:::i;:::-;3083:4;3039:97;:::i;:::-;3191:4;;3255:2;3244:14;;3272:1;3267:663;;;;3974:1;3991:6;3988:89;;;-1:-1:-1;4043:19:32;;;4037:26;3988:89;-1:-1:-1;;2792:1:32;2788:11;;;2784:24;2780:29;2770:40;2816:1;2812:11;;;2767:57;4090:81;;3237:944;;3267:663;2061:1;2054:14;;;2098:4;2085:18;;-1:-1:-1;;3303:20:32;;;3421:236;3435:7;3432:1;3429:14;3421:236;;;3524:19;;;3518:26;3503:42;;3616:27;;;;3584:1;3572:14;;;;3451:19;;3421:236;;;3425:3;3685:6;3676:7;3673:19;3670:201;;;3746:19;;;3740:26;-1:-1:-1;;3829:1:32;3825:14;;;3841:3;3821:24;3817:37;3813:42;3798:58;3783:74;;3670:201;-1:-1:-1;;;;;3917:1:32;3901:14;;;3897:22;3884:36;;-1:-1:-1;2835:1352:32:o;:::-;7736:9750:21;;;;;;", + "object": "0x60806040523480156200001157600080fd5b5060405162000b8e38038062000b8e83398101604081905262000034916200012c565b600362000042838262000225565b50600462000051828262000225565b50506005805460ff1916601217905550620002f1565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008f57600080fd5b81516001600160401b0380821115620000ac57620000ac62000067565b604051601f8301601f19908116603f01168101908282118183101715620000d757620000d762000067565b81604052838152602092508683858801011115620000f457600080fd5b600091505b83821015620001185785820183015181830184015290820190620000f9565b600093810190920192909252949350505050565b600080604083850312156200014057600080fd5b82516001600160401b03808211156200015857600080fd5b62000166868387016200007d565b935060208501519150808211156200017d57600080fd5b506200018c858286016200007d565b9150509250929050565b600181811c90821680620001ab57607f821691505b602082108103620001cc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200022057600081815260208120601f850160051c81016020861015620001fb5750805b601f850160051c820191505b818110156200021c5782815560010162000207565b5050505b505050565b81516001600160401b0381111562000241576200024162000067565b620002598162000252845462000196565b84620001d2565b602080601f831160018114620002915760008415620002785750858301515b600019600386901b1c1916600185901b1785556200021c565b600085815260208120601f198616915b82811015620002c257888601518255948401946001909101908401620002a1565b5085821015620002e15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61088d80620003016000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012957806370a082311461013c57806395d89b4114610165578063a457c2d71461016d578063a9059cbb14610180578063dd62ed3e1461019357600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101cc565b6040516100c3919061066b565b60405180910390f35b6100df6100da3660046106d5565b61025e565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f3660046106ff565b610275565b60055460405160ff90911681526020016100c3565b6100df6101373660046106d5565b6102de565b6100f361014a36600461073b565b6001600160a01b031660009081526020819052604090205490565b6100b6610314565b6100df61017b3660046106d5565b610323565b6100df61018e3660046106d5565b610372565b6100f36101a1366004610756565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6060600380546101db90610789565b80601f016020809104026020016040519081016040528092919081815260200182805461020790610789565b80156102545780601f1061022957610100808354040283529160200191610254565b820191906000526020600020905b81548152906001019060200180831161023757829003601f168201915b5050505050905090565b600061026b33848461037f565b5060015b92915050565b60006102828484846104a9565b6102d484336102cf8560405180606001604052806028815260200161080b602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061062c565b61037f565b5060019392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161026b9185906102cf9086610658565b6060600480546101db90610789565b600061026b33846102cf85604051806060016040528060258152602001610833602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919061062c565b600061026b3384846104a9565b6001600160a01b0383166103e65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166104475760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831661050d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dd565b6001600160a01b03821661056f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dd565b6105ac816040518060600160405280602681526020016107e5602691396001600160a01b038616600090815260208190526040902054919061062c565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105db9082610658565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161049c565b600081848411156106505760405162461bcd60e51b81526004016103dd919061066b565b505050900390565b600061066482846107c3565b9392505050565b600060208083528351808285015260005b818110156106985785810183015185820160400152820161067c565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146106d057600080fd5b919050565b600080604083850312156106e857600080fd5b6106f1836106b9565b946020939093013593505050565b60008060006060848603121561071457600080fd5b61071d846106b9565b925061072b602085016106b9565b9150604084013590509250925092565b60006020828403121561074d57600080fd5b610664826106b9565b6000806040838503121561076957600080fd5b610772836106b9565b9150610780602084016106b9565b90509250929050565b600181811c9082168061079d57607f821691505b6020821081036107bd57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026f57634e487b7160e01b600052601160045260246000fdfe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220216263053d8933afda34d25e1f3459dd95c7b19dd11e61fc67dfbfd59d9d865064736f6c63430008110033", + "sourceMap": "7736:9750:21:-:0;;;8395:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8463:5;:13;8471:5;8463;:13;:::i;:::-;-1:-1:-1;8487:7:21;:17;8497:7;8487;:17;:::i;:::-;-1:-1:-1;;8515:9:21;:14;;-1:-1:-1;;8515:14:21;8527:2;8515:14;;;-1:-1:-1;7736:9750:21;;14:127:32;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:840;200:5;253:3;246:4;238:6;234:17;230:27;220:55;;271:1;268;261:12;220:55;294:13;;-1:-1:-1;;;;;356:10:32;;;353:36;;;369:18;;:::i;:::-;444:2;438:9;412:2;498:13;;-1:-1:-1;;494:22:32;;;518:2;490:31;486:40;474:53;;;542:18;;;562:22;;;539:46;536:72;;;588:18;;:::i;:::-;628:10;624:2;617:22;663:2;655:6;648:18;685:4;675:14;;730:3;725:2;720;712:6;708:15;704:24;701:33;698:53;;;747:1;744;737:12;698:53;769:1;760:10;;779:133;793:2;790:1;787:9;779:133;;;881:14;;;877:23;;871:30;850:14;;;846:23;;839:63;804:10;;;;779:133;;;954:1;932:15;;;928:24;;;921:35;;;;936:6;146:840;-1:-1:-1;;;;146:840:32:o;991:562::-;1090:6;1098;1151:2;1139:9;1130:7;1126:23;1122:32;1119:52;;;1167:1;1164;1157:12;1119:52;1194:16;;-1:-1:-1;;;;;1259:14:32;;;1256:34;;;1286:1;1283;1276:12;1256:34;1309:61;1362:7;1353:6;1342:9;1338:22;1309:61;:::i;:::-;1299:71;;1416:2;1405:9;1401:18;1395:25;1379:41;;1445:2;1435:8;1432:16;1429:36;;;1461:1;1458;1451:12;1429:36;;1484:63;1539:7;1528:8;1517:9;1513:24;1484:63;:::i;:::-;1474:73;;;991:562;;;;;:::o;1558:380::-;1637:1;1633:12;;;;1680;;;1701:61;;1755:4;1747:6;1743:17;1733:27;;1701:61;1808:2;1800:6;1797:14;1777:18;1774:38;1771:161;;1854:10;1849:3;1845:20;1842:1;1835:31;1889:4;1886:1;1879:15;1917:4;1914:1;1907:15;1771:161;;1558:380;;;:::o;2069:545::-;2171:2;2166:3;2163:11;2160:448;;;2207:1;2232:5;2228:2;2221:17;2277:4;2273:2;2263:19;2347:2;2335:10;2331:19;2328:1;2324:27;2318:4;2314:38;2383:4;2371:10;2368:20;2365:47;;;-1:-1:-1;2406:4:32;2365:47;2461:2;2456:3;2452:12;2449:1;2445:20;2439:4;2435:31;2425:41;;2516:82;2534:2;2527:5;2524:13;2516:82;;;2579:17;;;2560:1;2549:13;2516:82;;;2520:3;;;2160:448;2069:545;;;:::o;2790:1352::-;2910:10;;-1:-1:-1;;;;;2932:30:32;;2929:56;;;2965:18;;:::i;:::-;2994:97;3084:6;3044:38;3076:4;3070:11;3044:38;:::i;:::-;3038:4;2994:97;:::i;:::-;3146:4;;3210:2;3199:14;;3227:1;3222:663;;;;3929:1;3946:6;3943:89;;;-1:-1:-1;3998:19:32;;;3992:26;3943:89;-1:-1:-1;;2747:1:32;2743:11;;;2739:24;2735:29;2725:40;2771:1;2767:11;;;2722:57;4045:81;;3192:944;;3222:663;2016:1;2009:14;;;2053:4;2040:18;;-1:-1:-1;;3258:20:32;;;3376:236;3390:7;3387:1;3384:14;3376:236;;;3479:19;;;3473:26;3458:42;;3571:27;;;;3539:1;3527:14;;;;3406:19;;3376:236;;;3380:3;3640:6;3631:7;3628:19;3625:201;;;3701:19;;;3695:26;-1:-1:-1;;3784:1:32;3780:14;;;3796:3;3776:24;3772:37;3768:42;3753:58;3738:74;;3625:201;-1:-1:-1;;;;;3872:1:32;3856:14;;;3852:22;3839:36;;-1:-1:-1;2790:1352:32:o;:::-;7736:9750:21;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012957806370a082311461013c57806395d89b4114610165578063a457c2d71461016d578063a9059cbb14610180578063dd62ed3e1461019357600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101cc565b6040516100c3919061066a565b60405180910390f35b6100df6100da3660046106db565b61025e565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610705565b610274565b60055460405160ff90911681526020016100c3565b6100df6101373660046106db565b6102dd565b6100f361014a366004610741565b6001600160a01b031660009081526020819052604090205490565b6100b6610313565b6100df61017b3660046106db565b610322565b6100df61018e3660046106db565b610371565b6100f36101a136600461075c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6060600380546101db9061078f565b80601f01602080910402602001604051908101604052809291908181526020018280546102079061078f565b80156102545780601f1061022957610100808354040283529160200191610254565b820191906000526020600020905b81548152906001019060200180831161023757829003601f168201915b5050505050905090565b600061026b33848461037e565b50600192915050565b60006102818484846104a8565b6102d384336102ce85604051806060016040528060288152602001610816602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061062b565b61037e565b5060019392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161026b9185906102ce9086610657565b6060600480546101db9061078f565b600061026b33846102ce8560405180606001604052806025815260200161083e602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919061062b565b600061026b3384846104a8565b6001600160a01b0383166103e55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166104465760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831661050c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661056e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6105ab816040518060600160405280602681526020016107f0602691396001600160a01b038616600090815260208190526040902054919061062b565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105da9082610657565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161049b565b6000818484111561064f5760405162461bcd60e51b81526004016103dc919061066a565b505050900390565b600061066382846107c9565b9392505050565b600060208083528351808285015260005b818110156106975785810183015185820160400152820161067b565b818111156106a9576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106d657600080fd5b919050565b600080604083850312156106ee57600080fd5b6106f7836106bf565b946020939093013593505050565b60008060006060848603121561071a57600080fd5b610723846106bf565b9250610731602085016106bf565b9150604084013590509250925092565b60006020828403121561075357600080fd5b610663826106bf565b6000806040838503121561076f57600080fd5b610778836106bf565b9150610786602084016106bf565b90509250929050565b600181811c908216806107a357607f821691505b6020821081036107c357634e487b7160e01b600052602260045260246000fd5b50919050565b600082198211156107ea57634e487b7160e01b600052601160045260246000fd5b50019056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122082521e7438be2b5c4b4f0d0da6244de942a697b82cd1a1b19c67490c4a8735b564736f6c634300080f0033", - "sourceMap": "7736:9750:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10753:169;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:32;;1211:22;1193:41;;1181:2;1166:18;10753:169:21;1053:187:32;9706:108:21;9794:12;;9706:108;;;1391:25:32;;;1379:2;1364:18;9706:108:21;1245:177:32;11404:321:21;;;;;;:::i;:::-;;:::i;9550:91::-;9624:9;;9550:91;;9624:9;;;;1902:36:32;;1890:2;1875:18;9550:91:21;1760:184:32;12134:218:21;;;;;;:::i;:::-;;:::i;9877:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;8817:95;;;:::i;12855:269::-;;;;;;:::i;:::-;;:::i;10217:175::-;;;;;;:::i;:::-;;:::i;10455:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;10571:18:21;;;10544:7;10571:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10455:151;8607:91;8652:13;8685:5;8678:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;:::o;10753:169::-;10836:4;10853:39;699:10:19;10876:7:21;10885:6;10853:8;:39::i;:::-;-1:-1:-1;10910:4:21;10753:169;;;;:::o;11404:321::-;11510:4;11527:36;11537:6;11545:9;11556:6;11527:9;:36::i;:::-;11574:121;11583:6;699:10:19;11605:89:21;11643:6;11605:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11605:19:21;;;;;;:11;:19;;;;;;;;699:10:19;11605:33:21;;;;;;;;;;:37;:89::i;:::-;11574:8;:121::i;:::-;-1:-1:-1;11713:4:21;11404:321;;;;;:::o;12134:218::-;699:10:19;12222:4:21;12271:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12271:34:21;;;;;;;;;;12222:4;;12239:83;;12262:7;;12271:50;;12310:10;12271:38;:50::i;8817:95::-;8864:13;8897:7;8890:14;;;;;:::i;12855:269::-;12948:4;12965:129;699:10:19;12988:7:21;12997:96;13036:15;12997:96;;;;;;;;;;;;;;;;;699:10:19;12997:25:21;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12997:34:21;;;;;;;;;;;;:38;:96::i;10217:175::-;10303:4;10320:42;699:10:19;10344:9:21;10355:6;10320:9;:42::i;16012:346::-;-1:-1:-1;;;;;16114:19:21;;16106:68;;;;-1:-1:-1;;;16106:68:21;;2992:2:32;16106:68:21;;;2974:21:32;3031:2;3011:18;;;3004:30;3070:34;3050:18;;;3043:62;-1:-1:-1;;;3121:18:32;;;3114:34;3165:19;;16106:68:21;;;;;;;;;-1:-1:-1;;;;;16193:21:21;;16185:68;;;;-1:-1:-1;;;16185:68:21;;3397:2:32;16185:68:21;;;3379:21:32;3436:2;3416:18;;;3409:30;3475:34;3455:18;;;3448:62;-1:-1:-1;;;3526:18:32;;;3519:32;3568:19;;16185:68:21;3195:398:32;16185:68:21;-1:-1:-1;;;;;16266:18:21;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16318:32;;1391:25:32;;;16318:32:21;;1364:18:32;16318:32:21;;;;;;;;16012:346;;;:::o;13614:549::-;-1:-1:-1;;;;;13720:20:21;;13712:70;;;;-1:-1:-1;;;13712:70:21;;3800:2:32;13712:70:21;;;3782:21:32;3839:2;3819:18;;;3812:30;3878:34;3858:18;;;3851:62;-1:-1:-1;;;3929:18:32;;;3922:35;3974:19;;13712:70:21;3598:401:32;13712:70:21;-1:-1:-1;;;;;13801:23:21;;13793:71;;;;-1:-1:-1;;;13793:71:21;;4206:2:32;13793:71:21;;;4188:21:32;4245:2;4225:18;;;4218:30;4284:34;4264:18;;;4257:62;-1:-1:-1;;;4335:18:32;;;4328:33;4378:19;;13793:71:21;4004:399:32;13793:71:21;13967;13989:6;13967:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13967:17:21;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;13947:17:21;;;:9;:17;;;;;;;;;;;:91;;;;14072:20;;;;;;;:32;;14097:6;14072:24;:32::i;:::-;-1:-1:-1;;;;;14049:20:21;;;:9;:20;;;;;;;;;;;;:55;;;;14120:35;1391:25:32;;;14049:20:21;;14120:35;;;;;;1364:18:32;14120:35:21;1245:177:32;4765:206:21;4851:7;4912:12;4904:6;;;;4896:29;;;;-1:-1:-1;;;4896:29:21;;;;;;;;:::i;:::-;-1:-1:-1;;;4947:5:21;;;4765:206::o;2486:98::-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;2486:98;-1:-1:-1;;;2486:98:21:o;14:597:32:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:32;574:15;-1:-1:-1;;570:29:32;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:32:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:32;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:32:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;1949:186::-;2008:6;2061:2;2049:9;2040:7;2036:23;2032:32;2029:52;;;2077:1;2074;2067:12;2029:52;2100:29;2119:9;2100:29;:::i;2140:260::-;2208:6;2216;2269:2;2257:9;2248:7;2244:23;2240:32;2237:52;;;2285:1;2282;2275:12;2237:52;2308:29;2327:9;2308:29;:::i;:::-;2298:39;;2356:38;2390:2;2379:9;2375:18;2356:38;:::i;:::-;2346:48;;2140:260;;;;;:::o;2405:380::-;2484:1;2480:12;;;;2527;;;2548:61;;2602:4;2594:6;2590:17;2580:27;;2548:61;2655:2;2647:6;2644:14;2624:18;2621:38;2618:161;;2701:10;2696:3;2692:20;2689:1;2682:31;2736:4;2733:1;2726:15;2764:4;2761:1;2754:15;2618:161;;2405:380;;;:::o;4408:225::-;4448:3;4479:1;4475:6;4472:1;4469:13;4466:136;;;4524:10;4519:3;4515:20;4512:1;4505:31;4559:4;4556:1;4549:15;4587:4;4584:1;4577:15;4466:136;-1:-1:-1;4618:9:32;;4408:225::o", + "object": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012957806370a082311461013c57806395d89b4114610165578063a457c2d71461016d578063a9059cbb14610180578063dd62ed3e1461019357600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101cc565b6040516100c3919061066b565b60405180910390f35b6100df6100da3660046106d5565b61025e565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f3660046106ff565b610275565b60055460405160ff90911681526020016100c3565b6100df6101373660046106d5565b6102de565b6100f361014a36600461073b565b6001600160a01b031660009081526020819052604090205490565b6100b6610314565b6100df61017b3660046106d5565b610323565b6100df61018e3660046106d5565b610372565b6100f36101a1366004610756565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6060600380546101db90610789565b80601f016020809104026020016040519081016040528092919081815260200182805461020790610789565b80156102545780601f1061022957610100808354040283529160200191610254565b820191906000526020600020905b81548152906001019060200180831161023757829003601f168201915b5050505050905090565b600061026b33848461037f565b5060015b92915050565b60006102828484846104a9565b6102d484336102cf8560405180606001604052806028815260200161080b602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061062c565b61037f565b5060019392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161026b9185906102cf9086610658565b6060600480546101db90610789565b600061026b33846102cf85604051806060016040528060258152602001610833602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919061062c565b600061026b3384846104a9565b6001600160a01b0383166103e65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166104475760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831661050d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dd565b6001600160a01b03821661056f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dd565b6105ac816040518060600160405280602681526020016107e5602691396001600160a01b038616600090815260208190526040902054919061062c565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105db9082610658565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161049c565b600081848411156106505760405162461bcd60e51b81526004016103dd919061066b565b505050900390565b600061066482846107c3565b9392505050565b600060208083528351808285015260005b818110156106985785810183015185820160400152820161067c565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146106d057600080fd5b919050565b600080604083850312156106e857600080fd5b6106f1836106b9565b946020939093013593505050565b60008060006060848603121561071457600080fd5b61071d846106b9565b925061072b602085016106b9565b9150604084013590509250925092565b60006020828403121561074d57600080fd5b610664826106b9565b6000806040838503121561076957600080fd5b610772836106b9565b9150610780602084016106b9565b90509250929050565b600181811c9082168061079d57607f821691505b6020821081036107bd57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026f57634e487b7160e01b600052601160045260246000fdfe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220216263053d8933afda34d25e1f3459dd95c7b19dd11e61fc67dfbfd59d9d865064736f6c63430008110033", + "sourceMap": "7736:9750:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10753:169;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:32;;1162:22;1144:41;;1132:2;1117:18;10753:169:21;1004:187:32;9706:108:21;9794:12;;9706:108;;;1342:25:32;;;1330:2;1315:18;9706:108:21;1196:177:32;11404:321:21;;;;;;:::i;:::-;;:::i;9550:91::-;9624:9;;9550:91;;9624:9;;;;1853:36:32;;1841:2;1826:18;9550:91:21;1711:184:32;12134:218:21;;;;;;:::i;:::-;;:::i;9877:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;8817:95;;;:::i;12855:269::-;;;;;;:::i;:::-;;:::i;10217:175::-;;;;;;:::i;:::-;;:::i;10455:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;10571:18:21;;;10544:7;10571:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10455:151;8607:91;8652:13;8685:5;8678:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;:::o;10753:169::-;10836:4;10853:39;699:10:19;10876:7:21;10885:6;10853:8;:39::i;:::-;-1:-1:-1;10910:4:21;10753:169;;;;;:::o;11404:321::-;11510:4;11527:36;11537:6;11545:9;11556:6;11527:9;:36::i;:::-;11574:121;11583:6;699:10:19;11605:89:21;11643:6;11605:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11605:19:21;;;;;;:11;:19;;;;;;;;699:10:19;11605:33:21;;;;;;;;;;:37;:89::i;:::-;11574:8;:121::i;:::-;-1:-1:-1;11713:4:21;11404:321;;;;;:::o;12134:218::-;699:10:19;12222:4:21;12271:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12271:34:21;;;;;;;;;;12222:4;;12239:83;;12262:7;;12271:50;;12310:10;12271:38;:50::i;8817:95::-;8864:13;8897:7;8890:14;;;;;:::i;12855:269::-;12948:4;12965:129;699:10:19;12988:7:21;12997:96;13036:15;12997:96;;;;;;;;;;;;;;;;;699:10:19;12997:25:21;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12997:34:21;;;;;;;;;;;;:38;:96::i;10217:175::-;10303:4;10320:42;699:10:19;10344:9:21;10355:6;10320:9;:42::i;16012:346::-;-1:-1:-1;;;;;16114:19:21;;16106:68;;;;-1:-1:-1;;;16106:68:21;;2943:2:32;16106:68:21;;;2925:21:32;2982:2;2962:18;;;2955:30;3021:34;3001:18;;;2994:62;-1:-1:-1;;;3072:18:32;;;3065:34;3116:19;;16106:68:21;;;;;;;;;-1:-1:-1;;;;;16193:21:21;;16185:68;;;;-1:-1:-1;;;16185:68:21;;3348:2:32;16185:68:21;;;3330:21:32;3387:2;3367:18;;;3360:30;3426:34;3406:18;;;3399:62;-1:-1:-1;;;3477:18:32;;;3470:32;3519:19;;16185:68:21;3146:398:32;16185:68:21;-1:-1:-1;;;;;16266:18:21;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16318:32;;1342:25:32;;;16318:32:21;;1315:18:32;16318:32:21;;;;;;;;16012:346;;;:::o;13614:549::-;-1:-1:-1;;;;;13720:20:21;;13712:70;;;;-1:-1:-1;;;13712:70:21;;3751:2:32;13712:70:21;;;3733:21:32;3790:2;3770:18;;;3763:30;3829:34;3809:18;;;3802:62;-1:-1:-1;;;3880:18:32;;;3873:35;3925:19;;13712:70:21;3549:401:32;13712:70:21;-1:-1:-1;;;;;13801:23:21;;13793:71;;;;-1:-1:-1;;;13793:71:21;;4157:2:32;13793:71:21;;;4139:21:32;4196:2;4176:18;;;4169:30;4235:34;4215:18;;;4208:62;-1:-1:-1;;;4286:18:32;;;4279:33;4329:19;;13793:71:21;3955:399:32;13793:71:21;13967;13989:6;13967:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13967:17:21;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;13947:17:21;;;:9;:17;;;;;;;;;;;:91;;;;14072:20;;;;;;;:32;;14097:6;14072:24;:32::i;:::-;-1:-1:-1;;;;;14049:20:21;;;:9;:20;;;;;;;;;;;;:55;;;;14120:35;1342:25:32;;;14049:20:21;;14120:35;;;;;;1315:18:32;14120:35:21;1196:177:32;4765:206:21;4851:7;4912:12;4904:6;;;;4896:29;;;;-1:-1:-1;;;4896:29:21;;;;;;;;:::i;:::-;-1:-1:-1;;;4947:5:21;;;4765:206::o;2486:98::-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;2486:98;-1:-1:-1;;;2486:98:21:o;14:548:32:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:32;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:32:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;1900:186::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2051:29;2070:9;2051:29;:::i;2091:260::-;2159:6;2167;2220:2;2208:9;2199:7;2195:23;2191:32;2188:52;;;2236:1;2233;2226:12;2188:52;2259:29;2278:9;2259:29;:::i;:::-;2249:39;;2307:38;2341:2;2330:9;2326:18;2307:38;:::i;:::-;2297:48;;2091:260;;;;;:::o;2356:380::-;2435:1;2431:12;;;;2478;;;2499:61;;2553:4;2545:6;2541:17;2531:27;;2499:61;2606:2;2598:6;2595:14;2575:18;2572:38;2569:161;;2652:10;2647:3;2643:20;2640:1;2633:31;2687:4;2684:1;2677:15;2715:4;2712:1;2705:15;2569:161;;2356:380;;;:::o;4359:222::-;4424:9;;;4445:10;;;4442:133;;;4497:10;4492:3;4488:20;4485:1;4478:31;4532:4;4529:1;4522:15;4560:4;4557:1;4550:15", "linkReferences": {} }, "methodIdentifiers": { @@ -310,33 +310,422 @@ "transfer(address,uint256)": "a9059cbb", "transferFrom(address,address,uint256)": "23b872dd" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of the {IERC20} interface. This implementation is agnostic to the way tokens are created. This means that a supply mechanism has to be added in a derived contract using {_mint}. For a generic mechanism see {ERC20PresetMinterPauser}. TIP: For a detailed writeup see our guide https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How to implement supply mechanisms]. We have followed general OpenZeppelin guidelines: functions revert instead of returning `false` on failure. This behavior is nonetheless conventional and does not conflict with the expectations of ERC20 applications. Additionally, an {Approval} event is emitted on calls to {transferFrom}. This allows applications to reconstruct the allowance for all accounts just by listening to said events. Other implementations of the EIP may not emit these events, as it isn't required by the specification. Finally, the non-standard {decreaseAllowance} and {increaseAllowance} functions have been added to mitigate the well-known issues around setting allowances. See {IERC20-approve}.\",\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"See {IERC20-allowance}.\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}. Requirements: - `spender` cannot be the zero address.\"},\"balanceOf(address)\":{\"details\":\"See {IERC20-balanceOf}.\"},\"constructor\":{\"details\":\"Sets the values for {name} and {symbol}, initializes {decimals} with a default value of 18. To select a different value for {decimals}, use {_setupDecimals}. All three of these values are immutable: they can only be set once during construction.\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.\"},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token, usually a shorter version of the name.\"},\"totalSupply()\":{\"details\":\"See {IERC20-totalSupply}.\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/ERC20.sol\":\"ERC20\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/interfaces/ERC20.sol\":{\"keccak256\":\"0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd\",\"dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "name_", + "type": "string" + }, + { + "internalType": "string", + "name": "symbol_", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "spender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Approval", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "to", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Transfer", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "allowance(address,address)": { + "details": "See {IERC20-allowance}." + }, + "approve(address,uint256)": { + "details": "See {IERC20-approve}. Requirements: - `spender` cannot be the zero address." + }, + "balanceOf(address)": { + "details": "See {IERC20-balanceOf}." + }, + "constructor": { + "details": "Sets the values for {name} and {symbol}, initializes {decimals} with a default value of 18. To select a different value for {decimals}, use {_setupDecimals}. All three of these values are immutable: they can only be set once during construction." + }, + "decimals()": { + "details": "Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}." + }, + "decreaseAllowance(address,uint256)": { + "details": "Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`." + }, + "increaseAllowance(address,uint256)": { + "details": "Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address." + }, + "name()": { + "details": "Returns the name of the token." + }, + "symbol()": { + "details": "Returns the symbol of the token, usually a shorter version of the name." + }, + "totalSupply()": { + "details": "See {IERC20-totalSupply}." + }, + "transfer(address,uint256)": { + "details": "See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`." + }, + "transferFrom(address,address,uint256)": { + "details": "See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`." + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/ERC20.sol": "ERC20" + }, + "libraries": {} + }, + "sources": { + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/interfaces/ERC20.sol": { + "keccak256": "0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d", + "urls": [ + "bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd", + "dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/ERC20.sol", - "id": 29067, + "id": 29082, "exportedSymbols": { "Context": [ - 28107 + 28122 ], "ERC20": [ - 29066 + 29081 ], "IERC20": [ - 29143 + 29158 ], "IERC20Extended": [ - 29151 + 29166 ], "SafeMath": [ - 28568 + 28583 ] }, "nodeType": "SourceUnit", "src": "46:17440:21", "nodes": [ { - "id": 28257, + "id": 28272, "nodeType": "PragmaDirective", "src": "46:23:21", + "nodes": [], "literals": [ "solidity", "^", @@ -345,61 +734,65 @@ ] }, { - "id": 28258, + "id": 28273, "nodeType": "ImportDirective", "src": "73:35:21", + "nodes": [], "absolutePath": "src/extensions/Context.sol", "file": "../extensions/Context.sol", "nameLocation": "-1:-1:-1", - "scope": 29067, - "sourceUnit": 28108, + "scope": 29082, + "sourceUnit": 28123, "symbolAliases": [], "unitAlias": "" }, { - "id": 28259, + "id": 28274, "nodeType": "ImportDirective", "src": "110:22:21", + "nodes": [], "absolutePath": "src/interfaces/IERC20.sol", "file": "./IERC20.sol", "nameLocation": "-1:-1:-1", - "scope": 29067, - "sourceUnit": 29152, + "scope": 29082, + "sourceUnit": 29167, "symbolAliases": [], "unitAlias": "" }, { - "id": 28568, + "id": 28583, "nodeType": "ContractDefinition", "src": "136:6409:21", "nodes": [ { - "id": 28291, + "id": 28306, "nodeType": "FunctionDefinition", "src": "301:222:21", + "nodes": [], "body": { - "id": 28290, + "id": 28305, "nodeType": "Block", "src": "377:146:21", + "nodes": [], "statements": [ { - "id": 28289, + "id": 28304, "nodeType": "UncheckedBlock", "src": "388:128:21", "statements": [ { "assignments": [ - 28272 + 28287 ], "declarations": [ { "constant": false, - "id": 28272, + "id": 28287, "mutability": "mutable", "name": "c", "nameLocation": "421:1:21", "nodeType": "VariableDeclaration", - "scope": 28289, + "scope": 28304, "src": "413:9:21", "stateVariable": false, "storageLocation": "default", @@ -408,7 +801,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28271, + "id": 28286, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "413:7:21", @@ -420,23 +813,23 @@ "visibility": "internal" } ], - "id": 28276, + "id": 28291, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28275, + "id": 28290, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28273, + "id": 28288, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28262, + "referencedDeclaration": 28277, "src": "425:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -446,11 +839,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 28274, + "id": 28289, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28264, + "referencedDeclaration": 28279, "src": "429:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -472,17 +865,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28279, + "id": 28294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28277, + "id": 28292, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28272, + "referencedDeclaration": 28287, "src": "449:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -492,11 +885,11 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 28278, + "id": 28293, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28262, + "referencedDeclaration": 28277, "src": "453:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -509,7 +902,7 @@ "typeString": "bool" } }, - "id": 28284, + "id": 28299, "nodeType": "IfStatement", "src": "445:28:21", "trueBody": { @@ -517,7 +910,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28280, + "id": 28295, "isConstant": false, "isLValue": false, "isPure": true, @@ -533,7 +926,7 @@ }, { "hexValue": "30", - "id": 28281, + "id": 28296, "isConstant": false, "isLValue": false, "isPure": true, @@ -548,7 +941,7 @@ "value": "0" } ], - "id": 28282, + "id": 28297, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -561,8 +954,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28270, - "id": 28283, + "functionReturnParameters": 28285, + "id": 28298, "nodeType": "Return", "src": "456:17:21" } @@ -572,7 +965,7 @@ "components": [ { "hexValue": "74727565", - "id": 28285, + "id": 28300, "isConstant": false, "isLValue": false, "isPure": true, @@ -587,11 +980,11 @@ "value": "true" }, { - "id": 28286, + "id": 28301, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28272, + "referencedDeclaration": 28287, "src": "502:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -599,7 +992,7 @@ } } ], - "id": 28287, + "id": 28302, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -612,8 +1005,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28270, - "id": 28288, + "functionReturnParameters": 28285, + "id": 28303, "nodeType": "Return", "src": "488:16:21" } @@ -622,7 +1015,7 @@ ] }, "documentation": { - "id": 28260, + "id": 28275, "nodeType": "StructuredDocumentation", "src": "160:135:21", "text": " @dev Returns the addition of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -633,17 +1026,17 @@ "name": "tryAdd", "nameLocation": "310:6:21", "parameters": { - "id": 28265, + "id": 28280, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28262, + "id": 28277, "mutability": "mutable", "name": "a", "nameLocation": "325:1:21", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "317:9:21", "stateVariable": false, "storageLocation": "default", @@ -652,7 +1045,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28261, + "id": 28276, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "317:7:21", @@ -665,12 +1058,12 @@ }, { "constant": false, - "id": 28264, + "id": 28279, "mutability": "mutable", "name": "b", "nameLocation": "336:1:21", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "328:9:21", "stateVariable": false, "storageLocation": "default", @@ -679,7 +1072,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28263, + "id": 28278, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "328:7:21", @@ -694,17 +1087,17 @@ "src": "316:22:21" }, "returnParameters": { - "id": 28270, + "id": 28285, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28267, + "id": 28282, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "362:4:21", "stateVariable": false, "storageLocation": "default", @@ -713,7 +1106,7 @@ "typeString": "bool" }, "typeName": { - "id": 28266, + "id": 28281, "name": "bool", "nodeType": "ElementaryTypeName", "src": "362:4:21", @@ -726,12 +1119,12 @@ }, { "constant": false, - "id": 28269, + "id": 28284, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "368:7:21", "stateVariable": false, "storageLocation": "default", @@ -740,7 +1133,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28268, + "id": 28283, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "368:7:21", @@ -754,22 +1147,24 @@ ], "src": "361:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28319, + "id": 28334, "nodeType": "FunctionDefinition", "src": "675:194:21", + "nodes": [], "body": { - "id": 28318, + "id": 28333, "nodeType": "Block", "src": "751:118:21", + "nodes": [], "statements": [ { - "id": 28317, + "id": 28332, "nodeType": "UncheckedBlock", "src": "762:100:21", "statements": [ @@ -779,17 +1174,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28305, + "id": 28320, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28303, + "id": 28318, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28296, + "referencedDeclaration": 28311, "src": "791:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -799,11 +1194,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 28304, + "id": 28319, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28294, + "referencedDeclaration": 28309, "src": "795:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -816,7 +1211,7 @@ "typeString": "bool" } }, - "id": 28310, + "id": 28325, "nodeType": "IfStatement", "src": "787:28:21", "trueBody": { @@ -824,7 +1219,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28306, + "id": 28321, "isConstant": false, "isLValue": false, "isPure": true, @@ -840,7 +1235,7 @@ }, { "hexValue": "30", - "id": 28307, + "id": 28322, "isConstant": false, "isLValue": false, "isPure": true, @@ -855,7 +1250,7 @@ "value": "0" } ], - "id": 28308, + "id": 28323, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -868,8 +1263,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28302, - "id": 28309, + "functionReturnParameters": 28317, + "id": 28324, "nodeType": "Return", "src": "798:17:21" } @@ -879,7 +1274,7 @@ "components": [ { "hexValue": "74727565", - "id": 28311, + "id": 28326, "isConstant": false, "isLValue": false, "isPure": true, @@ -898,17 +1293,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28314, + "id": 28329, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28312, + "id": 28327, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28294, + "referencedDeclaration": 28309, "src": "844:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -918,11 +1313,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 28313, + "id": 28328, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28296, + "referencedDeclaration": 28311, "src": "848:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -936,7 +1331,7 @@ } } ], - "id": 28315, + "id": 28330, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -949,8 +1344,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28302, - "id": 28316, + "functionReturnParameters": 28317, + "id": 28331, "nodeType": "Return", "src": "830:20:21" } @@ -959,7 +1354,7 @@ ] }, "documentation": { - "id": 28292, + "id": 28307, "nodeType": "StructuredDocumentation", "src": "531:138:21", "text": " @dev Returns the subtraction of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -970,17 +1365,17 @@ "name": "trySub", "nameLocation": "684:6:21", "parameters": { - "id": 28297, + "id": 28312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28294, + "id": 28309, "mutability": "mutable", "name": "a", "nameLocation": "699:1:21", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "691:9:21", "stateVariable": false, "storageLocation": "default", @@ -989,7 +1384,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28293, + "id": 28308, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "691:7:21", @@ -1002,12 +1397,12 @@ }, { "constant": false, - "id": 28296, + "id": 28311, "mutability": "mutable", "name": "b", "nameLocation": "710:1:21", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "702:9:21", "stateVariable": false, "storageLocation": "default", @@ -1016,7 +1411,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28295, + "id": 28310, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "702:7:21", @@ -1031,17 +1426,17 @@ "src": "690:22:21" }, "returnParameters": { - "id": 28302, + "id": 28317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28299, + "id": 28314, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "736:4:21", "stateVariable": false, "storageLocation": "default", @@ -1050,7 +1445,7 @@ "typeString": "bool" }, "typeName": { - "id": 28298, + "id": 28313, "name": "bool", "nodeType": "ElementaryTypeName", "src": "736:4:21", @@ -1063,12 +1458,12 @@ }, { "constant": false, - "id": 28301, + "id": 28316, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "742:7:21", "stateVariable": false, "storageLocation": "default", @@ -1077,7 +1472,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28300, + "id": 28315, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "742:7:21", @@ -1091,22 +1486,24 @@ ], "src": "735:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28361, + "id": 28376, "nodeType": "FunctionDefinition", "src": "1024:503:21", + "nodes": [], "body": { - "id": 28360, + "id": 28375, "nodeType": "Block", "src": "1100:427:21", + "nodes": [], "statements": [ { - "id": 28359, + "id": 28374, "nodeType": "UncheckedBlock", "src": "1111:409:21", "statements": [ @@ -1116,17 +1513,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28333, + "id": 28348, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28331, + "id": 28346, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28322, + "referencedDeclaration": 28337, "src": "1373:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1137,7 +1534,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 28332, + "id": 28347, "isConstant": false, "isLValue": false, "isPure": true, @@ -1157,7 +1554,7 @@ "typeString": "bool" } }, - "id": 28338, + "id": 28353, "nodeType": "IfStatement", "src": "1369:28:21", "trueBody": { @@ -1165,7 +1562,7 @@ "components": [ { "hexValue": "74727565", - "id": 28334, + "id": 28349, "isConstant": false, "isLValue": false, "isPure": true, @@ -1181,7 +1578,7 @@ }, { "hexValue": "30", - "id": 28335, + "id": 28350, "isConstant": false, "isLValue": false, "isPure": true, @@ -1196,7 +1593,7 @@ "value": "0" } ], - "id": 28336, + "id": 28351, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1209,25 +1606,25 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28330, - "id": 28337, + "functionReturnParameters": 28345, + "id": 28352, "nodeType": "Return", "src": "1381:16:21" } }, { "assignments": [ - 28340 + 28355 ], "declarations": [ { "constant": false, - "id": 28340, + "id": 28355, "mutability": "mutable", "name": "c", "nameLocation": "1420:1:21", "nodeType": "VariableDeclaration", - "scope": 28359, + "scope": 28374, "src": "1412:9:21", "stateVariable": false, "storageLocation": "default", @@ -1236,7 +1633,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28339, + "id": 28354, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1412:7:21", @@ -1248,23 +1645,23 @@ "visibility": "internal" } ], - "id": 28344, + "id": 28359, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28343, + "id": 28358, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28341, + "id": 28356, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28322, + "referencedDeclaration": 28337, "src": "1424:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1274,11 +1671,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28342, + "id": 28357, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28324, + "referencedDeclaration": 28339, "src": "1428:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1300,7 +1697,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28349, + "id": 28364, "isConstant": false, "isLValue": false, "isPure": false, @@ -1310,17 +1707,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28347, + "id": 28362, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28345, + "id": 28360, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28340, + "referencedDeclaration": 28355, "src": "1448:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1330,11 +1727,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28346, + "id": 28361, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28322, + "referencedDeclaration": 28337, "src": "1452:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1350,11 +1747,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 28348, + "id": 28363, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28324, + "referencedDeclaration": 28339, "src": "1457:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1367,7 +1764,7 @@ "typeString": "bool" } }, - "id": 28354, + "id": 28369, "nodeType": "IfStatement", "src": "1444:33:21", "trueBody": { @@ -1375,7 +1772,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28350, + "id": 28365, "isConstant": false, "isLValue": false, "isPure": true, @@ -1391,7 +1788,7 @@ }, { "hexValue": "30", - "id": 28351, + "id": 28366, "isConstant": false, "isLValue": false, "isPure": true, @@ -1406,7 +1803,7 @@ "value": "0" } ], - "id": 28352, + "id": 28367, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1419,8 +1816,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28330, - "id": 28353, + "functionReturnParameters": 28345, + "id": 28368, "nodeType": "Return", "src": "1460:17:21" } @@ -1430,7 +1827,7 @@ "components": [ { "hexValue": "74727565", - "id": 28355, + "id": 28370, "isConstant": false, "isLValue": false, "isPure": true, @@ -1445,11 +1842,11 @@ "value": "true" }, { - "id": 28356, + "id": 28371, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28340, + "referencedDeclaration": 28355, "src": "1506:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1457,7 +1854,7 @@ } } ], - "id": 28357, + "id": 28372, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1470,8 +1867,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28330, - "id": 28358, + "functionReturnParameters": 28345, + "id": 28373, "nodeType": "Return", "src": "1492:16:21" } @@ -1480,7 +1877,7 @@ ] }, "documentation": { - "id": 28320, + "id": 28335, "nodeType": "StructuredDocumentation", "src": "877:141:21", "text": " @dev Returns the multiplication of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -1491,17 +1888,17 @@ "name": "tryMul", "nameLocation": "1033:6:21", "parameters": { - "id": 28325, + "id": 28340, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28322, + "id": 28337, "mutability": "mutable", "name": "a", "nameLocation": "1048:1:21", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1040:9:21", "stateVariable": false, "storageLocation": "default", @@ -1510,7 +1907,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28321, + "id": 28336, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1040:7:21", @@ -1523,12 +1920,12 @@ }, { "constant": false, - "id": 28324, + "id": 28339, "mutability": "mutable", "name": "b", "nameLocation": "1059:1:21", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1051:9:21", "stateVariable": false, "storageLocation": "default", @@ -1537,7 +1934,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28323, + "id": 28338, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1051:7:21", @@ -1552,17 +1949,17 @@ "src": "1039:22:21" }, "returnParameters": { - "id": 28330, + "id": 28345, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28327, + "id": 28342, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1085:4:21", "stateVariable": false, "storageLocation": "default", @@ -1571,7 +1968,7 @@ "typeString": "bool" }, "typeName": { - "id": 28326, + "id": 28341, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1085:4:21", @@ -1584,12 +1981,12 @@ }, { "constant": false, - "id": 28329, + "id": 28344, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1091:7:21", "stateVariable": false, "storageLocation": "default", @@ -1598,7 +1995,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28328, + "id": 28343, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1091:7:21", @@ -1612,22 +2009,24 @@ ], "src": "1084:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28389, + "id": 28404, "nodeType": "FunctionDefinition", "src": "1683:195:21", + "nodes": [], "body": { - "id": 28388, + "id": 28403, "nodeType": "Block", "src": "1759:119:21", + "nodes": [], "statements": [ { - "id": 28387, + "id": 28402, "nodeType": "UncheckedBlock", "src": "1770:101:21", "statements": [ @@ -1637,17 +2036,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28375, + "id": 28390, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28373, + "id": 28388, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28366, + "referencedDeclaration": 28381, "src": "1799:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1658,7 +2057,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 28374, + "id": 28389, "isConstant": false, "isLValue": false, "isPure": true, @@ -1678,7 +2077,7 @@ "typeString": "bool" } }, - "id": 28380, + "id": 28395, "nodeType": "IfStatement", "src": "1795:29:21", "trueBody": { @@ -1686,7 +2085,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28376, + "id": 28391, "isConstant": false, "isLValue": false, "isPure": true, @@ -1702,7 +2101,7 @@ }, { "hexValue": "30", - "id": 28377, + "id": 28392, "isConstant": false, "isLValue": false, "isPure": true, @@ -1717,7 +2116,7 @@ "value": "0" } ], - "id": 28378, + "id": 28393, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1730,8 +2129,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28372, - "id": 28379, + "functionReturnParameters": 28387, + "id": 28394, "nodeType": "Return", "src": "1807:17:21" } @@ -1741,7 +2140,7 @@ "components": [ { "hexValue": "74727565", - "id": 28381, + "id": 28396, "isConstant": false, "isLValue": false, "isPure": true, @@ -1760,17 +2159,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28384, + "id": 28399, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28382, + "id": 28397, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28364, + "referencedDeclaration": 28379, "src": "1853:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1780,11 +2179,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28383, + "id": 28398, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28366, + "referencedDeclaration": 28381, "src": "1857:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1798,7 +2197,7 @@ } } ], - "id": 28385, + "id": 28400, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1811,8 +2210,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28372, - "id": 28386, + "functionReturnParameters": 28387, + "id": 28401, "nodeType": "Return", "src": "1839:20:21" } @@ -1821,7 +2220,7 @@ ] }, "documentation": { - "id": 28362, + "id": 28377, "nodeType": "StructuredDocumentation", "src": "1535:142:21", "text": " @dev Returns the division of two unsigned integers, with a division by zero flag.\n _Available since v3.4._" @@ -1832,17 +2231,17 @@ "name": "tryDiv", "nameLocation": "1692:6:21", "parameters": { - "id": 28367, + "id": 28382, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28364, + "id": 28379, "mutability": "mutable", "name": "a", "nameLocation": "1707:1:21", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1699:9:21", "stateVariable": false, "storageLocation": "default", @@ -1851,7 +2250,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28363, + "id": 28378, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1699:7:21", @@ -1864,12 +2263,12 @@ }, { "constant": false, - "id": 28366, + "id": 28381, "mutability": "mutable", "name": "b", "nameLocation": "1718:1:21", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1710:9:21", "stateVariable": false, "storageLocation": "default", @@ -1878,7 +2277,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28365, + "id": 28380, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1710:7:21", @@ -1893,17 +2292,17 @@ "src": "1698:22:21" }, "returnParameters": { - "id": 28372, + "id": 28387, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28369, + "id": 28384, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1744:4:21", "stateVariable": false, "storageLocation": "default", @@ -1912,7 +2311,7 @@ "typeString": "bool" }, "typeName": { - "id": 28368, + "id": 28383, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1744:4:21", @@ -1925,12 +2324,12 @@ }, { "constant": false, - "id": 28371, + "id": 28386, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1750:7:21", "stateVariable": false, "storageLocation": "default", @@ -1939,7 +2338,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28370, + "id": 28385, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1750:7:21", @@ -1953,22 +2352,24 @@ ], "src": "1743:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28417, + "id": 28432, "nodeType": "FunctionDefinition", "src": "2044:195:21", + "nodes": [], "body": { - "id": 28416, + "id": 28431, "nodeType": "Block", "src": "2120:119:21", + "nodes": [], "statements": [ { - "id": 28415, + "id": 28430, "nodeType": "UncheckedBlock", "src": "2131:101:21", "statements": [ @@ -1978,17 +2379,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28403, + "id": 28418, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28401, + "id": 28416, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28394, + "referencedDeclaration": 28409, "src": "2160:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1999,7 +2400,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 28402, + "id": 28417, "isConstant": false, "isLValue": false, "isPure": true, @@ -2019,7 +2420,7 @@ "typeString": "bool" } }, - "id": 28408, + "id": 28423, "nodeType": "IfStatement", "src": "2156:29:21", "trueBody": { @@ -2027,7 +2428,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28404, + "id": 28419, "isConstant": false, "isLValue": false, "isPure": true, @@ -2043,7 +2444,7 @@ }, { "hexValue": "30", - "id": 28405, + "id": 28420, "isConstant": false, "isLValue": false, "isPure": true, @@ -2058,7 +2459,7 @@ "value": "0" } ], - "id": 28406, + "id": 28421, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -2071,8 +2472,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28400, - "id": 28407, + "functionReturnParameters": 28415, + "id": 28422, "nodeType": "Return", "src": "2168:17:21" } @@ -2082,7 +2483,7 @@ "components": [ { "hexValue": "74727565", - "id": 28409, + "id": 28424, "isConstant": false, "isLValue": false, "isPure": true, @@ -2101,17 +2502,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28412, + "id": 28427, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28410, + "id": 28425, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28392, + "referencedDeclaration": 28407, "src": "2214:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2121,11 +2522,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 28411, + "id": 28426, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28394, + "referencedDeclaration": 28409, "src": "2218:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2139,7 +2540,7 @@ } } ], - "id": 28413, + "id": 28428, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -2152,8 +2553,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28400, - "id": 28414, + "functionReturnParameters": 28415, + "id": 28429, "nodeType": "Return", "src": "2200:20:21" } @@ -2162,7 +2563,7 @@ ] }, "documentation": { - "id": 28390, + "id": 28405, "nodeType": "StructuredDocumentation", "src": "1886:152:21", "text": " @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.\n _Available since v3.4._" @@ -2173,17 +2574,17 @@ "name": "tryMod", "nameLocation": "2053:6:21", "parameters": { - "id": 28395, + "id": 28410, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28392, + "id": 28407, "mutability": "mutable", "name": "a", "nameLocation": "2068:1:21", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2060:9:21", "stateVariable": false, "storageLocation": "default", @@ -2192,7 +2593,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28391, + "id": 28406, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2060:7:21", @@ -2205,12 +2606,12 @@ }, { "constant": false, - "id": 28394, + "id": 28409, "mutability": "mutable", "name": "b", "nameLocation": "2079:1:21", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2071:9:21", "stateVariable": false, "storageLocation": "default", @@ -2219,7 +2620,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28393, + "id": 28408, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2071:7:21", @@ -2234,17 +2635,17 @@ "src": "2059:22:21" }, "returnParameters": { - "id": 28400, + "id": 28415, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28397, + "id": 28412, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2105:4:21", "stateVariable": false, "storageLocation": "default", @@ -2253,7 +2654,7 @@ "typeString": "bool" }, "typeName": { - "id": 28396, + "id": 28411, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2105:4:21", @@ -2266,12 +2667,12 @@ }, { "constant": false, - "id": 28399, + "id": 28414, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2111:7:21", "stateVariable": false, "storageLocation": "default", @@ -2280,7 +2681,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28398, + "id": 28413, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2111:7:21", @@ -2294,19 +2695,21 @@ ], "src": "2104:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28432, + "id": 28447, "nodeType": "FunctionDefinition", "src": "2486:98:21", + "nodes": [], "body": { - "id": 28431, + "id": 28446, "nodeType": "Block", "src": "2553:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2314,17 +2717,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28429, + "id": 28444, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28427, + "id": 28442, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28420, + "referencedDeclaration": 28435, "src": "2571:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2334,11 +2737,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 28428, + "id": 28443, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28422, + "referencedDeclaration": 28437, "src": "2575:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2351,15 +2754,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28426, - "id": 28430, + "functionReturnParameters": 28441, + "id": 28445, "nodeType": "Return", "src": "2564:12:21" } ] }, "documentation": { - "id": 28418, + "id": 28433, "nodeType": "StructuredDocumentation", "src": "2247:233:21", "text": " @dev Returns the addition of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `+` operator.\n Requirements:\n - Addition cannot overflow." @@ -2370,17 +2773,17 @@ "name": "add", "nameLocation": "2495:3:21", "parameters": { - "id": 28423, + "id": 28438, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28420, + "id": 28435, "mutability": "mutable", "name": "a", "nameLocation": "2507:1:21", "nodeType": "VariableDeclaration", - "scope": 28432, + "scope": 28447, "src": "2499:9:21", "stateVariable": false, "storageLocation": "default", @@ -2389,7 +2792,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28419, + "id": 28434, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2499:7:21", @@ -2402,12 +2805,12 @@ }, { "constant": false, - "id": 28422, + "id": 28437, "mutability": "mutable", "name": "b", "nameLocation": "2518:1:21", "nodeType": "VariableDeclaration", - "scope": 28432, + "scope": 28447, "src": "2510:9:21", "stateVariable": false, "storageLocation": "default", @@ -2416,7 +2819,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28421, + "id": 28436, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2510:7:21", @@ -2431,17 +2834,17 @@ "src": "2498:22:21" }, "returnParameters": { - "id": 28426, + "id": 28441, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28425, + "id": 28440, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28432, + "scope": 28447, "src": "2544:7:21", "stateVariable": false, "storageLocation": "default", @@ -2450,7 +2853,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28424, + "id": 28439, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2544:7:21", @@ -2464,19 +2867,21 @@ ], "src": "2543:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28447, + "id": 28462, "nodeType": "FunctionDefinition", "src": "2867:98:21", + "nodes": [], "body": { - "id": 28446, + "id": 28461, "nodeType": "Block", "src": "2934:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2484,17 +2889,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28444, + "id": 28459, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28442, + "id": 28457, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28435, + "referencedDeclaration": 28450, "src": "2952:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2504,11 +2909,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 28443, + "id": 28458, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28437, + "referencedDeclaration": 28452, "src": "2956:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2521,15 +2926,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28441, - "id": 28445, + "functionReturnParameters": 28456, + "id": 28460, "nodeType": "Return", "src": "2945:12:21" } ] }, "documentation": { - "id": 28433, + "id": 28448, "nodeType": "StructuredDocumentation", "src": "2592:269:21", "text": " @dev Returns the subtraction of two unsigned integers, reverting on\n overflow (when the result is negative).\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." @@ -2540,17 +2945,17 @@ "name": "sub", "nameLocation": "2876:3:21", "parameters": { - "id": 28438, + "id": 28453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28435, + "id": 28450, "mutability": "mutable", "name": "a", "nameLocation": "2888:1:21", "nodeType": "VariableDeclaration", - "scope": 28447, + "scope": 28462, "src": "2880:9:21", "stateVariable": false, "storageLocation": "default", @@ -2559,7 +2964,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28434, + "id": 28449, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2880:7:21", @@ -2572,12 +2977,12 @@ }, { "constant": false, - "id": 28437, + "id": 28452, "mutability": "mutable", "name": "b", "nameLocation": "2899:1:21", "nodeType": "VariableDeclaration", - "scope": 28447, + "scope": 28462, "src": "2891:9:21", "stateVariable": false, "storageLocation": "default", @@ -2586,7 +2991,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28436, + "id": 28451, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2891:7:21", @@ -2601,17 +3006,17 @@ "src": "2879:22:21" }, "returnParameters": { - "id": 28441, + "id": 28456, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28440, + "id": 28455, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28447, + "scope": 28462, "src": "2925:7:21", "stateVariable": false, "storageLocation": "default", @@ -2620,7 +3025,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28439, + "id": 28454, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2925:7:21", @@ -2634,19 +3039,21 @@ ], "src": "2924:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28462, + "id": 28477, "nodeType": "FunctionDefinition", "src": "3224:98:21", + "nodes": [], "body": { - "id": 28461, + "id": 28476, "nodeType": "Block", "src": "3291:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2654,17 +3061,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28459, + "id": 28474, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28457, + "id": 28472, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28450, + "referencedDeclaration": 28465, "src": "3309:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2674,11 +3081,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28458, + "id": 28473, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28452, + "referencedDeclaration": 28467, "src": "3313:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2691,15 +3098,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28456, - "id": 28460, + "functionReturnParameters": 28471, + "id": 28475, "nodeType": "Return", "src": "3302:12:21" } ] }, "documentation": { - "id": 28448, + "id": 28463, "nodeType": "StructuredDocumentation", "src": "2973:245:21", "text": " @dev Returns the multiplication of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `*` operator.\n Requirements:\n - Multiplication cannot overflow." @@ -2710,17 +3117,17 @@ "name": "mul", "nameLocation": "3233:3:21", "parameters": { - "id": 28453, + "id": 28468, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28450, + "id": 28465, "mutability": "mutable", "name": "a", "nameLocation": "3245:1:21", "nodeType": "VariableDeclaration", - "scope": 28462, + "scope": 28477, "src": "3237:9:21", "stateVariable": false, "storageLocation": "default", @@ -2729,7 +3136,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28449, + "id": 28464, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3237:7:21", @@ -2742,12 +3149,12 @@ }, { "constant": false, - "id": 28452, + "id": 28467, "mutability": "mutable", "name": "b", "nameLocation": "3256:1:21", "nodeType": "VariableDeclaration", - "scope": 28462, + "scope": 28477, "src": "3248:9:21", "stateVariable": false, "storageLocation": "default", @@ -2756,7 +3163,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28451, + "id": 28466, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3248:7:21", @@ -2771,17 +3178,17 @@ "src": "3236:22:21" }, "returnParameters": { - "id": 28456, + "id": 28471, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28455, + "id": 28470, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28462, + "scope": 28477, "src": "3282:7:21", "stateVariable": false, "storageLocation": "default", @@ -2790,7 +3197,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28454, + "id": 28469, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3282:7:21", @@ -2804,19 +3211,21 @@ ], "src": "3281:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28477, + "id": 28492, "nodeType": "FunctionDefinition", "src": "3623:98:21", + "nodes": [], "body": { - "id": 28476, + "id": 28491, "nodeType": "Block", "src": "3690:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2824,17 +3233,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28474, + "id": 28489, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28472, + "id": 28487, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28465, + "referencedDeclaration": 28480, "src": "3708:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2844,11 +3253,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28473, + "id": 28488, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28467, + "referencedDeclaration": 28482, "src": "3712:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2861,15 +3270,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28471, - "id": 28475, + "functionReturnParameters": 28486, + "id": 28490, "nodeType": "Return", "src": "3701:12:21" } ] }, "documentation": { - "id": 28463, + "id": 28478, "nodeType": "StructuredDocumentation", "src": "3330:287:21", "text": " @dev Returns the integer division of two unsigned integers, reverting on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator.\n Requirements:\n - The divisor cannot be zero." @@ -2880,17 +3289,17 @@ "name": "div", "nameLocation": "3632:3:21", "parameters": { - "id": 28468, + "id": 28483, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28465, + "id": 28480, "mutability": "mutable", "name": "a", "nameLocation": "3644:1:21", "nodeType": "VariableDeclaration", - "scope": 28477, + "scope": 28492, "src": "3636:9:21", "stateVariable": false, "storageLocation": "default", @@ -2899,7 +3308,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28464, + "id": 28479, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3636:7:21", @@ -2912,12 +3321,12 @@ }, { "constant": false, - "id": 28467, + "id": 28482, "mutability": "mutable", "name": "b", "nameLocation": "3655:1:21", "nodeType": "VariableDeclaration", - "scope": 28477, + "scope": 28492, "src": "3647:9:21", "stateVariable": false, "storageLocation": "default", @@ -2926,7 +3335,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28466, + "id": 28481, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3647:7:21", @@ -2941,17 +3350,17 @@ "src": "3635:22:21" }, "returnParameters": { - "id": 28471, + "id": 28486, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28470, + "id": 28485, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28477, + "scope": 28492, "src": "3681:7:21", "stateVariable": false, "storageLocation": "default", @@ -2960,7 +3369,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28469, + "id": 28484, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3681:7:21", @@ -2974,19 +3383,21 @@ ], "src": "3680:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28492, + "id": 28507, "nodeType": "FunctionDefinition", "src": "4188:98:21", + "nodes": [], "body": { - "id": 28491, + "id": 28506, "nodeType": "Block", "src": "4255:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2994,17 +3405,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28489, + "id": 28504, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28487, + "id": 28502, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28480, + "referencedDeclaration": 28495, "src": "4273:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3014,11 +3425,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 28488, + "id": 28503, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28482, + "referencedDeclaration": 28497, "src": "4277:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3031,15 +3442,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28486, - "id": 28490, + "functionReturnParameters": 28501, + "id": 28505, "nodeType": "Return", "src": "4266:12:21" } ] }, "documentation": { - "id": 28478, + "id": 28493, "nodeType": "StructuredDocumentation", "src": "3729:453:21", "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting when dividing by zero.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -3050,17 +3461,17 @@ "name": "mod", "nameLocation": "4197:3:21", "parameters": { - "id": 28483, + "id": 28498, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28480, + "id": 28495, "mutability": "mutable", "name": "a", "nameLocation": "4209:1:21", "nodeType": "VariableDeclaration", - "scope": 28492, + "scope": 28507, "src": "4201:9:21", "stateVariable": false, "storageLocation": "default", @@ -3069,7 +3480,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28479, + "id": 28494, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4201:7:21", @@ -3082,12 +3493,12 @@ }, { "constant": false, - "id": 28482, + "id": 28497, "mutability": "mutable", "name": "b", "nameLocation": "4220:1:21", "nodeType": "VariableDeclaration", - "scope": 28492, + "scope": 28507, "src": "4212:9:21", "stateVariable": false, "storageLocation": "default", @@ -3096,7 +3507,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28481, + "id": 28496, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4212:7:21", @@ -3111,17 +3522,17 @@ "src": "4200:22:21" }, "returnParameters": { - "id": 28486, + "id": 28501, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28485, + "id": 28500, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28492, + "scope": 28507, "src": "4246:7:21", "stateVariable": false, "storageLocation": "default", @@ -3130,7 +3541,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28484, + "id": 28499, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4246:7:21", @@ -3144,22 +3555,24 @@ ], "src": "4245:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28517, + "id": 28532, "nodeType": "FunctionDefinition", "src": "4765:206:21", + "nodes": [], "body": { - "id": 28516, + "id": 28531, "nodeType": "Block", "src": "4860:111:21", + "nodes": [], "statements": [ { - "id": 28515, + "id": 28530, "nodeType": "UncheckedBlock", "src": "4871:93:21", "statements": [ @@ -3171,17 +3584,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28507, + "id": 28522, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28505, + "id": 28520, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28497, + "referencedDeclaration": 28512, "src": "4904:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3191,11 +3604,11 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 28506, + "id": 28521, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28495, + "referencedDeclaration": 28510, "src": "4909:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3209,11 +3622,11 @@ } }, { - "id": 28508, + "id": 28523, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28499, + "referencedDeclaration": 28514, "src": "4912:12:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3232,7 +3645,7 @@ "typeString": "string memory" } ], - "id": 28504, + "id": 28519, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3246,12 +3659,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28509, + "id": 28524, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4896:29:21", @@ -3261,7 +3675,7 @@ "typeString": "tuple()" } }, - "id": 28510, + "id": 28525, "nodeType": "ExpressionStatement", "src": "4896:29:21" }, @@ -3271,17 +3685,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28513, + "id": 28528, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28511, + "id": 28526, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28495, + "referencedDeclaration": 28510, "src": "4947:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3291,11 +3705,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 28512, + "id": 28527, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28497, + "referencedDeclaration": 28512, "src": "4951:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3308,8 +3722,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28503, - "id": 28514, + "functionReturnParameters": 28518, + "id": 28529, "nodeType": "Return", "src": "4940:12:21" } @@ -3318,7 +3732,7 @@ ] }, "documentation": { - "id": 28493, + "id": 28508, "nodeType": "StructuredDocumentation", "src": "4294:465:21", "text": " @dev Returns the subtraction of two unsigned integers, reverting with custom message on\n overflow (when the result is negative).\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {trySub}.\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." @@ -3329,17 +3743,17 @@ "name": "sub", "nameLocation": "4774:3:21", "parameters": { - "id": 28500, + "id": 28515, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28495, + "id": 28510, "mutability": "mutable", "name": "a", "nameLocation": "4786:1:21", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4778:9:21", "stateVariable": false, "storageLocation": "default", @@ -3348,7 +3762,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28494, + "id": 28509, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4778:7:21", @@ -3361,12 +3775,12 @@ }, { "constant": false, - "id": 28497, + "id": 28512, "mutability": "mutable", "name": "b", "nameLocation": "4797:1:21", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4789:9:21", "stateVariable": false, "storageLocation": "default", @@ -3375,7 +3789,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28496, + "id": 28511, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4789:7:21", @@ -3388,12 +3802,12 @@ }, { "constant": false, - "id": 28499, + "id": 28514, "mutability": "mutable", "name": "errorMessage", "nameLocation": "4814:12:21", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4800:26:21", "stateVariable": false, "storageLocation": "memory", @@ -3402,7 +3816,7 @@ "typeString": "string" }, "typeName": { - "id": 28498, + "id": 28513, "name": "string", "nodeType": "ElementaryTypeName", "src": "4800:6:21", @@ -3417,17 +3831,17 @@ "src": "4777:50:21" }, "returnParameters": { - "id": 28503, + "id": 28518, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28502, + "id": 28517, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4851:7:21", "stateVariable": false, "storageLocation": "default", @@ -3436,7 +3850,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28501, + "id": 28516, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4851:7:21", @@ -3450,22 +3864,24 @@ ], "src": "4850:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28542, + "id": 28557, "nodeType": "FunctionDefinition", "src": "5469:205:21", + "nodes": [], "body": { - "id": 28541, + "id": 28556, "nodeType": "Block", "src": "5564:110:21", + "nodes": [], "statements": [ { - "id": 28540, + "id": 28555, "nodeType": "UncheckedBlock", "src": "5575:92:21", "statements": [ @@ -3477,17 +3893,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28532, + "id": 28547, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28530, + "id": 28545, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28522, + "referencedDeclaration": 28537, "src": "5608:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3498,7 +3914,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 28531, + "id": 28546, "isConstant": false, "isLValue": false, "isPure": true, @@ -3519,11 +3935,11 @@ } }, { - "id": 28533, + "id": 28548, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28524, + "referencedDeclaration": 28539, "src": "5615:12:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3542,7 +3958,7 @@ "typeString": "string memory" } ], - "id": 28529, + "id": 28544, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3556,12 +3972,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28534, + "id": 28549, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5600:28:21", @@ -3571,7 +3988,7 @@ "typeString": "tuple()" } }, - "id": 28535, + "id": 28550, "nodeType": "ExpressionStatement", "src": "5600:28:21" }, @@ -3581,17 +3998,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28538, + "id": 28553, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28536, + "id": 28551, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28520, + "referencedDeclaration": 28535, "src": "5650:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3601,11 +4018,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28537, + "id": 28552, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28522, + "referencedDeclaration": 28537, "src": "5654:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3618,8 +4035,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28528, - "id": 28539, + "functionReturnParameters": 28543, + "id": 28554, "nodeType": "Return", "src": "5643:12:21" } @@ -3628,7 +4045,7 @@ ] }, "documentation": { - "id": 28518, + "id": 28533, "nodeType": "StructuredDocumentation", "src": "4979:484:21", "text": " @dev Returns the integer division of two unsigned integers, reverting with custom message on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator. Note: this function uses a\n `revert` opcode (which leaves remaining gas untouched) while Solidity\n uses an invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -3639,17 +4056,17 @@ "name": "div", "nameLocation": "5478:3:21", "parameters": { - "id": 28525, + "id": 28540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28520, + "id": 28535, "mutability": "mutable", "name": "a", "nameLocation": "5490:1:21", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5482:9:21", "stateVariable": false, "storageLocation": "default", @@ -3658,7 +4075,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28519, + "id": 28534, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5482:7:21", @@ -3671,12 +4088,12 @@ }, { "constant": false, - "id": 28522, + "id": 28537, "mutability": "mutable", "name": "b", "nameLocation": "5501:1:21", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5493:9:21", "stateVariable": false, "storageLocation": "default", @@ -3685,7 +4102,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28521, + "id": 28536, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5493:7:21", @@ -3698,12 +4115,12 @@ }, { "constant": false, - "id": 28524, + "id": 28539, "mutability": "mutable", "name": "errorMessage", "nameLocation": "5518:12:21", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5504:26:21", "stateVariable": false, "storageLocation": "memory", @@ -3712,7 +4129,7 @@ "typeString": "string" }, "typeName": { - "id": 28523, + "id": 28538, "name": "string", "nodeType": "ElementaryTypeName", "src": "5504:6:21", @@ -3727,17 +4144,17 @@ "src": "5481:50:21" }, "returnParameters": { - "id": 28528, + "id": 28543, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28527, + "id": 28542, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5555:7:21", "stateVariable": false, "storageLocation": "default", @@ -3746,7 +4163,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28526, + "id": 28541, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5555:7:21", @@ -3760,22 +4177,24 @@ ], "src": "5554:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28567, + "id": 28582, "nodeType": "FunctionDefinition", "src": "6337:205:21", + "nodes": [], "body": { - "id": 28566, + "id": 28581, "nodeType": "Block", "src": "6432:110:21", + "nodes": [], "statements": [ { - "id": 28565, + "id": 28580, "nodeType": "UncheckedBlock", "src": "6443:92:21", "statements": [ @@ -3787,17 +4206,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28557, + "id": 28572, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28555, + "id": 28570, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28547, + "referencedDeclaration": 28562, "src": "6476:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3808,7 +4227,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 28556, + "id": 28571, "isConstant": false, "isLValue": false, "isPure": true, @@ -3829,11 +4248,11 @@ } }, { - "id": 28558, + "id": 28573, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28549, + "referencedDeclaration": 28564, "src": "6483:12:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3852,7 +4271,7 @@ "typeString": "string memory" } ], - "id": 28554, + "id": 28569, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3866,12 +4285,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28559, + "id": 28574, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6468:28:21", @@ -3881,7 +4301,7 @@ "typeString": "tuple()" } }, - "id": 28560, + "id": 28575, "nodeType": "ExpressionStatement", "src": "6468:28:21" }, @@ -3891,17 +4311,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28563, + "id": 28578, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28561, + "id": 28576, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28545, + "referencedDeclaration": 28560, "src": "6518:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3911,11 +4331,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 28562, + "id": 28577, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28547, + "referencedDeclaration": 28562, "src": "6522:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3928,8 +4348,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28553, - "id": 28564, + "functionReturnParameters": 28568, + "id": 28579, "nodeType": "Return", "src": "6511:12:21" } @@ -3938,7 +4358,7 @@ ] }, "documentation": { - "id": 28543, + "id": 28558, "nodeType": "StructuredDocumentation", "src": "5682:649:21", "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting with custom message when dividing by zero.\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {tryMod}.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -3949,17 +4369,17 @@ "name": "mod", "nameLocation": "6346:3:21", "parameters": { - "id": 28550, + "id": 28565, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28545, + "id": 28560, "mutability": "mutable", "name": "a", "nameLocation": "6358:1:21", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6350:9:21", "stateVariable": false, "storageLocation": "default", @@ -3968,7 +4388,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28544, + "id": 28559, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6350:7:21", @@ -3981,12 +4401,12 @@ }, { "constant": false, - "id": 28547, + "id": 28562, "mutability": "mutable", "name": "b", "nameLocation": "6369:1:21", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6361:9:21", "stateVariable": false, "storageLocation": "default", @@ -3995,7 +4415,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28546, + "id": 28561, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6361:7:21", @@ -4008,12 +4428,12 @@ }, { "constant": false, - "id": 28549, + "id": 28564, "mutability": "mutable", "name": "errorMessage", "nameLocation": "6386:12:21", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6372:26:21", "stateVariable": false, "storageLocation": "memory", @@ -4022,7 +4442,7 @@ "typeString": "string" }, "typeName": { - "id": 28548, + "id": 28563, "name": "string", "nodeType": "ElementaryTypeName", "src": "6372:6:21", @@ -4037,17 +4457,17 @@ "src": "6349:50:21" }, "returnParameters": { - "id": 28553, + "id": 28568, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28552, + "id": 28567, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6423:7:21", "stateVariable": false, "storageLocation": "default", @@ -4056,7 +4476,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28551, + "id": 28566, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6423:7:21", @@ -4070,7 +4490,7 @@ ], "src": "6422:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" @@ -4083,32 +4503,36 @@ "contractKind": "library", "fullyImplemented": true, "linearizedBaseContracts": [ - 28568 + 28583 ], "name": "SafeMath", "nameLocation": "144:8:21", - "scope": 29067, + "scope": 29082, "usedErrors": [] }, { - "id": 29066, + "id": 29081, "nodeType": "ContractDefinition", "src": "7736:9750:21", "nodes": [ { - "id": 28576, + "id": 28591, "nodeType": "UsingForDirective", "src": "7777:27:21", + "nodes": [], "global": false, "libraryName": { - "id": 28574, + "id": 28589, "name": "SafeMath", + "nameLocations": [ + "7783:8:21" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28568, + "referencedDeclaration": 28583, "src": "7783:8:21" }, "typeName": { - "id": 28575, + "id": 28590, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7796:7:21", @@ -4119,14 +4543,15 @@ } }, { - "id": 28580, + "id": 28595, "nodeType": "VariableDeclaration", "src": "7812:46:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_balances", "nameLocation": "7849:9:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4134,9 +4559,9 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 28579, + "id": 28594, "keyType": { - "id": 28577, + "id": 28592, "name": "address", "nodeType": "ElementaryTypeName", "src": "7821:7:21", @@ -4152,7 +4577,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 28578, + "id": 28593, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7832:7:21", @@ -4165,14 +4590,15 @@ "visibility": "private" }, { - "id": 28586, + "id": 28601, "nodeType": "VariableDeclaration", "src": "7867:69:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_allowances", "nameLocation": "7925:11:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4180,9 +4606,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 28585, + "id": 28600, "keyType": { - "id": 28581, + "id": 28596, "name": "address", "nodeType": "ElementaryTypeName", "src": "7876:7:21", @@ -4198,9 +4624,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "valueType": { - "id": 28584, + "id": 28599, "keyType": { - "id": 28582, + "id": 28597, "name": "address", "nodeType": "ElementaryTypeName", "src": "7896:7:21", @@ -4216,7 +4642,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 28583, + "id": 28598, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7907:7:21", @@ -4230,14 +4656,15 @@ "visibility": "private" }, { - "id": 28588, + "id": 28603, "nodeType": "VariableDeclaration", "src": "7945:28:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_totalSupply", "nameLocation": "7961:12:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4245,7 +4672,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28587, + "id": 28602, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7945:7:21", @@ -4257,14 +4684,15 @@ "visibility": "private" }, { - "id": 28590, + "id": 28605, "nodeType": "VariableDeclaration", "src": "7982:20:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_name", "nameLocation": "7997:5:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4272,7 +4700,7 @@ "typeString": "string" }, "typeName": { - "id": 28589, + "id": 28604, "name": "string", "nodeType": "ElementaryTypeName", "src": "7982:6:21", @@ -4284,14 +4712,15 @@ "visibility": "private" }, { - "id": 28592, + "id": 28607, "nodeType": "VariableDeclaration", "src": "8009:22:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_symbol", "nameLocation": "8024:7:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4299,7 +4728,7 @@ "typeString": "string" }, "typeName": { - "id": 28591, + "id": 28606, "name": "string", "nodeType": "ElementaryTypeName", "src": "8009:6:21", @@ -4311,14 +4740,15 @@ "visibility": "private" }, { - "id": 28594, + "id": 28609, "nodeType": "VariableDeclaration", "src": "8038:23:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_decimals", "nameLocation": "8052:9:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4326,7 +4756,7 @@ "typeString": "uint8" }, "typeName": { - "id": 28593, + "id": 28608, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "8038:5:21", @@ -4338,27 +4768,29 @@ "visibility": "private" }, { - "id": 28615, + "id": 28630, "nodeType": "FunctionDefinition", "src": "8395:142:21", + "nodes": [], "body": { - "id": 28614, + "id": 28629, "nodeType": "Block", "src": "8452:85:21", + "nodes": [], "statements": [ { "expression": { - "id": 28604, + "id": 28619, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28602, + "id": 28617, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28590, + "referencedDeclaration": 28605, "src": "8463:5:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -4368,11 +4800,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28603, + "id": 28618, "name": "name_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28597, + "referencedDeclaration": 28612, "src": "8471:5:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -4385,23 +4817,23 @@ "typeString": "string storage ref" } }, - "id": 28605, + "id": 28620, "nodeType": "ExpressionStatement", "src": "8463:13:21" }, { "expression": { - "id": 28608, + "id": 28623, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28606, + "id": 28621, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28592, + "referencedDeclaration": 28607, "src": "8487:7:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -4411,11 +4843,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28607, + "id": 28622, "name": "symbol_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28599, + "referencedDeclaration": 28614, "src": "8497:7:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -4428,23 +4860,23 @@ "typeString": "string storage ref" } }, - "id": 28609, + "id": 28624, "nodeType": "ExpressionStatement", "src": "8487:17:21" }, { "expression": { - "id": 28612, + "id": 28627, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28610, + "id": 28625, "name": "_decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28594, + "referencedDeclaration": 28609, "src": "8515:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -4455,7 +4887,7 @@ "operator": "=", "rightHandSide": { "hexValue": "3138", - "id": 28611, + "id": 28626, "isConstant": false, "isLValue": false, "isPure": true, @@ -4475,14 +4907,14 @@ "typeString": "uint8" } }, - "id": 28613, + "id": 28628, "nodeType": "ExpressionStatement", "src": "8515:14:21" } ] }, "documentation": { - "id": 28595, + "id": 28610, "nodeType": "StructuredDocumentation", "src": "8070:319:21", "text": " @dev Sets the values for {name} and {symbol}, initializes {decimals} with\n a default value of 18.\n To select a different value for {decimals}, use {_setupDecimals}.\n All three of these values are immutable: they can only be set once during\n construction." @@ -4493,17 +4925,17 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 28600, + "id": 28615, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28597, + "id": 28612, "mutability": "mutable", "name": "name_", "nameLocation": "8422:5:21", "nodeType": "VariableDeclaration", - "scope": 28615, + "scope": 28630, "src": "8408:19:21", "stateVariable": false, "storageLocation": "memory", @@ -4512,7 +4944,7 @@ "typeString": "string" }, "typeName": { - "id": 28596, + "id": 28611, "name": "string", "nodeType": "ElementaryTypeName", "src": "8408:6:21", @@ -4525,12 +4957,12 @@ }, { "constant": false, - "id": 28599, + "id": 28614, "mutability": "mutable", "name": "symbol_", "nameLocation": "8443:7:21", "nodeType": "VariableDeclaration", - "scope": 28615, + "scope": 28630, "src": "8429:21:21", "stateVariable": false, "storageLocation": "memory", @@ -4539,7 +4971,7 @@ "typeString": "string" }, "typeName": { - "id": 28598, + "id": 28613, "name": "string", "nodeType": "ElementaryTypeName", "src": "8429:6:21", @@ -4554,47 +4986,49 @@ "src": "8407:44:21" }, "returnParameters": { - "id": 28601, + "id": 28616, "nodeType": "ParameterList", "parameters": [], "src": "8452:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28624, + "id": 28639, "nodeType": "FunctionDefinition", "src": "8607:91:21", + "nodes": [], "body": { - "id": 28623, + "id": 28638, "nodeType": "Block", "src": "8667:31:21", + "nodes": [], "statements": [ { "expression": { - "id": 28621, + "id": 28636, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28590, + "referencedDeclaration": 28605, "src": "8685:5:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 28620, - "id": 28622, + "functionReturnParameters": 28635, + "id": 28637, "nodeType": "Return", "src": "8678:12:21" } ] }, "documentation": { - "id": 28616, + "id": 28631, "nodeType": "StructuredDocumentation", "src": "8545:56:21", "text": " @dev Returns the name of the token." @@ -4606,23 +5040,23 @@ "name": "name", "nameLocation": "8616:4:21", "parameters": { - "id": 28617, + "id": 28632, "nodeType": "ParameterList", "parameters": [], "src": "8620:2:21" }, "returnParameters": { - "id": 28620, + "id": 28635, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28619, + "id": 28634, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28624, + "scope": 28639, "src": "8652:13:21", "stateVariable": false, "storageLocation": "memory", @@ -4631,7 +5065,7 @@ "typeString": "string" }, "typeName": { - "id": 28618, + "id": 28633, "name": "string", "nodeType": "ElementaryTypeName", "src": "8652:6:21", @@ -4645,42 +5079,44 @@ ], "src": "8651:15:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28633, + "id": 28648, "nodeType": "FunctionDefinition", "src": "8817:95:21", + "nodes": [], "body": { - "id": 28632, + "id": 28647, "nodeType": "Block", "src": "8879:33:21", + "nodes": [], "statements": [ { "expression": { - "id": 28630, + "id": 28645, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28592, + "referencedDeclaration": 28607, "src": "8897:7:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 28629, - "id": 28631, + "functionReturnParameters": 28644, + "id": 28646, "nodeType": "Return", "src": "8890:14:21" } ] }, "documentation": { - "id": 28625, + "id": 28640, "nodeType": "StructuredDocumentation", "src": "8706:105:21", "text": " @dev Returns the symbol of the token, usually a shorter version of the\n name." @@ -4692,23 +5128,23 @@ "name": "symbol", "nameLocation": "8826:6:21", "parameters": { - "id": 28626, + "id": 28641, "nodeType": "ParameterList", "parameters": [], "src": "8832:2:21" }, "returnParameters": { - "id": 28629, + "id": 28644, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28628, + "id": 28643, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28633, + "scope": 28648, "src": "8864:13:21", "stateVariable": false, "storageLocation": "memory", @@ -4717,7 +5153,7 @@ "typeString": "string" }, "typeName": { - "id": 28627, + "id": 28642, "name": "string", "nodeType": "ElementaryTypeName", "src": "8864:6:21", @@ -4731,42 +5167,44 @@ ], "src": "8863:15:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28642, + "id": 28657, "nodeType": "FunctionDefinition", "src": "9550:91:21", + "nodes": [], "body": { - "id": 28641, + "id": 28656, "nodeType": "Block", "src": "9606:35:21", + "nodes": [], "statements": [ { "expression": { - "id": 28639, + "id": 28654, "name": "_decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28594, + "referencedDeclaration": 28609, "src": "9624:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "functionReturnParameters": 28638, - "id": 28640, + "functionReturnParameters": 28653, + "id": 28655, "nodeType": "Return", "src": "9617:16:21" } ] }, "documentation": { - "id": 28634, + "id": 28649, "nodeType": "StructuredDocumentation", "src": "8920:624:21", "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 value {ERC20} uses, unless {_setupDecimals} is\n called.\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}." @@ -4778,23 +5216,23 @@ "name": "decimals", "nameLocation": "9559:8:21", "parameters": { - "id": 28635, + "id": 28650, "nodeType": "ParameterList", "parameters": [], "src": "9567:2:21" }, "returnParameters": { - "id": 28638, + "id": 28653, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28637, + "id": 28652, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28642, + "scope": 28657, "src": "9599:5:21", "stateVariable": false, "storageLocation": "default", @@ -4803,7 +5241,7 @@ "typeString": "uint8" }, "typeName": { - "id": 28636, + "id": 28651, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "9599:5:21", @@ -4817,45 +5255,47 @@ ], "src": "9598:7:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28652, + "id": 28667, "nodeType": "FunctionDefinition", "src": "9706:108:21", + "nodes": [], "body": { - "id": 28651, + "id": 28666, "nodeType": "Block", "src": "9776:38:21", + "nodes": [], "statements": [ { "expression": { - "id": 28649, + "id": 28664, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "9794:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 28648, - "id": 28650, + "functionReturnParameters": 28663, + "id": 28665, "nodeType": "Return", "src": "9787:19:21" } ] }, "baseFunctions": [ - 29074 + 29089 ], "documentation": { - "id": 28643, + "id": 28658, "nodeType": "StructuredDocumentation", "src": "9649:51:21", "text": " @dev See {IERC20-totalSupply}." @@ -4867,29 +5307,29 @@ "name": "totalSupply", "nameLocation": "9715:11:21", "overrides": { - "id": 28645, + "id": 28660, "nodeType": "OverrideSpecifier", "overrides": [], "src": "9749:8:21" }, "parameters": { - "id": 28644, + "id": 28659, "nodeType": "ParameterList", "parameters": [], "src": "9726:2:21" }, "returnParameters": { - "id": 28648, + "id": 28663, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28647, + "id": 28662, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28652, + "scope": 28667, "src": "9767:7:21", "stateVariable": false, "storageLocation": "default", @@ -4898,7 +5338,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28646, + "id": 28661, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9767:7:21", @@ -4912,41 +5352,43 @@ ], "src": "9766:9:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28666, + "id": 28681, "nodeType": "FunctionDefinition", "src": "9877:127:21", + "nodes": [], "body": { - "id": 28665, + "id": 28680, "nodeType": "Block", "src": "9960:44:21", + "nodes": [], "statements": [ { "expression": { "baseExpression": { - "id": 28661, + "id": 28676, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "9978:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28663, + "id": 28678, "indexExpression": { - "id": 28662, + "id": 28677, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28655, + "referencedDeclaration": 28670, "src": "9988:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4964,18 +5406,18 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28660, - "id": 28664, + "functionReturnParameters": 28675, + "id": 28679, "nodeType": "Return", "src": "9971:25:21" } ] }, "baseFunctions": [ - 29082 + 29097 ], "documentation": { - "id": 28653, + "id": 28668, "nodeType": "StructuredDocumentation", "src": "9822:49:21", "text": " @dev See {IERC20-balanceOf}." @@ -4987,23 +5429,23 @@ "name": "balanceOf", "nameLocation": "9886:9:21", "overrides": { - "id": 28657, + "id": 28672, "nodeType": "OverrideSpecifier", "overrides": [], "src": "9933:8:21" }, "parameters": { - "id": 28656, + "id": 28671, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28655, + "id": 28670, "mutability": "mutable", "name": "account", "nameLocation": "9904:7:21", "nodeType": "VariableDeclaration", - "scope": 28666, + "scope": 28681, "src": "9896:15:21", "stateVariable": false, "storageLocation": "default", @@ -5012,7 +5454,7 @@ "typeString": "address" }, "typeName": { - "id": 28654, + "id": 28669, "name": "address", "nodeType": "ElementaryTypeName", "src": "9896:7:21", @@ -5028,17 +5470,17 @@ "src": "9895:17:21" }, "returnParameters": { - "id": 28660, + "id": 28675, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28659, + "id": 28674, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28666, + "scope": 28681, "src": "9951:7:21", "stateVariable": false, "storageLocation": "default", @@ -5047,7 +5489,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28658, + "id": 28673, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9951:7:21", @@ -5061,19 +5503,21 @@ ], "src": "9950:9:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28687, + "id": 28702, "nodeType": "FunctionDefinition", "src": "10217:175:21", + "nodes": [], "body": { - "id": 28686, + "id": 28701, "nodeType": "Block", "src": "10309:83:21", + "nodes": [], "statements": [ { "expression": { @@ -5082,23 +5526,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28678, + "id": 28693, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "10330:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28679, + "id": 28694, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10330:12:21", @@ -5109,11 +5554,11 @@ } }, { - "id": 28680, + "id": 28695, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28669, + "referencedDeclaration": 28684, "src": "10344:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5121,11 +5566,11 @@ } }, { - "id": 28681, + "id": 28696, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28671, + "referencedDeclaration": 28686, "src": "10355:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5148,23 +5593,24 @@ "typeString": "uint256" } ], - "id": 28677, + "id": 28692, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28887, + "referencedDeclaration": 28902, "src": "10320:9:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28682, + "id": 28697, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10320:42:21", @@ -5174,14 +5620,14 @@ "typeString": "tuple()" } }, - "id": 28683, + "id": 28698, "nodeType": "ExpressionStatement", "src": "10320:42:21" }, { "expression": { "hexValue": "74727565", - "id": 28684, + "id": 28699, "isConstant": false, "isLValue": false, "isPure": true, @@ -5195,18 +5641,18 @@ }, "value": "true" }, - "functionReturnParameters": 28676, - "id": 28685, + "functionReturnParameters": 28691, + "id": 28700, "nodeType": "Return", "src": "10373:11:21" } ] }, "baseFunctions": [ - 29092 + 29107 ], "documentation": { - "id": 28667, + "id": 28682, "nodeType": "StructuredDocumentation", "src": "10012:199:21", "text": " @dev See {IERC20-transfer}.\n Requirements:\n - `recipient` cannot be the zero address.\n - the caller must have a balance of at least `amount`." @@ -5218,23 +5664,23 @@ "name": "transfer", "nameLocation": "10226:8:21", "overrides": { - "id": 28673, + "id": 28688, "nodeType": "OverrideSpecifier", "overrides": [], "src": "10285:8:21" }, "parameters": { - "id": 28672, + "id": 28687, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28669, + "id": 28684, "mutability": "mutable", "name": "recipient", "nameLocation": "10243:9:21", "nodeType": "VariableDeclaration", - "scope": 28687, + "scope": 28702, "src": "10235:17:21", "stateVariable": false, "storageLocation": "default", @@ -5243,7 +5689,7 @@ "typeString": "address" }, "typeName": { - "id": 28668, + "id": 28683, "name": "address", "nodeType": "ElementaryTypeName", "src": "10235:7:21", @@ -5257,12 +5703,12 @@ }, { "constant": false, - "id": 28671, + "id": 28686, "mutability": "mutable", "name": "amount", "nameLocation": "10262:6:21", "nodeType": "VariableDeclaration", - "scope": 28687, + "scope": 28702, "src": "10254:14:21", "stateVariable": false, "storageLocation": "default", @@ -5271,7 +5717,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28670, + "id": 28685, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10254:7:21", @@ -5286,17 +5732,17 @@ "src": "10234:35:21" }, "returnParameters": { - "id": 28676, + "id": 28691, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28675, + "id": 28690, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28687, + "scope": 28702, "src": "10303:4:21", "stateVariable": false, "storageLocation": "default", @@ -5305,7 +5751,7 @@ "typeString": "bool" }, "typeName": { - "id": 28674, + "id": 28689, "name": "bool", "nodeType": "ElementaryTypeName", "src": "10303:4:21", @@ -5319,42 +5765,44 @@ ], "src": "10302:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28705, + "id": 28720, "nodeType": "FunctionDefinition", "src": "10455:151:21", + "nodes": [], "body": { - "id": 28704, + "id": 28719, "nodeType": "Block", "src": "10553:53:21", + "nodes": [], "statements": [ { "expression": { "baseExpression": { "baseExpression": { - "id": 28698, + "id": 28713, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "10571:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28700, + "id": 28715, "indexExpression": { - "id": 28699, + "id": 28714, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28690, + "referencedDeclaration": 28705, "src": "10583:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5372,13 +5820,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28702, + "id": 28717, "indexExpression": { - "id": 28701, + "id": 28716, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28692, + "referencedDeclaration": 28707, "src": "10590:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5396,18 +5844,18 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28697, - "id": 28703, + "functionReturnParameters": 28712, + "id": 28718, "nodeType": "Return", "src": "10564:34:21" } ] }, "baseFunctions": [ - 29102 + 29117 ], "documentation": { - "id": 28688, + "id": 28703, "nodeType": "StructuredDocumentation", "src": "10400:49:21", "text": " @dev See {IERC20-allowance}." @@ -5419,23 +5867,23 @@ "name": "allowance", "nameLocation": "10464:9:21", "overrides": { - "id": 28694, + "id": 28709, "nodeType": "OverrideSpecifier", "overrides": [], "src": "10526:8:21" }, "parameters": { - "id": 28693, + "id": 28708, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28690, + "id": 28705, "mutability": "mutable", "name": "owner", "nameLocation": "10482:5:21", "nodeType": "VariableDeclaration", - "scope": 28705, + "scope": 28720, "src": "10474:13:21", "stateVariable": false, "storageLocation": "default", @@ -5444,7 +5892,7 @@ "typeString": "address" }, "typeName": { - "id": 28689, + "id": 28704, "name": "address", "nodeType": "ElementaryTypeName", "src": "10474:7:21", @@ -5458,12 +5906,12 @@ }, { "constant": false, - "id": 28692, + "id": 28707, "mutability": "mutable", "name": "spender", "nameLocation": "10497:7:21", "nodeType": "VariableDeclaration", - "scope": 28705, + "scope": 28720, "src": "10489:15:21", "stateVariable": false, "storageLocation": "default", @@ -5472,7 +5920,7 @@ "typeString": "address" }, "typeName": { - "id": 28691, + "id": 28706, "name": "address", "nodeType": "ElementaryTypeName", "src": "10489:7:21", @@ -5488,17 +5936,17 @@ "src": "10473:32:21" }, "returnParameters": { - "id": 28697, + "id": 28712, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28696, + "id": 28711, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28705, + "scope": 28720, "src": "10544:7:21", "stateVariable": false, "storageLocation": "default", @@ -5507,7 +5955,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28695, + "id": 28710, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10544:7:21", @@ -5521,19 +5969,21 @@ ], "src": "10543:9:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28726, + "id": 28741, "nodeType": "FunctionDefinition", "src": "10753:169:21", + "nodes": [], "body": { - "id": 28725, + "id": 28740, "nodeType": "Block", "src": "10842:80:21", + "nodes": [], "statements": [ { "expression": { @@ -5542,23 +5992,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28717, + "id": 28732, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "10862:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28718, + "id": 28733, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10862:12:21", @@ -5569,11 +6020,11 @@ } }, { - "id": 28719, + "id": 28734, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28708, + "referencedDeclaration": 28723, "src": "10876:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5581,11 +6032,11 @@ } }, { - "id": 28720, + "id": 28735, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28710, + "referencedDeclaration": 28725, "src": "10885:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5608,23 +6059,24 @@ "typeString": "uint256" } ], - "id": 28716, + "id": 28731, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "10853:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28721, + "id": 28736, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10853:39:21", @@ -5634,14 +6086,14 @@ "typeString": "tuple()" } }, - "id": 28722, + "id": 28737, "nodeType": "ExpressionStatement", "src": "10853:39:21" }, { "expression": { "hexValue": "74727565", - "id": 28723, + "id": 28738, "isConstant": false, "isLValue": false, "isPure": true, @@ -5655,18 +6107,18 @@ }, "value": "true" }, - "functionReturnParameters": 28715, - "id": 28724, + "functionReturnParameters": 28730, + "id": 28739, "nodeType": "Return", "src": "10903:11:21" } ] }, "baseFunctions": [ - 29112 + 29127 ], "documentation": { - "id": 28706, + "id": 28721, "nodeType": "StructuredDocumentation", "src": "10614:133:21", "text": " @dev See {IERC20-approve}.\n Requirements:\n - `spender` cannot be the zero address." @@ -5678,23 +6130,23 @@ "name": "approve", "nameLocation": "10762:7:21", "overrides": { - "id": 28712, + "id": 28727, "nodeType": "OverrideSpecifier", "overrides": [], "src": "10818:8:21" }, "parameters": { - "id": 28711, + "id": 28726, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28708, + "id": 28723, "mutability": "mutable", "name": "spender", "nameLocation": "10778:7:21", "nodeType": "VariableDeclaration", - "scope": 28726, + "scope": 28741, "src": "10770:15:21", "stateVariable": false, "storageLocation": "default", @@ -5703,7 +6155,7 @@ "typeString": "address" }, "typeName": { - "id": 28707, + "id": 28722, "name": "address", "nodeType": "ElementaryTypeName", "src": "10770:7:21", @@ -5717,12 +6169,12 @@ }, { "constant": false, - "id": 28710, + "id": 28725, "mutability": "mutable", "name": "amount", "nameLocation": "10795:6:21", "nodeType": "VariableDeclaration", - "scope": 28726, + "scope": 28741, "src": "10787:14:21", "stateVariable": false, "storageLocation": "default", @@ -5731,7 +6183,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28709, + "id": 28724, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10787:7:21", @@ -5746,17 +6198,17 @@ "src": "10769:33:21" }, "returnParameters": { - "id": 28715, + "id": 28730, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28714, + "id": 28729, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28726, + "scope": 28741, "src": "10836:4:21", "stateVariable": false, "storageLocation": "default", @@ -5765,7 +6217,7 @@ "typeString": "bool" }, "typeName": { - "id": 28713, + "id": 28728, "name": "bool", "nodeType": "ElementaryTypeName", "src": "10836:4:21", @@ -5779,29 +6231,31 @@ ], "src": "10835:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28764, + "id": 28779, "nodeType": "FunctionDefinition", "src": "11404:321:21", + "nodes": [], "body": { - "id": 28763, + "id": 28778, "nodeType": "Block", "src": "11516:209:21", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 28740, + "id": 28755, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28729, + "referencedDeclaration": 28744, "src": "11537:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5809,11 +6263,11 @@ } }, { - "id": 28741, + "id": 28756, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28731, + "referencedDeclaration": 28746, "src": "11545:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5821,11 +6275,11 @@ } }, { - "id": 28742, + "id": 28757, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28733, + "referencedDeclaration": 28748, "src": "11556:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5848,23 +6302,24 @@ "typeString": "uint256" } ], - "id": 28739, + "id": 28754, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28887, + "referencedDeclaration": 28902, "src": "11527:9:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28743, + "id": 28758, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11527:36:21", @@ -5874,7 +6329,7 @@ "typeString": "tuple()" } }, - "id": 28744, + "id": 28759, "nodeType": "ExpressionStatement", "src": "11527:36:21" }, @@ -5882,11 +6337,11 @@ "expression": { "arguments": [ { - "id": 28746, + "id": 28761, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28729, + "referencedDeclaration": 28744, "src": "11583:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5897,23 +6352,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28747, + "id": 28762, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "11591:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28748, + "id": 28763, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11591:12:21", @@ -5926,11 +6382,11 @@ { "arguments": [ { - "id": 28756, + "id": 28771, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28733, + "referencedDeclaration": 28748, "src": "11643:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5939,7 +6395,7 @@ }, { "hexValue": "45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365", - "id": 28757, + "id": 28772, "isConstant": false, "isLValue": false, "isPure": true, @@ -5968,24 +6424,24 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 28749, + "id": 28764, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "11605:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28751, + "id": 28766, "indexExpression": { - "id": 28750, + "id": 28765, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28729, + "referencedDeclaration": 28744, "src": "11617:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6003,28 +6459,29 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28754, + "id": 28769, "indexExpression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28752, + "id": 28767, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "11625:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28753, + "id": 28768, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11625:12:21", @@ -6045,26 +6502,28 @@ "typeString": "uint256" } }, - "id": 28755, + "id": 28770, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11639:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "11605:37:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28758, + "id": 28773, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11605:89:21", @@ -6090,23 +6549,24 @@ "typeString": "uint256" } ], - "id": 28745, + "id": 28760, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "11574:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28759, + "id": 28774, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11574:121:21", @@ -6116,14 +6576,14 @@ "typeString": "tuple()" } }, - "id": 28760, + "id": 28775, "nodeType": "ExpressionStatement", "src": "11574:121:21" }, { "expression": { "hexValue": "74727565", - "id": 28761, + "id": 28776, "isConstant": false, "isLValue": false, "isPure": true, @@ -6137,18 +6597,18 @@ }, "value": "true" }, - "functionReturnParameters": 28738, - "id": 28762, + "functionReturnParameters": 28753, + "id": 28777, "nodeType": "Return", "src": "11706:11:21" } ] }, "baseFunctions": [ - 29124 + 29139 ], "documentation": { - "id": 28727, + "id": 28742, "nodeType": "StructuredDocumentation", "src": "10930:468:21", "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 Requirements:\n - `sender` and `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`.\n - the caller must have allowance for ``sender``'s tokens of at least\n `amount`." @@ -6160,23 +6620,23 @@ "name": "transferFrom", "nameLocation": "11413:12:21", "overrides": { - "id": 28735, + "id": 28750, "nodeType": "OverrideSpecifier", "overrides": [], "src": "11492:8:21" }, "parameters": { - "id": 28734, + "id": 28749, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28729, + "id": 28744, "mutability": "mutable", "name": "sender", "nameLocation": "11434:6:21", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11426:14:21", "stateVariable": false, "storageLocation": "default", @@ -6185,7 +6645,7 @@ "typeString": "address" }, "typeName": { - "id": 28728, + "id": 28743, "name": "address", "nodeType": "ElementaryTypeName", "src": "11426:7:21", @@ -6199,12 +6659,12 @@ }, { "constant": false, - "id": 28731, + "id": 28746, "mutability": "mutable", "name": "recipient", "nameLocation": "11450:9:21", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11442:17:21", "stateVariable": false, "storageLocation": "default", @@ -6213,7 +6673,7 @@ "typeString": "address" }, "typeName": { - "id": 28730, + "id": 28745, "name": "address", "nodeType": "ElementaryTypeName", "src": "11442:7:21", @@ -6227,12 +6687,12 @@ }, { "constant": false, - "id": 28733, + "id": 28748, "mutability": "mutable", "name": "amount", "nameLocation": "11469:6:21", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11461:14:21", "stateVariable": false, "storageLocation": "default", @@ -6241,7 +6701,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28732, + "id": 28747, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11461:7:21", @@ -6256,17 +6716,17 @@ "src": "11425:51:21" }, "returnParameters": { - "id": 28738, + "id": 28753, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28737, + "id": 28752, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11510:4:21", "stateVariable": false, "storageLocation": "default", @@ -6275,7 +6735,7 @@ "typeString": "bool" }, "typeName": { - "id": 28736, + "id": 28751, "name": "bool", "nodeType": "ElementaryTypeName", "src": "11510:4:21", @@ -6289,19 +6749,21 @@ ], "src": "11509:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28792, + "id": 28807, "nodeType": "FunctionDefinition", "src": "12134:218:21", + "nodes": [], "body": { - "id": 28791, + "id": 28806, "nodeType": "Block", "src": "12228:124:21", + "nodes": [], "statements": [ { "expression": { @@ -6310,23 +6772,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28775, + "id": 28790, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "12248:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28776, + "id": 28791, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12248:12:21", @@ -6337,11 +6800,11 @@ } }, { - "id": 28777, + "id": 28792, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28767, + "referencedDeclaration": 28782, "src": "12262:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6351,11 +6814,11 @@ { "arguments": [ { - "id": 28785, + "id": 28800, "name": "addedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28769, + "referencedDeclaration": 28784, "src": "12310:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6373,39 +6836,40 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 28778, + "id": 28793, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "12271:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28781, + "id": 28796, "indexExpression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28779, + "id": 28794, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "12283:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28780, + "id": 28795, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12283:12:21", @@ -6426,13 +6890,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28783, + "id": 28798, "indexExpression": { - "id": 28782, + "id": 28797, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28767, + "referencedDeclaration": 28782, "src": "12297:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6450,26 +6914,28 @@ "typeString": "uint256" } }, - "id": 28784, + "id": 28799, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12306:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "12271:38:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28786, + "id": 28801, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12271:50:21", @@ -6495,23 +6961,24 @@ "typeString": "uint256" } ], - "id": 28774, + "id": 28789, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "12239:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28787, + "id": 28802, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12239:83:21", @@ -6521,14 +6988,14 @@ "typeString": "tuple()" } }, - "id": 28788, + "id": 28803, "nodeType": "ExpressionStatement", "src": "12239:83:21" }, { "expression": { "hexValue": "74727565", - "id": 28789, + "id": 28804, "isConstant": false, "isLValue": false, "isPure": true, @@ -6542,15 +7009,15 @@ }, "value": "true" }, - "functionReturnParameters": 28773, - "id": 28790, + "functionReturnParameters": 28788, + "id": 28805, "nodeType": "Return", "src": "12333:11:21" } ] }, "documentation": { - "id": 28765, + "id": 28780, "nodeType": "StructuredDocumentation", "src": "11733:395:21", "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." @@ -6562,17 +7029,17 @@ "name": "increaseAllowance", "nameLocation": "12143:17:21", "parameters": { - "id": 28770, + "id": 28785, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28767, + "id": 28782, "mutability": "mutable", "name": "spender", "nameLocation": "12169:7:21", "nodeType": "VariableDeclaration", - "scope": 28792, + "scope": 28807, "src": "12161:15:21", "stateVariable": false, "storageLocation": "default", @@ -6581,7 +7048,7 @@ "typeString": "address" }, "typeName": { - "id": 28766, + "id": 28781, "name": "address", "nodeType": "ElementaryTypeName", "src": "12161:7:21", @@ -6595,12 +7062,12 @@ }, { "constant": false, - "id": 28769, + "id": 28784, "mutability": "mutable", "name": "addedValue", "nameLocation": "12186:10:21", "nodeType": "VariableDeclaration", - "scope": 28792, + "scope": 28807, "src": "12178:18:21", "stateVariable": false, "storageLocation": "default", @@ -6609,7 +7076,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28768, + "id": 28783, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12178:7:21", @@ -6624,17 +7091,17 @@ "src": "12160:37:21" }, "returnParameters": { - "id": 28773, + "id": 28788, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28772, + "id": 28787, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28792, + "scope": 28807, "src": "12222:4:21", "stateVariable": false, "storageLocation": "default", @@ -6643,7 +7110,7 @@ "typeString": "bool" }, "typeName": { - "id": 28771, + "id": 28786, "name": "bool", "nodeType": "ElementaryTypeName", "src": "12222:4:21", @@ -6657,19 +7124,21 @@ ], "src": "12221:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28821, + "id": 28836, "nodeType": "FunctionDefinition", "src": "12855:269:21", + "nodes": [], "body": { - "id": 28820, + "id": 28835, "nodeType": "Block", "src": "12954:170:21", + "nodes": [], "statements": [ { "expression": { @@ -6678,23 +7147,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28803, + "id": 28818, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "12974:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28804, + "id": 28819, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12974:12:21", @@ -6705,11 +7175,11 @@ } }, { - "id": 28805, + "id": 28820, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28795, + "referencedDeclaration": 28810, "src": "12988:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6719,11 +7189,11 @@ { "arguments": [ { - "id": 28813, + "id": 28828, "name": "subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28797, + "referencedDeclaration": 28812, "src": "13036:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6732,7 +7202,7 @@ }, { "hexValue": "45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f", - "id": 28814, + "id": 28829, "isConstant": false, "isLValue": false, "isPure": true, @@ -6761,39 +7231,40 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 28806, + "id": 28821, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "12997:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28809, + "id": 28824, "indexExpression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28807, + "id": 28822, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "13009:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28808, + "id": 28823, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13009:12:21", @@ -6814,13 +7285,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28811, + "id": 28826, "indexExpression": { - "id": 28810, + "id": 28825, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28795, + "referencedDeclaration": 28810, "src": "13023:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6838,26 +7309,28 @@ "typeString": "uint256" } }, - "id": 28812, + "id": 28827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13032:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "12997:38:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28815, + "id": 28830, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12997:96:21", @@ -6883,23 +7356,24 @@ "typeString": "uint256" } ], - "id": 28802, + "id": 28817, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "12965:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28816, + "id": 28831, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12965:129:21", @@ -6909,14 +7383,14 @@ "typeString": "tuple()" } }, - "id": 28817, + "id": 28832, "nodeType": "ExpressionStatement", "src": "12965:129:21" }, { "expression": { "hexValue": "74727565", - "id": 28818, + "id": 28833, "isConstant": false, "isLValue": false, "isPure": true, @@ -6930,15 +7404,15 @@ }, "value": "true" }, - "functionReturnParameters": 28801, - "id": 28819, + "functionReturnParameters": 28816, + "id": 28834, "nodeType": "Return", "src": "13105:11:21" } ] }, "documentation": { - "id": 28793, + "id": 28808, "nodeType": "StructuredDocumentation", "src": "12360:489:21", "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`." @@ -6950,17 +7424,17 @@ "name": "decreaseAllowance", "nameLocation": "12864:17:21", "parameters": { - "id": 28798, + "id": 28813, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28795, + "id": 28810, "mutability": "mutable", "name": "spender", "nameLocation": "12890:7:21", "nodeType": "VariableDeclaration", - "scope": 28821, + "scope": 28836, "src": "12882:15:21", "stateVariable": false, "storageLocation": "default", @@ -6969,7 +7443,7 @@ "typeString": "address" }, "typeName": { - "id": 28794, + "id": 28809, "name": "address", "nodeType": "ElementaryTypeName", "src": "12882:7:21", @@ -6983,12 +7457,12 @@ }, { "constant": false, - "id": 28797, + "id": 28812, "mutability": "mutable", "name": "subtractedValue", "nameLocation": "12907:15:21", "nodeType": "VariableDeclaration", - "scope": 28821, + "scope": 28836, "src": "12899:23:21", "stateVariable": false, "storageLocation": "default", @@ -6997,7 +7471,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28796, + "id": 28811, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12899:7:21", @@ -7012,17 +7486,17 @@ "src": "12881:42:21" }, "returnParameters": { - "id": 28801, + "id": 28816, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28800, + "id": 28815, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28821, + "scope": 28836, "src": "12948:4:21", "stateVariable": false, "storageLocation": "default", @@ -7031,7 +7505,7 @@ "typeString": "bool" }, "typeName": { - "id": 28799, + "id": 28814, "name": "bool", "nodeType": "ElementaryTypeName", "src": "12948:4:21", @@ -7045,19 +7519,21 @@ ], "src": "12947:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28887, + "id": 28902, "nodeType": "FunctionDefinition", "src": "13614:549:21", + "nodes": [], "body": { - "id": 28886, + "id": 28901, "nodeType": "Block", "src": "13701:462:21", + "nodes": [], "statements": [ { "expression": { @@ -7067,17 +7543,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28837, + "id": 28852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28832, + "id": 28847, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13720:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7090,7 +7566,7 @@ "arguments": [ { "hexValue": "30", - "id": 28835, + "id": 28850, "isConstant": false, "isLValue": false, "isPure": true, @@ -7112,7 +7588,7 @@ "typeString": "int_const 0" } ], - "id": 28834, + "id": 28849, "isConstant": false, "isLValue": false, "isPure": true, @@ -7124,19 +7600,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28833, + "id": 28848, "name": "address", "nodeType": "ElementaryTypeName", "src": "13730:7:21", "typeDescriptions": {} } }, - "id": 28836, + "id": 28851, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13730:10:21", @@ -7154,7 +7631,7 @@ }, { "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", - "id": 28838, + "id": 28853, "isConstant": false, "isLValue": false, "isPure": true, @@ -7180,7 +7657,7 @@ "typeString": "literal_string \"ERC20: transfer from the zero address\"" } ], - "id": 28831, + "id": 28846, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7194,12 +7671,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28839, + "id": 28854, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13712:70:21", @@ -7209,7 +7687,7 @@ "typeString": "tuple()" } }, - "id": 28840, + "id": 28855, "nodeType": "ExpressionStatement", "src": "13712:70:21" }, @@ -7221,17 +7699,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28847, + "id": 28862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28842, + "id": 28857, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "13801:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7244,7 +7722,7 @@ "arguments": [ { "hexValue": "30", - "id": 28845, + "id": 28860, "isConstant": false, "isLValue": false, "isPure": true, @@ -7266,7 +7744,7 @@ "typeString": "int_const 0" } ], - "id": 28844, + "id": 28859, "isConstant": false, "isLValue": false, "isPure": true, @@ -7278,19 +7756,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28843, + "id": 28858, "name": "address", "nodeType": "ElementaryTypeName", "src": "13814:7:21", "typeDescriptions": {} } }, - "id": 28846, + "id": 28861, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13814:10:21", @@ -7308,7 +7787,7 @@ }, { "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 28848, + "id": 28863, "isConstant": false, "isLValue": false, "isPure": true, @@ -7334,7 +7813,7 @@ "typeString": "literal_string \"ERC20: transfer to the zero address\"" } ], - "id": 28841, + "id": 28856, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7348,12 +7827,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28849, + "id": 28864, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13793:71:21", @@ -7363,7 +7843,7 @@ "typeString": "tuple()" } }, - "id": 28850, + "id": 28865, "nodeType": "ExpressionStatement", "src": "13793:71:21" }, @@ -7371,11 +7851,11 @@ "expression": { "arguments": [ { - "id": 28852, + "id": 28867, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13908:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7383,11 +7863,11 @@ } }, { - "id": 28853, + "id": 28868, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "13916:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7395,11 +7875,11 @@ } }, { - "id": 28854, + "id": 28869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "13927:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7422,23 +7902,24 @@ "typeString": "uint256" } ], - "id": 28851, + "id": 28866, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29065, + "referencedDeclaration": 29080, "src": "13887:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28855, + "id": 28870, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13887:47:21", @@ -7448,37 +7929,37 @@ "typeString": "tuple()" } }, - "id": 28856, + "id": 28871, "nodeType": "ExpressionStatement", "src": "13887:47:21" }, { "expression": { - "id": 28867, + "id": 28882, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28857, + "id": 28872, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "13947:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28859, + "id": 28874, "indexExpression": { - "id": 28858, + "id": 28873, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13957:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7501,11 +7982,11 @@ "rightHandSide": { "arguments": [ { - "id": 28864, + "id": 28879, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "13989:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7514,7 +7995,7 @@ }, { "hexValue": "45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365", - "id": 28865, + "id": 28880, "isConstant": false, "isLValue": false, "isPure": true, @@ -7542,24 +8023,24 @@ ], "expression": { "baseExpression": { - "id": 28860, + "id": 28875, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "13967:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28862, + "id": 28877, "indexExpression": { - "id": 28861, + "id": 28876, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13977:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7577,26 +8058,28 @@ "typeString": "uint256" } }, - "id": 28863, + "id": 28878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13985:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "13967:21:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28866, + "id": 28881, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13967:71:21", @@ -7612,37 +8095,37 @@ "typeString": "uint256" } }, - "id": 28868, + "id": 28883, "nodeType": "ExpressionStatement", "src": "13947:91:21" }, { "expression": { - "id": 28878, + "id": 28893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28869, + "id": 28884, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14049:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28871, + "id": 28886, "indexExpression": { - "id": 28870, + "id": 28885, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "14059:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7665,11 +8148,11 @@ "rightHandSide": { "arguments": [ { - "id": 28876, + "id": 28891, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "14097:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7686,24 +8169,24 @@ ], "expression": { "baseExpression": { - "id": 28872, + "id": 28887, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14072:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28874, + "id": 28889, "indexExpression": { - "id": 28873, + "id": 28888, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "14082:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7721,26 +8204,28 @@ "typeString": "uint256" } }, - "id": 28875, + "id": 28890, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14093:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "14072:24:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28877, + "id": 28892, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14072:32:21", @@ -7756,7 +8241,7 @@ "typeString": "uint256" } }, - "id": 28879, + "id": 28894, "nodeType": "ExpressionStatement", "src": "14049:55:21" }, @@ -7764,11 +8249,11 @@ "eventCall": { "arguments": [ { - "id": 28881, + "id": 28896, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "14129:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7776,11 +8261,11 @@ } }, { - "id": 28882, + "id": 28897, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "14137:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7788,11 +8273,11 @@ } }, { - "id": 28883, + "id": 28898, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "14148:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7815,23 +8300,24 @@ "typeString": "uint256" } ], - "id": 28880, + "id": 28895, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29133, + "referencedDeclaration": 29148, "src": "14120:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28884, + "id": 28899, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14120:35:21", @@ -7841,14 +8327,14 @@ "typeString": "tuple()" } }, - "id": 28885, + "id": 28900, "nodeType": "EmitStatement", "src": "14115:40:21" } ] }, "documentation": { - "id": 28822, + "id": 28837, "nodeType": "StructuredDocumentation", "src": "13132:476:21", "text": " @dev Moves tokens `amount` from `sender` to `recipient`.\n This is 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 - `sender` cannot be the zero address.\n - `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`." @@ -7859,17 +8345,17 @@ "name": "_transfer", "nameLocation": "13623:9:21", "parameters": { - "id": 28829, + "id": 28844, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28824, + "id": 28839, "mutability": "mutable", "name": "sender", "nameLocation": "13641:6:21", "nodeType": "VariableDeclaration", - "scope": 28887, + "scope": 28902, "src": "13633:14:21", "stateVariable": false, "storageLocation": "default", @@ -7878,7 +8364,7 @@ "typeString": "address" }, "typeName": { - "id": 28823, + "id": 28838, "name": "address", "nodeType": "ElementaryTypeName", "src": "13633:7:21", @@ -7892,12 +8378,12 @@ }, { "constant": false, - "id": 28826, + "id": 28841, "mutability": "mutable", "name": "recipient", "nameLocation": "13657:9:21", "nodeType": "VariableDeclaration", - "scope": 28887, + "scope": 28902, "src": "13649:17:21", "stateVariable": false, "storageLocation": "default", @@ -7906,7 +8392,7 @@ "typeString": "address" }, "typeName": { - "id": 28825, + "id": 28840, "name": "address", "nodeType": "ElementaryTypeName", "src": "13649:7:21", @@ -7920,12 +8406,12 @@ }, { "constant": false, - "id": 28828, + "id": 28843, "mutability": "mutable", "name": "amount", "nameLocation": "13676:6:21", "nodeType": "VariableDeclaration", - "scope": 28887, + "scope": 28902, "src": "13668:14:21", "stateVariable": false, "storageLocation": "default", @@ -7934,7 +8420,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28827, + "id": 28842, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "13668:7:21", @@ -7949,24 +8435,26 @@ "src": "13632:51:21" }, "returnParameters": { - "id": 28830, + "id": 28845, "nodeType": "ParameterList", "parameters": [], "src": "13701:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 28942, + "id": 28957, "nodeType": "FunctionDefinition", "src": "14445:378:21", + "nodes": [], "body": { - "id": 28941, + "id": 28956, "nodeType": "Block", "src": "14510:313:21", + "nodes": [], "statements": [ { "expression": { @@ -7976,17 +8464,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28901, + "id": 28916, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28896, + "id": 28911, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14529:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7999,7 +8487,7 @@ "arguments": [ { "hexValue": "30", - "id": 28899, + "id": 28914, "isConstant": false, "isLValue": false, "isPure": true, @@ -8021,7 +8509,7 @@ "typeString": "int_const 0" } ], - "id": 28898, + "id": 28913, "isConstant": false, "isLValue": false, "isPure": true, @@ -8033,19 +8521,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28897, + "id": 28912, "name": "address", "nodeType": "ElementaryTypeName", "src": "14540:7:21", "typeDescriptions": {} } }, - "id": 28900, + "id": 28915, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14540:10:21", @@ -8063,7 +8552,7 @@ }, { "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", - "id": 28902, + "id": 28917, "isConstant": false, "isLValue": false, "isPure": true, @@ -8089,7 +8578,7 @@ "typeString": "literal_string \"ERC20: mint to the zero address\"" } ], - "id": 28895, + "id": 28910, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -8103,12 +8592,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28903, + "id": 28918, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14521:65:21", @@ -8118,7 +8608,7 @@ "typeString": "tuple()" } }, - "id": 28904, + "id": 28919, "nodeType": "ExpressionStatement", "src": "14521:65:21" }, @@ -8129,7 +8619,7 @@ "arguments": [ { "hexValue": "30", - "id": 28908, + "id": 28923, "isConstant": false, "isLValue": false, "isPure": true, @@ -8151,7 +8641,7 @@ "typeString": "int_const 0" } ], - "id": 28907, + "id": 28922, "isConstant": false, "isLValue": false, "isPure": true, @@ -8163,19 +8653,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28906, + "id": 28921, "name": "address", "nodeType": "ElementaryTypeName", "src": "14620:7:21", "typeDescriptions": {} } }, - "id": 28909, + "id": 28924, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14620:10:21", @@ -8186,11 +8677,11 @@ } }, { - "id": 28910, + "id": 28925, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14632:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8198,11 +8689,11 @@ } }, { - "id": 28911, + "id": 28926, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14641:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8225,23 +8716,24 @@ "typeString": "uint256" } ], - "id": 28905, + "id": 28920, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29065, + "referencedDeclaration": 29080, "src": "14599:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28912, + "id": 28927, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14599:49:21", @@ -8251,23 +8743,23 @@ "typeString": "tuple()" } }, - "id": 28913, + "id": 28928, "nodeType": "ExpressionStatement", "src": "14599:49:21" }, { "expression": { - "id": 28919, + "id": 28934, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28914, + "id": 28929, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "14661:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8279,11 +8771,11 @@ "rightHandSide": { "arguments": [ { - "id": 28917, + "id": 28932, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14693:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8299,37 +8791,39 @@ } ], "expression": { - "id": 28915, + "id": 28930, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "14676:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 28916, + "id": 28931, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14689:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "14676:16:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28918, + "id": 28933, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14676:24:21", @@ -8345,37 +8839,37 @@ "typeString": "uint256" } }, - "id": 28920, + "id": 28935, "nodeType": "ExpressionStatement", "src": "14661:39:21" }, { "expression": { - "id": 28930, + "id": 28945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28921, + "id": 28936, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14711:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28923, + "id": 28938, "indexExpression": { - "id": 28922, + "id": 28937, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14721:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8398,11 +8892,11 @@ "rightHandSide": { "arguments": [ { - "id": 28928, + "id": 28943, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14755:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8419,24 +8913,24 @@ ], "expression": { "baseExpression": { - "id": 28924, + "id": 28939, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14732:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28926, + "id": 28941, "indexExpression": { - "id": 28925, + "id": 28940, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14742:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8454,26 +8948,28 @@ "typeString": "uint256" } }, - "id": 28927, + "id": 28942, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14751:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "14732:22:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28929, + "id": 28944, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14732:30:21", @@ -8489,7 +8985,7 @@ "typeString": "uint256" } }, - "id": 28931, + "id": 28946, "nodeType": "ExpressionStatement", "src": "14711:51:21" }, @@ -8500,7 +8996,7 @@ "arguments": [ { "hexValue": "30", - "id": 28935, + "id": 28950, "isConstant": false, "isLValue": false, "isPure": true, @@ -8522,7 +9018,7 @@ "typeString": "int_const 0" } ], - "id": 28934, + "id": 28949, "isConstant": false, "isLValue": false, "isPure": true, @@ -8534,19 +9030,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28933, + "id": 28948, "name": "address", "nodeType": "ElementaryTypeName", "src": "14787:7:21", "typeDescriptions": {} } }, - "id": 28936, + "id": 28951, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14787:10:21", @@ -8557,11 +9054,11 @@ } }, { - "id": 28937, + "id": 28952, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14799:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8569,11 +9066,11 @@ } }, { - "id": 28938, + "id": 28953, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14808:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8596,23 +9093,24 @@ "typeString": "uint256" } ], - "id": 28932, + "id": 28947, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29133, + "referencedDeclaration": 29148, "src": "14778:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28939, + "id": 28954, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14778:37:21", @@ -8622,14 +9120,14 @@ "typeString": "tuple()" } }, - "id": 28940, + "id": 28955, "nodeType": "EmitStatement", "src": "14773:42:21" } ] }, "documentation": { - "id": 28888, + "id": 28903, "nodeType": "StructuredDocumentation", "src": "14171:268:21", "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 - `to` cannot be the zero address." @@ -8640,17 +9138,17 @@ "name": "_mint", "nameLocation": "14454:5:21", "parameters": { - "id": 28893, + "id": 28908, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28890, + "id": 28905, "mutability": "mutable", "name": "account", "nameLocation": "14468:7:21", "nodeType": "VariableDeclaration", - "scope": 28942, + "scope": 28957, "src": "14460:15:21", "stateVariable": false, "storageLocation": "default", @@ -8659,7 +9157,7 @@ "typeString": "address" }, "typeName": { - "id": 28889, + "id": 28904, "name": "address", "nodeType": "ElementaryTypeName", "src": "14460:7:21", @@ -8673,12 +9171,12 @@ }, { "constant": false, - "id": 28892, + "id": 28907, "mutability": "mutable", "name": "amount", "nameLocation": "14485:6:21", "nodeType": "VariableDeclaration", - "scope": 28942, + "scope": 28957, "src": "14477:14:21", "stateVariable": false, "storageLocation": "default", @@ -8687,7 +9185,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28891, + "id": 28906, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "14477:7:21", @@ -8702,24 +9200,26 @@ "src": "14459:33:21" }, "returnParameters": { - "id": 28894, + "id": 28909, "nodeType": "ParameterList", "parameters": [], "src": "14510:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 28998, + "id": 29013, "nodeType": "FunctionDefinition", "src": "15156:418:21", + "nodes": [], "body": { - "id": 28997, + "id": 29012, "nodeType": "Block", "src": "15221:353:21", + "nodes": [], "statements": [ { "expression": { @@ -8729,17 +9229,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28956, + "id": 28971, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28951, + "id": 28966, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15240:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8752,7 +9252,7 @@ "arguments": [ { "hexValue": "30", - "id": 28954, + "id": 28969, "isConstant": false, "isLValue": false, "isPure": true, @@ -8774,7 +9274,7 @@ "typeString": "int_const 0" } ], - "id": 28953, + "id": 28968, "isConstant": false, "isLValue": false, "isPure": true, @@ -8786,19 +9286,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28952, + "id": 28967, "name": "address", "nodeType": "ElementaryTypeName", "src": "15251:7:21", "typeDescriptions": {} } }, - "id": 28955, + "id": 28970, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15251:10:21", @@ -8816,7 +9317,7 @@ }, { "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", - "id": 28957, + "id": 28972, "isConstant": false, "isLValue": false, "isPure": true, @@ -8842,7 +9343,7 @@ "typeString": "literal_string \"ERC20: burn from the zero address\"" } ], - "id": 28950, + "id": 28965, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -8856,12 +9357,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28958, + "id": 28973, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15232:67:21", @@ -8871,7 +9373,7 @@ "typeString": "tuple()" } }, - "id": 28959, + "id": 28974, "nodeType": "ExpressionStatement", "src": "15232:67:21" }, @@ -8879,11 +9381,11 @@ "expression": { "arguments": [ { - "id": 28961, + "id": 28976, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15333:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8894,7 +9396,7 @@ "arguments": [ { "hexValue": "30", - "id": 28964, + "id": 28979, "isConstant": false, "isLValue": false, "isPure": true, @@ -8916,7 +9418,7 @@ "typeString": "int_const 0" } ], - "id": 28963, + "id": 28978, "isConstant": false, "isLValue": false, "isPure": true, @@ -8928,19 +9430,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28962, + "id": 28977, "name": "address", "nodeType": "ElementaryTypeName", "src": "15342:7:21", "typeDescriptions": {} } }, - "id": 28965, + "id": 28980, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15342:10:21", @@ -8951,11 +9454,11 @@ } }, { - "id": 28966, + "id": 28981, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15354:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8978,23 +9481,24 @@ "typeString": "uint256" } ], - "id": 28960, + "id": 28975, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29065, + "referencedDeclaration": 29080, "src": "15312:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28967, + "id": 28982, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15312:49:21", @@ -9004,37 +9508,37 @@ "typeString": "tuple()" } }, - "id": 28968, + "id": 28983, "nodeType": "ExpressionStatement", "src": "15312:49:21" }, { "expression": { - "id": 28979, + "id": 28994, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28969, + "id": 28984, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "15374:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28971, + "id": 28986, "indexExpression": { - "id": 28970, + "id": 28985, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15384:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9057,11 +9561,11 @@ "rightHandSide": { "arguments": [ { - "id": 28976, + "id": 28991, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15418:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9070,7 +9574,7 @@ }, { "hexValue": "45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365", - "id": 28977, + "id": 28992, "isConstant": false, "isLValue": false, "isPure": true, @@ -9098,24 +9602,24 @@ ], "expression": { "baseExpression": { - "id": 28972, + "id": 28987, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "15395:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28974, + "id": 28989, "indexExpression": { - "id": 28973, + "id": 28988, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15405:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9133,26 +9637,28 @@ "typeString": "uint256" } }, - "id": 28975, + "id": 28990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15414:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "15395:22:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28978, + "id": 28993, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15395:68:21", @@ -9168,23 +9674,23 @@ "typeString": "uint256" } }, - "id": 28980, + "id": 28995, "nodeType": "ExpressionStatement", "src": "15374:89:21" }, { "expression": { - "id": 28986, + "id": 29001, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28981, + "id": 28996, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "15474:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9196,11 +9702,11 @@ "rightHandSide": { "arguments": [ { - "id": 28984, + "id": 28999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15506:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9216,37 +9722,39 @@ } ], "expression": { - "id": 28982, + "id": 28997, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "15489:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 28983, + "id": 28998, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15502:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28447, + "referencedDeclaration": 28462, "src": "15489:16:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28985, + "id": 29000, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15489:24:21", @@ -9262,7 +9770,7 @@ "typeString": "uint256" } }, - "id": 28987, + "id": 29002, "nodeType": "ExpressionStatement", "src": "15474:39:21" }, @@ -9270,11 +9778,11 @@ "eventCall": { "arguments": [ { - "id": 28989, + "id": 29004, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15538:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9285,7 +9793,7 @@ "arguments": [ { "hexValue": "30", - "id": 28992, + "id": 29007, "isConstant": false, "isLValue": false, "isPure": true, @@ -9307,7 +9815,7 @@ "typeString": "int_const 0" } ], - "id": 28991, + "id": 29006, "isConstant": false, "isLValue": false, "isPure": true, @@ -9319,19 +9827,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28990, + "id": 29005, "name": "address", "nodeType": "ElementaryTypeName", "src": "15547:7:21", "typeDescriptions": {} } }, - "id": 28993, + "id": 29008, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15547:10:21", @@ -9342,11 +9851,11 @@ } }, { - "id": 28994, + "id": 29009, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15559:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9369,23 +9878,24 @@ "typeString": "uint256" } ], - "id": 28988, + "id": 29003, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29133, + "referencedDeclaration": 29148, "src": "15529:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28995, + "id": 29010, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15529:37:21", @@ -9395,14 +9905,14 @@ "typeString": "tuple()" } }, - "id": 28996, + "id": 29011, "nodeType": "EmitStatement", "src": "15524:42:21" } ] }, "documentation": { - "id": 28943, + "id": 28958, "nodeType": "StructuredDocumentation", "src": "14831:319:21", "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." @@ -9413,17 +9923,17 @@ "name": "_burn", "nameLocation": "15165:5:21", "parameters": { - "id": 28948, + "id": 28963, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28945, + "id": 28960, "mutability": "mutable", "name": "account", "nameLocation": "15179:7:21", "nodeType": "VariableDeclaration", - "scope": 28998, + "scope": 29013, "src": "15171:15:21", "stateVariable": false, "storageLocation": "default", @@ -9432,7 +9942,7 @@ "typeString": "address" }, "typeName": { - "id": 28944, + "id": 28959, "name": "address", "nodeType": "ElementaryTypeName", "src": "15171:7:21", @@ -9446,12 +9956,12 @@ }, { "constant": false, - "id": 28947, + "id": 28962, "mutability": "mutable", "name": "amount", "nameLocation": "15196:6:21", "nodeType": "VariableDeclaration", - "scope": 28998, + "scope": 29013, "src": "15188:14:21", "stateVariable": false, "storageLocation": "default", @@ -9460,7 +9970,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28946, + "id": 28961, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "15188:7:21", @@ -9475,24 +9985,26 @@ "src": "15170:33:21" }, "returnParameters": { - "id": 28949, + "id": 28964, "nodeType": "ParameterList", "parameters": [], "src": "15221:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 29043, + "id": 29058, "nodeType": "FunctionDefinition", "src": "16012:346:21", + "nodes": [], "body": { - "id": 29042, + "id": 29057, "nodeType": "Block", "src": "16095:263:21", + "nodes": [], "statements": [ { "expression": { @@ -9502,17 +10014,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 29014, + "id": 29029, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29009, + "id": 29024, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29001, + "referencedDeclaration": 29016, "src": "16114:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9525,7 +10037,7 @@ "arguments": [ { "hexValue": "30", - "id": 29012, + "id": 29027, "isConstant": false, "isLValue": false, "isPure": true, @@ -9547,7 +10059,7 @@ "typeString": "int_const 0" } ], - "id": 29011, + "id": 29026, "isConstant": false, "isLValue": false, "isPure": true, @@ -9559,19 +10071,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 29010, + "id": 29025, "name": "address", "nodeType": "ElementaryTypeName", "src": "16123:7:21", "typeDescriptions": {} } }, - "id": 29013, + "id": 29028, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16123:10:21", @@ -9589,7 +10102,7 @@ }, { "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", - "id": 29015, + "id": 29030, "isConstant": false, "isLValue": false, "isPure": true, @@ -9615,7 +10128,7 @@ "typeString": "literal_string \"ERC20: approve from the zero address\"" } ], - "id": 29008, + "id": 29023, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9629,12 +10142,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 29016, + "id": 29031, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16106:68:21", @@ -9644,7 +10158,7 @@ "typeString": "tuple()" } }, - "id": 29017, + "id": 29032, "nodeType": "ExpressionStatement", "src": "16106:68:21" }, @@ -9656,17 +10170,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 29024, + "id": 29039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29019, + "id": 29034, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29003, + "referencedDeclaration": 29018, "src": "16193:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9679,7 +10193,7 @@ "arguments": [ { "hexValue": "30", - "id": 29022, + "id": 29037, "isConstant": false, "isLValue": false, "isPure": true, @@ -9701,7 +10215,7 @@ "typeString": "int_const 0" } ], - "id": 29021, + "id": 29036, "isConstant": false, "isLValue": false, "isPure": true, @@ -9713,19 +10227,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 29020, + "id": 29035, "name": "address", "nodeType": "ElementaryTypeName", "src": "16204:7:21", "typeDescriptions": {} } }, - "id": 29023, + "id": 29038, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16204:10:21", @@ -9743,7 +10258,7 @@ }, { "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", - "id": 29025, + "id": 29040, "isConstant": false, "isLValue": false, "isPure": true, @@ -9769,7 +10284,7 @@ "typeString": "literal_string \"ERC20: approve to the zero address\"" } ], - "id": 29018, + "id": 29033, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9783,12 +10298,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 29026, + "id": 29041, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16185:68:21", @@ -9798,13 +10314,13 @@ "typeString": "tuple()" } }, - "id": 29027, + "id": 29042, "nodeType": "ExpressionStatement", "src": "16185:68:21" }, { "expression": { - "id": 29034, + "id": 29049, "isConstant": false, "isLValue": false, "isPure": false, @@ -9812,24 +10328,24 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 29028, + "id": 29043, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "16266:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 29031, + "id": 29046, "indexExpression": { - "id": 29029, + "id": 29044, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29001, + "referencedDeclaration": 29016, "src": "16278:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9847,13 +10363,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 29032, + "id": 29047, "indexExpression": { - "id": 29030, + "id": 29045, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29003, + "referencedDeclaration": 29018, "src": "16285:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9874,11 +10390,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 29033, + "id": 29048, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29005, + "referencedDeclaration": 29020, "src": "16296:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9891,7 +10407,7 @@ "typeString": "uint256" } }, - "id": 29035, + "id": 29050, "nodeType": "ExpressionStatement", "src": "16266:36:21" }, @@ -9899,11 +10415,11 @@ "eventCall": { "arguments": [ { - "id": 29037, + "id": 29052, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29001, + "referencedDeclaration": 29016, "src": "16327:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9911,11 +10427,11 @@ } }, { - "id": 29038, + "id": 29053, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29003, + "referencedDeclaration": 29018, "src": "16334:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9923,11 +10439,11 @@ } }, { - "id": 29039, + "id": 29054, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29005, + "referencedDeclaration": 29020, "src": "16343:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9950,23 +10466,24 @@ "typeString": "uint256" } ], - "id": 29036, + "id": 29051, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29142, + "referencedDeclaration": 29157, "src": "16318:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 29040, + "id": 29055, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16318:32:21", @@ -9976,14 +10493,14 @@ "typeString": "tuple()" } }, - "id": 29041, + "id": 29056, "nodeType": "EmitStatement", "src": "16313:37:21" } ] }, "documentation": { - "id": 28999, + "id": 29014, "nodeType": "StructuredDocumentation", "src": "15582:424:21", "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." @@ -9994,17 +10511,17 @@ "name": "_approve", "nameLocation": "16021:8:21", "parameters": { - "id": 29006, + "id": 29021, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29001, + "id": 29016, "mutability": "mutable", "name": "owner", "nameLocation": "16038:5:21", "nodeType": "VariableDeclaration", - "scope": 29043, + "scope": 29058, "src": "16030:13:21", "stateVariable": false, "storageLocation": "default", @@ -10013,7 +10530,7 @@ "typeString": "address" }, "typeName": { - "id": 29000, + "id": 29015, "name": "address", "nodeType": "ElementaryTypeName", "src": "16030:7:21", @@ -10027,12 +10544,12 @@ }, { "constant": false, - "id": 29003, + "id": 29018, "mutability": "mutable", "name": "spender", "nameLocation": "16053:7:21", "nodeType": "VariableDeclaration", - "scope": 29043, + "scope": 29058, "src": "16045:15:21", "stateVariable": false, "storageLocation": "default", @@ -10041,7 +10558,7 @@ "typeString": "address" }, "typeName": { - "id": 29002, + "id": 29017, "name": "address", "nodeType": "ElementaryTypeName", "src": "16045:7:21", @@ -10055,12 +10572,12 @@ }, { "constant": false, - "id": 29005, + "id": 29020, "mutability": "mutable", "name": "amount", "nameLocation": "16070:6:21", "nodeType": "VariableDeclaration", - "scope": 29043, + "scope": 29058, "src": "16062:14:21", "stateVariable": false, "storageLocation": "default", @@ -10069,7 +10586,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29004, + "id": 29019, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "16062:7:21", @@ -10084,38 +10601,40 @@ "src": "16029:48:21" }, "returnParameters": { - "id": 29007, + "id": 29022, "nodeType": "ParameterList", "parameters": [], "src": "16095:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 29054, + "id": 29069, "nodeType": "FunctionDefinition", "src": "16690:98:21", + "nodes": [], "body": { - "id": 29053, + "id": 29068, "nodeType": "Block", "src": "16748:40:21", + "nodes": [], "statements": [ { "expression": { - "id": 29051, + "id": 29066, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 29049, + "id": 29064, "name": "_decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28594, + "referencedDeclaration": 28609, "src": "16759:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -10125,11 +10644,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 29050, + "id": 29065, "name": "decimals_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29046, + "referencedDeclaration": 29061, "src": "16771:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -10142,14 +10661,14 @@ "typeString": "uint8" } }, - "id": 29052, + "id": 29067, "nodeType": "ExpressionStatement", "src": "16759:21:21" } ] }, "documentation": { - "id": 29044, + "id": 29059, "nodeType": "StructuredDocumentation", "src": "16366:318:21", "text": " @dev Sets {decimals} to a value other than the default one of 18.\n WARNING: This function should only be called from the constructor. Most\n applications that interact with token contracts will not expect\n {decimals} to ever change, and may work incorrectly if it does." @@ -10160,17 +10679,17 @@ "name": "_setupDecimals", "nameLocation": "16699:14:21", "parameters": { - "id": 29047, + "id": 29062, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29046, + "id": 29061, "mutability": "mutable", "name": "decimals_", "nameLocation": "16720:9:21", "nodeType": "VariableDeclaration", - "scope": 29054, + "scope": 29069, "src": "16714:15:21", "stateVariable": false, "storageLocation": "default", @@ -10179,7 +10698,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29045, + "id": 29060, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "16714:5:21", @@ -10194,28 +10713,30 @@ "src": "16713:17:21" }, "returnParameters": { - "id": 29048, + "id": 29063, "nodeType": "ParameterList", "parameters": [], "src": "16748:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 29065, + "id": 29080, "nodeType": "FunctionDefinition", "src": "17391:92:21", + "nodes": [], "body": { - "id": 29064, + "id": 29079, "nodeType": "Block", "src": "17480:3:21", + "nodes": [], "statements": [] }, "documentation": { - "id": 29055, + "id": 29070, "nodeType": "StructuredDocumentation", "src": "16796:589:21", "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 to 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]." @@ -10226,17 +10747,17 @@ "name": "_beforeTokenTransfer", "nameLocation": "17400:20:21", "parameters": { - "id": 29062, + "id": 29077, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29057, + "id": 29072, "mutability": "mutable", "name": "from", "nameLocation": "17429:4:21", "nodeType": "VariableDeclaration", - "scope": 29065, + "scope": 29080, "src": "17421:12:21", "stateVariable": false, "storageLocation": "default", @@ -10245,7 +10766,7 @@ "typeString": "address" }, "typeName": { - "id": 29056, + "id": 29071, "name": "address", "nodeType": "ElementaryTypeName", "src": "17421:7:21", @@ -10259,12 +10780,12 @@ }, { "constant": false, - "id": 29059, + "id": 29074, "mutability": "mutable", "name": "to", "nameLocation": "17443:2:21", "nodeType": "VariableDeclaration", - "scope": 29065, + "scope": 29080, "src": "17435:10:21", "stateVariable": false, "storageLocation": "default", @@ -10273,7 +10794,7 @@ "typeString": "address" }, "typeName": { - "id": 29058, + "id": 29073, "name": "address", "nodeType": "ElementaryTypeName", "src": "17435:7:21", @@ -10287,12 +10808,12 @@ }, { "constant": false, - "id": 29061, + "id": 29076, "mutability": "mutable", "name": "amount", "nameLocation": "17455:6:21", "nodeType": "VariableDeclaration", - "scope": 29065, + "scope": 29080, "src": "17447:14:21", "stateVariable": false, "storageLocation": "default", @@ -10301,7 +10822,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29060, + "id": 29075, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "17447:7:21", @@ -10316,12 +10837,12 @@ "src": "17420:42:21" }, "returnParameters": { - "id": 29063, + "id": 29078, "nodeType": "ParameterList", "parameters": [], "src": "17480:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" @@ -10331,25 +10852,31 @@ "baseContracts": [ { "baseName": { - "id": 28570, + "id": 28585, "name": "Context", + "nameLocations": [ + "7754:7:21" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28107, + "referencedDeclaration": 28122, "src": "7754:7:21" }, - "id": 28571, + "id": 28586, "nodeType": "InheritanceSpecifier", "src": "7754:7:21" }, { "baseName": { - "id": 28572, + "id": 28587, "name": "IERC20", + "nameLocations": [ + "7763:6:21" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "7763:6:21" }, - "id": 28573, + "id": 28588, "nodeType": "InheritanceSpecifier", "src": "7763:6:21" } @@ -10358,20 +10885,20 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 28569, + "id": 28584, "nodeType": "StructuredDocumentation", "src": "6549:1185:21", "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.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n We have followed general OpenZeppelin guidelines: functions revert instead\n of returning `false` on failure. This behavior is nonetheless conventional\n and does not conflict with the expectations of ERC20 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, "linearizedBaseContracts": [ - 29066, - 29143, - 28107 + 29081, + 29158, + 28122 ], "name": "ERC20", "nameLocation": "7745:5:21", - "scope": 29067, + "scope": 29082, "usedErrors": [] } ], diff --git a/out/ERC20.sol/SafeMath.json b/out/ERC20.sol/SafeMath.json index 9b7ea40..730e52b 100644 --- a/out/ERC20.sol/SafeMath.json +++ b/out/ERC20.sol/SafeMath.json @@ -1,43 +1,108 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220455312f75e7d9ca214ee6955c5232c60588eb959044ede805915450800261a0f64736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d191b993b26ddcba8d51d865db4da8043bceeddc283f06b6d58439c56b80b4c664736f6c63430008110033", "sourceMap": "136:6409:21:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;136:6409:21;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220455312f75e7d9ca214ee6955c5232c60588eb959044ede805915450800261a0f64736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d191b993b26ddcba8d51d865db4da8043bceeddc283f06b6d58439c56b80b4c664736f6c63430008110033", "sourceMap": "136:6409:21:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/ERC20.sol\":\"SafeMath\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/interfaces/ERC20.sol\":{\"keccak256\":\"0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd\",\"dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/ERC20.sol": "SafeMath" + }, + "libraries": {} + }, + "sources": { + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/interfaces/ERC20.sol": { + "keccak256": "0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d", + "urls": [ + "bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd", + "dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/ERC20.sol", - "id": 29067, + "id": 29082, "exportedSymbols": { "Context": [ - 28107 + 28122 ], "ERC20": [ - 29066 + 29081 ], "IERC20": [ - 29143 + 29158 ], "IERC20Extended": [ - 29151 + 29166 ], "SafeMath": [ - 28568 + 28583 ] }, "nodeType": "SourceUnit", "src": "46:17440:21", "nodes": [ { - "id": 28257, + "id": 28272, "nodeType": "PragmaDirective", "src": "46:23:21", + "nodes": [], "literals": [ "solidity", "^", @@ -46,61 +111,65 @@ ] }, { - "id": 28258, + "id": 28273, "nodeType": "ImportDirective", "src": "73:35:21", + "nodes": [], "absolutePath": "src/extensions/Context.sol", "file": "../extensions/Context.sol", "nameLocation": "-1:-1:-1", - "scope": 29067, - "sourceUnit": 28108, + "scope": 29082, + "sourceUnit": 28123, "symbolAliases": [], "unitAlias": "" }, { - "id": 28259, + "id": 28274, "nodeType": "ImportDirective", "src": "110:22:21", + "nodes": [], "absolutePath": "src/interfaces/IERC20.sol", "file": "./IERC20.sol", "nameLocation": "-1:-1:-1", - "scope": 29067, - "sourceUnit": 29152, + "scope": 29082, + "sourceUnit": 29167, "symbolAliases": [], "unitAlias": "" }, { - "id": 28568, + "id": 28583, "nodeType": "ContractDefinition", "src": "136:6409:21", "nodes": [ { - "id": 28291, + "id": 28306, "nodeType": "FunctionDefinition", "src": "301:222:21", + "nodes": [], "body": { - "id": 28290, + "id": 28305, "nodeType": "Block", "src": "377:146:21", + "nodes": [], "statements": [ { - "id": 28289, + "id": 28304, "nodeType": "UncheckedBlock", "src": "388:128:21", "statements": [ { "assignments": [ - 28272 + 28287 ], "declarations": [ { "constant": false, - "id": 28272, + "id": 28287, "mutability": "mutable", "name": "c", "nameLocation": "421:1:21", "nodeType": "VariableDeclaration", - "scope": 28289, + "scope": 28304, "src": "413:9:21", "stateVariable": false, "storageLocation": "default", @@ -109,7 +178,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28271, + "id": 28286, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "413:7:21", @@ -121,23 +190,23 @@ "visibility": "internal" } ], - "id": 28276, + "id": 28291, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28275, + "id": 28290, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28273, + "id": 28288, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28262, + "referencedDeclaration": 28277, "src": "425:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -147,11 +216,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 28274, + "id": 28289, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28264, + "referencedDeclaration": 28279, "src": "429:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -173,17 +242,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28279, + "id": 28294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28277, + "id": 28292, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28272, + "referencedDeclaration": 28287, "src": "449:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -193,11 +262,11 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 28278, + "id": 28293, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28262, + "referencedDeclaration": 28277, "src": "453:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -210,7 +279,7 @@ "typeString": "bool" } }, - "id": 28284, + "id": 28299, "nodeType": "IfStatement", "src": "445:28:21", "trueBody": { @@ -218,7 +287,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28280, + "id": 28295, "isConstant": false, "isLValue": false, "isPure": true, @@ -234,7 +303,7 @@ }, { "hexValue": "30", - "id": 28281, + "id": 28296, "isConstant": false, "isLValue": false, "isPure": true, @@ -249,7 +318,7 @@ "value": "0" } ], - "id": 28282, + "id": 28297, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -262,8 +331,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28270, - "id": 28283, + "functionReturnParameters": 28285, + "id": 28298, "nodeType": "Return", "src": "456:17:21" } @@ -273,7 +342,7 @@ "components": [ { "hexValue": "74727565", - "id": 28285, + "id": 28300, "isConstant": false, "isLValue": false, "isPure": true, @@ -288,11 +357,11 @@ "value": "true" }, { - "id": 28286, + "id": 28301, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28272, + "referencedDeclaration": 28287, "src": "502:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -300,7 +369,7 @@ } } ], - "id": 28287, + "id": 28302, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -313,8 +382,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28270, - "id": 28288, + "functionReturnParameters": 28285, + "id": 28303, "nodeType": "Return", "src": "488:16:21" } @@ -323,7 +392,7 @@ ] }, "documentation": { - "id": 28260, + "id": 28275, "nodeType": "StructuredDocumentation", "src": "160:135:21", "text": " @dev Returns the addition of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -334,17 +403,17 @@ "name": "tryAdd", "nameLocation": "310:6:21", "parameters": { - "id": 28265, + "id": 28280, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28262, + "id": 28277, "mutability": "mutable", "name": "a", "nameLocation": "325:1:21", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "317:9:21", "stateVariable": false, "storageLocation": "default", @@ -353,7 +422,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28261, + "id": 28276, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "317:7:21", @@ -366,12 +435,12 @@ }, { "constant": false, - "id": 28264, + "id": 28279, "mutability": "mutable", "name": "b", "nameLocation": "336:1:21", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "328:9:21", "stateVariable": false, "storageLocation": "default", @@ -380,7 +449,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28263, + "id": 28278, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "328:7:21", @@ -395,17 +464,17 @@ "src": "316:22:21" }, "returnParameters": { - "id": 28270, + "id": 28285, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28267, + "id": 28282, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "362:4:21", "stateVariable": false, "storageLocation": "default", @@ -414,7 +483,7 @@ "typeString": "bool" }, "typeName": { - "id": 28266, + "id": 28281, "name": "bool", "nodeType": "ElementaryTypeName", "src": "362:4:21", @@ -427,12 +496,12 @@ }, { "constant": false, - "id": 28269, + "id": 28284, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28291, + "scope": 28306, "src": "368:7:21", "stateVariable": false, "storageLocation": "default", @@ -441,7 +510,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28268, + "id": 28283, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "368:7:21", @@ -455,22 +524,24 @@ ], "src": "361:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28319, + "id": 28334, "nodeType": "FunctionDefinition", "src": "675:194:21", + "nodes": [], "body": { - "id": 28318, + "id": 28333, "nodeType": "Block", "src": "751:118:21", + "nodes": [], "statements": [ { - "id": 28317, + "id": 28332, "nodeType": "UncheckedBlock", "src": "762:100:21", "statements": [ @@ -480,17 +551,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28305, + "id": 28320, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28303, + "id": 28318, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28296, + "referencedDeclaration": 28311, "src": "791:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -500,11 +571,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 28304, + "id": 28319, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28294, + "referencedDeclaration": 28309, "src": "795:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -517,7 +588,7 @@ "typeString": "bool" } }, - "id": 28310, + "id": 28325, "nodeType": "IfStatement", "src": "787:28:21", "trueBody": { @@ -525,7 +596,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28306, + "id": 28321, "isConstant": false, "isLValue": false, "isPure": true, @@ -541,7 +612,7 @@ }, { "hexValue": "30", - "id": 28307, + "id": 28322, "isConstant": false, "isLValue": false, "isPure": true, @@ -556,7 +627,7 @@ "value": "0" } ], - "id": 28308, + "id": 28323, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -569,8 +640,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28302, - "id": 28309, + "functionReturnParameters": 28317, + "id": 28324, "nodeType": "Return", "src": "798:17:21" } @@ -580,7 +651,7 @@ "components": [ { "hexValue": "74727565", - "id": 28311, + "id": 28326, "isConstant": false, "isLValue": false, "isPure": true, @@ -599,17 +670,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28314, + "id": 28329, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28312, + "id": 28327, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28294, + "referencedDeclaration": 28309, "src": "844:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -619,11 +690,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 28313, + "id": 28328, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28296, + "referencedDeclaration": 28311, "src": "848:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -637,7 +708,7 @@ } } ], - "id": 28315, + "id": 28330, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -650,8 +721,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28302, - "id": 28316, + "functionReturnParameters": 28317, + "id": 28331, "nodeType": "Return", "src": "830:20:21" } @@ -660,7 +731,7 @@ ] }, "documentation": { - "id": 28292, + "id": 28307, "nodeType": "StructuredDocumentation", "src": "531:138:21", "text": " @dev Returns the subtraction of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -671,17 +742,17 @@ "name": "trySub", "nameLocation": "684:6:21", "parameters": { - "id": 28297, + "id": 28312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28294, + "id": 28309, "mutability": "mutable", "name": "a", "nameLocation": "699:1:21", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "691:9:21", "stateVariable": false, "storageLocation": "default", @@ -690,7 +761,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28293, + "id": 28308, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "691:7:21", @@ -703,12 +774,12 @@ }, { "constant": false, - "id": 28296, + "id": 28311, "mutability": "mutable", "name": "b", "nameLocation": "710:1:21", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "702:9:21", "stateVariable": false, "storageLocation": "default", @@ -717,7 +788,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28295, + "id": 28310, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "702:7:21", @@ -732,17 +803,17 @@ "src": "690:22:21" }, "returnParameters": { - "id": 28302, + "id": 28317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28299, + "id": 28314, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "736:4:21", "stateVariable": false, "storageLocation": "default", @@ -751,7 +822,7 @@ "typeString": "bool" }, "typeName": { - "id": 28298, + "id": 28313, "name": "bool", "nodeType": "ElementaryTypeName", "src": "736:4:21", @@ -764,12 +835,12 @@ }, { "constant": false, - "id": 28301, + "id": 28316, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28319, + "scope": 28334, "src": "742:7:21", "stateVariable": false, "storageLocation": "default", @@ -778,7 +849,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28300, + "id": 28315, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "742:7:21", @@ -792,22 +863,24 @@ ], "src": "735:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28361, + "id": 28376, "nodeType": "FunctionDefinition", "src": "1024:503:21", + "nodes": [], "body": { - "id": 28360, + "id": 28375, "nodeType": "Block", "src": "1100:427:21", + "nodes": [], "statements": [ { - "id": 28359, + "id": 28374, "nodeType": "UncheckedBlock", "src": "1111:409:21", "statements": [ @@ -817,17 +890,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28333, + "id": 28348, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28331, + "id": 28346, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28322, + "referencedDeclaration": 28337, "src": "1373:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -838,7 +911,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 28332, + "id": 28347, "isConstant": false, "isLValue": false, "isPure": true, @@ -858,7 +931,7 @@ "typeString": "bool" } }, - "id": 28338, + "id": 28353, "nodeType": "IfStatement", "src": "1369:28:21", "trueBody": { @@ -866,7 +939,7 @@ "components": [ { "hexValue": "74727565", - "id": 28334, + "id": 28349, "isConstant": false, "isLValue": false, "isPure": true, @@ -882,7 +955,7 @@ }, { "hexValue": "30", - "id": 28335, + "id": 28350, "isConstant": false, "isLValue": false, "isPure": true, @@ -897,7 +970,7 @@ "value": "0" } ], - "id": 28336, + "id": 28351, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -910,25 +983,25 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28330, - "id": 28337, + "functionReturnParameters": 28345, + "id": 28352, "nodeType": "Return", "src": "1381:16:21" } }, { "assignments": [ - 28340 + 28355 ], "declarations": [ { "constant": false, - "id": 28340, + "id": 28355, "mutability": "mutable", "name": "c", "nameLocation": "1420:1:21", "nodeType": "VariableDeclaration", - "scope": 28359, + "scope": 28374, "src": "1412:9:21", "stateVariable": false, "storageLocation": "default", @@ -937,7 +1010,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28339, + "id": 28354, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1412:7:21", @@ -949,23 +1022,23 @@ "visibility": "internal" } ], - "id": 28344, + "id": 28359, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28343, + "id": 28358, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28341, + "id": 28356, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28322, + "referencedDeclaration": 28337, "src": "1424:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -975,11 +1048,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28342, + "id": 28357, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28324, + "referencedDeclaration": 28339, "src": "1428:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1001,7 +1074,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28349, + "id": 28364, "isConstant": false, "isLValue": false, "isPure": false, @@ -1011,17 +1084,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28347, + "id": 28362, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28345, + "id": 28360, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28340, + "referencedDeclaration": 28355, "src": "1448:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1031,11 +1104,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28346, + "id": 28361, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28322, + "referencedDeclaration": 28337, "src": "1452:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1051,11 +1124,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 28348, + "id": 28363, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28324, + "referencedDeclaration": 28339, "src": "1457:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1068,7 +1141,7 @@ "typeString": "bool" } }, - "id": 28354, + "id": 28369, "nodeType": "IfStatement", "src": "1444:33:21", "trueBody": { @@ -1076,7 +1149,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28350, + "id": 28365, "isConstant": false, "isLValue": false, "isPure": true, @@ -1092,7 +1165,7 @@ }, { "hexValue": "30", - "id": 28351, + "id": 28366, "isConstant": false, "isLValue": false, "isPure": true, @@ -1107,7 +1180,7 @@ "value": "0" } ], - "id": 28352, + "id": 28367, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1120,8 +1193,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28330, - "id": 28353, + "functionReturnParameters": 28345, + "id": 28368, "nodeType": "Return", "src": "1460:17:21" } @@ -1131,7 +1204,7 @@ "components": [ { "hexValue": "74727565", - "id": 28355, + "id": 28370, "isConstant": false, "isLValue": false, "isPure": true, @@ -1146,11 +1219,11 @@ "value": "true" }, { - "id": 28356, + "id": 28371, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28340, + "referencedDeclaration": 28355, "src": "1506:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1158,7 +1231,7 @@ } } ], - "id": 28357, + "id": 28372, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1171,8 +1244,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28330, - "id": 28358, + "functionReturnParameters": 28345, + "id": 28373, "nodeType": "Return", "src": "1492:16:21" } @@ -1181,7 +1254,7 @@ ] }, "documentation": { - "id": 28320, + "id": 28335, "nodeType": "StructuredDocumentation", "src": "877:141:21", "text": " @dev Returns the multiplication of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -1192,17 +1265,17 @@ "name": "tryMul", "nameLocation": "1033:6:21", "parameters": { - "id": 28325, + "id": 28340, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28322, + "id": 28337, "mutability": "mutable", "name": "a", "nameLocation": "1048:1:21", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1040:9:21", "stateVariable": false, "storageLocation": "default", @@ -1211,7 +1284,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28321, + "id": 28336, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1040:7:21", @@ -1224,12 +1297,12 @@ }, { "constant": false, - "id": 28324, + "id": 28339, "mutability": "mutable", "name": "b", "nameLocation": "1059:1:21", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1051:9:21", "stateVariable": false, "storageLocation": "default", @@ -1238,7 +1311,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28323, + "id": 28338, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1051:7:21", @@ -1253,17 +1326,17 @@ "src": "1039:22:21" }, "returnParameters": { - "id": 28330, + "id": 28345, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28327, + "id": 28342, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1085:4:21", "stateVariable": false, "storageLocation": "default", @@ -1272,7 +1345,7 @@ "typeString": "bool" }, "typeName": { - "id": 28326, + "id": 28341, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1085:4:21", @@ -1285,12 +1358,12 @@ }, { "constant": false, - "id": 28329, + "id": 28344, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28361, + "scope": 28376, "src": "1091:7:21", "stateVariable": false, "storageLocation": "default", @@ -1299,7 +1372,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28328, + "id": 28343, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1091:7:21", @@ -1313,22 +1386,24 @@ ], "src": "1084:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28389, + "id": 28404, "nodeType": "FunctionDefinition", "src": "1683:195:21", + "nodes": [], "body": { - "id": 28388, + "id": 28403, "nodeType": "Block", "src": "1759:119:21", + "nodes": [], "statements": [ { - "id": 28387, + "id": 28402, "nodeType": "UncheckedBlock", "src": "1770:101:21", "statements": [ @@ -1338,17 +1413,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28375, + "id": 28390, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28373, + "id": 28388, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28366, + "referencedDeclaration": 28381, "src": "1799:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1359,7 +1434,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 28374, + "id": 28389, "isConstant": false, "isLValue": false, "isPure": true, @@ -1379,7 +1454,7 @@ "typeString": "bool" } }, - "id": 28380, + "id": 28395, "nodeType": "IfStatement", "src": "1795:29:21", "trueBody": { @@ -1387,7 +1462,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28376, + "id": 28391, "isConstant": false, "isLValue": false, "isPure": true, @@ -1403,7 +1478,7 @@ }, { "hexValue": "30", - "id": 28377, + "id": 28392, "isConstant": false, "isLValue": false, "isPure": true, @@ -1418,7 +1493,7 @@ "value": "0" } ], - "id": 28378, + "id": 28393, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1431,8 +1506,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28372, - "id": 28379, + "functionReturnParameters": 28387, + "id": 28394, "nodeType": "Return", "src": "1807:17:21" } @@ -1442,7 +1517,7 @@ "components": [ { "hexValue": "74727565", - "id": 28381, + "id": 28396, "isConstant": false, "isLValue": false, "isPure": true, @@ -1461,17 +1536,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28384, + "id": 28399, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28382, + "id": 28397, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28364, + "referencedDeclaration": 28379, "src": "1853:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1481,11 +1556,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28383, + "id": 28398, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28366, + "referencedDeclaration": 28381, "src": "1857:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1499,7 +1574,7 @@ } } ], - "id": 28385, + "id": 28400, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1512,8 +1587,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28372, - "id": 28386, + "functionReturnParameters": 28387, + "id": 28401, "nodeType": "Return", "src": "1839:20:21" } @@ -1522,7 +1597,7 @@ ] }, "documentation": { - "id": 28362, + "id": 28377, "nodeType": "StructuredDocumentation", "src": "1535:142:21", "text": " @dev Returns the division of two unsigned integers, with a division by zero flag.\n _Available since v3.4._" @@ -1533,17 +1608,17 @@ "name": "tryDiv", "nameLocation": "1692:6:21", "parameters": { - "id": 28367, + "id": 28382, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28364, + "id": 28379, "mutability": "mutable", "name": "a", "nameLocation": "1707:1:21", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1699:9:21", "stateVariable": false, "storageLocation": "default", @@ -1552,7 +1627,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28363, + "id": 28378, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1699:7:21", @@ -1565,12 +1640,12 @@ }, { "constant": false, - "id": 28366, + "id": 28381, "mutability": "mutable", "name": "b", "nameLocation": "1718:1:21", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1710:9:21", "stateVariable": false, "storageLocation": "default", @@ -1579,7 +1654,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28365, + "id": 28380, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1710:7:21", @@ -1594,17 +1669,17 @@ "src": "1698:22:21" }, "returnParameters": { - "id": 28372, + "id": 28387, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28369, + "id": 28384, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1744:4:21", "stateVariable": false, "storageLocation": "default", @@ -1613,7 +1688,7 @@ "typeString": "bool" }, "typeName": { - "id": 28368, + "id": 28383, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1744:4:21", @@ -1626,12 +1701,12 @@ }, { "constant": false, - "id": 28371, + "id": 28386, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28389, + "scope": 28404, "src": "1750:7:21", "stateVariable": false, "storageLocation": "default", @@ -1640,7 +1715,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28370, + "id": 28385, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1750:7:21", @@ -1654,22 +1729,24 @@ ], "src": "1743:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28417, + "id": 28432, "nodeType": "FunctionDefinition", "src": "2044:195:21", + "nodes": [], "body": { - "id": 28416, + "id": 28431, "nodeType": "Block", "src": "2120:119:21", + "nodes": [], "statements": [ { - "id": 28415, + "id": 28430, "nodeType": "UncheckedBlock", "src": "2131:101:21", "statements": [ @@ -1679,17 +1756,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28403, + "id": 28418, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28401, + "id": 28416, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28394, + "referencedDeclaration": 28409, "src": "2160:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1700,7 +1777,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 28402, + "id": 28417, "isConstant": false, "isLValue": false, "isPure": true, @@ -1720,7 +1797,7 @@ "typeString": "bool" } }, - "id": 28408, + "id": 28423, "nodeType": "IfStatement", "src": "2156:29:21", "trueBody": { @@ -1728,7 +1805,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 28404, + "id": 28419, "isConstant": false, "isLValue": false, "isPure": true, @@ -1744,7 +1821,7 @@ }, { "hexValue": "30", - "id": 28405, + "id": 28420, "isConstant": false, "isLValue": false, "isPure": true, @@ -1759,7 +1836,7 @@ "value": "0" } ], - "id": 28406, + "id": 28421, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1772,8 +1849,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 28400, - "id": 28407, + "functionReturnParameters": 28415, + "id": 28422, "nodeType": "Return", "src": "2168:17:21" } @@ -1783,7 +1860,7 @@ "components": [ { "hexValue": "74727565", - "id": 28409, + "id": 28424, "isConstant": false, "isLValue": false, "isPure": true, @@ -1802,17 +1879,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28412, + "id": 28427, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28410, + "id": 28425, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28392, + "referencedDeclaration": 28407, "src": "2214:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1822,11 +1899,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 28411, + "id": 28426, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28394, + "referencedDeclaration": 28409, "src": "2218:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1840,7 +1917,7 @@ } } ], - "id": 28413, + "id": 28428, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1853,8 +1930,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 28400, - "id": 28414, + "functionReturnParameters": 28415, + "id": 28429, "nodeType": "Return", "src": "2200:20:21" } @@ -1863,7 +1940,7 @@ ] }, "documentation": { - "id": 28390, + "id": 28405, "nodeType": "StructuredDocumentation", "src": "1886:152:21", "text": " @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.\n _Available since v3.4._" @@ -1874,17 +1951,17 @@ "name": "tryMod", "nameLocation": "2053:6:21", "parameters": { - "id": 28395, + "id": 28410, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28392, + "id": 28407, "mutability": "mutable", "name": "a", "nameLocation": "2068:1:21", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2060:9:21", "stateVariable": false, "storageLocation": "default", @@ -1893,7 +1970,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28391, + "id": 28406, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2060:7:21", @@ -1906,12 +1983,12 @@ }, { "constant": false, - "id": 28394, + "id": 28409, "mutability": "mutable", "name": "b", "nameLocation": "2079:1:21", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2071:9:21", "stateVariable": false, "storageLocation": "default", @@ -1920,7 +1997,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28393, + "id": 28408, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2071:7:21", @@ -1935,17 +2012,17 @@ "src": "2059:22:21" }, "returnParameters": { - "id": 28400, + "id": 28415, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28397, + "id": 28412, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2105:4:21", "stateVariable": false, "storageLocation": "default", @@ -1954,7 +2031,7 @@ "typeString": "bool" }, "typeName": { - "id": 28396, + "id": 28411, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2105:4:21", @@ -1967,12 +2044,12 @@ }, { "constant": false, - "id": 28399, + "id": 28414, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28417, + "scope": 28432, "src": "2111:7:21", "stateVariable": false, "storageLocation": "default", @@ -1981,7 +2058,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28398, + "id": 28413, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2111:7:21", @@ -1995,19 +2072,21 @@ ], "src": "2104:15:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28432, + "id": 28447, "nodeType": "FunctionDefinition", "src": "2486:98:21", + "nodes": [], "body": { - "id": 28431, + "id": 28446, "nodeType": "Block", "src": "2553:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2015,17 +2094,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28429, + "id": 28444, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28427, + "id": 28442, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28420, + "referencedDeclaration": 28435, "src": "2571:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2035,11 +2114,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 28428, + "id": 28443, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28422, + "referencedDeclaration": 28437, "src": "2575:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2052,15 +2131,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28426, - "id": 28430, + "functionReturnParameters": 28441, + "id": 28445, "nodeType": "Return", "src": "2564:12:21" } ] }, "documentation": { - "id": 28418, + "id": 28433, "nodeType": "StructuredDocumentation", "src": "2247:233:21", "text": " @dev Returns the addition of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `+` operator.\n Requirements:\n - Addition cannot overflow." @@ -2071,17 +2150,17 @@ "name": "add", "nameLocation": "2495:3:21", "parameters": { - "id": 28423, + "id": 28438, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28420, + "id": 28435, "mutability": "mutable", "name": "a", "nameLocation": "2507:1:21", "nodeType": "VariableDeclaration", - "scope": 28432, + "scope": 28447, "src": "2499:9:21", "stateVariable": false, "storageLocation": "default", @@ -2090,7 +2169,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28419, + "id": 28434, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2499:7:21", @@ -2103,12 +2182,12 @@ }, { "constant": false, - "id": 28422, + "id": 28437, "mutability": "mutable", "name": "b", "nameLocation": "2518:1:21", "nodeType": "VariableDeclaration", - "scope": 28432, + "scope": 28447, "src": "2510:9:21", "stateVariable": false, "storageLocation": "default", @@ -2117,7 +2196,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28421, + "id": 28436, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2510:7:21", @@ -2132,17 +2211,17 @@ "src": "2498:22:21" }, "returnParameters": { - "id": 28426, + "id": 28441, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28425, + "id": 28440, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28432, + "scope": 28447, "src": "2544:7:21", "stateVariable": false, "storageLocation": "default", @@ -2151,7 +2230,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28424, + "id": 28439, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2544:7:21", @@ -2165,19 +2244,21 @@ ], "src": "2543:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28447, + "id": 28462, "nodeType": "FunctionDefinition", "src": "2867:98:21", + "nodes": [], "body": { - "id": 28446, + "id": 28461, "nodeType": "Block", "src": "2934:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2185,17 +2266,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28444, + "id": 28459, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28442, + "id": 28457, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28435, + "referencedDeclaration": 28450, "src": "2952:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2205,11 +2286,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 28443, + "id": 28458, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28437, + "referencedDeclaration": 28452, "src": "2956:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2222,15 +2303,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28441, - "id": 28445, + "functionReturnParameters": 28456, + "id": 28460, "nodeType": "Return", "src": "2945:12:21" } ] }, "documentation": { - "id": 28433, + "id": 28448, "nodeType": "StructuredDocumentation", "src": "2592:269:21", "text": " @dev Returns the subtraction of two unsigned integers, reverting on\n overflow (when the result is negative).\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." @@ -2241,17 +2322,17 @@ "name": "sub", "nameLocation": "2876:3:21", "parameters": { - "id": 28438, + "id": 28453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28435, + "id": 28450, "mutability": "mutable", "name": "a", "nameLocation": "2888:1:21", "nodeType": "VariableDeclaration", - "scope": 28447, + "scope": 28462, "src": "2880:9:21", "stateVariable": false, "storageLocation": "default", @@ -2260,7 +2341,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28434, + "id": 28449, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2880:7:21", @@ -2273,12 +2354,12 @@ }, { "constant": false, - "id": 28437, + "id": 28452, "mutability": "mutable", "name": "b", "nameLocation": "2899:1:21", "nodeType": "VariableDeclaration", - "scope": 28447, + "scope": 28462, "src": "2891:9:21", "stateVariable": false, "storageLocation": "default", @@ -2287,7 +2368,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28436, + "id": 28451, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2891:7:21", @@ -2302,17 +2383,17 @@ "src": "2879:22:21" }, "returnParameters": { - "id": 28441, + "id": 28456, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28440, + "id": 28455, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28447, + "scope": 28462, "src": "2925:7:21", "stateVariable": false, "storageLocation": "default", @@ -2321,7 +2402,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28439, + "id": 28454, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2925:7:21", @@ -2335,19 +2416,21 @@ ], "src": "2924:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28462, + "id": 28477, "nodeType": "FunctionDefinition", "src": "3224:98:21", + "nodes": [], "body": { - "id": 28461, + "id": 28476, "nodeType": "Block", "src": "3291:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2355,17 +2438,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28459, + "id": 28474, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28457, + "id": 28472, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28450, + "referencedDeclaration": 28465, "src": "3309:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2375,11 +2458,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 28458, + "id": 28473, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28452, + "referencedDeclaration": 28467, "src": "3313:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2392,15 +2475,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28456, - "id": 28460, + "functionReturnParameters": 28471, + "id": 28475, "nodeType": "Return", "src": "3302:12:21" } ] }, "documentation": { - "id": 28448, + "id": 28463, "nodeType": "StructuredDocumentation", "src": "2973:245:21", "text": " @dev Returns the multiplication of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `*` operator.\n Requirements:\n - Multiplication cannot overflow." @@ -2411,17 +2494,17 @@ "name": "mul", "nameLocation": "3233:3:21", "parameters": { - "id": 28453, + "id": 28468, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28450, + "id": 28465, "mutability": "mutable", "name": "a", "nameLocation": "3245:1:21", "nodeType": "VariableDeclaration", - "scope": 28462, + "scope": 28477, "src": "3237:9:21", "stateVariable": false, "storageLocation": "default", @@ -2430,7 +2513,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28449, + "id": 28464, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3237:7:21", @@ -2443,12 +2526,12 @@ }, { "constant": false, - "id": 28452, + "id": 28467, "mutability": "mutable", "name": "b", "nameLocation": "3256:1:21", "nodeType": "VariableDeclaration", - "scope": 28462, + "scope": 28477, "src": "3248:9:21", "stateVariable": false, "storageLocation": "default", @@ -2457,7 +2540,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28451, + "id": 28466, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3248:7:21", @@ -2472,17 +2555,17 @@ "src": "3236:22:21" }, "returnParameters": { - "id": 28456, + "id": 28471, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28455, + "id": 28470, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28462, + "scope": 28477, "src": "3282:7:21", "stateVariable": false, "storageLocation": "default", @@ -2491,7 +2574,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28454, + "id": 28469, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3282:7:21", @@ -2505,19 +2588,21 @@ ], "src": "3281:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28477, + "id": 28492, "nodeType": "FunctionDefinition", "src": "3623:98:21", + "nodes": [], "body": { - "id": 28476, + "id": 28491, "nodeType": "Block", "src": "3690:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2525,17 +2610,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28474, + "id": 28489, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28472, + "id": 28487, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28465, + "referencedDeclaration": 28480, "src": "3708:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2545,11 +2630,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28473, + "id": 28488, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28467, + "referencedDeclaration": 28482, "src": "3712:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2562,15 +2647,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28471, - "id": 28475, + "functionReturnParameters": 28486, + "id": 28490, "nodeType": "Return", "src": "3701:12:21" } ] }, "documentation": { - "id": 28463, + "id": 28478, "nodeType": "StructuredDocumentation", "src": "3330:287:21", "text": " @dev Returns the integer division of two unsigned integers, reverting on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator.\n Requirements:\n - The divisor cannot be zero." @@ -2581,17 +2666,17 @@ "name": "div", "nameLocation": "3632:3:21", "parameters": { - "id": 28468, + "id": 28483, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28465, + "id": 28480, "mutability": "mutable", "name": "a", "nameLocation": "3644:1:21", "nodeType": "VariableDeclaration", - "scope": 28477, + "scope": 28492, "src": "3636:9:21", "stateVariable": false, "storageLocation": "default", @@ -2600,7 +2685,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28464, + "id": 28479, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3636:7:21", @@ -2613,12 +2698,12 @@ }, { "constant": false, - "id": 28467, + "id": 28482, "mutability": "mutable", "name": "b", "nameLocation": "3655:1:21", "nodeType": "VariableDeclaration", - "scope": 28477, + "scope": 28492, "src": "3647:9:21", "stateVariable": false, "storageLocation": "default", @@ -2627,7 +2712,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28466, + "id": 28481, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3647:7:21", @@ -2642,17 +2727,17 @@ "src": "3635:22:21" }, "returnParameters": { - "id": 28471, + "id": 28486, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28470, + "id": 28485, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28477, + "scope": 28492, "src": "3681:7:21", "stateVariable": false, "storageLocation": "default", @@ -2661,7 +2746,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28469, + "id": 28484, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3681:7:21", @@ -2675,19 +2760,21 @@ ], "src": "3680:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28492, + "id": 28507, "nodeType": "FunctionDefinition", "src": "4188:98:21", + "nodes": [], "body": { - "id": 28491, + "id": 28506, "nodeType": "Block", "src": "4255:31:21", + "nodes": [], "statements": [ { "expression": { @@ -2695,17 +2782,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28489, + "id": 28504, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28487, + "id": 28502, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28480, + "referencedDeclaration": 28495, "src": "4273:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2715,11 +2802,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 28488, + "id": 28503, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28482, + "referencedDeclaration": 28497, "src": "4277:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2732,15 +2819,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28486, - "id": 28490, + "functionReturnParameters": 28501, + "id": 28505, "nodeType": "Return", "src": "4266:12:21" } ] }, "documentation": { - "id": 28478, + "id": 28493, "nodeType": "StructuredDocumentation", "src": "3729:453:21", "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting when dividing by zero.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -2751,17 +2838,17 @@ "name": "mod", "nameLocation": "4197:3:21", "parameters": { - "id": 28483, + "id": 28498, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28480, + "id": 28495, "mutability": "mutable", "name": "a", "nameLocation": "4209:1:21", "nodeType": "VariableDeclaration", - "scope": 28492, + "scope": 28507, "src": "4201:9:21", "stateVariable": false, "storageLocation": "default", @@ -2770,7 +2857,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28479, + "id": 28494, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4201:7:21", @@ -2783,12 +2870,12 @@ }, { "constant": false, - "id": 28482, + "id": 28497, "mutability": "mutable", "name": "b", "nameLocation": "4220:1:21", "nodeType": "VariableDeclaration", - "scope": 28492, + "scope": 28507, "src": "4212:9:21", "stateVariable": false, "storageLocation": "default", @@ -2797,7 +2884,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28481, + "id": 28496, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4212:7:21", @@ -2812,17 +2899,17 @@ "src": "4200:22:21" }, "returnParameters": { - "id": 28486, + "id": 28501, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28485, + "id": 28500, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28492, + "scope": 28507, "src": "4246:7:21", "stateVariable": false, "storageLocation": "default", @@ -2831,7 +2918,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28484, + "id": 28499, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4246:7:21", @@ -2845,22 +2932,24 @@ ], "src": "4245:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28517, + "id": 28532, "nodeType": "FunctionDefinition", "src": "4765:206:21", + "nodes": [], "body": { - "id": 28516, + "id": 28531, "nodeType": "Block", "src": "4860:111:21", + "nodes": [], "statements": [ { - "id": 28515, + "id": 28530, "nodeType": "UncheckedBlock", "src": "4871:93:21", "statements": [ @@ -2872,17 +2961,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28507, + "id": 28522, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28505, + "id": 28520, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28497, + "referencedDeclaration": 28512, "src": "4904:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2892,11 +2981,11 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 28506, + "id": 28521, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28495, + "referencedDeclaration": 28510, "src": "4909:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2910,11 +2999,11 @@ } }, { - "id": 28508, + "id": 28523, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28499, + "referencedDeclaration": 28514, "src": "4912:12:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2933,7 +3022,7 @@ "typeString": "string memory" } ], - "id": 28504, + "id": 28519, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2947,12 +3036,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28509, + "id": 28524, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4896:29:21", @@ -2962,7 +3052,7 @@ "typeString": "tuple()" } }, - "id": 28510, + "id": 28525, "nodeType": "ExpressionStatement", "src": "4896:29:21" }, @@ -2972,17 +3062,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28513, + "id": 28528, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28511, + "id": 28526, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28495, + "referencedDeclaration": 28510, "src": "4947:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2992,11 +3082,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 28512, + "id": 28527, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28497, + "referencedDeclaration": 28512, "src": "4951:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3009,8 +3099,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28503, - "id": 28514, + "functionReturnParameters": 28518, + "id": 28529, "nodeType": "Return", "src": "4940:12:21" } @@ -3019,7 +3109,7 @@ ] }, "documentation": { - "id": 28493, + "id": 28508, "nodeType": "StructuredDocumentation", "src": "4294:465:21", "text": " @dev Returns the subtraction of two unsigned integers, reverting with custom message on\n overflow (when the result is negative).\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {trySub}.\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." @@ -3030,17 +3120,17 @@ "name": "sub", "nameLocation": "4774:3:21", "parameters": { - "id": 28500, + "id": 28515, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28495, + "id": 28510, "mutability": "mutable", "name": "a", "nameLocation": "4786:1:21", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4778:9:21", "stateVariable": false, "storageLocation": "default", @@ -3049,7 +3139,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28494, + "id": 28509, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4778:7:21", @@ -3062,12 +3152,12 @@ }, { "constant": false, - "id": 28497, + "id": 28512, "mutability": "mutable", "name": "b", "nameLocation": "4797:1:21", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4789:9:21", "stateVariable": false, "storageLocation": "default", @@ -3076,7 +3166,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28496, + "id": 28511, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4789:7:21", @@ -3089,12 +3179,12 @@ }, { "constant": false, - "id": 28499, + "id": 28514, "mutability": "mutable", "name": "errorMessage", "nameLocation": "4814:12:21", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4800:26:21", "stateVariable": false, "storageLocation": "memory", @@ -3103,7 +3193,7 @@ "typeString": "string" }, "typeName": { - "id": 28498, + "id": 28513, "name": "string", "nodeType": "ElementaryTypeName", "src": "4800:6:21", @@ -3118,17 +3208,17 @@ "src": "4777:50:21" }, "returnParameters": { - "id": 28503, + "id": 28518, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28502, + "id": 28517, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28517, + "scope": 28532, "src": "4851:7:21", "stateVariable": false, "storageLocation": "default", @@ -3137,7 +3227,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28501, + "id": 28516, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4851:7:21", @@ -3151,22 +3241,24 @@ ], "src": "4850:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28542, + "id": 28557, "nodeType": "FunctionDefinition", "src": "5469:205:21", + "nodes": [], "body": { - "id": 28541, + "id": 28556, "nodeType": "Block", "src": "5564:110:21", + "nodes": [], "statements": [ { - "id": 28540, + "id": 28555, "nodeType": "UncheckedBlock", "src": "5575:92:21", "statements": [ @@ -3178,17 +3270,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28532, + "id": 28547, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28530, + "id": 28545, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28522, + "referencedDeclaration": 28537, "src": "5608:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3199,7 +3291,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 28531, + "id": 28546, "isConstant": false, "isLValue": false, "isPure": true, @@ -3220,11 +3312,11 @@ } }, { - "id": 28533, + "id": 28548, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28524, + "referencedDeclaration": 28539, "src": "5615:12:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3243,7 +3335,7 @@ "typeString": "string memory" } ], - "id": 28529, + "id": 28544, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3257,12 +3349,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28534, + "id": 28549, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5600:28:21", @@ -3272,7 +3365,7 @@ "typeString": "tuple()" } }, - "id": 28535, + "id": 28550, "nodeType": "ExpressionStatement", "src": "5600:28:21" }, @@ -3282,17 +3375,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28538, + "id": 28553, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28536, + "id": 28551, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28520, + "referencedDeclaration": 28535, "src": "5650:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3302,11 +3395,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 28537, + "id": 28552, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28522, + "referencedDeclaration": 28537, "src": "5654:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3319,8 +3412,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28528, - "id": 28539, + "functionReturnParameters": 28543, + "id": 28554, "nodeType": "Return", "src": "5643:12:21" } @@ -3329,7 +3422,7 @@ ] }, "documentation": { - "id": 28518, + "id": 28533, "nodeType": "StructuredDocumentation", "src": "4979:484:21", "text": " @dev Returns the integer division of two unsigned integers, reverting with custom message on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator. Note: this function uses a\n `revert` opcode (which leaves remaining gas untouched) while Solidity\n uses an invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -3340,17 +3433,17 @@ "name": "div", "nameLocation": "5478:3:21", "parameters": { - "id": 28525, + "id": 28540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28520, + "id": 28535, "mutability": "mutable", "name": "a", "nameLocation": "5490:1:21", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5482:9:21", "stateVariable": false, "storageLocation": "default", @@ -3359,7 +3452,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28519, + "id": 28534, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5482:7:21", @@ -3372,12 +3465,12 @@ }, { "constant": false, - "id": 28522, + "id": 28537, "mutability": "mutable", "name": "b", "nameLocation": "5501:1:21", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5493:9:21", "stateVariable": false, "storageLocation": "default", @@ -3386,7 +3479,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28521, + "id": 28536, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5493:7:21", @@ -3399,12 +3492,12 @@ }, { "constant": false, - "id": 28524, + "id": 28539, "mutability": "mutable", "name": "errorMessage", "nameLocation": "5518:12:21", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5504:26:21", "stateVariable": false, "storageLocation": "memory", @@ -3413,7 +3506,7 @@ "typeString": "string" }, "typeName": { - "id": 28523, + "id": 28538, "name": "string", "nodeType": "ElementaryTypeName", "src": "5504:6:21", @@ -3428,17 +3521,17 @@ "src": "5481:50:21" }, "returnParameters": { - "id": 28528, + "id": 28543, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28527, + "id": 28542, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28542, + "scope": 28557, "src": "5555:7:21", "stateVariable": false, "storageLocation": "default", @@ -3447,7 +3540,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28526, + "id": 28541, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5555:7:21", @@ -3461,22 +3554,24 @@ ], "src": "5554:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 28567, + "id": 28582, "nodeType": "FunctionDefinition", "src": "6337:205:21", + "nodes": [], "body": { - "id": 28566, + "id": 28581, "nodeType": "Block", "src": "6432:110:21", + "nodes": [], "statements": [ { - "id": 28565, + "id": 28580, "nodeType": "UncheckedBlock", "src": "6443:92:21", "statements": [ @@ -3488,17 +3583,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28557, + "id": 28572, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28555, + "id": 28570, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28547, + "referencedDeclaration": 28562, "src": "6476:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3509,7 +3604,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 28556, + "id": 28571, "isConstant": false, "isLValue": false, "isPure": true, @@ -3530,11 +3625,11 @@ } }, { - "id": 28558, + "id": 28573, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28549, + "referencedDeclaration": 28564, "src": "6483:12:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3553,7 +3648,7 @@ "typeString": "string memory" } ], - "id": 28554, + "id": 28569, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3567,12 +3662,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28559, + "id": 28574, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6468:28:21", @@ -3582,7 +3678,7 @@ "typeString": "tuple()" } }, - "id": 28560, + "id": 28575, "nodeType": "ExpressionStatement", "src": "6468:28:21" }, @@ -3592,17 +3688,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28563, + "id": 28578, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28561, + "id": 28576, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28545, + "referencedDeclaration": 28560, "src": "6518:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3612,11 +3708,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 28562, + "id": 28577, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28547, + "referencedDeclaration": 28562, "src": "6522:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3629,8 +3725,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28553, - "id": 28564, + "functionReturnParameters": 28568, + "id": 28579, "nodeType": "Return", "src": "6511:12:21" } @@ -3639,7 +3735,7 @@ ] }, "documentation": { - "id": 28543, + "id": 28558, "nodeType": "StructuredDocumentation", "src": "5682:649:21", "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting with custom message when dividing by zero.\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {tryMod}.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -3650,17 +3746,17 @@ "name": "mod", "nameLocation": "6346:3:21", "parameters": { - "id": 28550, + "id": 28565, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28545, + "id": 28560, "mutability": "mutable", "name": "a", "nameLocation": "6358:1:21", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6350:9:21", "stateVariable": false, "storageLocation": "default", @@ -3669,7 +3765,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28544, + "id": 28559, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6350:7:21", @@ -3682,12 +3778,12 @@ }, { "constant": false, - "id": 28547, + "id": 28562, "mutability": "mutable", "name": "b", "nameLocation": "6369:1:21", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6361:9:21", "stateVariable": false, "storageLocation": "default", @@ -3696,7 +3792,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28546, + "id": 28561, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6361:7:21", @@ -3709,12 +3805,12 @@ }, { "constant": false, - "id": 28549, + "id": 28564, "mutability": "mutable", "name": "errorMessage", "nameLocation": "6386:12:21", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6372:26:21", "stateVariable": false, "storageLocation": "memory", @@ -3723,7 +3819,7 @@ "typeString": "string" }, "typeName": { - "id": 28548, + "id": 28563, "name": "string", "nodeType": "ElementaryTypeName", "src": "6372:6:21", @@ -3738,17 +3834,17 @@ "src": "6349:50:21" }, "returnParameters": { - "id": 28553, + "id": 28568, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28552, + "id": 28567, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28567, + "scope": 28582, "src": "6423:7:21", "stateVariable": false, "storageLocation": "default", @@ -3757,7 +3853,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28551, + "id": 28566, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6423:7:21", @@ -3771,7 +3867,7 @@ ], "src": "6422:9:21" }, - "scope": 28568, + "scope": 28583, "stateMutability": "pure", "virtual": false, "visibility": "internal" @@ -3784,32 +3880,36 @@ "contractKind": "library", "fullyImplemented": true, "linearizedBaseContracts": [ - 28568 + 28583 ], "name": "SafeMath", "nameLocation": "144:8:21", - "scope": 29067, + "scope": 29082, "usedErrors": [] }, { - "id": 29066, + "id": 29081, "nodeType": "ContractDefinition", "src": "7736:9750:21", "nodes": [ { - "id": 28576, + "id": 28591, "nodeType": "UsingForDirective", "src": "7777:27:21", + "nodes": [], "global": false, "libraryName": { - "id": 28574, + "id": 28589, "name": "SafeMath", + "nameLocations": [ + "7783:8:21" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28568, + "referencedDeclaration": 28583, "src": "7783:8:21" }, "typeName": { - "id": 28575, + "id": 28590, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7796:7:21", @@ -3820,14 +3920,15 @@ } }, { - "id": 28580, + "id": 28595, "nodeType": "VariableDeclaration", "src": "7812:46:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_balances", "nameLocation": "7849:9:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3835,9 +3936,9 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 28579, + "id": 28594, "keyType": { - "id": 28577, + "id": 28592, "name": "address", "nodeType": "ElementaryTypeName", "src": "7821:7:21", @@ -3853,7 +3954,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 28578, + "id": 28593, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7832:7:21", @@ -3866,14 +3967,15 @@ "visibility": "private" }, { - "id": 28586, + "id": 28601, "nodeType": "VariableDeclaration", "src": "7867:69:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_allowances", "nameLocation": "7925:11:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3881,9 +3983,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 28585, + "id": 28600, "keyType": { - "id": 28581, + "id": 28596, "name": "address", "nodeType": "ElementaryTypeName", "src": "7876:7:21", @@ -3899,9 +4001,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "valueType": { - "id": 28584, + "id": 28599, "keyType": { - "id": 28582, + "id": 28597, "name": "address", "nodeType": "ElementaryTypeName", "src": "7896:7:21", @@ -3917,7 +4019,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 28583, + "id": 28598, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7907:7:21", @@ -3931,14 +4033,15 @@ "visibility": "private" }, { - "id": 28588, + "id": 28603, "nodeType": "VariableDeclaration", "src": "7945:28:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_totalSupply", "nameLocation": "7961:12:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3946,7 +4049,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28587, + "id": 28602, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7945:7:21", @@ -3958,14 +4061,15 @@ "visibility": "private" }, { - "id": 28590, + "id": 28605, "nodeType": "VariableDeclaration", "src": "7982:20:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_name", "nameLocation": "7997:5:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -3973,7 +4077,7 @@ "typeString": "string" }, "typeName": { - "id": 28589, + "id": 28604, "name": "string", "nodeType": "ElementaryTypeName", "src": "7982:6:21", @@ -3985,14 +4089,15 @@ "visibility": "private" }, { - "id": 28592, + "id": 28607, "nodeType": "VariableDeclaration", "src": "8009:22:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_symbol", "nameLocation": "8024:7:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4000,7 +4105,7 @@ "typeString": "string" }, "typeName": { - "id": 28591, + "id": 28606, "name": "string", "nodeType": "ElementaryTypeName", "src": "8009:6:21", @@ -4012,14 +4117,15 @@ "visibility": "private" }, { - "id": 28594, + "id": 28609, "nodeType": "VariableDeclaration", "src": "8038:23:21", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_decimals", "nameLocation": "8052:9:21", - "scope": 29066, + "scope": 29081, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4027,7 +4133,7 @@ "typeString": "uint8" }, "typeName": { - "id": 28593, + "id": 28608, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "8038:5:21", @@ -4039,27 +4145,29 @@ "visibility": "private" }, { - "id": 28615, + "id": 28630, "nodeType": "FunctionDefinition", "src": "8395:142:21", + "nodes": [], "body": { - "id": 28614, + "id": 28629, "nodeType": "Block", "src": "8452:85:21", + "nodes": [], "statements": [ { "expression": { - "id": 28604, + "id": 28619, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28602, + "id": 28617, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28590, + "referencedDeclaration": 28605, "src": "8463:5:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -4069,11 +4177,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28603, + "id": 28618, "name": "name_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28597, + "referencedDeclaration": 28612, "src": "8471:5:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -4086,23 +4194,23 @@ "typeString": "string storage ref" } }, - "id": 28605, + "id": 28620, "nodeType": "ExpressionStatement", "src": "8463:13:21" }, { "expression": { - "id": 28608, + "id": 28623, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28606, + "id": 28621, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28592, + "referencedDeclaration": 28607, "src": "8487:7:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -4112,11 +4220,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28607, + "id": 28622, "name": "symbol_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28599, + "referencedDeclaration": 28614, "src": "8497:7:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -4129,23 +4237,23 @@ "typeString": "string storage ref" } }, - "id": 28609, + "id": 28624, "nodeType": "ExpressionStatement", "src": "8487:17:21" }, { "expression": { - "id": 28612, + "id": 28627, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28610, + "id": 28625, "name": "_decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28594, + "referencedDeclaration": 28609, "src": "8515:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -4156,7 +4264,7 @@ "operator": "=", "rightHandSide": { "hexValue": "3138", - "id": 28611, + "id": 28626, "isConstant": false, "isLValue": false, "isPure": true, @@ -4176,14 +4284,14 @@ "typeString": "uint8" } }, - "id": 28613, + "id": 28628, "nodeType": "ExpressionStatement", "src": "8515:14:21" } ] }, "documentation": { - "id": 28595, + "id": 28610, "nodeType": "StructuredDocumentation", "src": "8070:319:21", "text": " @dev Sets the values for {name} and {symbol}, initializes {decimals} with\n a default value of 18.\n To select a different value for {decimals}, use {_setupDecimals}.\n All three of these values are immutable: they can only be set once during\n construction." @@ -4194,17 +4302,17 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 28600, + "id": 28615, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28597, + "id": 28612, "mutability": "mutable", "name": "name_", "nameLocation": "8422:5:21", "nodeType": "VariableDeclaration", - "scope": 28615, + "scope": 28630, "src": "8408:19:21", "stateVariable": false, "storageLocation": "memory", @@ -4213,7 +4321,7 @@ "typeString": "string" }, "typeName": { - "id": 28596, + "id": 28611, "name": "string", "nodeType": "ElementaryTypeName", "src": "8408:6:21", @@ -4226,12 +4334,12 @@ }, { "constant": false, - "id": 28599, + "id": 28614, "mutability": "mutable", "name": "symbol_", "nameLocation": "8443:7:21", "nodeType": "VariableDeclaration", - "scope": 28615, + "scope": 28630, "src": "8429:21:21", "stateVariable": false, "storageLocation": "memory", @@ -4240,7 +4348,7 @@ "typeString": "string" }, "typeName": { - "id": 28598, + "id": 28613, "name": "string", "nodeType": "ElementaryTypeName", "src": "8429:6:21", @@ -4255,47 +4363,49 @@ "src": "8407:44:21" }, "returnParameters": { - "id": 28601, + "id": 28616, "nodeType": "ParameterList", "parameters": [], "src": "8452:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 28624, + "id": 28639, "nodeType": "FunctionDefinition", "src": "8607:91:21", + "nodes": [], "body": { - "id": 28623, + "id": 28638, "nodeType": "Block", "src": "8667:31:21", + "nodes": [], "statements": [ { "expression": { - "id": 28621, + "id": 28636, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28590, + "referencedDeclaration": 28605, "src": "8685:5:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 28620, - "id": 28622, + "functionReturnParameters": 28635, + "id": 28637, "nodeType": "Return", "src": "8678:12:21" } ] }, "documentation": { - "id": 28616, + "id": 28631, "nodeType": "StructuredDocumentation", "src": "8545:56:21", "text": " @dev Returns the name of the token." @@ -4307,23 +4417,23 @@ "name": "name", "nameLocation": "8616:4:21", "parameters": { - "id": 28617, + "id": 28632, "nodeType": "ParameterList", "parameters": [], "src": "8620:2:21" }, "returnParameters": { - "id": 28620, + "id": 28635, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28619, + "id": 28634, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28624, + "scope": 28639, "src": "8652:13:21", "stateVariable": false, "storageLocation": "memory", @@ -4332,7 +4442,7 @@ "typeString": "string" }, "typeName": { - "id": 28618, + "id": 28633, "name": "string", "nodeType": "ElementaryTypeName", "src": "8652:6:21", @@ -4346,42 +4456,44 @@ ], "src": "8651:15:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28633, + "id": 28648, "nodeType": "FunctionDefinition", "src": "8817:95:21", + "nodes": [], "body": { - "id": 28632, + "id": 28647, "nodeType": "Block", "src": "8879:33:21", + "nodes": [], "statements": [ { "expression": { - "id": 28630, + "id": 28645, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28592, + "referencedDeclaration": 28607, "src": "8897:7:21", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 28629, - "id": 28631, + "functionReturnParameters": 28644, + "id": 28646, "nodeType": "Return", "src": "8890:14:21" } ] }, "documentation": { - "id": 28625, + "id": 28640, "nodeType": "StructuredDocumentation", "src": "8706:105:21", "text": " @dev Returns the symbol of the token, usually a shorter version of the\n name." @@ -4393,23 +4505,23 @@ "name": "symbol", "nameLocation": "8826:6:21", "parameters": { - "id": 28626, + "id": 28641, "nodeType": "ParameterList", "parameters": [], "src": "8832:2:21" }, "returnParameters": { - "id": 28629, + "id": 28644, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28628, + "id": 28643, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28633, + "scope": 28648, "src": "8864:13:21", "stateVariable": false, "storageLocation": "memory", @@ -4418,7 +4530,7 @@ "typeString": "string" }, "typeName": { - "id": 28627, + "id": 28642, "name": "string", "nodeType": "ElementaryTypeName", "src": "8864:6:21", @@ -4432,42 +4544,44 @@ ], "src": "8863:15:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28642, + "id": 28657, "nodeType": "FunctionDefinition", "src": "9550:91:21", + "nodes": [], "body": { - "id": 28641, + "id": 28656, "nodeType": "Block", "src": "9606:35:21", + "nodes": [], "statements": [ { "expression": { - "id": 28639, + "id": 28654, "name": "_decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28594, + "referencedDeclaration": 28609, "src": "9624:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "functionReturnParameters": 28638, - "id": 28640, + "functionReturnParameters": 28653, + "id": 28655, "nodeType": "Return", "src": "9617:16:21" } ] }, "documentation": { - "id": 28634, + "id": 28649, "nodeType": "StructuredDocumentation", "src": "8920:624:21", "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 value {ERC20} uses, unless {_setupDecimals} is\n called.\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}." @@ -4479,23 +4593,23 @@ "name": "decimals", "nameLocation": "9559:8:21", "parameters": { - "id": 28635, + "id": 28650, "nodeType": "ParameterList", "parameters": [], "src": "9567:2:21" }, "returnParameters": { - "id": 28638, + "id": 28653, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28637, + "id": 28652, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28642, + "scope": 28657, "src": "9599:5:21", "stateVariable": false, "storageLocation": "default", @@ -4504,7 +4618,7 @@ "typeString": "uint8" }, "typeName": { - "id": 28636, + "id": 28651, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "9599:5:21", @@ -4518,45 +4632,47 @@ ], "src": "9598:7:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28652, + "id": 28667, "nodeType": "FunctionDefinition", "src": "9706:108:21", + "nodes": [], "body": { - "id": 28651, + "id": 28666, "nodeType": "Block", "src": "9776:38:21", + "nodes": [], "statements": [ { "expression": { - "id": 28649, + "id": 28664, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "9794:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 28648, - "id": 28650, + "functionReturnParameters": 28663, + "id": 28665, "nodeType": "Return", "src": "9787:19:21" } ] }, "baseFunctions": [ - 29074 + 29089 ], "documentation": { - "id": 28643, + "id": 28658, "nodeType": "StructuredDocumentation", "src": "9649:51:21", "text": " @dev See {IERC20-totalSupply}." @@ -4568,29 +4684,29 @@ "name": "totalSupply", "nameLocation": "9715:11:21", "overrides": { - "id": 28645, + "id": 28660, "nodeType": "OverrideSpecifier", "overrides": [], "src": "9749:8:21" }, "parameters": { - "id": 28644, + "id": 28659, "nodeType": "ParameterList", "parameters": [], "src": "9726:2:21" }, "returnParameters": { - "id": 28648, + "id": 28663, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28647, + "id": 28662, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28652, + "scope": 28667, "src": "9767:7:21", "stateVariable": false, "storageLocation": "default", @@ -4599,7 +4715,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28646, + "id": 28661, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9767:7:21", @@ -4613,41 +4729,43 @@ ], "src": "9766:9:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28666, + "id": 28681, "nodeType": "FunctionDefinition", "src": "9877:127:21", + "nodes": [], "body": { - "id": 28665, + "id": 28680, "nodeType": "Block", "src": "9960:44:21", + "nodes": [], "statements": [ { "expression": { "baseExpression": { - "id": 28661, + "id": 28676, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "9978:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28663, + "id": 28678, "indexExpression": { - "id": 28662, + "id": 28677, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28655, + "referencedDeclaration": 28670, "src": "9988:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4665,18 +4783,18 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28660, - "id": 28664, + "functionReturnParameters": 28675, + "id": 28679, "nodeType": "Return", "src": "9971:25:21" } ] }, "baseFunctions": [ - 29082 + 29097 ], "documentation": { - "id": 28653, + "id": 28668, "nodeType": "StructuredDocumentation", "src": "9822:49:21", "text": " @dev See {IERC20-balanceOf}." @@ -4688,23 +4806,23 @@ "name": "balanceOf", "nameLocation": "9886:9:21", "overrides": { - "id": 28657, + "id": 28672, "nodeType": "OverrideSpecifier", "overrides": [], "src": "9933:8:21" }, "parameters": { - "id": 28656, + "id": 28671, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28655, + "id": 28670, "mutability": "mutable", "name": "account", "nameLocation": "9904:7:21", "nodeType": "VariableDeclaration", - "scope": 28666, + "scope": 28681, "src": "9896:15:21", "stateVariable": false, "storageLocation": "default", @@ -4713,7 +4831,7 @@ "typeString": "address" }, "typeName": { - "id": 28654, + "id": 28669, "name": "address", "nodeType": "ElementaryTypeName", "src": "9896:7:21", @@ -4729,17 +4847,17 @@ "src": "9895:17:21" }, "returnParameters": { - "id": 28660, + "id": 28675, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28659, + "id": 28674, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28666, + "scope": 28681, "src": "9951:7:21", "stateVariable": false, "storageLocation": "default", @@ -4748,7 +4866,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28658, + "id": 28673, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9951:7:21", @@ -4762,19 +4880,21 @@ ], "src": "9950:9:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28687, + "id": 28702, "nodeType": "FunctionDefinition", "src": "10217:175:21", + "nodes": [], "body": { - "id": 28686, + "id": 28701, "nodeType": "Block", "src": "10309:83:21", + "nodes": [], "statements": [ { "expression": { @@ -4783,23 +4903,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28678, + "id": 28693, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "10330:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28679, + "id": 28694, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10330:12:21", @@ -4810,11 +4931,11 @@ } }, { - "id": 28680, + "id": 28695, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28669, + "referencedDeclaration": 28684, "src": "10344:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4822,11 +4943,11 @@ } }, { - "id": 28681, + "id": 28696, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28671, + "referencedDeclaration": 28686, "src": "10355:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4849,23 +4970,24 @@ "typeString": "uint256" } ], - "id": 28677, + "id": 28692, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28887, + "referencedDeclaration": 28902, "src": "10320:9:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28682, + "id": 28697, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10320:42:21", @@ -4875,14 +4997,14 @@ "typeString": "tuple()" } }, - "id": 28683, + "id": 28698, "nodeType": "ExpressionStatement", "src": "10320:42:21" }, { "expression": { "hexValue": "74727565", - "id": 28684, + "id": 28699, "isConstant": false, "isLValue": false, "isPure": true, @@ -4896,18 +5018,18 @@ }, "value": "true" }, - "functionReturnParameters": 28676, - "id": 28685, + "functionReturnParameters": 28691, + "id": 28700, "nodeType": "Return", "src": "10373:11:21" } ] }, "baseFunctions": [ - 29092 + 29107 ], "documentation": { - "id": 28667, + "id": 28682, "nodeType": "StructuredDocumentation", "src": "10012:199:21", "text": " @dev See {IERC20-transfer}.\n Requirements:\n - `recipient` cannot be the zero address.\n - the caller must have a balance of at least `amount`." @@ -4919,23 +5041,23 @@ "name": "transfer", "nameLocation": "10226:8:21", "overrides": { - "id": 28673, + "id": 28688, "nodeType": "OverrideSpecifier", "overrides": [], "src": "10285:8:21" }, "parameters": { - "id": 28672, + "id": 28687, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28669, + "id": 28684, "mutability": "mutable", "name": "recipient", "nameLocation": "10243:9:21", "nodeType": "VariableDeclaration", - "scope": 28687, + "scope": 28702, "src": "10235:17:21", "stateVariable": false, "storageLocation": "default", @@ -4944,7 +5066,7 @@ "typeString": "address" }, "typeName": { - "id": 28668, + "id": 28683, "name": "address", "nodeType": "ElementaryTypeName", "src": "10235:7:21", @@ -4958,12 +5080,12 @@ }, { "constant": false, - "id": 28671, + "id": 28686, "mutability": "mutable", "name": "amount", "nameLocation": "10262:6:21", "nodeType": "VariableDeclaration", - "scope": 28687, + "scope": 28702, "src": "10254:14:21", "stateVariable": false, "storageLocation": "default", @@ -4972,7 +5094,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28670, + "id": 28685, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10254:7:21", @@ -4987,17 +5109,17 @@ "src": "10234:35:21" }, "returnParameters": { - "id": 28676, + "id": 28691, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28675, + "id": 28690, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28687, + "scope": 28702, "src": "10303:4:21", "stateVariable": false, "storageLocation": "default", @@ -5006,7 +5128,7 @@ "typeString": "bool" }, "typeName": { - "id": 28674, + "id": 28689, "name": "bool", "nodeType": "ElementaryTypeName", "src": "10303:4:21", @@ -5020,42 +5142,44 @@ ], "src": "10302:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28705, + "id": 28720, "nodeType": "FunctionDefinition", "src": "10455:151:21", + "nodes": [], "body": { - "id": 28704, + "id": 28719, "nodeType": "Block", "src": "10553:53:21", + "nodes": [], "statements": [ { "expression": { "baseExpression": { "baseExpression": { - "id": 28698, + "id": 28713, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "10571:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28700, + "id": 28715, "indexExpression": { - "id": 28699, + "id": 28714, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28690, + "referencedDeclaration": 28705, "src": "10583:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5073,13 +5197,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28702, + "id": 28717, "indexExpression": { - "id": 28701, + "id": 28716, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28692, + "referencedDeclaration": 28707, "src": "10590:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5097,18 +5221,18 @@ "typeString": "uint256" } }, - "functionReturnParameters": 28697, - "id": 28703, + "functionReturnParameters": 28712, + "id": 28718, "nodeType": "Return", "src": "10564:34:21" } ] }, "baseFunctions": [ - 29102 + 29117 ], "documentation": { - "id": 28688, + "id": 28703, "nodeType": "StructuredDocumentation", "src": "10400:49:21", "text": " @dev See {IERC20-allowance}." @@ -5120,23 +5244,23 @@ "name": "allowance", "nameLocation": "10464:9:21", "overrides": { - "id": 28694, + "id": 28709, "nodeType": "OverrideSpecifier", "overrides": [], "src": "10526:8:21" }, "parameters": { - "id": 28693, + "id": 28708, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28690, + "id": 28705, "mutability": "mutable", "name": "owner", "nameLocation": "10482:5:21", "nodeType": "VariableDeclaration", - "scope": 28705, + "scope": 28720, "src": "10474:13:21", "stateVariable": false, "storageLocation": "default", @@ -5145,7 +5269,7 @@ "typeString": "address" }, "typeName": { - "id": 28689, + "id": 28704, "name": "address", "nodeType": "ElementaryTypeName", "src": "10474:7:21", @@ -5159,12 +5283,12 @@ }, { "constant": false, - "id": 28692, + "id": 28707, "mutability": "mutable", "name": "spender", "nameLocation": "10497:7:21", "nodeType": "VariableDeclaration", - "scope": 28705, + "scope": 28720, "src": "10489:15:21", "stateVariable": false, "storageLocation": "default", @@ -5173,7 +5297,7 @@ "typeString": "address" }, "typeName": { - "id": 28691, + "id": 28706, "name": "address", "nodeType": "ElementaryTypeName", "src": "10489:7:21", @@ -5189,17 +5313,17 @@ "src": "10473:32:21" }, "returnParameters": { - "id": 28697, + "id": 28712, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28696, + "id": 28711, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28705, + "scope": 28720, "src": "10544:7:21", "stateVariable": false, "storageLocation": "default", @@ -5208,7 +5332,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28695, + "id": 28710, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10544:7:21", @@ -5222,19 +5346,21 @@ ], "src": "10543:9:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28726, + "id": 28741, "nodeType": "FunctionDefinition", "src": "10753:169:21", + "nodes": [], "body": { - "id": 28725, + "id": 28740, "nodeType": "Block", "src": "10842:80:21", + "nodes": [], "statements": [ { "expression": { @@ -5243,23 +5369,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28717, + "id": 28732, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "10862:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28718, + "id": 28733, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10862:12:21", @@ -5270,11 +5397,11 @@ } }, { - "id": 28719, + "id": 28734, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28708, + "referencedDeclaration": 28723, "src": "10876:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5282,11 +5409,11 @@ } }, { - "id": 28720, + "id": 28735, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28710, + "referencedDeclaration": 28725, "src": "10885:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5309,23 +5436,24 @@ "typeString": "uint256" } ], - "id": 28716, + "id": 28731, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "10853:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28721, + "id": 28736, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10853:39:21", @@ -5335,14 +5463,14 @@ "typeString": "tuple()" } }, - "id": 28722, + "id": 28737, "nodeType": "ExpressionStatement", "src": "10853:39:21" }, { "expression": { "hexValue": "74727565", - "id": 28723, + "id": 28738, "isConstant": false, "isLValue": false, "isPure": true, @@ -5356,18 +5484,18 @@ }, "value": "true" }, - "functionReturnParameters": 28715, - "id": 28724, + "functionReturnParameters": 28730, + "id": 28739, "nodeType": "Return", "src": "10903:11:21" } ] }, "baseFunctions": [ - 29112 + 29127 ], "documentation": { - "id": 28706, + "id": 28721, "nodeType": "StructuredDocumentation", "src": "10614:133:21", "text": " @dev See {IERC20-approve}.\n Requirements:\n - `spender` cannot be the zero address." @@ -5379,23 +5507,23 @@ "name": "approve", "nameLocation": "10762:7:21", "overrides": { - "id": 28712, + "id": 28727, "nodeType": "OverrideSpecifier", "overrides": [], "src": "10818:8:21" }, "parameters": { - "id": 28711, + "id": 28726, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28708, + "id": 28723, "mutability": "mutable", "name": "spender", "nameLocation": "10778:7:21", "nodeType": "VariableDeclaration", - "scope": 28726, + "scope": 28741, "src": "10770:15:21", "stateVariable": false, "storageLocation": "default", @@ -5404,7 +5532,7 @@ "typeString": "address" }, "typeName": { - "id": 28707, + "id": 28722, "name": "address", "nodeType": "ElementaryTypeName", "src": "10770:7:21", @@ -5418,12 +5546,12 @@ }, { "constant": false, - "id": 28710, + "id": 28725, "mutability": "mutable", "name": "amount", "nameLocation": "10795:6:21", "nodeType": "VariableDeclaration", - "scope": 28726, + "scope": 28741, "src": "10787:14:21", "stateVariable": false, "storageLocation": "default", @@ -5432,7 +5560,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28709, + "id": 28724, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10787:7:21", @@ -5447,17 +5575,17 @@ "src": "10769:33:21" }, "returnParameters": { - "id": 28715, + "id": 28730, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28714, + "id": 28729, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28726, + "scope": 28741, "src": "10836:4:21", "stateVariable": false, "storageLocation": "default", @@ -5466,7 +5594,7 @@ "typeString": "bool" }, "typeName": { - "id": 28713, + "id": 28728, "name": "bool", "nodeType": "ElementaryTypeName", "src": "10836:4:21", @@ -5480,29 +5608,31 @@ ], "src": "10835:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28764, + "id": 28779, "nodeType": "FunctionDefinition", "src": "11404:321:21", + "nodes": [], "body": { - "id": 28763, + "id": 28778, "nodeType": "Block", "src": "11516:209:21", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 28740, + "id": 28755, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28729, + "referencedDeclaration": 28744, "src": "11537:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5510,11 +5640,11 @@ } }, { - "id": 28741, + "id": 28756, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28731, + "referencedDeclaration": 28746, "src": "11545:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5522,11 +5652,11 @@ } }, { - "id": 28742, + "id": 28757, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28733, + "referencedDeclaration": 28748, "src": "11556:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5549,23 +5679,24 @@ "typeString": "uint256" } ], - "id": 28739, + "id": 28754, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28887, + "referencedDeclaration": 28902, "src": "11527:9:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28743, + "id": 28758, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11527:36:21", @@ -5575,7 +5706,7 @@ "typeString": "tuple()" } }, - "id": 28744, + "id": 28759, "nodeType": "ExpressionStatement", "src": "11527:36:21" }, @@ -5583,11 +5714,11 @@ "expression": { "arguments": [ { - "id": 28746, + "id": 28761, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28729, + "referencedDeclaration": 28744, "src": "11583:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5598,23 +5729,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28747, + "id": 28762, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "11591:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28748, + "id": 28763, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11591:12:21", @@ -5627,11 +5759,11 @@ { "arguments": [ { - "id": 28756, + "id": 28771, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28733, + "referencedDeclaration": 28748, "src": "11643:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5640,7 +5772,7 @@ }, { "hexValue": "45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365", - "id": 28757, + "id": 28772, "isConstant": false, "isLValue": false, "isPure": true, @@ -5669,24 +5801,24 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 28749, + "id": 28764, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "11605:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28751, + "id": 28766, "indexExpression": { - "id": 28750, + "id": 28765, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28729, + "referencedDeclaration": 28744, "src": "11617:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5704,28 +5836,29 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28754, + "id": 28769, "indexExpression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28752, + "id": 28767, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "11625:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28753, + "id": 28768, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11625:12:21", @@ -5746,26 +5879,28 @@ "typeString": "uint256" } }, - "id": 28755, + "id": 28770, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11639:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "11605:37:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28758, + "id": 28773, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11605:89:21", @@ -5791,23 +5926,24 @@ "typeString": "uint256" } ], - "id": 28745, + "id": 28760, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "11574:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28759, + "id": 28774, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11574:121:21", @@ -5817,14 +5953,14 @@ "typeString": "tuple()" } }, - "id": 28760, + "id": 28775, "nodeType": "ExpressionStatement", "src": "11574:121:21" }, { "expression": { "hexValue": "74727565", - "id": 28761, + "id": 28776, "isConstant": false, "isLValue": false, "isPure": true, @@ -5838,18 +5974,18 @@ }, "value": "true" }, - "functionReturnParameters": 28738, - "id": 28762, + "functionReturnParameters": 28753, + "id": 28777, "nodeType": "Return", "src": "11706:11:21" } ] }, "baseFunctions": [ - 29124 + 29139 ], "documentation": { - "id": 28727, + "id": 28742, "nodeType": "StructuredDocumentation", "src": "10930:468:21", "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 Requirements:\n - `sender` and `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`.\n - the caller must have allowance for ``sender``'s tokens of at least\n `amount`." @@ -5861,23 +5997,23 @@ "name": "transferFrom", "nameLocation": "11413:12:21", "overrides": { - "id": 28735, + "id": 28750, "nodeType": "OverrideSpecifier", "overrides": [], "src": "11492:8:21" }, "parameters": { - "id": 28734, + "id": 28749, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28729, + "id": 28744, "mutability": "mutable", "name": "sender", "nameLocation": "11434:6:21", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11426:14:21", "stateVariable": false, "storageLocation": "default", @@ -5886,7 +6022,7 @@ "typeString": "address" }, "typeName": { - "id": 28728, + "id": 28743, "name": "address", "nodeType": "ElementaryTypeName", "src": "11426:7:21", @@ -5900,12 +6036,12 @@ }, { "constant": false, - "id": 28731, + "id": 28746, "mutability": "mutable", "name": "recipient", "nameLocation": "11450:9:21", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11442:17:21", "stateVariable": false, "storageLocation": "default", @@ -5914,7 +6050,7 @@ "typeString": "address" }, "typeName": { - "id": 28730, + "id": 28745, "name": "address", "nodeType": "ElementaryTypeName", "src": "11442:7:21", @@ -5928,12 +6064,12 @@ }, { "constant": false, - "id": 28733, + "id": 28748, "mutability": "mutable", "name": "amount", "nameLocation": "11469:6:21", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11461:14:21", "stateVariable": false, "storageLocation": "default", @@ -5942,7 +6078,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28732, + "id": 28747, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11461:7:21", @@ -5957,17 +6093,17 @@ "src": "11425:51:21" }, "returnParameters": { - "id": 28738, + "id": 28753, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28737, + "id": 28752, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28764, + "scope": 28779, "src": "11510:4:21", "stateVariable": false, "storageLocation": "default", @@ -5976,7 +6112,7 @@ "typeString": "bool" }, "typeName": { - "id": 28736, + "id": 28751, "name": "bool", "nodeType": "ElementaryTypeName", "src": "11510:4:21", @@ -5990,19 +6126,21 @@ ], "src": "11509:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28792, + "id": 28807, "nodeType": "FunctionDefinition", "src": "12134:218:21", + "nodes": [], "body": { - "id": 28791, + "id": 28806, "nodeType": "Block", "src": "12228:124:21", + "nodes": [], "statements": [ { "expression": { @@ -6011,23 +6149,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28775, + "id": 28790, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "12248:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28776, + "id": 28791, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12248:12:21", @@ -6038,11 +6177,11 @@ } }, { - "id": 28777, + "id": 28792, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28767, + "referencedDeclaration": 28782, "src": "12262:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6052,11 +6191,11 @@ { "arguments": [ { - "id": 28785, + "id": 28800, "name": "addedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28769, + "referencedDeclaration": 28784, "src": "12310:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6074,39 +6213,40 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 28778, + "id": 28793, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "12271:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28781, + "id": 28796, "indexExpression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28779, + "id": 28794, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "12283:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28780, + "id": 28795, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12283:12:21", @@ -6127,13 +6267,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28783, + "id": 28798, "indexExpression": { - "id": 28782, + "id": 28797, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28767, + "referencedDeclaration": 28782, "src": "12297:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6151,26 +6291,28 @@ "typeString": "uint256" } }, - "id": 28784, + "id": 28799, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12306:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "12271:38:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28786, + "id": 28801, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12271:50:21", @@ -6196,23 +6338,24 @@ "typeString": "uint256" } ], - "id": 28774, + "id": 28789, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "12239:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28787, + "id": 28802, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12239:83:21", @@ -6222,14 +6365,14 @@ "typeString": "tuple()" } }, - "id": 28788, + "id": 28803, "nodeType": "ExpressionStatement", "src": "12239:83:21" }, { "expression": { "hexValue": "74727565", - "id": 28789, + "id": 28804, "isConstant": false, "isLValue": false, "isPure": true, @@ -6243,15 +6386,15 @@ }, "value": "true" }, - "functionReturnParameters": 28773, - "id": 28790, + "functionReturnParameters": 28788, + "id": 28805, "nodeType": "Return", "src": "12333:11:21" } ] }, "documentation": { - "id": 28765, + "id": 28780, "nodeType": "StructuredDocumentation", "src": "11733:395:21", "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." @@ -6263,17 +6406,17 @@ "name": "increaseAllowance", "nameLocation": "12143:17:21", "parameters": { - "id": 28770, + "id": 28785, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28767, + "id": 28782, "mutability": "mutable", "name": "spender", "nameLocation": "12169:7:21", "nodeType": "VariableDeclaration", - "scope": 28792, + "scope": 28807, "src": "12161:15:21", "stateVariable": false, "storageLocation": "default", @@ -6282,7 +6425,7 @@ "typeString": "address" }, "typeName": { - "id": 28766, + "id": 28781, "name": "address", "nodeType": "ElementaryTypeName", "src": "12161:7:21", @@ -6296,12 +6439,12 @@ }, { "constant": false, - "id": 28769, + "id": 28784, "mutability": "mutable", "name": "addedValue", "nameLocation": "12186:10:21", "nodeType": "VariableDeclaration", - "scope": 28792, + "scope": 28807, "src": "12178:18:21", "stateVariable": false, "storageLocation": "default", @@ -6310,7 +6453,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28768, + "id": 28783, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12178:7:21", @@ -6325,17 +6468,17 @@ "src": "12160:37:21" }, "returnParameters": { - "id": 28773, + "id": 28788, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28772, + "id": 28787, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28792, + "scope": 28807, "src": "12222:4:21", "stateVariable": false, "storageLocation": "default", @@ -6344,7 +6487,7 @@ "typeString": "bool" }, "typeName": { - "id": 28771, + "id": 28786, "name": "bool", "nodeType": "ElementaryTypeName", "src": "12222:4:21", @@ -6358,19 +6501,21 @@ ], "src": "12221:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28821, + "id": 28836, "nodeType": "FunctionDefinition", "src": "12855:269:21", + "nodes": [], "body": { - "id": 28820, + "id": 28835, "nodeType": "Block", "src": "12954:170:21", + "nodes": [], "statements": [ { "expression": { @@ -6379,23 +6524,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28803, + "id": 28818, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "12974:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28804, + "id": 28819, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12974:12:21", @@ -6406,11 +6552,11 @@ } }, { - "id": 28805, + "id": 28820, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28795, + "referencedDeclaration": 28810, "src": "12988:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6420,11 +6566,11 @@ { "arguments": [ { - "id": 28813, + "id": 28828, "name": "subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28797, + "referencedDeclaration": 28812, "src": "13036:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6433,7 +6579,7 @@ }, { "hexValue": "45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f", - "id": 28814, + "id": 28829, "isConstant": false, "isLValue": false, "isPure": true, @@ -6462,39 +6608,40 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 28806, + "id": 28821, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "12997:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 28809, + "id": 28824, "indexExpression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28807, + "id": 28822, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "13009:10:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28808, + "id": 28823, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13009:12:21", @@ -6515,13 +6662,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 28811, + "id": 28826, "indexExpression": { - "id": 28810, + "id": 28825, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28795, + "referencedDeclaration": 28810, "src": "13023:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6539,26 +6686,28 @@ "typeString": "uint256" } }, - "id": 28812, + "id": 28827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13032:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "12997:38:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28815, + "id": 28830, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12997:96:21", @@ -6584,23 +6733,24 @@ "typeString": "uint256" } ], - "id": 28802, + "id": 28817, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "12965:8:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28816, + "id": 28831, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12965:129:21", @@ -6610,14 +6760,14 @@ "typeString": "tuple()" } }, - "id": 28817, + "id": 28832, "nodeType": "ExpressionStatement", "src": "12965:129:21" }, { "expression": { "hexValue": "74727565", - "id": 28818, + "id": 28833, "isConstant": false, "isLValue": false, "isPure": true, @@ -6631,15 +6781,15 @@ }, "value": "true" }, - "functionReturnParameters": 28801, - "id": 28819, + "functionReturnParameters": 28816, + "id": 28834, "nodeType": "Return", "src": "13105:11:21" } ] }, "documentation": { - "id": 28793, + "id": 28808, "nodeType": "StructuredDocumentation", "src": "12360:489:21", "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`." @@ -6651,17 +6801,17 @@ "name": "decreaseAllowance", "nameLocation": "12864:17:21", "parameters": { - "id": 28798, + "id": 28813, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28795, + "id": 28810, "mutability": "mutable", "name": "spender", "nameLocation": "12890:7:21", "nodeType": "VariableDeclaration", - "scope": 28821, + "scope": 28836, "src": "12882:15:21", "stateVariable": false, "storageLocation": "default", @@ -6670,7 +6820,7 @@ "typeString": "address" }, "typeName": { - "id": 28794, + "id": 28809, "name": "address", "nodeType": "ElementaryTypeName", "src": "12882:7:21", @@ -6684,12 +6834,12 @@ }, { "constant": false, - "id": 28797, + "id": 28812, "mutability": "mutable", "name": "subtractedValue", "nameLocation": "12907:15:21", "nodeType": "VariableDeclaration", - "scope": 28821, + "scope": 28836, "src": "12899:23:21", "stateVariable": false, "storageLocation": "default", @@ -6698,7 +6848,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28796, + "id": 28811, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12899:7:21", @@ -6713,17 +6863,17 @@ "src": "12881:42:21" }, "returnParameters": { - "id": 28801, + "id": 28816, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28800, + "id": 28815, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28821, + "scope": 28836, "src": "12948:4:21", "stateVariable": false, "storageLocation": "default", @@ -6732,7 +6882,7 @@ "typeString": "bool" }, "typeName": { - "id": 28799, + "id": 28814, "name": "bool", "nodeType": "ElementaryTypeName", "src": "12948:4:21", @@ -6746,19 +6896,21 @@ ], "src": "12947:6:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28887, + "id": 28902, "nodeType": "FunctionDefinition", "src": "13614:549:21", + "nodes": [], "body": { - "id": 28886, + "id": 28901, "nodeType": "Block", "src": "13701:462:21", + "nodes": [], "statements": [ { "expression": { @@ -6768,17 +6920,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28837, + "id": 28852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28832, + "id": 28847, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13720:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6791,7 +6943,7 @@ "arguments": [ { "hexValue": "30", - "id": 28835, + "id": 28850, "isConstant": false, "isLValue": false, "isPure": true, @@ -6813,7 +6965,7 @@ "typeString": "int_const 0" } ], - "id": 28834, + "id": 28849, "isConstant": false, "isLValue": false, "isPure": true, @@ -6825,19 +6977,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28833, + "id": 28848, "name": "address", "nodeType": "ElementaryTypeName", "src": "13730:7:21", "typeDescriptions": {} } }, - "id": 28836, + "id": 28851, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13730:10:21", @@ -6855,7 +7008,7 @@ }, { "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", - "id": 28838, + "id": 28853, "isConstant": false, "isLValue": false, "isPure": true, @@ -6881,7 +7034,7 @@ "typeString": "literal_string \"ERC20: transfer from the zero address\"" } ], - "id": 28831, + "id": 28846, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6895,12 +7048,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28839, + "id": 28854, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13712:70:21", @@ -6910,7 +7064,7 @@ "typeString": "tuple()" } }, - "id": 28840, + "id": 28855, "nodeType": "ExpressionStatement", "src": "13712:70:21" }, @@ -6922,17 +7076,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28847, + "id": 28862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28842, + "id": 28857, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "13801:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6945,7 +7099,7 @@ "arguments": [ { "hexValue": "30", - "id": 28845, + "id": 28860, "isConstant": false, "isLValue": false, "isPure": true, @@ -6967,7 +7121,7 @@ "typeString": "int_const 0" } ], - "id": 28844, + "id": 28859, "isConstant": false, "isLValue": false, "isPure": true, @@ -6979,19 +7133,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28843, + "id": 28858, "name": "address", "nodeType": "ElementaryTypeName", "src": "13814:7:21", "typeDescriptions": {} } }, - "id": 28846, + "id": 28861, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13814:10:21", @@ -7009,7 +7164,7 @@ }, { "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 28848, + "id": 28863, "isConstant": false, "isLValue": false, "isPure": true, @@ -7035,7 +7190,7 @@ "typeString": "literal_string \"ERC20: transfer to the zero address\"" } ], - "id": 28841, + "id": 28856, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7049,12 +7204,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28849, + "id": 28864, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13793:71:21", @@ -7064,7 +7220,7 @@ "typeString": "tuple()" } }, - "id": 28850, + "id": 28865, "nodeType": "ExpressionStatement", "src": "13793:71:21" }, @@ -7072,11 +7228,11 @@ "expression": { "arguments": [ { - "id": 28852, + "id": 28867, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13908:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7084,11 +7240,11 @@ } }, { - "id": 28853, + "id": 28868, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "13916:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7096,11 +7252,11 @@ } }, { - "id": 28854, + "id": 28869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "13927:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7123,23 +7279,24 @@ "typeString": "uint256" } ], - "id": 28851, + "id": 28866, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29065, + "referencedDeclaration": 29080, "src": "13887:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28855, + "id": 28870, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13887:47:21", @@ -7149,37 +7306,37 @@ "typeString": "tuple()" } }, - "id": 28856, + "id": 28871, "nodeType": "ExpressionStatement", "src": "13887:47:21" }, { "expression": { - "id": 28867, + "id": 28882, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28857, + "id": 28872, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "13947:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28859, + "id": 28874, "indexExpression": { - "id": 28858, + "id": 28873, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13957:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7202,11 +7359,11 @@ "rightHandSide": { "arguments": [ { - "id": 28864, + "id": 28879, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "13989:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7215,7 +7372,7 @@ }, { "hexValue": "45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365", - "id": 28865, + "id": 28880, "isConstant": false, "isLValue": false, "isPure": true, @@ -7243,24 +7400,24 @@ ], "expression": { "baseExpression": { - "id": 28860, + "id": 28875, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "13967:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28862, + "id": 28877, "indexExpression": { - "id": 28861, + "id": 28876, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "13977:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7278,26 +7435,28 @@ "typeString": "uint256" } }, - "id": 28863, + "id": 28878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13985:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "13967:21:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28866, + "id": 28881, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13967:71:21", @@ -7313,37 +7472,37 @@ "typeString": "uint256" } }, - "id": 28868, + "id": 28883, "nodeType": "ExpressionStatement", "src": "13947:91:21" }, { "expression": { - "id": 28878, + "id": 28893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28869, + "id": 28884, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14049:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28871, + "id": 28886, "indexExpression": { - "id": 28870, + "id": 28885, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "14059:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7366,11 +7525,11 @@ "rightHandSide": { "arguments": [ { - "id": 28876, + "id": 28891, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "14097:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7387,24 +7546,24 @@ ], "expression": { "baseExpression": { - "id": 28872, + "id": 28887, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14072:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28874, + "id": 28889, "indexExpression": { - "id": 28873, + "id": 28888, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "14082:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7422,26 +7581,28 @@ "typeString": "uint256" } }, - "id": 28875, + "id": 28890, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14093:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "14072:24:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28877, + "id": 28892, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14072:32:21", @@ -7457,7 +7618,7 @@ "typeString": "uint256" } }, - "id": 28879, + "id": 28894, "nodeType": "ExpressionStatement", "src": "14049:55:21" }, @@ -7465,11 +7626,11 @@ "eventCall": { "arguments": [ { - "id": 28881, + "id": 28896, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28824, + "referencedDeclaration": 28839, "src": "14129:6:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7477,11 +7638,11 @@ } }, { - "id": 28882, + "id": 28897, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28826, + "referencedDeclaration": 28841, "src": "14137:9:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7489,11 +7650,11 @@ } }, { - "id": 28883, + "id": 28898, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28828, + "referencedDeclaration": 28843, "src": "14148:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7516,23 +7677,24 @@ "typeString": "uint256" } ], - "id": 28880, + "id": 28895, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29133, + "referencedDeclaration": 29148, "src": "14120:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28884, + "id": 28899, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14120:35:21", @@ -7542,14 +7704,14 @@ "typeString": "tuple()" } }, - "id": 28885, + "id": 28900, "nodeType": "EmitStatement", "src": "14115:40:21" } ] }, "documentation": { - "id": 28822, + "id": 28837, "nodeType": "StructuredDocumentation", "src": "13132:476:21", "text": " @dev Moves tokens `amount` from `sender` to `recipient`.\n This is 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 - `sender` cannot be the zero address.\n - `recipient` cannot be the zero address.\n - `sender` must have a balance of at least `amount`." @@ -7560,17 +7722,17 @@ "name": "_transfer", "nameLocation": "13623:9:21", "parameters": { - "id": 28829, + "id": 28844, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28824, + "id": 28839, "mutability": "mutable", "name": "sender", "nameLocation": "13641:6:21", "nodeType": "VariableDeclaration", - "scope": 28887, + "scope": 28902, "src": "13633:14:21", "stateVariable": false, "storageLocation": "default", @@ -7579,7 +7741,7 @@ "typeString": "address" }, "typeName": { - "id": 28823, + "id": 28838, "name": "address", "nodeType": "ElementaryTypeName", "src": "13633:7:21", @@ -7593,12 +7755,12 @@ }, { "constant": false, - "id": 28826, + "id": 28841, "mutability": "mutable", "name": "recipient", "nameLocation": "13657:9:21", "nodeType": "VariableDeclaration", - "scope": 28887, + "scope": 28902, "src": "13649:17:21", "stateVariable": false, "storageLocation": "default", @@ -7607,7 +7769,7 @@ "typeString": "address" }, "typeName": { - "id": 28825, + "id": 28840, "name": "address", "nodeType": "ElementaryTypeName", "src": "13649:7:21", @@ -7621,12 +7783,12 @@ }, { "constant": false, - "id": 28828, + "id": 28843, "mutability": "mutable", "name": "amount", "nameLocation": "13676:6:21", "nodeType": "VariableDeclaration", - "scope": 28887, + "scope": 28902, "src": "13668:14:21", "stateVariable": false, "storageLocation": "default", @@ -7635,7 +7797,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28827, + "id": 28842, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "13668:7:21", @@ -7650,24 +7812,26 @@ "src": "13632:51:21" }, "returnParameters": { - "id": 28830, + "id": 28845, "nodeType": "ParameterList", "parameters": [], "src": "13701:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 28942, + "id": 28957, "nodeType": "FunctionDefinition", "src": "14445:378:21", + "nodes": [], "body": { - "id": 28941, + "id": 28956, "nodeType": "Block", "src": "14510:313:21", + "nodes": [], "statements": [ { "expression": { @@ -7677,17 +7841,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28901, + "id": 28916, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28896, + "id": 28911, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14529:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7700,7 +7864,7 @@ "arguments": [ { "hexValue": "30", - "id": 28899, + "id": 28914, "isConstant": false, "isLValue": false, "isPure": true, @@ -7722,7 +7886,7 @@ "typeString": "int_const 0" } ], - "id": 28898, + "id": 28913, "isConstant": false, "isLValue": false, "isPure": true, @@ -7734,19 +7898,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28897, + "id": 28912, "name": "address", "nodeType": "ElementaryTypeName", "src": "14540:7:21", "typeDescriptions": {} } }, - "id": 28900, + "id": 28915, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14540:10:21", @@ -7764,7 +7929,7 @@ }, { "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", - "id": 28902, + "id": 28917, "isConstant": false, "isLValue": false, "isPure": true, @@ -7790,7 +7955,7 @@ "typeString": "literal_string \"ERC20: mint to the zero address\"" } ], - "id": 28895, + "id": 28910, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7804,12 +7969,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28903, + "id": 28918, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14521:65:21", @@ -7819,7 +7985,7 @@ "typeString": "tuple()" } }, - "id": 28904, + "id": 28919, "nodeType": "ExpressionStatement", "src": "14521:65:21" }, @@ -7830,7 +7996,7 @@ "arguments": [ { "hexValue": "30", - "id": 28908, + "id": 28923, "isConstant": false, "isLValue": false, "isPure": true, @@ -7852,7 +8018,7 @@ "typeString": "int_const 0" } ], - "id": 28907, + "id": 28922, "isConstant": false, "isLValue": false, "isPure": true, @@ -7864,19 +8030,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28906, + "id": 28921, "name": "address", "nodeType": "ElementaryTypeName", "src": "14620:7:21", "typeDescriptions": {} } }, - "id": 28909, + "id": 28924, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14620:10:21", @@ -7887,11 +8054,11 @@ } }, { - "id": 28910, + "id": 28925, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14632:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7899,11 +8066,11 @@ } }, { - "id": 28911, + "id": 28926, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14641:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7926,23 +8093,24 @@ "typeString": "uint256" } ], - "id": 28905, + "id": 28920, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29065, + "referencedDeclaration": 29080, "src": "14599:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28912, + "id": 28927, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14599:49:21", @@ -7952,23 +8120,23 @@ "typeString": "tuple()" } }, - "id": 28913, + "id": 28928, "nodeType": "ExpressionStatement", "src": "14599:49:21" }, { "expression": { - "id": 28919, + "id": 28934, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28914, + "id": 28929, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "14661:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7980,11 +8148,11 @@ "rightHandSide": { "arguments": [ { - "id": 28917, + "id": 28932, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14693:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8000,37 +8168,39 @@ } ], "expression": { - "id": 28915, + "id": 28930, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "14676:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 28916, + "id": 28931, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14689:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "14676:16:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28918, + "id": 28933, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14676:24:21", @@ -8046,37 +8216,37 @@ "typeString": "uint256" } }, - "id": 28920, + "id": 28935, "nodeType": "ExpressionStatement", "src": "14661:39:21" }, { "expression": { - "id": 28930, + "id": 28945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28921, + "id": 28936, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14711:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28923, + "id": 28938, "indexExpression": { - "id": 28922, + "id": 28937, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14721:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8099,11 +8269,11 @@ "rightHandSide": { "arguments": [ { - "id": 28928, + "id": 28943, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14755:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8120,24 +8290,24 @@ ], "expression": { "baseExpression": { - "id": 28924, + "id": 28939, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "14732:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28926, + "id": 28941, "indexExpression": { - "id": 28925, + "id": 28940, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14742:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8155,26 +8325,28 @@ "typeString": "uint256" } }, - "id": 28927, + "id": 28942, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14751:3:21", "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 28432, + "referencedDeclaration": 28447, "src": "14732:22:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28929, + "id": 28944, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14732:30:21", @@ -8190,7 +8362,7 @@ "typeString": "uint256" } }, - "id": 28931, + "id": 28946, "nodeType": "ExpressionStatement", "src": "14711:51:21" }, @@ -8201,7 +8373,7 @@ "arguments": [ { "hexValue": "30", - "id": 28935, + "id": 28950, "isConstant": false, "isLValue": false, "isPure": true, @@ -8223,7 +8395,7 @@ "typeString": "int_const 0" } ], - "id": 28934, + "id": 28949, "isConstant": false, "isLValue": false, "isPure": true, @@ -8235,19 +8407,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28933, + "id": 28948, "name": "address", "nodeType": "ElementaryTypeName", "src": "14787:7:21", "typeDescriptions": {} } }, - "id": 28936, + "id": 28951, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14787:10:21", @@ -8258,11 +8431,11 @@ } }, { - "id": 28937, + "id": 28952, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28890, + "referencedDeclaration": 28905, "src": "14799:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8270,11 +8443,11 @@ } }, { - "id": 28938, + "id": 28953, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28892, + "referencedDeclaration": 28907, "src": "14808:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8297,23 +8470,24 @@ "typeString": "uint256" } ], - "id": 28932, + "id": 28947, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29133, + "referencedDeclaration": 29148, "src": "14778:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28939, + "id": 28954, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14778:37:21", @@ -8323,14 +8497,14 @@ "typeString": "tuple()" } }, - "id": 28940, + "id": 28955, "nodeType": "EmitStatement", "src": "14773:42:21" } ] }, "documentation": { - "id": 28888, + "id": 28903, "nodeType": "StructuredDocumentation", "src": "14171:268:21", "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 - `to` cannot be the zero address." @@ -8341,17 +8515,17 @@ "name": "_mint", "nameLocation": "14454:5:21", "parameters": { - "id": 28893, + "id": 28908, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28890, + "id": 28905, "mutability": "mutable", "name": "account", "nameLocation": "14468:7:21", "nodeType": "VariableDeclaration", - "scope": 28942, + "scope": 28957, "src": "14460:15:21", "stateVariable": false, "storageLocation": "default", @@ -8360,7 +8534,7 @@ "typeString": "address" }, "typeName": { - "id": 28889, + "id": 28904, "name": "address", "nodeType": "ElementaryTypeName", "src": "14460:7:21", @@ -8374,12 +8548,12 @@ }, { "constant": false, - "id": 28892, + "id": 28907, "mutability": "mutable", "name": "amount", "nameLocation": "14485:6:21", "nodeType": "VariableDeclaration", - "scope": 28942, + "scope": 28957, "src": "14477:14:21", "stateVariable": false, "storageLocation": "default", @@ -8388,7 +8562,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28891, + "id": 28906, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "14477:7:21", @@ -8403,24 +8577,26 @@ "src": "14459:33:21" }, "returnParameters": { - "id": 28894, + "id": 28909, "nodeType": "ParameterList", "parameters": [], "src": "14510:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 28998, + "id": 29013, "nodeType": "FunctionDefinition", "src": "15156:418:21", + "nodes": [], "body": { - "id": 28997, + "id": 29012, "nodeType": "Block", "src": "15221:353:21", + "nodes": [], "statements": [ { "expression": { @@ -8430,17 +8606,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28956, + "id": 28971, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28951, + "id": 28966, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15240:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8453,7 +8629,7 @@ "arguments": [ { "hexValue": "30", - "id": 28954, + "id": 28969, "isConstant": false, "isLValue": false, "isPure": true, @@ -8475,7 +8651,7 @@ "typeString": "int_const 0" } ], - "id": 28953, + "id": 28968, "isConstant": false, "isLValue": false, "isPure": true, @@ -8487,19 +8663,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28952, + "id": 28967, "name": "address", "nodeType": "ElementaryTypeName", "src": "15251:7:21", "typeDescriptions": {} } }, - "id": 28955, + "id": 28970, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15251:10:21", @@ -8517,7 +8694,7 @@ }, { "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", - "id": 28957, + "id": 28972, "isConstant": false, "isLValue": false, "isPure": true, @@ -8543,7 +8720,7 @@ "typeString": "literal_string \"ERC20: burn from the zero address\"" } ], - "id": 28950, + "id": 28965, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -8557,12 +8734,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28958, + "id": 28973, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15232:67:21", @@ -8572,7 +8750,7 @@ "typeString": "tuple()" } }, - "id": 28959, + "id": 28974, "nodeType": "ExpressionStatement", "src": "15232:67:21" }, @@ -8580,11 +8758,11 @@ "expression": { "arguments": [ { - "id": 28961, + "id": 28976, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15333:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8595,7 +8773,7 @@ "arguments": [ { "hexValue": "30", - "id": 28964, + "id": 28979, "isConstant": false, "isLValue": false, "isPure": true, @@ -8617,7 +8795,7 @@ "typeString": "int_const 0" } ], - "id": 28963, + "id": 28978, "isConstant": false, "isLValue": false, "isPure": true, @@ -8629,19 +8807,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28962, + "id": 28977, "name": "address", "nodeType": "ElementaryTypeName", "src": "15342:7:21", "typeDescriptions": {} } }, - "id": 28965, + "id": 28980, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15342:10:21", @@ -8652,11 +8831,11 @@ } }, { - "id": 28966, + "id": 28981, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15354:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8679,23 +8858,24 @@ "typeString": "uint256" } ], - "id": 28960, + "id": 28975, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29065, + "referencedDeclaration": 29080, "src": "15312:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28967, + "id": 28982, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15312:49:21", @@ -8705,37 +8885,37 @@ "typeString": "tuple()" } }, - "id": 28968, + "id": 28983, "nodeType": "ExpressionStatement", "src": "15312:49:21" }, { "expression": { - "id": 28979, + "id": 28994, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 28969, + "id": 28984, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "15374:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28971, + "id": 28986, "indexExpression": { - "id": 28970, + "id": 28985, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15384:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8758,11 +8938,11 @@ "rightHandSide": { "arguments": [ { - "id": 28976, + "id": 28991, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15418:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8771,7 +8951,7 @@ }, { "hexValue": "45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365", - "id": 28977, + "id": 28992, "isConstant": false, "isLValue": false, "isPure": true, @@ -8799,24 +8979,24 @@ ], "expression": { "baseExpression": { - "id": 28972, + "id": 28987, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28580, + "referencedDeclaration": 28595, "src": "15395:9:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 28974, + "id": 28989, "indexExpression": { - "id": 28973, + "id": 28988, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15405:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8834,26 +9014,28 @@ "typeString": "uint256" } }, - "id": 28975, + "id": 28990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15414:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28517, + "referencedDeclaration": 28532, "src": "15395:22:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,string memory) pure returns (uint256)" } }, - "id": 28978, + "id": 28993, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15395:68:21", @@ -8869,23 +9051,23 @@ "typeString": "uint256" } }, - "id": 28980, + "id": 28995, "nodeType": "ExpressionStatement", "src": "15374:89:21" }, { "expression": { - "id": 28986, + "id": 29001, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28981, + "id": 28996, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "15474:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8897,11 +9079,11 @@ "rightHandSide": { "arguments": [ { - "id": 28984, + "id": 28999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15506:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8917,37 +9099,39 @@ } ], "expression": { - "id": 28982, + "id": 28997, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28588, + "referencedDeclaration": 28603, "src": "15489:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 28983, + "id": 28998, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15502:3:21", "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 28447, + "referencedDeclaration": 28462, "src": "15489:16:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 28985, + "id": 29000, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15489:24:21", @@ -8963,7 +9147,7 @@ "typeString": "uint256" } }, - "id": 28987, + "id": 29002, "nodeType": "ExpressionStatement", "src": "15474:39:21" }, @@ -8971,11 +9155,11 @@ "eventCall": { "arguments": [ { - "id": 28989, + "id": 29004, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28945, + "referencedDeclaration": 28960, "src": "15538:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8986,7 +9170,7 @@ "arguments": [ { "hexValue": "30", - "id": 28992, + "id": 29007, "isConstant": false, "isLValue": false, "isPure": true, @@ -9008,7 +9192,7 @@ "typeString": "int_const 0" } ], - "id": 28991, + "id": 29006, "isConstant": false, "isLValue": false, "isPure": true, @@ -9020,19 +9204,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28990, + "id": 29005, "name": "address", "nodeType": "ElementaryTypeName", "src": "15547:7:21", "typeDescriptions": {} } }, - "id": 28993, + "id": 29008, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15547:10:21", @@ -9043,11 +9228,11 @@ } }, { - "id": 28994, + "id": 29009, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28947, + "referencedDeclaration": 28962, "src": "15559:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9070,23 +9255,24 @@ "typeString": "uint256" } ], - "id": 28988, + "id": 29003, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29133, + "referencedDeclaration": 29148, "src": "15529:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 28995, + "id": 29010, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15529:37:21", @@ -9096,14 +9282,14 @@ "typeString": "tuple()" } }, - "id": 28996, + "id": 29011, "nodeType": "EmitStatement", "src": "15524:42:21" } ] }, "documentation": { - "id": 28943, + "id": 28958, "nodeType": "StructuredDocumentation", "src": "14831:319:21", "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." @@ -9114,17 +9300,17 @@ "name": "_burn", "nameLocation": "15165:5:21", "parameters": { - "id": 28948, + "id": 28963, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28945, + "id": 28960, "mutability": "mutable", "name": "account", "nameLocation": "15179:7:21", "nodeType": "VariableDeclaration", - "scope": 28998, + "scope": 29013, "src": "15171:15:21", "stateVariable": false, "storageLocation": "default", @@ -9133,7 +9319,7 @@ "typeString": "address" }, "typeName": { - "id": 28944, + "id": 28959, "name": "address", "nodeType": "ElementaryTypeName", "src": "15171:7:21", @@ -9147,12 +9333,12 @@ }, { "constant": false, - "id": 28947, + "id": 28962, "mutability": "mutable", "name": "amount", "nameLocation": "15196:6:21", "nodeType": "VariableDeclaration", - "scope": 28998, + "scope": 29013, "src": "15188:14:21", "stateVariable": false, "storageLocation": "default", @@ -9161,7 +9347,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28946, + "id": 28961, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "15188:7:21", @@ -9176,24 +9362,26 @@ "src": "15170:33:21" }, "returnParameters": { - "id": 28949, + "id": 28964, "nodeType": "ParameterList", "parameters": [], "src": "15221:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 29043, + "id": 29058, "nodeType": "FunctionDefinition", "src": "16012:346:21", + "nodes": [], "body": { - "id": 29042, + "id": 29057, "nodeType": "Block", "src": "16095:263:21", + "nodes": [], "statements": [ { "expression": { @@ -9203,17 +9391,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 29014, + "id": 29029, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29009, + "id": 29024, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29001, + "referencedDeclaration": 29016, "src": "16114:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9226,7 +9414,7 @@ "arguments": [ { "hexValue": "30", - "id": 29012, + "id": 29027, "isConstant": false, "isLValue": false, "isPure": true, @@ -9248,7 +9436,7 @@ "typeString": "int_const 0" } ], - "id": 29011, + "id": 29026, "isConstant": false, "isLValue": false, "isPure": true, @@ -9260,19 +9448,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 29010, + "id": 29025, "name": "address", "nodeType": "ElementaryTypeName", "src": "16123:7:21", "typeDescriptions": {} } }, - "id": 29013, + "id": 29028, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16123:10:21", @@ -9290,7 +9479,7 @@ }, { "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", - "id": 29015, + "id": 29030, "isConstant": false, "isLValue": false, "isPure": true, @@ -9316,7 +9505,7 @@ "typeString": "literal_string \"ERC20: approve from the zero address\"" } ], - "id": 29008, + "id": 29023, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9330,12 +9519,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 29016, + "id": 29031, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16106:68:21", @@ -9345,7 +9535,7 @@ "typeString": "tuple()" } }, - "id": 29017, + "id": 29032, "nodeType": "ExpressionStatement", "src": "16106:68:21" }, @@ -9357,17 +9547,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 29024, + "id": 29039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29019, + "id": 29034, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29003, + "referencedDeclaration": 29018, "src": "16193:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9380,7 +9570,7 @@ "arguments": [ { "hexValue": "30", - "id": 29022, + "id": 29037, "isConstant": false, "isLValue": false, "isPure": true, @@ -9402,7 +9592,7 @@ "typeString": "int_const 0" } ], - "id": 29021, + "id": 29036, "isConstant": false, "isLValue": false, "isPure": true, @@ -9414,19 +9604,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 29020, + "id": 29035, "name": "address", "nodeType": "ElementaryTypeName", "src": "16204:7:21", "typeDescriptions": {} } }, - "id": 29023, + "id": 29038, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16204:10:21", @@ -9444,7 +9635,7 @@ }, { "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", - "id": 29025, + "id": 29040, "isConstant": false, "isLValue": false, "isPure": true, @@ -9470,7 +9661,7 @@ "typeString": "literal_string \"ERC20: approve to the zero address\"" } ], - "id": 29018, + "id": 29033, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -9484,12 +9675,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 29026, + "id": 29041, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16185:68:21", @@ -9499,13 +9691,13 @@ "typeString": "tuple()" } }, - "id": 29027, + "id": 29042, "nodeType": "ExpressionStatement", "src": "16185:68:21" }, { "expression": { - "id": 29034, + "id": 29049, "isConstant": false, "isLValue": false, "isPure": false, @@ -9513,24 +9705,24 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 29028, + "id": 29043, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28586, + "referencedDeclaration": 28601, "src": "16266:11:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 29031, + "id": 29046, "indexExpression": { - "id": 29029, + "id": 29044, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29001, + "referencedDeclaration": 29016, "src": "16278:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9548,13 +9740,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 29032, + "id": 29047, "indexExpression": { - "id": 29030, + "id": 29045, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29003, + "referencedDeclaration": 29018, "src": "16285:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9575,11 +9767,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 29033, + "id": 29048, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29005, + "referencedDeclaration": 29020, "src": "16296:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9592,7 +9784,7 @@ "typeString": "uint256" } }, - "id": 29035, + "id": 29050, "nodeType": "ExpressionStatement", "src": "16266:36:21" }, @@ -9600,11 +9792,11 @@ "eventCall": { "arguments": [ { - "id": 29037, + "id": 29052, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29001, + "referencedDeclaration": 29016, "src": "16327:5:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9612,11 +9804,11 @@ } }, { - "id": 29038, + "id": 29053, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29003, + "referencedDeclaration": 29018, "src": "16334:7:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9624,11 +9816,11 @@ } }, { - "id": 29039, + "id": 29054, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29005, + "referencedDeclaration": 29020, "src": "16343:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9651,23 +9843,24 @@ "typeString": "uint256" } ], - "id": 29036, + "id": 29051, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29142, + "referencedDeclaration": 29157, "src": "16318:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 29040, + "id": 29055, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16318:32:21", @@ -9677,14 +9870,14 @@ "typeString": "tuple()" } }, - "id": 29041, + "id": 29056, "nodeType": "EmitStatement", "src": "16313:37:21" } ] }, "documentation": { - "id": 28999, + "id": 29014, "nodeType": "StructuredDocumentation", "src": "15582:424:21", "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." @@ -9695,17 +9888,17 @@ "name": "_approve", "nameLocation": "16021:8:21", "parameters": { - "id": 29006, + "id": 29021, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29001, + "id": 29016, "mutability": "mutable", "name": "owner", "nameLocation": "16038:5:21", "nodeType": "VariableDeclaration", - "scope": 29043, + "scope": 29058, "src": "16030:13:21", "stateVariable": false, "storageLocation": "default", @@ -9714,7 +9907,7 @@ "typeString": "address" }, "typeName": { - "id": 29000, + "id": 29015, "name": "address", "nodeType": "ElementaryTypeName", "src": "16030:7:21", @@ -9728,12 +9921,12 @@ }, { "constant": false, - "id": 29003, + "id": 29018, "mutability": "mutable", "name": "spender", "nameLocation": "16053:7:21", "nodeType": "VariableDeclaration", - "scope": 29043, + "scope": 29058, "src": "16045:15:21", "stateVariable": false, "storageLocation": "default", @@ -9742,7 +9935,7 @@ "typeString": "address" }, "typeName": { - "id": 29002, + "id": 29017, "name": "address", "nodeType": "ElementaryTypeName", "src": "16045:7:21", @@ -9756,12 +9949,12 @@ }, { "constant": false, - "id": 29005, + "id": 29020, "mutability": "mutable", "name": "amount", "nameLocation": "16070:6:21", "nodeType": "VariableDeclaration", - "scope": 29043, + "scope": 29058, "src": "16062:14:21", "stateVariable": false, "storageLocation": "default", @@ -9770,7 +9963,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29004, + "id": 29019, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "16062:7:21", @@ -9785,38 +9978,40 @@ "src": "16029:48:21" }, "returnParameters": { - "id": 29007, + "id": 29022, "nodeType": "ParameterList", "parameters": [], "src": "16095:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 29054, + "id": 29069, "nodeType": "FunctionDefinition", "src": "16690:98:21", + "nodes": [], "body": { - "id": 29053, + "id": 29068, "nodeType": "Block", "src": "16748:40:21", + "nodes": [], "statements": [ { "expression": { - "id": 29051, + "id": 29066, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 29049, + "id": 29064, "name": "_decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28594, + "referencedDeclaration": 28609, "src": "16759:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -9826,11 +10021,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 29050, + "id": 29065, "name": "decimals_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29046, + "referencedDeclaration": 29061, "src": "16771:9:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -9843,14 +10038,14 @@ "typeString": "uint8" } }, - "id": 29052, + "id": 29067, "nodeType": "ExpressionStatement", "src": "16759:21:21" } ] }, "documentation": { - "id": 29044, + "id": 29059, "nodeType": "StructuredDocumentation", "src": "16366:318:21", "text": " @dev Sets {decimals} to a value other than the default one of 18.\n WARNING: This function should only be called from the constructor. Most\n applications that interact with token contracts will not expect\n {decimals} to ever change, and may work incorrectly if it does." @@ -9861,17 +10056,17 @@ "name": "_setupDecimals", "nameLocation": "16699:14:21", "parameters": { - "id": 29047, + "id": 29062, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29046, + "id": 29061, "mutability": "mutable", "name": "decimals_", "nameLocation": "16720:9:21", "nodeType": "VariableDeclaration", - "scope": 29054, + "scope": 29069, "src": "16714:15:21", "stateVariable": false, "storageLocation": "default", @@ -9880,7 +10075,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29045, + "id": 29060, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "16714:5:21", @@ -9895,28 +10090,30 @@ "src": "16713:17:21" }, "returnParameters": { - "id": 29048, + "id": 29063, "nodeType": "ParameterList", "parameters": [], "src": "16748:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { - "id": 29065, + "id": 29080, "nodeType": "FunctionDefinition", "src": "17391:92:21", + "nodes": [], "body": { - "id": 29064, + "id": 29079, "nodeType": "Block", "src": "17480:3:21", + "nodes": [], "statements": [] }, "documentation": { - "id": 29055, + "id": 29070, "nodeType": "StructuredDocumentation", "src": "16796:589:21", "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 to 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]." @@ -9927,17 +10124,17 @@ "name": "_beforeTokenTransfer", "nameLocation": "17400:20:21", "parameters": { - "id": 29062, + "id": 29077, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29057, + "id": 29072, "mutability": "mutable", "name": "from", "nameLocation": "17429:4:21", "nodeType": "VariableDeclaration", - "scope": 29065, + "scope": 29080, "src": "17421:12:21", "stateVariable": false, "storageLocation": "default", @@ -9946,7 +10143,7 @@ "typeString": "address" }, "typeName": { - "id": 29056, + "id": 29071, "name": "address", "nodeType": "ElementaryTypeName", "src": "17421:7:21", @@ -9960,12 +10157,12 @@ }, { "constant": false, - "id": 29059, + "id": 29074, "mutability": "mutable", "name": "to", "nameLocation": "17443:2:21", "nodeType": "VariableDeclaration", - "scope": 29065, + "scope": 29080, "src": "17435:10:21", "stateVariable": false, "storageLocation": "default", @@ -9974,7 +10171,7 @@ "typeString": "address" }, "typeName": { - "id": 29058, + "id": 29073, "name": "address", "nodeType": "ElementaryTypeName", "src": "17435:7:21", @@ -9988,12 +10185,12 @@ }, { "constant": false, - "id": 29061, + "id": 29076, "mutability": "mutable", "name": "amount", "nameLocation": "17455:6:21", "nodeType": "VariableDeclaration", - "scope": 29065, + "scope": 29080, "src": "17447:14:21", "stateVariable": false, "storageLocation": "default", @@ -10002,7 +10199,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29060, + "id": 29075, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "17447:7:21", @@ -10017,12 +10214,12 @@ "src": "17420:42:21" }, "returnParameters": { - "id": 29063, + "id": 29078, "nodeType": "ParameterList", "parameters": [], "src": "17480:0:21" }, - "scope": 29066, + "scope": 29081, "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" @@ -10032,25 +10229,31 @@ "baseContracts": [ { "baseName": { - "id": 28570, + "id": 28585, "name": "Context", + "nameLocations": [ + "7754:7:21" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28107, + "referencedDeclaration": 28122, "src": "7754:7:21" }, - "id": 28571, + "id": 28586, "nodeType": "InheritanceSpecifier", "src": "7754:7:21" }, { "baseName": { - "id": 28572, + "id": 28587, "name": "IERC20", + "nameLocations": [ + "7763:6:21" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "7763:6:21" }, - "id": 28573, + "id": 28588, "nodeType": "InheritanceSpecifier", "src": "7763:6:21" } @@ -10059,20 +10262,20 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 28569, + "id": 28584, "nodeType": "StructuredDocumentation", "src": "6549:1185:21", "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.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n We have followed general OpenZeppelin guidelines: functions revert instead\n of returning `false` on failure. This behavior is nonetheless conventional\n and does not conflict with the expectations of ERC20 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, "linearizedBaseContracts": [ - 29066, - 29143, - 28107 + 29081, + 29158, + 28122 ], "name": "ERC20", "nameLocation": "7745:5:21", - "scope": 29067, + "scope": 29082, "usedErrors": [] } ], diff --git a/out/IERC20.sol/IERC20.json b/out/IERC20.sol/IERC20.json index 0b914b3..81c2f0f 100644 --- a/out/IERC20.sol/IERC20.json +++ b/out/IERC20.sol/IERC20.json @@ -202,24 +202,276 @@ "transfer(address,uint256)": "a9059cbb", "transferFrom(address,address,uint256)": "23b872dd" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "spender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Approval", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "to", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Transfer", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "allowance(address,address)": { + "details": "Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called." + }, + "approve(address,uint256)": { + "details": "Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event." + }, + "balanceOf(address)": { + "details": "Returns the amount of tokens owned by `account`." + }, + "totalSupply()": { + "details": "Returns the amount of tokens in existence." + }, + "transfer(address,uint256)": { + "details": "Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event." + }, + "transferFrom(address,address,uint256)": { + "details": "Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event." + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/IERC20.sol": "IERC20" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/IERC20.sol", - "id": 29152, + "id": 29167, "exportedSymbols": { "IERC20": [ - 29143 + 29158 ], "IERC20Extended": [ - 29151 + 29166 ] }, "nodeType": "SourceUnit", "src": "46:2777:22", "nodes": [ { - "id": 29068, + "id": 29083, "nodeType": "PragmaDirective", "src": "46:23:22", + "nodes": [], "literals": [ "solidity", "^", @@ -228,16 +480,17 @@ ] }, { - "id": 29143, + "id": 29158, "nodeType": "ContractDefinition", "src": "73:2635:22", "nodes": [ { - "id": 29074, + "id": 29089, "nodeType": "FunctionDefinition", "src": "171:55:22", + "nodes": [], "documentation": { - "id": 29069, + "id": 29084, "nodeType": "StructuredDocumentation", "src": "97:68:22", "text": " @dev Returns the amount of tokens in existence." @@ -249,23 +502,23 @@ "name": "totalSupply", "nameLocation": "180:11:22", "parameters": { - "id": 29070, + "id": 29085, "nodeType": "ParameterList", "parameters": [], "src": "191:2:22" }, "returnParameters": { - "id": 29073, + "id": 29088, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29072, + "id": 29087, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29074, + "scope": 29089, "src": "217:7:22", "stateVariable": false, "storageLocation": "default", @@ -274,7 +527,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29071, + "id": 29086, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "217:7:22", @@ -288,17 +541,18 @@ ], "src": "216:9:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29082, + "id": 29097, "nodeType": "FunctionDefinition", "src": "314:68:22", + "nodes": [], "documentation": { - "id": 29075, + "id": 29090, "nodeType": "StructuredDocumentation", "src": "234:74:22", "text": " @dev Returns the amount of tokens owned by `account`." @@ -310,17 +564,17 @@ "name": "balanceOf", "nameLocation": "323:9:22", "parameters": { - "id": 29078, + "id": 29093, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29077, + "id": 29092, "mutability": "mutable", "name": "account", "nameLocation": "341:7:22", "nodeType": "VariableDeclaration", - "scope": 29082, + "scope": 29097, "src": "333:15:22", "stateVariable": false, "storageLocation": "default", @@ -329,7 +583,7 @@ "typeString": "address" }, "typeName": { - "id": 29076, + "id": 29091, "name": "address", "nodeType": "ElementaryTypeName", "src": "333:7:22", @@ -345,17 +599,17 @@ "src": "332:17:22" }, "returnParameters": { - "id": 29081, + "id": 29096, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29080, + "id": 29095, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29082, + "scope": 29097, "src": "373:7:22", "stateVariable": false, "storageLocation": "default", @@ -364,7 +618,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29079, + "id": 29094, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "373:7:22", @@ -378,17 +632,18 @@ ], "src": "372:9:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29092, + "id": 29107, "nodeType": "FunctionDefinition", "src": "611:77:22", + "nodes": [], "documentation": { - "id": 29083, + "id": 29098, "nodeType": "StructuredDocumentation", "src": "390:215:22", "text": " @dev Moves `amount` tokens from the caller's account to `recipient`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." @@ -400,17 +655,17 @@ "name": "transfer", "nameLocation": "620:8:22", "parameters": { - "id": 29088, + "id": 29103, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29085, + "id": 29100, "mutability": "mutable", "name": "recipient", "nameLocation": "637:9:22", "nodeType": "VariableDeclaration", - "scope": 29092, + "scope": 29107, "src": "629:17:22", "stateVariable": false, "storageLocation": "default", @@ -419,7 +674,7 @@ "typeString": "address" }, "typeName": { - "id": 29084, + "id": 29099, "name": "address", "nodeType": "ElementaryTypeName", "src": "629:7:22", @@ -433,12 +688,12 @@ }, { "constant": false, - "id": 29087, + "id": 29102, "mutability": "mutable", "name": "amount", "nameLocation": "656:6:22", "nodeType": "VariableDeclaration", - "scope": 29092, + "scope": 29107, "src": "648:14:22", "stateVariable": false, "storageLocation": "default", @@ -447,7 +702,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29086, + "id": 29101, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "648:7:22", @@ -462,17 +717,17 @@ "src": "628:35:22" }, "returnParameters": { - "id": 29091, + "id": 29106, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29090, + "id": 29105, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29092, + "scope": 29107, "src": "682:4:22", "stateVariable": false, "storageLocation": "default", @@ -481,7 +736,7 @@ "typeString": "bool" }, "typeName": { - "id": 29089, + "id": 29104, "name": "bool", "nodeType": "ElementaryTypeName", "src": "682:4:22", @@ -495,17 +750,18 @@ ], "src": "681:6:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29102, + "id": 29117, "nodeType": "FunctionDefinition", "src": "972:83:22", + "nodes": [], "documentation": { - "id": 29093, + "id": 29108, "nodeType": "StructuredDocumentation", "src": "696:270:22", "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." @@ -517,17 +773,17 @@ "name": "allowance", "nameLocation": "981:9:22", "parameters": { - "id": 29098, + "id": 29113, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29095, + "id": 29110, "mutability": "mutable", "name": "owner", "nameLocation": "999:5:22", "nodeType": "VariableDeclaration", - "scope": 29102, + "scope": 29117, "src": "991:13:22", "stateVariable": false, "storageLocation": "default", @@ -536,7 +792,7 @@ "typeString": "address" }, "typeName": { - "id": 29094, + "id": 29109, "name": "address", "nodeType": "ElementaryTypeName", "src": "991:7:22", @@ -550,12 +806,12 @@ }, { "constant": false, - "id": 29097, + "id": 29112, "mutability": "mutable", "name": "spender", "nameLocation": "1014:7:22", "nodeType": "VariableDeclaration", - "scope": 29102, + "scope": 29117, "src": "1006:15:22", "stateVariable": false, "storageLocation": "default", @@ -564,7 +820,7 @@ "typeString": "address" }, "typeName": { - "id": 29096, + "id": 29111, "name": "address", "nodeType": "ElementaryTypeName", "src": "1006:7:22", @@ -580,17 +836,17 @@ "src": "990:32:22" }, "returnParameters": { - "id": 29101, + "id": 29116, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29100, + "id": 29115, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29102, + "scope": 29117, "src": "1046:7:22", "stateVariable": false, "storageLocation": "default", @@ -599,7 +855,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29099, + "id": 29114, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1046:7:22", @@ -613,17 +869,18 @@ ], "src": "1045:9:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29112, + "id": 29127, "nodeType": "FunctionDefinition", "src": "1724:74:22", + "nodes": [], "documentation": { - "id": 29103, + "id": 29118, "nodeType": "StructuredDocumentation", "src": "1063:655:22", "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." @@ -635,17 +892,17 @@ "name": "approve", "nameLocation": "1733:7:22", "parameters": { - "id": 29108, + "id": 29123, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29105, + "id": 29120, "mutability": "mutable", "name": "spender", "nameLocation": "1749:7:22", "nodeType": "VariableDeclaration", - "scope": 29112, + "scope": 29127, "src": "1741:15:22", "stateVariable": false, "storageLocation": "default", @@ -654,7 +911,7 @@ "typeString": "address" }, "typeName": { - "id": 29104, + "id": 29119, "name": "address", "nodeType": "ElementaryTypeName", "src": "1741:7:22", @@ -668,12 +925,12 @@ }, { "constant": false, - "id": 29107, + "id": 29122, "mutability": "mutable", "name": "amount", "nameLocation": "1766:6:22", "nodeType": "VariableDeclaration", - "scope": 29112, + "scope": 29127, "src": "1758:14:22", "stateVariable": false, "storageLocation": "default", @@ -682,7 +939,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29106, + "id": 29121, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1758:7:22", @@ -697,17 +954,17 @@ "src": "1740:33:22" }, "returnParameters": { - "id": 29111, + "id": 29126, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29110, + "id": 29125, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29112, + "scope": 29127, "src": "1792:4:22", "stateVariable": false, "storageLocation": "default", @@ -716,7 +973,7 @@ "typeString": "bool" }, "typeName": { - "id": 29109, + "id": 29124, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1792:4:22", @@ -730,17 +987,18 @@ ], "src": "1791:6:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29124, + "id": 29139, "nodeType": "FunctionDefinition", "src": "2116:97:22", + "nodes": [], "documentation": { - "id": 29113, + "id": 29128, "nodeType": "StructuredDocumentation", "src": "1806:304:22", "text": " @dev Moves `amount` tokens from `sender` to `recipient` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." @@ -752,17 +1010,17 @@ "name": "transferFrom", "nameLocation": "2125:12:22", "parameters": { - "id": 29120, + "id": 29135, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29115, + "id": 29130, "mutability": "mutable", "name": "sender", "nameLocation": "2146:6:22", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2138:14:22", "stateVariable": false, "storageLocation": "default", @@ -771,7 +1029,7 @@ "typeString": "address" }, "typeName": { - "id": 29114, + "id": 29129, "name": "address", "nodeType": "ElementaryTypeName", "src": "2138:7:22", @@ -785,12 +1043,12 @@ }, { "constant": false, - "id": 29117, + "id": 29132, "mutability": "mutable", "name": "recipient", "nameLocation": "2162:9:22", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2154:17:22", "stateVariable": false, "storageLocation": "default", @@ -799,7 +1057,7 @@ "typeString": "address" }, "typeName": { - "id": 29116, + "id": 29131, "name": "address", "nodeType": "ElementaryTypeName", "src": "2154:7:22", @@ -813,12 +1071,12 @@ }, { "constant": false, - "id": 29119, + "id": 29134, "mutability": "mutable", "name": "amount", "nameLocation": "2181:6:22", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2173:14:22", "stateVariable": false, "storageLocation": "default", @@ -827,7 +1085,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29118, + "id": 29133, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2173:7:22", @@ -842,17 +1100,17 @@ "src": "2137:51:22" }, "returnParameters": { - "id": 29123, + "id": 29138, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29122, + "id": 29137, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2207:4:22", "stateVariable": false, "storageLocation": "default", @@ -861,7 +1119,7 @@ "typeString": "bool" }, "typeName": { - "id": 29121, + "id": 29136, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2207:4:22", @@ -875,18 +1133,19 @@ ], "src": "2206:6:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29133, + "id": 29148, "nodeType": "EventDefinition", "src": "2390:72:22", + "nodes": [], "anonymous": false, "documentation": { - "id": 29125, + "id": 29140, "nodeType": "StructuredDocumentation", "src": "2221:163:22", "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." @@ -895,18 +1154,18 @@ "name": "Transfer", "nameLocation": "2396:8:22", "parameters": { - "id": 29132, + "id": 29147, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29127, + "id": 29142, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "2421:4:22", "nodeType": "VariableDeclaration", - "scope": 29133, + "scope": 29148, "src": "2405:20:22", "stateVariable": false, "storageLocation": "default", @@ -915,7 +1174,7 @@ "typeString": "address" }, "typeName": { - "id": 29126, + "id": 29141, "name": "address", "nodeType": "ElementaryTypeName", "src": "2405:7:22", @@ -929,13 +1188,13 @@ }, { "constant": false, - "id": 29129, + "id": 29144, "indexed": true, "mutability": "mutable", "name": "to", "nameLocation": "2443:2:22", "nodeType": "VariableDeclaration", - "scope": 29133, + "scope": 29148, "src": "2427:18:22", "stateVariable": false, "storageLocation": "default", @@ -944,7 +1203,7 @@ "typeString": "address" }, "typeName": { - "id": 29128, + "id": 29143, "name": "address", "nodeType": "ElementaryTypeName", "src": "2427:7:22", @@ -958,13 +1217,13 @@ }, { "constant": false, - "id": 29131, + "id": 29146, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "2455:5:22", "nodeType": "VariableDeclaration", - "scope": 29133, + "scope": 29148, "src": "2447:13:22", "stateVariable": false, "storageLocation": "default", @@ -973,7 +1232,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29130, + "id": 29145, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2447:7:22", @@ -989,12 +1248,13 @@ } }, { - "id": 29142, + "id": 29157, "nodeType": "EventDefinition", "src": "2627:78:22", + "nodes": [], "anonymous": false, "documentation": { - "id": 29134, + "id": 29149, "nodeType": "StructuredDocumentation", "src": "2470:151:22", "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." @@ -1003,18 +1263,18 @@ "name": "Approval", "nameLocation": "2633:8:22", "parameters": { - "id": 29141, + "id": 29156, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29136, + "id": 29151, "indexed": true, "mutability": "mutable", "name": "owner", "nameLocation": "2658:5:22", "nodeType": "VariableDeclaration", - "scope": 29142, + "scope": 29157, "src": "2642:21:22", "stateVariable": false, "storageLocation": "default", @@ -1023,7 +1283,7 @@ "typeString": "address" }, "typeName": { - "id": 29135, + "id": 29150, "name": "address", "nodeType": "ElementaryTypeName", "src": "2642:7:22", @@ -1037,13 +1297,13 @@ }, { "constant": false, - "id": 29138, + "id": 29153, "indexed": true, "mutability": "mutable", "name": "spender", "nameLocation": "2681:7:22", "nodeType": "VariableDeclaration", - "scope": 29142, + "scope": 29157, "src": "2665:23:22", "stateVariable": false, "storageLocation": "default", @@ -1052,7 +1312,7 @@ "typeString": "address" }, "typeName": { - "id": 29137, + "id": 29152, "name": "address", "nodeType": "ElementaryTypeName", "src": "2665:7:22", @@ -1066,13 +1326,13 @@ }, { "constant": false, - "id": 29140, + "id": 29155, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "2698:5:22", "nodeType": "VariableDeclaration", - "scope": 29142, + "scope": 29157, "src": "2690:13:22", "stateVariable": false, "storageLocation": "default", @@ -1081,7 +1341,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29139, + "id": 29154, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2690:7:22", @@ -1104,22 +1364,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29143 + 29158 ], "name": "IERC20", "nameLocation": "83:6:22", - "scope": 29152, + "scope": 29167, "usedErrors": [] }, { - "id": 29151, + "id": 29166, "nodeType": "ContractDefinition", "src": "2712:111:22", "nodes": [ { - "id": 29150, + "id": 29165, "nodeType": "FunctionDefinition", "src": "2762:58:22", + "nodes": [], "functionSelector": "313ce567", "implemented": false, "kind": "function", @@ -1127,23 +1388,23 @@ "name": "decimals", "nameLocation": "2771:8:22", "parameters": { - "id": 29146, + "id": 29161, "nodeType": "ParameterList", "parameters": [], "src": "2779:2:22" }, "returnParameters": { - "id": 29149, + "id": 29164, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29148, + "id": 29163, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29150, + "scope": 29165, "src": "2813:5:22", "stateVariable": false, "storageLocation": "default", @@ -1152,7 +1413,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29147, + "id": 29162, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2813:5:22", @@ -1166,7 +1427,7 @@ ], "src": "2812:7:22" }, - "scope": 29151, + "scope": 29166, "stateMutability": "view", "virtual": true, "visibility": "external" @@ -1176,13 +1437,16 @@ "baseContracts": [ { "baseName": { - "id": 29144, + "id": 29159, "name": "IERC20", + "nameLocations": [ + "2748:6:22" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "2748:6:22" }, - "id": 29145, + "id": 29160, "nodeType": "InheritanceSpecifier", "src": "2748:6:22" } @@ -1192,12 +1456,12 @@ "contractKind": "contract", "fullyImplemented": false, "linearizedBaseContracts": [ - 29151, - 29143 + 29166, + 29158 ], "name": "IERC20Extended", "nameLocation": "2730:14:22", - "scope": 29152, + "scope": 29167, "usedErrors": [] } ], diff --git a/out/IERC20.sol/IERC20Extended.json b/out/IERC20.sol/IERC20Extended.json index 32c7381..81fe666 100644 --- a/out/IERC20.sol/IERC20Extended.json +++ b/out/IERC20.sol/IERC20Extended.json @@ -216,24 +216,289 @@ "transfer(address,uint256)": "a9059cbb", "transferFrom(address,address,uint256)": "23b872dd" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IERC20.sol\":\"IERC20Extended\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "spender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Approval", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "to", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Transfer", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "allowance(address,address)": { + "details": "Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called." + }, + "approve(address,uint256)": { + "details": "Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event." + }, + "balanceOf(address)": { + "details": "Returns the amount of tokens owned by `account`." + }, + "totalSupply()": { + "details": "Returns the amount of tokens in existence." + }, + "transfer(address,uint256)": { + "details": "Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event." + }, + "transferFrom(address,address,uint256)": { + "details": "Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event." + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/IERC20.sol": "IERC20Extended" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/IERC20.sol", - "id": 29152, + "id": 29167, "exportedSymbols": { "IERC20": [ - 29143 + 29158 ], "IERC20Extended": [ - 29151 + 29166 ] }, "nodeType": "SourceUnit", "src": "46:2777:22", "nodes": [ { - "id": 29068, + "id": 29083, "nodeType": "PragmaDirective", "src": "46:23:22", + "nodes": [], "literals": [ "solidity", "^", @@ -242,16 +507,17 @@ ] }, { - "id": 29143, + "id": 29158, "nodeType": "ContractDefinition", "src": "73:2635:22", "nodes": [ { - "id": 29074, + "id": 29089, "nodeType": "FunctionDefinition", "src": "171:55:22", + "nodes": [], "documentation": { - "id": 29069, + "id": 29084, "nodeType": "StructuredDocumentation", "src": "97:68:22", "text": " @dev Returns the amount of tokens in existence." @@ -263,23 +529,23 @@ "name": "totalSupply", "nameLocation": "180:11:22", "parameters": { - "id": 29070, + "id": 29085, "nodeType": "ParameterList", "parameters": [], "src": "191:2:22" }, "returnParameters": { - "id": 29073, + "id": 29088, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29072, + "id": 29087, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29074, + "scope": 29089, "src": "217:7:22", "stateVariable": false, "storageLocation": "default", @@ -288,7 +554,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29071, + "id": 29086, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "217:7:22", @@ -302,17 +568,18 @@ ], "src": "216:9:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29082, + "id": 29097, "nodeType": "FunctionDefinition", "src": "314:68:22", + "nodes": [], "documentation": { - "id": 29075, + "id": 29090, "nodeType": "StructuredDocumentation", "src": "234:74:22", "text": " @dev Returns the amount of tokens owned by `account`." @@ -324,17 +591,17 @@ "name": "balanceOf", "nameLocation": "323:9:22", "parameters": { - "id": 29078, + "id": 29093, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29077, + "id": 29092, "mutability": "mutable", "name": "account", "nameLocation": "341:7:22", "nodeType": "VariableDeclaration", - "scope": 29082, + "scope": 29097, "src": "333:15:22", "stateVariable": false, "storageLocation": "default", @@ -343,7 +610,7 @@ "typeString": "address" }, "typeName": { - "id": 29076, + "id": 29091, "name": "address", "nodeType": "ElementaryTypeName", "src": "333:7:22", @@ -359,17 +626,17 @@ "src": "332:17:22" }, "returnParameters": { - "id": 29081, + "id": 29096, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29080, + "id": 29095, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29082, + "scope": 29097, "src": "373:7:22", "stateVariable": false, "storageLocation": "default", @@ -378,7 +645,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29079, + "id": 29094, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "373:7:22", @@ -392,17 +659,18 @@ ], "src": "372:9:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29092, + "id": 29107, "nodeType": "FunctionDefinition", "src": "611:77:22", + "nodes": [], "documentation": { - "id": 29083, + "id": 29098, "nodeType": "StructuredDocumentation", "src": "390:215:22", "text": " @dev Moves `amount` tokens from the caller's account to `recipient`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." @@ -414,17 +682,17 @@ "name": "transfer", "nameLocation": "620:8:22", "parameters": { - "id": 29088, + "id": 29103, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29085, + "id": 29100, "mutability": "mutable", "name": "recipient", "nameLocation": "637:9:22", "nodeType": "VariableDeclaration", - "scope": 29092, + "scope": 29107, "src": "629:17:22", "stateVariable": false, "storageLocation": "default", @@ -433,7 +701,7 @@ "typeString": "address" }, "typeName": { - "id": 29084, + "id": 29099, "name": "address", "nodeType": "ElementaryTypeName", "src": "629:7:22", @@ -447,12 +715,12 @@ }, { "constant": false, - "id": 29087, + "id": 29102, "mutability": "mutable", "name": "amount", "nameLocation": "656:6:22", "nodeType": "VariableDeclaration", - "scope": 29092, + "scope": 29107, "src": "648:14:22", "stateVariable": false, "storageLocation": "default", @@ -461,7 +729,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29086, + "id": 29101, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "648:7:22", @@ -476,17 +744,17 @@ "src": "628:35:22" }, "returnParameters": { - "id": 29091, + "id": 29106, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29090, + "id": 29105, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29092, + "scope": 29107, "src": "682:4:22", "stateVariable": false, "storageLocation": "default", @@ -495,7 +763,7 @@ "typeString": "bool" }, "typeName": { - "id": 29089, + "id": 29104, "name": "bool", "nodeType": "ElementaryTypeName", "src": "682:4:22", @@ -509,17 +777,18 @@ ], "src": "681:6:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29102, + "id": 29117, "nodeType": "FunctionDefinition", "src": "972:83:22", + "nodes": [], "documentation": { - "id": 29093, + "id": 29108, "nodeType": "StructuredDocumentation", "src": "696:270:22", "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." @@ -531,17 +800,17 @@ "name": "allowance", "nameLocation": "981:9:22", "parameters": { - "id": 29098, + "id": 29113, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29095, + "id": 29110, "mutability": "mutable", "name": "owner", "nameLocation": "999:5:22", "nodeType": "VariableDeclaration", - "scope": 29102, + "scope": 29117, "src": "991:13:22", "stateVariable": false, "storageLocation": "default", @@ -550,7 +819,7 @@ "typeString": "address" }, "typeName": { - "id": 29094, + "id": 29109, "name": "address", "nodeType": "ElementaryTypeName", "src": "991:7:22", @@ -564,12 +833,12 @@ }, { "constant": false, - "id": 29097, + "id": 29112, "mutability": "mutable", "name": "spender", "nameLocation": "1014:7:22", "nodeType": "VariableDeclaration", - "scope": 29102, + "scope": 29117, "src": "1006:15:22", "stateVariable": false, "storageLocation": "default", @@ -578,7 +847,7 @@ "typeString": "address" }, "typeName": { - "id": 29096, + "id": 29111, "name": "address", "nodeType": "ElementaryTypeName", "src": "1006:7:22", @@ -594,17 +863,17 @@ "src": "990:32:22" }, "returnParameters": { - "id": 29101, + "id": 29116, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29100, + "id": 29115, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29102, + "scope": 29117, "src": "1046:7:22", "stateVariable": false, "storageLocation": "default", @@ -613,7 +882,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29099, + "id": 29114, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1046:7:22", @@ -627,17 +896,18 @@ ], "src": "1045:9:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29112, + "id": 29127, "nodeType": "FunctionDefinition", "src": "1724:74:22", + "nodes": [], "documentation": { - "id": 29103, + "id": 29118, "nodeType": "StructuredDocumentation", "src": "1063:655:22", "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." @@ -649,17 +919,17 @@ "name": "approve", "nameLocation": "1733:7:22", "parameters": { - "id": 29108, + "id": 29123, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29105, + "id": 29120, "mutability": "mutable", "name": "spender", "nameLocation": "1749:7:22", "nodeType": "VariableDeclaration", - "scope": 29112, + "scope": 29127, "src": "1741:15:22", "stateVariable": false, "storageLocation": "default", @@ -668,7 +938,7 @@ "typeString": "address" }, "typeName": { - "id": 29104, + "id": 29119, "name": "address", "nodeType": "ElementaryTypeName", "src": "1741:7:22", @@ -682,12 +952,12 @@ }, { "constant": false, - "id": 29107, + "id": 29122, "mutability": "mutable", "name": "amount", "nameLocation": "1766:6:22", "nodeType": "VariableDeclaration", - "scope": 29112, + "scope": 29127, "src": "1758:14:22", "stateVariable": false, "storageLocation": "default", @@ -696,7 +966,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29106, + "id": 29121, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1758:7:22", @@ -711,17 +981,17 @@ "src": "1740:33:22" }, "returnParameters": { - "id": 29111, + "id": 29126, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29110, + "id": 29125, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29112, + "scope": 29127, "src": "1792:4:22", "stateVariable": false, "storageLocation": "default", @@ -730,7 +1000,7 @@ "typeString": "bool" }, "typeName": { - "id": 29109, + "id": 29124, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1792:4:22", @@ -744,17 +1014,18 @@ ], "src": "1791:6:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29124, + "id": 29139, "nodeType": "FunctionDefinition", "src": "2116:97:22", + "nodes": [], "documentation": { - "id": 29113, + "id": 29128, "nodeType": "StructuredDocumentation", "src": "1806:304:22", "text": " @dev Moves `amount` tokens from `sender` to `recipient` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." @@ -766,17 +1037,17 @@ "name": "transferFrom", "nameLocation": "2125:12:22", "parameters": { - "id": 29120, + "id": 29135, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29115, + "id": 29130, "mutability": "mutable", "name": "sender", "nameLocation": "2146:6:22", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2138:14:22", "stateVariable": false, "storageLocation": "default", @@ -785,7 +1056,7 @@ "typeString": "address" }, "typeName": { - "id": 29114, + "id": 29129, "name": "address", "nodeType": "ElementaryTypeName", "src": "2138:7:22", @@ -799,12 +1070,12 @@ }, { "constant": false, - "id": 29117, + "id": 29132, "mutability": "mutable", "name": "recipient", "nameLocation": "2162:9:22", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2154:17:22", "stateVariable": false, "storageLocation": "default", @@ -813,7 +1084,7 @@ "typeString": "address" }, "typeName": { - "id": 29116, + "id": 29131, "name": "address", "nodeType": "ElementaryTypeName", "src": "2154:7:22", @@ -827,12 +1098,12 @@ }, { "constant": false, - "id": 29119, + "id": 29134, "mutability": "mutable", "name": "amount", "nameLocation": "2181:6:22", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2173:14:22", "stateVariable": false, "storageLocation": "default", @@ -841,7 +1112,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29118, + "id": 29133, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2173:7:22", @@ -856,17 +1127,17 @@ "src": "2137:51:22" }, "returnParameters": { - "id": 29123, + "id": 29138, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29122, + "id": 29137, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29124, + "scope": 29139, "src": "2207:4:22", "stateVariable": false, "storageLocation": "default", @@ -875,7 +1146,7 @@ "typeString": "bool" }, "typeName": { - "id": 29121, + "id": 29136, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2207:4:22", @@ -889,18 +1160,19 @@ ], "src": "2206:6:22" }, - "scope": 29143, + "scope": 29158, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29133, + "id": 29148, "nodeType": "EventDefinition", "src": "2390:72:22", + "nodes": [], "anonymous": false, "documentation": { - "id": 29125, + "id": 29140, "nodeType": "StructuredDocumentation", "src": "2221:163:22", "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." @@ -909,18 +1181,18 @@ "name": "Transfer", "nameLocation": "2396:8:22", "parameters": { - "id": 29132, + "id": 29147, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29127, + "id": 29142, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "2421:4:22", "nodeType": "VariableDeclaration", - "scope": 29133, + "scope": 29148, "src": "2405:20:22", "stateVariable": false, "storageLocation": "default", @@ -929,7 +1201,7 @@ "typeString": "address" }, "typeName": { - "id": 29126, + "id": 29141, "name": "address", "nodeType": "ElementaryTypeName", "src": "2405:7:22", @@ -943,13 +1215,13 @@ }, { "constant": false, - "id": 29129, + "id": 29144, "indexed": true, "mutability": "mutable", "name": "to", "nameLocation": "2443:2:22", "nodeType": "VariableDeclaration", - "scope": 29133, + "scope": 29148, "src": "2427:18:22", "stateVariable": false, "storageLocation": "default", @@ -958,7 +1230,7 @@ "typeString": "address" }, "typeName": { - "id": 29128, + "id": 29143, "name": "address", "nodeType": "ElementaryTypeName", "src": "2427:7:22", @@ -972,13 +1244,13 @@ }, { "constant": false, - "id": 29131, + "id": 29146, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "2455:5:22", "nodeType": "VariableDeclaration", - "scope": 29133, + "scope": 29148, "src": "2447:13:22", "stateVariable": false, "storageLocation": "default", @@ -987,7 +1259,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29130, + "id": 29145, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2447:7:22", @@ -1003,12 +1275,13 @@ } }, { - "id": 29142, + "id": 29157, "nodeType": "EventDefinition", "src": "2627:78:22", + "nodes": [], "anonymous": false, "documentation": { - "id": 29134, + "id": 29149, "nodeType": "StructuredDocumentation", "src": "2470:151:22", "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." @@ -1017,18 +1290,18 @@ "name": "Approval", "nameLocation": "2633:8:22", "parameters": { - "id": 29141, + "id": 29156, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29136, + "id": 29151, "indexed": true, "mutability": "mutable", "name": "owner", "nameLocation": "2658:5:22", "nodeType": "VariableDeclaration", - "scope": 29142, + "scope": 29157, "src": "2642:21:22", "stateVariable": false, "storageLocation": "default", @@ -1037,7 +1310,7 @@ "typeString": "address" }, "typeName": { - "id": 29135, + "id": 29150, "name": "address", "nodeType": "ElementaryTypeName", "src": "2642:7:22", @@ -1051,13 +1324,13 @@ }, { "constant": false, - "id": 29138, + "id": 29153, "indexed": true, "mutability": "mutable", "name": "spender", "nameLocation": "2681:7:22", "nodeType": "VariableDeclaration", - "scope": 29142, + "scope": 29157, "src": "2665:23:22", "stateVariable": false, "storageLocation": "default", @@ -1066,7 +1339,7 @@ "typeString": "address" }, "typeName": { - "id": 29137, + "id": 29152, "name": "address", "nodeType": "ElementaryTypeName", "src": "2665:7:22", @@ -1080,13 +1353,13 @@ }, { "constant": false, - "id": 29140, + "id": 29155, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "2698:5:22", "nodeType": "VariableDeclaration", - "scope": 29142, + "scope": 29157, "src": "2690:13:22", "stateVariable": false, "storageLocation": "default", @@ -1095,7 +1368,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29139, + "id": 29154, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2690:7:22", @@ -1118,22 +1391,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29143 + 29158 ], "name": "IERC20", "nameLocation": "83:6:22", - "scope": 29152, + "scope": 29167, "usedErrors": [] }, { - "id": 29151, + "id": 29166, "nodeType": "ContractDefinition", "src": "2712:111:22", "nodes": [ { - "id": 29150, + "id": 29165, "nodeType": "FunctionDefinition", "src": "2762:58:22", + "nodes": [], "functionSelector": "313ce567", "implemented": false, "kind": "function", @@ -1141,23 +1415,23 @@ "name": "decimals", "nameLocation": "2771:8:22", "parameters": { - "id": 29146, + "id": 29161, "nodeType": "ParameterList", "parameters": [], "src": "2779:2:22" }, "returnParameters": { - "id": 29149, + "id": 29164, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29148, + "id": 29163, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29150, + "scope": 29165, "src": "2813:5:22", "stateVariable": false, "storageLocation": "default", @@ -1166,7 +1440,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29147, + "id": 29162, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2813:5:22", @@ -1180,7 +1454,7 @@ ], "src": "2812:7:22" }, - "scope": 29151, + "scope": 29166, "stateMutability": "view", "virtual": true, "visibility": "external" @@ -1190,13 +1464,16 @@ "baseContracts": [ { "baseName": { - "id": 29144, + "id": 29159, "name": "IERC20", + "nameLocations": [ + "2748:6:22" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "2748:6:22" }, - "id": 29145, + "id": 29160, "nodeType": "InheritanceSpecifier", "src": "2748:6:22" } @@ -1206,12 +1483,12 @@ "contractKind": "contract", "fullyImplemented": false, "linearizedBaseContracts": [ - 29151, - 29143 + 29166, + 29158 ], "name": "IERC20Extended", "nameLocation": "2730:14:22", - "scope": 29152, + "scope": 29167, "usedErrors": [] } ], diff --git a/out/IUniswapV2Factory.sol/IUniswapV2Factory.json b/out/IUniswapV2Factory.sol/IUniswapV2Factory.json index 0b2f4ab..408775f 100644 --- a/out/IUniswapV2Factory.sol/IUniswapV2Factory.json +++ b/out/IUniswapV2Factory.sol/IUniswapV2Factory.json @@ -184,21 +184,232 @@ "setFeeTo(address)": "f46901ed", "setFeeToSetter(address)": "a2e74af6" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token0\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token1\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"PairCreated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"allPairs\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allPairsLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"}],\"name\":\"createPair\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeTo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeToSetter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"}],\"name\":\"getPair\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"setFeeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"setFeeToSetter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IUniswapV2Factory.sol\":\"IUniswapV2Factory\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/IUniswapV2Factory.sol\":{\"keccak256\":\"0xc47e18780475626ac1da1437417e84442c2328eaa2726669bd4d84d46f64f275\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://d0b18cef7206904c41fff4113a98513828cb5e393de57a6b6330dd1010498606\",\"dweb:/ipfs/QmRCyXnd2bvUyK39TAX9ddm7Ra7hWdMB7b2tqZeytnDyFm\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "token0", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token1", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "pair", + "type": "address", + "indexed": false + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "PairCreated", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function", + "name": "allPairs", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "allPairsLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createPair", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "feeTo", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "feeToSetter", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getPair", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setFeeTo" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setFeeToSetter" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/IUniswapV2Factory.sol": "IUniswapV2Factory" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/IUniswapV2Factory.sol": { + "keccak256": "0xc47e18780475626ac1da1437417e84442c2328eaa2726669bd4d84d46f64f275", + "urls": [ + "bzz-raw://d0b18cef7206904c41fff4113a98513828cb5e393de57a6b6330dd1010498606", + "dweb:/ipfs/QmRCyXnd2bvUyK39TAX9ddm7Ra7hWdMB7b2tqZeytnDyFm" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/IUniswapV2Factory.sol", - "id": 29215, + "id": 29230, "exportedSymbols": { "IUniswapV2Factory": [ - 29214 + 29229 ] }, "nodeType": "SourceUnit", "src": "46:675:23", "nodes": [ { - "id": 29153, + "id": 29168, "nodeType": "PragmaDirective", "src": "46:23:23", + "nodes": [], "literals": [ "solidity", "^", @@ -207,31 +418,32 @@ ] }, { - "id": 29214, + "id": 29229, "nodeType": "ContractDefinition", "src": "73:648:23", "nodes": [ { - "id": 29163, + "id": 29178, "nodeType": "EventDefinition", "src": "108:86:23", + "nodes": [], "anonymous": false, "eventSelector": "0d3648bd0f6ba80134a33ba9275ac585d9d315f0ad8355cddefde31afa28d0e9", "name": "PairCreated", "nameLocation": "114:11:23", "parameters": { - "id": 29162, + "id": 29177, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29155, + "id": 29170, "indexed": true, "mutability": "mutable", "name": "token0", "nameLocation": "142:6:23", "nodeType": "VariableDeclaration", - "scope": 29163, + "scope": 29178, "src": "126:22:23", "stateVariable": false, "storageLocation": "default", @@ -240,7 +452,7 @@ "typeString": "address" }, "typeName": { - "id": 29154, + "id": 29169, "name": "address", "nodeType": "ElementaryTypeName", "src": "126:7:23", @@ -254,13 +466,13 @@ }, { "constant": false, - "id": 29157, + "id": 29172, "indexed": true, "mutability": "mutable", "name": "token1", "nameLocation": "166:6:23", "nodeType": "VariableDeclaration", - "scope": 29163, + "scope": 29178, "src": "150:22:23", "stateVariable": false, "storageLocation": "default", @@ -269,7 +481,7 @@ "typeString": "address" }, "typeName": { - "id": 29156, + "id": 29171, "name": "address", "nodeType": "ElementaryTypeName", "src": "150:7:23", @@ -283,13 +495,13 @@ }, { "constant": false, - "id": 29159, + "id": 29174, "indexed": false, "mutability": "mutable", "name": "pair", "nameLocation": "182:4:23", "nodeType": "VariableDeclaration", - "scope": 29163, + "scope": 29178, "src": "174:12:23", "stateVariable": false, "storageLocation": "default", @@ -298,7 +510,7 @@ "typeString": "address" }, "typeName": { - "id": 29158, + "id": 29173, "name": "address", "nodeType": "ElementaryTypeName", "src": "174:7:23", @@ -312,13 +524,13 @@ }, { "constant": false, - "id": 29161, + "id": 29176, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29163, + "scope": 29178, "src": "188:4:23", "stateVariable": false, "storageLocation": "default", @@ -327,7 +539,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29160, + "id": 29175, "name": "uint", "nodeType": "ElementaryTypeName", "src": "188:4:23", @@ -343,9 +555,10 @@ } }, { - "id": 29168, + "id": 29183, "nodeType": "FunctionDefinition", "src": "202:49:23", + "nodes": [], "functionSelector": "017e7e58", "implemented": false, "kind": "function", @@ -353,23 +566,23 @@ "name": "feeTo", "nameLocation": "211:5:23", "parameters": { - "id": 29164, + "id": 29179, "nodeType": "ParameterList", "parameters": [], "src": "216:2:23" }, "returnParameters": { - "id": 29167, + "id": 29182, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29166, + "id": 29181, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29168, + "scope": 29183, "src": "242:7:23", "stateVariable": false, "storageLocation": "default", @@ -378,7 +591,7 @@ "typeString": "address" }, "typeName": { - "id": 29165, + "id": 29180, "name": "address", "nodeType": "ElementaryTypeName", "src": "242:7:23", @@ -393,15 +606,16 @@ ], "src": "241:9:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29173, + "id": 29188, "nodeType": "FunctionDefinition", "src": "257:55:23", + "nodes": [], "functionSelector": "094b7415", "implemented": false, "kind": "function", @@ -409,23 +623,23 @@ "name": "feeToSetter", "nameLocation": "266:11:23", "parameters": { - "id": 29169, + "id": 29184, "nodeType": "ParameterList", "parameters": [], "src": "277:2:23" }, "returnParameters": { - "id": 29172, + "id": 29187, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29171, + "id": 29186, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29173, + "scope": 29188, "src": "303:7:23", "stateVariable": false, "storageLocation": "default", @@ -434,7 +648,7 @@ "typeString": "address" }, "typeName": { - "id": 29170, + "id": 29185, "name": "address", "nodeType": "ElementaryTypeName", "src": "303:7:23", @@ -449,15 +663,16 @@ ], "src": "302:9:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29182, + "id": 29197, "nodeType": "FunctionDefinition", "src": "320:86:23", + "nodes": [], "functionSelector": "e6a43905", "implemented": false, "kind": "function", @@ -465,17 +680,17 @@ "name": "getPair", "nameLocation": "329:7:23", "parameters": { - "id": 29178, + "id": 29193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29175, + "id": 29190, "mutability": "mutable", "name": "tokenA", "nameLocation": "345:6:23", "nodeType": "VariableDeclaration", - "scope": 29182, + "scope": 29197, "src": "337:14:23", "stateVariable": false, "storageLocation": "default", @@ -484,7 +699,7 @@ "typeString": "address" }, "typeName": { - "id": 29174, + "id": 29189, "name": "address", "nodeType": "ElementaryTypeName", "src": "337:7:23", @@ -498,12 +713,12 @@ }, { "constant": false, - "id": 29177, + "id": 29192, "mutability": "mutable", "name": "tokenB", "nameLocation": "361:6:23", "nodeType": "VariableDeclaration", - "scope": 29182, + "scope": 29197, "src": "353:14:23", "stateVariable": false, "storageLocation": "default", @@ -512,7 +727,7 @@ "typeString": "address" }, "typeName": { - "id": 29176, + "id": 29191, "name": "address", "nodeType": "ElementaryTypeName", "src": "353:7:23", @@ -528,17 +743,17 @@ "src": "336:32:23" }, "returnParameters": { - "id": 29181, + "id": 29196, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29180, + "id": 29195, "mutability": "mutable", "name": "pair", "nameLocation": "400:4:23", "nodeType": "VariableDeclaration", - "scope": 29182, + "scope": 29197, "src": "392:12:23", "stateVariable": false, "storageLocation": "default", @@ -547,7 +762,7 @@ "typeString": "address" }, "typeName": { - "id": 29179, + "id": 29194, "name": "address", "nodeType": "ElementaryTypeName", "src": "392:7:23", @@ -562,15 +777,16 @@ ], "src": "391:14:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29189, + "id": 29204, "nodeType": "FunctionDefinition", "src": "412:61:23", + "nodes": [], "functionSelector": "1e3dd18b", "implemented": false, "kind": "function", @@ -578,17 +794,17 @@ "name": "allPairs", "nameLocation": "421:8:23", "parameters": { - "id": 29185, + "id": 29200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29184, + "id": 29199, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29189, + "scope": 29204, "src": "430:4:23", "stateVariable": false, "storageLocation": "default", @@ -597,7 +813,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29183, + "id": 29198, "name": "uint", "nodeType": "ElementaryTypeName", "src": "430:4:23", @@ -612,17 +828,17 @@ "src": "429:6:23" }, "returnParameters": { - "id": 29188, + "id": 29203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29187, + "id": 29202, "mutability": "mutable", "name": "pair", "nameLocation": "467:4:23", "nodeType": "VariableDeclaration", - "scope": 29189, + "scope": 29204, "src": "459:12:23", "stateVariable": false, "storageLocation": "default", @@ -631,7 +847,7 @@ "typeString": "address" }, "typeName": { - "id": 29186, + "id": 29201, "name": "address", "nodeType": "ElementaryTypeName", "src": "459:7:23", @@ -646,15 +862,16 @@ ], "src": "458:14:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29194, + "id": 29209, "nodeType": "FunctionDefinition", "src": "479:55:23", + "nodes": [], "functionSelector": "574f2ba3", "implemented": false, "kind": "function", @@ -662,23 +879,23 @@ "name": "allPairsLength", "nameLocation": "488:14:23", "parameters": { - "id": 29190, + "id": 29205, "nodeType": "ParameterList", "parameters": [], "src": "502:2:23" }, "returnParameters": { - "id": 29193, + "id": 29208, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29192, + "id": 29207, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29194, + "scope": 29209, "src": "528:4:23", "stateVariable": false, "storageLocation": "default", @@ -687,7 +904,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29191, + "id": 29206, "name": "uint", "nodeType": "ElementaryTypeName", "src": "528:4:23", @@ -701,15 +918,16 @@ ], "src": "527:6:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29203, + "id": 29218, "nodeType": "FunctionDefinition", "src": "542:84:23", + "nodes": [], "functionSelector": "c9c65396", "implemented": false, "kind": "function", @@ -717,17 +935,17 @@ "name": "createPair", "nameLocation": "551:10:23", "parameters": { - "id": 29199, + "id": 29214, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29196, + "id": 29211, "mutability": "mutable", "name": "tokenA", "nameLocation": "570:6:23", "nodeType": "VariableDeclaration", - "scope": 29203, + "scope": 29218, "src": "562:14:23", "stateVariable": false, "storageLocation": "default", @@ -736,7 +954,7 @@ "typeString": "address" }, "typeName": { - "id": 29195, + "id": 29210, "name": "address", "nodeType": "ElementaryTypeName", "src": "562:7:23", @@ -750,12 +968,12 @@ }, { "constant": false, - "id": 29198, + "id": 29213, "mutability": "mutable", "name": "tokenB", "nameLocation": "586:6:23", "nodeType": "VariableDeclaration", - "scope": 29203, + "scope": 29218, "src": "578:14:23", "stateVariable": false, "storageLocation": "default", @@ -764,7 +982,7 @@ "typeString": "address" }, "typeName": { - "id": 29197, + "id": 29212, "name": "address", "nodeType": "ElementaryTypeName", "src": "578:7:23", @@ -780,17 +998,17 @@ "src": "561:32:23" }, "returnParameters": { - "id": 29202, + "id": 29217, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29201, + "id": 29216, "mutability": "mutable", "name": "pair", "nameLocation": "620:4:23", "nodeType": "VariableDeclaration", - "scope": 29203, + "scope": 29218, "src": "612:12:23", "stateVariable": false, "storageLocation": "default", @@ -799,7 +1017,7 @@ "typeString": "address" }, "typeName": { - "id": 29200, + "id": 29215, "name": "address", "nodeType": "ElementaryTypeName", "src": "612:7:23", @@ -814,15 +1032,16 @@ ], "src": "611:14:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29208, + "id": 29223, "nodeType": "FunctionDefinition", "src": "634:36:23", + "nodes": [], "functionSelector": "f46901ed", "implemented": false, "kind": "function", @@ -830,17 +1049,17 @@ "name": "setFeeTo", "nameLocation": "643:8:23", "parameters": { - "id": 29206, + "id": 29221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29205, + "id": 29220, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29208, + "scope": 29223, "src": "652:7:23", "stateVariable": false, "storageLocation": "default", @@ -849,7 +1068,7 @@ "typeString": "address" }, "typeName": { - "id": 29204, + "id": 29219, "name": "address", "nodeType": "ElementaryTypeName", "src": "652:7:23", @@ -865,20 +1084,21 @@ "src": "651:9:23" }, "returnParameters": { - "id": 29207, + "id": 29222, "nodeType": "ParameterList", "parameters": [], "src": "669:0:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29213, + "id": 29228, "nodeType": "FunctionDefinition", "src": "676:42:23", + "nodes": [], "functionSelector": "a2e74af6", "implemented": false, "kind": "function", @@ -886,17 +1106,17 @@ "name": "setFeeToSetter", "nameLocation": "685:14:23", "parameters": { - "id": 29211, + "id": 29226, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29210, + "id": 29225, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29213, + "scope": 29228, "src": "700:7:23", "stateVariable": false, "storageLocation": "default", @@ -905,7 +1125,7 @@ "typeString": "address" }, "typeName": { - "id": 29209, + "id": 29224, "name": "address", "nodeType": "ElementaryTypeName", "src": "700:7:23", @@ -921,12 +1141,12 @@ "src": "699:9:23" }, "returnParameters": { - "id": 29212, + "id": 29227, "nodeType": "ParameterList", "parameters": [], "src": "717:0:23" }, - "scope": 29214, + "scope": 29229, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -939,11 +1159,11 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29214 + 29229 ], "name": "IUniswapV2Factory", "nameLocation": "83:17:23", - "scope": 29215, + "scope": 29230, "usedErrors": [] } ], diff --git a/out/IUniswapV2Pair.sol/IUniswapV2Pair.json b/out/IUniswapV2Pair.sol/IUniswapV2Pair.json index 866a49a..c124e36 100644 --- a/out/IUniswapV2Pair.sol/IUniswapV2Pair.json +++ b/out/IUniswapV2Pair.sol/IUniswapV2Pair.json @@ -691,21 +691,717 @@ "transfer(address,uint256)": "a9059cbb", "transferFrom(address,address,uint256)": "23b872dd" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount0\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount1\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"Burn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount0\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount1\",\"type\":\"uint256\"}],\"name\":\"Mint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount0In\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount1In\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount0Out\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount1Out\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"Swap\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint112\",\"name\":\"reserve0\",\"type\":\"uint112\"},{\"indexed\":false,\"internalType\":\"uint112\",\"name\":\"reserve1\",\"type\":\"uint112\"}],\"name\":\"Sync\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MINIMUM_LIQUIDITY\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PERMIT_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"burn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount1\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"factory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getReserves\",\"outputs\":[{\"internalType\":\"uint112\",\"name\":\"reserve0\",\"type\":\"uint112\"},{\"internalType\":\"uint112\",\"name\":\"reserve1\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"blockTimestampLast\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"kLast\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"price0CumulativeLast\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"price1CumulativeLast\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"skim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount0Out\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount1Out\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"swap\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sync\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"token0\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"token1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IUniswapV2Pair.sol\":\"IUniswapV2Pair\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/IUniswapV2Pair.sol\":{\"keccak256\":\"0x858b52b38da8da9e673a9c3f6797548ec4922c3c08e18d20433ea2c4cb3974ab\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://ad35632fec73ce23c7c0f0ee5bb17520ff704c595383f55d65f6727ad8414273\",\"dweb:/ipfs/QmTmDxCR1MVBeAvF7BiEdJpQ4z3LApQfBk9Gyv45jfHMd2\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "spender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Approval", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount0", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "amount1", + "type": "uint256", + "indexed": false + }, + { + "internalType": "address", + "name": "to", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "Burn", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount0", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "amount1", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Mint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount0In", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "amount1In", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "amount0Out", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "amount1Out", + "type": "uint256", + "indexed": false + }, + { + "internalType": "address", + "name": "to", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "Swap", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint112", + "name": "reserve0", + "type": "uint112", + "indexed": false + }, + { + "internalType": "uint112", + "name": "reserve1", + "type": "uint112", + "indexed": false + } + ], + "type": "event", + "name": "Sync", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "to", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Transfer", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "DOMAIN_SEPARATOR", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "MINIMUM_LIQUIDITY", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "PERMIT_TYPEHASH", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "burn", + "outputs": [ + { + "internalType": "uint256", + "name": "amount0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount1", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "factory", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "getReserves", + "outputs": [ + { + "internalType": "uint112", + "name": "reserve0", + "type": "uint112" + }, + { + "internalType": "uint112", + "name": "reserve1", + "type": "uint112" + }, + { + "internalType": "uint32", + "name": "blockTimestampLast", + "type": "uint32" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "initialize" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "kLast", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "mint", + "outputs": [ + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "permit" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "price0CumulativeLast", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "price1CumulativeLast", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "skim" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount0Out", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount1Out", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swap" + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "sync" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "token0", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "token1", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/IUniswapV2Pair.sol": "IUniswapV2Pair" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/IUniswapV2Pair.sol": { + "keccak256": "0x858b52b38da8da9e673a9c3f6797548ec4922c3c08e18d20433ea2c4cb3974ab", + "urls": [ + "bzz-raw://ad35632fec73ce23c7c0f0ee5bb17520ff704c595383f55d65f6727ad8414273", + "dweb:/ipfs/QmTmDxCR1MVBeAvF7BiEdJpQ4z3LApQfBk9Gyv45jfHMd2" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/IUniswapV2Pair.sol", - "id": 29457, + "id": 29472, "exportedSymbols": { "IUniswapV2Pair": [ - 29456 + 29471 ] }, "nodeType": "SourceUnit", "src": "46:2473:24", "nodes": [ { - "id": 29216, + "id": 29231, "nodeType": "PragmaDirective", "src": "46:23:24", + "nodes": [], "literals": [ "solidity", "^", @@ -714,31 +1410,32 @@ ] }, { - "id": 29456, + "id": 29471, "nodeType": "ContractDefinition", "src": "73:2446:24", "nodes": [ { - "id": 29224, + "id": 29239, "nodeType": "EventDefinition", "src": "105:75:24", + "nodes": [], "anonymous": false, "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", "name": "Approval", "nameLocation": "111:8:24", "parameters": { - "id": 29223, + "id": 29238, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29218, + "id": 29233, "indexed": true, "mutability": "mutable", "name": "owner", "nameLocation": "136:5:24", "nodeType": "VariableDeclaration", - "scope": 29224, + "scope": 29239, "src": "120:21:24", "stateVariable": false, "storageLocation": "default", @@ -747,7 +1444,7 @@ "typeString": "address" }, "typeName": { - "id": 29217, + "id": 29232, "name": "address", "nodeType": "ElementaryTypeName", "src": "120:7:24", @@ -761,13 +1458,13 @@ }, { "constant": false, - "id": 29220, + "id": 29235, "indexed": true, "mutability": "mutable", "name": "spender", "nameLocation": "159:7:24", "nodeType": "VariableDeclaration", - "scope": 29224, + "scope": 29239, "src": "143:23:24", "stateVariable": false, "storageLocation": "default", @@ -776,7 +1473,7 @@ "typeString": "address" }, "typeName": { - "id": 29219, + "id": 29234, "name": "address", "nodeType": "ElementaryTypeName", "src": "143:7:24", @@ -790,13 +1487,13 @@ }, { "constant": false, - "id": 29222, + "id": 29237, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "173:5:24", "nodeType": "VariableDeclaration", - "scope": 29224, + "scope": 29239, "src": "168:10:24", "stateVariable": false, "storageLocation": "default", @@ -805,7 +1502,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29221, + "id": 29236, "name": "uint", "nodeType": "ElementaryTypeName", "src": "168:4:24", @@ -821,26 +1518,27 @@ } }, { - "id": 29232, + "id": 29247, "nodeType": "EventDefinition", "src": "186:69:24", + "nodes": [], "anonymous": false, "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", "name": "Transfer", "nameLocation": "192:8:24", "parameters": { - "id": 29231, + "id": 29246, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29226, + "id": 29241, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "217:4:24", "nodeType": "VariableDeclaration", - "scope": 29232, + "scope": 29247, "src": "201:20:24", "stateVariable": false, "storageLocation": "default", @@ -849,7 +1547,7 @@ "typeString": "address" }, "typeName": { - "id": 29225, + "id": 29240, "name": "address", "nodeType": "ElementaryTypeName", "src": "201:7:24", @@ -863,13 +1561,13 @@ }, { "constant": false, - "id": 29228, + "id": 29243, "indexed": true, "mutability": "mutable", "name": "to", "nameLocation": "239:2:24", "nodeType": "VariableDeclaration", - "scope": 29232, + "scope": 29247, "src": "223:18:24", "stateVariable": false, "storageLocation": "default", @@ -878,7 +1576,7 @@ "typeString": "address" }, "typeName": { - "id": 29227, + "id": 29242, "name": "address", "nodeType": "ElementaryTypeName", "src": "223:7:24", @@ -892,13 +1590,13 @@ }, { "constant": false, - "id": 29230, + "id": 29245, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "248:5:24", "nodeType": "VariableDeclaration", - "scope": 29232, + "scope": 29247, "src": "243:10:24", "stateVariable": false, "storageLocation": "default", @@ -907,7 +1605,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29229, + "id": 29244, "name": "uint", "nodeType": "ElementaryTypeName", "src": "243:4:24", @@ -923,9 +1621,10 @@ } }, { - "id": 29237, + "id": 29252, "nodeType": "FunctionDefinition", "src": "263:54:24", + "nodes": [], "functionSelector": "06fdde03", "implemented": false, "kind": "function", @@ -933,23 +1632,23 @@ "name": "name", "nameLocation": "272:4:24", "parameters": { - "id": 29233, + "id": 29248, "nodeType": "ParameterList", "parameters": [], "src": "276:2:24" }, "returnParameters": { - "id": 29236, + "id": 29251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29235, + "id": 29250, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29237, + "scope": 29252, "src": "302:13:24", "stateVariable": false, "storageLocation": "memory", @@ -958,7 +1657,7 @@ "typeString": "string" }, "typeName": { - "id": 29234, + "id": 29249, "name": "string", "nodeType": "ElementaryTypeName", "src": "302:6:24", @@ -972,15 +1671,16 @@ ], "src": "301:15:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29242, + "id": 29257, "nodeType": "FunctionDefinition", "src": "323:56:24", + "nodes": [], "functionSelector": "95d89b41", "implemented": false, "kind": "function", @@ -988,23 +1688,23 @@ "name": "symbol", "nameLocation": "332:6:24", "parameters": { - "id": 29238, + "id": 29253, "nodeType": "ParameterList", "parameters": [], "src": "338:2:24" }, "returnParameters": { - "id": 29241, + "id": 29256, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29240, + "id": 29255, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29242, + "scope": 29257, "src": "364:13:24", "stateVariable": false, "storageLocation": "memory", @@ -1013,7 +1713,7 @@ "typeString": "string" }, "typeName": { - "id": 29239, + "id": 29254, "name": "string", "nodeType": "ElementaryTypeName", "src": "364:6:24", @@ -1027,15 +1727,16 @@ ], "src": "363:15:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29247, + "id": 29262, "nodeType": "FunctionDefinition", "src": "385:50:24", + "nodes": [], "functionSelector": "313ce567", "implemented": false, "kind": "function", @@ -1043,23 +1744,23 @@ "name": "decimals", "nameLocation": "394:8:24", "parameters": { - "id": 29243, + "id": 29258, "nodeType": "ParameterList", "parameters": [], "src": "402:2:24" }, "returnParameters": { - "id": 29246, + "id": 29261, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29245, + "id": 29260, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29247, + "scope": 29262, "src": "428:5:24", "stateVariable": false, "storageLocation": "default", @@ -1068,7 +1769,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29244, + "id": 29259, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "428:5:24", @@ -1082,15 +1783,16 @@ ], "src": "427:7:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29252, + "id": 29267, "nodeType": "FunctionDefinition", "src": "441:52:24", + "nodes": [], "functionSelector": "18160ddd", "implemented": false, "kind": "function", @@ -1098,23 +1800,23 @@ "name": "totalSupply", "nameLocation": "450:11:24", "parameters": { - "id": 29248, + "id": 29263, "nodeType": "ParameterList", "parameters": [], "src": "461:2:24" }, "returnParameters": { - "id": 29251, + "id": 29266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29250, + "id": 29265, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29252, + "scope": 29267, "src": "487:4:24", "stateVariable": false, "storageLocation": "default", @@ -1123,7 +1825,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29249, + "id": 29264, "name": "uint", "nodeType": "ElementaryTypeName", "src": "487:4:24", @@ -1137,15 +1839,16 @@ ], "src": "486:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29259, + "id": 29274, "nodeType": "FunctionDefinition", "src": "499:63:24", + "nodes": [], "functionSelector": "70a08231", "implemented": false, "kind": "function", @@ -1153,17 +1856,17 @@ "name": "balanceOf", "nameLocation": "508:9:24", "parameters": { - "id": 29255, + "id": 29270, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29254, + "id": 29269, "mutability": "mutable", "name": "owner", "nameLocation": "526:5:24", "nodeType": "VariableDeclaration", - "scope": 29259, + "scope": 29274, "src": "518:13:24", "stateVariable": false, "storageLocation": "default", @@ -1172,7 +1875,7 @@ "typeString": "address" }, "typeName": { - "id": 29253, + "id": 29268, "name": "address", "nodeType": "ElementaryTypeName", "src": "518:7:24", @@ -1188,17 +1891,17 @@ "src": "517:15:24" }, "returnParameters": { - "id": 29258, + "id": 29273, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29257, + "id": 29272, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29259, + "scope": 29274, "src": "556:4:24", "stateVariable": false, "storageLocation": "default", @@ -1207,7 +1910,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29256, + "id": 29271, "name": "uint", "nodeType": "ElementaryTypeName", "src": "556:4:24", @@ -1221,15 +1924,16 @@ ], "src": "555:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29268, + "id": 29283, "nodeType": "FunctionDefinition", "src": "568:80:24", + "nodes": [], "functionSelector": "dd62ed3e", "implemented": false, "kind": "function", @@ -1237,17 +1941,17 @@ "name": "allowance", "nameLocation": "577:9:24", "parameters": { - "id": 29264, + "id": 29279, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29261, + "id": 29276, "mutability": "mutable", "name": "owner", "nameLocation": "595:5:24", "nodeType": "VariableDeclaration", - "scope": 29268, + "scope": 29283, "src": "587:13:24", "stateVariable": false, "storageLocation": "default", @@ -1256,7 +1960,7 @@ "typeString": "address" }, "typeName": { - "id": 29260, + "id": 29275, "name": "address", "nodeType": "ElementaryTypeName", "src": "587:7:24", @@ -1270,12 +1974,12 @@ }, { "constant": false, - "id": 29263, + "id": 29278, "mutability": "mutable", "name": "spender", "nameLocation": "610:7:24", "nodeType": "VariableDeclaration", - "scope": 29268, + "scope": 29283, "src": "602:15:24", "stateVariable": false, "storageLocation": "default", @@ -1284,7 +1988,7 @@ "typeString": "address" }, "typeName": { - "id": 29262, + "id": 29277, "name": "address", "nodeType": "ElementaryTypeName", "src": "602:7:24", @@ -1300,17 +2004,17 @@ "src": "586:32:24" }, "returnParameters": { - "id": 29267, + "id": 29282, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29266, + "id": 29281, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29268, + "scope": 29283, "src": "642:4:24", "stateVariable": false, "storageLocation": "default", @@ -1319,7 +2023,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29265, + "id": 29280, "name": "uint", "nodeType": "ElementaryTypeName", "src": "642:4:24", @@ -1333,15 +2037,16 @@ ], "src": "641:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29277, + "id": 29292, "nodeType": "FunctionDefinition", "src": "656:70:24", + "nodes": [], "functionSelector": "095ea7b3", "implemented": false, "kind": "function", @@ -1349,17 +2054,17 @@ "name": "approve", "nameLocation": "665:7:24", "parameters": { - "id": 29273, + "id": 29288, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29270, + "id": 29285, "mutability": "mutable", "name": "spender", "nameLocation": "681:7:24", "nodeType": "VariableDeclaration", - "scope": 29277, + "scope": 29292, "src": "673:15:24", "stateVariable": false, "storageLocation": "default", @@ -1368,7 +2073,7 @@ "typeString": "address" }, "typeName": { - "id": 29269, + "id": 29284, "name": "address", "nodeType": "ElementaryTypeName", "src": "673:7:24", @@ -1382,12 +2087,12 @@ }, { "constant": false, - "id": 29272, + "id": 29287, "mutability": "mutable", "name": "value", "nameLocation": "695:5:24", "nodeType": "VariableDeclaration", - "scope": 29277, + "scope": 29292, "src": "690:10:24", "stateVariable": false, "storageLocation": "default", @@ -1396,7 +2101,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29271, + "id": 29286, "name": "uint", "nodeType": "ElementaryTypeName", "src": "690:4:24", @@ -1411,17 +2116,17 @@ "src": "672:29:24" }, "returnParameters": { - "id": 29276, + "id": 29291, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29275, + "id": 29290, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29277, + "scope": 29292, "src": "720:4:24", "stateVariable": false, "storageLocation": "default", @@ -1430,7 +2135,7 @@ "typeString": "bool" }, "typeName": { - "id": 29274, + "id": 29289, "name": "bool", "nodeType": "ElementaryTypeName", "src": "720:4:24", @@ -1444,15 +2149,16 @@ ], "src": "719:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29286, + "id": 29301, "nodeType": "FunctionDefinition", "src": "732:66:24", + "nodes": [], "functionSelector": "a9059cbb", "implemented": false, "kind": "function", @@ -1460,17 +2166,17 @@ "name": "transfer", "nameLocation": "741:8:24", "parameters": { - "id": 29282, + "id": 29297, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29279, + "id": 29294, "mutability": "mutable", "name": "to", "nameLocation": "758:2:24", "nodeType": "VariableDeclaration", - "scope": 29286, + "scope": 29301, "src": "750:10:24", "stateVariable": false, "storageLocation": "default", @@ -1479,7 +2185,7 @@ "typeString": "address" }, "typeName": { - "id": 29278, + "id": 29293, "name": "address", "nodeType": "ElementaryTypeName", "src": "750:7:24", @@ -1493,12 +2199,12 @@ }, { "constant": false, - "id": 29281, + "id": 29296, "mutability": "mutable", "name": "value", "nameLocation": "767:5:24", "nodeType": "VariableDeclaration", - "scope": 29286, + "scope": 29301, "src": "762:10:24", "stateVariable": false, "storageLocation": "default", @@ -1507,7 +2213,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29280, + "id": 29295, "name": "uint", "nodeType": "ElementaryTypeName", "src": "762:4:24", @@ -1522,17 +2228,17 @@ "src": "749:24:24" }, "returnParameters": { - "id": 29285, + "id": 29300, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29284, + "id": 29299, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29286, + "scope": 29301, "src": "792:4:24", "stateVariable": false, "storageLocation": "default", @@ -1541,7 +2247,7 @@ "typeString": "bool" }, "typeName": { - "id": 29283, + "id": 29298, "name": "bool", "nodeType": "ElementaryTypeName", "src": "792:4:24", @@ -1555,15 +2261,16 @@ ], "src": "791:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29297, + "id": 29312, "nodeType": "FunctionDefinition", "src": "804:84:24", + "nodes": [], "functionSelector": "23b872dd", "implemented": false, "kind": "function", @@ -1571,17 +2278,17 @@ "name": "transferFrom", "nameLocation": "813:12:24", "parameters": { - "id": 29293, + "id": 29308, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29288, + "id": 29303, "mutability": "mutable", "name": "from", "nameLocation": "834:4:24", "nodeType": "VariableDeclaration", - "scope": 29297, + "scope": 29312, "src": "826:12:24", "stateVariable": false, "storageLocation": "default", @@ -1590,7 +2297,7 @@ "typeString": "address" }, "typeName": { - "id": 29287, + "id": 29302, "name": "address", "nodeType": "ElementaryTypeName", "src": "826:7:24", @@ -1604,12 +2311,12 @@ }, { "constant": false, - "id": 29290, + "id": 29305, "mutability": "mutable", "name": "to", "nameLocation": "848:2:24", "nodeType": "VariableDeclaration", - "scope": 29297, + "scope": 29312, "src": "840:10:24", "stateVariable": false, "storageLocation": "default", @@ -1618,7 +2325,7 @@ "typeString": "address" }, "typeName": { - "id": 29289, + "id": 29304, "name": "address", "nodeType": "ElementaryTypeName", "src": "840:7:24", @@ -1632,12 +2339,12 @@ }, { "constant": false, - "id": 29292, + "id": 29307, "mutability": "mutable", "name": "value", "nameLocation": "857:5:24", "nodeType": "VariableDeclaration", - "scope": 29297, + "scope": 29312, "src": "852:10:24", "stateVariable": false, "storageLocation": "default", @@ -1646,7 +2353,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29291, + "id": 29306, "name": "uint", "nodeType": "ElementaryTypeName", "src": "852:4:24", @@ -1661,17 +2368,17 @@ "src": "825:38:24" }, "returnParameters": { - "id": 29296, + "id": 29311, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29295, + "id": 29310, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29297, + "scope": 29312, "src": "882:4:24", "stateVariable": false, "storageLocation": "default", @@ -1680,7 +2387,7 @@ "typeString": "bool" }, "typeName": { - "id": 29294, + "id": 29309, "name": "bool", "nodeType": "ElementaryTypeName", "src": "882:4:24", @@ -1694,15 +2401,16 @@ ], "src": "881:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29302, + "id": 29317, "nodeType": "FunctionDefinition", "src": "896:60:24", + "nodes": [], "functionSelector": "3644e515", "implemented": false, "kind": "function", @@ -1710,23 +2418,23 @@ "name": "DOMAIN_SEPARATOR", "nameLocation": "905:16:24", "parameters": { - "id": 29298, + "id": 29313, "nodeType": "ParameterList", "parameters": [], "src": "921:2:24" }, "returnParameters": { - "id": 29301, + "id": 29316, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29300, + "id": 29315, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29302, + "scope": 29317, "src": "947:7:24", "stateVariable": false, "storageLocation": "default", @@ -1735,7 +2443,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29299, + "id": 29314, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "947:7:24", @@ -1749,15 +2457,16 @@ ], "src": "946:9:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29307, + "id": 29322, "nodeType": "FunctionDefinition", "src": "962:59:24", + "nodes": [], "functionSelector": "30adf81f", "implemented": false, "kind": "function", @@ -1765,23 +2474,23 @@ "name": "PERMIT_TYPEHASH", "nameLocation": "971:15:24", "parameters": { - "id": 29303, + "id": 29318, "nodeType": "ParameterList", "parameters": [], "src": "986:2:24" }, "returnParameters": { - "id": 29306, + "id": 29321, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29305, + "id": 29320, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29307, + "scope": 29322, "src": "1012:7:24", "stateVariable": false, "storageLocation": "default", @@ -1790,7 +2499,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29304, + "id": 29319, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1012:7:24", @@ -1804,15 +2513,16 @@ ], "src": "1011:9:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29314, + "id": 29329, "nodeType": "FunctionDefinition", "src": "1027:60:24", + "nodes": [], "functionSelector": "7ecebe00", "implemented": false, "kind": "function", @@ -1820,17 +2530,17 @@ "name": "nonces", "nameLocation": "1036:6:24", "parameters": { - "id": 29310, + "id": 29325, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29309, + "id": 29324, "mutability": "mutable", "name": "owner", "nameLocation": "1051:5:24", "nodeType": "VariableDeclaration", - "scope": 29314, + "scope": 29329, "src": "1043:13:24", "stateVariable": false, "storageLocation": "default", @@ -1839,7 +2549,7 @@ "typeString": "address" }, "typeName": { - "id": 29308, + "id": 29323, "name": "address", "nodeType": "ElementaryTypeName", "src": "1043:7:24", @@ -1855,17 +2565,17 @@ "src": "1042:15:24" }, "returnParameters": { - "id": 29313, + "id": 29328, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29312, + "id": 29327, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29314, + "scope": 29329, "src": "1081:4:24", "stateVariable": false, "storageLocation": "default", @@ -1874,7 +2584,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29311, + "id": 29326, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1081:4:24", @@ -1888,15 +2598,16 @@ ], "src": "1080:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29331, + "id": 29346, "nodeType": "FunctionDefinition", "src": "1095:115:24", + "nodes": [], "functionSelector": "d505accf", "implemented": false, "kind": "function", @@ -1904,17 +2615,17 @@ "name": "permit", "nameLocation": "1104:6:24", "parameters": { - "id": 29329, + "id": 29344, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29316, + "id": 29331, "mutability": "mutable", "name": "owner", "nameLocation": "1119:5:24", "nodeType": "VariableDeclaration", - "scope": 29331, + "scope": 29346, "src": "1111:13:24", "stateVariable": false, "storageLocation": "default", @@ -1923,7 +2634,7 @@ "typeString": "address" }, "typeName": { - "id": 29315, + "id": 29330, "name": "address", "nodeType": "ElementaryTypeName", "src": "1111:7:24", @@ -1937,12 +2648,12 @@ }, { "constant": false, - "id": 29318, + "id": 29333, "mutability": "mutable", "name": "spender", "nameLocation": "1134:7:24", "nodeType": "VariableDeclaration", - "scope": 29331, + "scope": 29346, "src": "1126:15:24", "stateVariable": false, "storageLocation": "default", @@ -1951,7 +2662,7 @@ "typeString": "address" }, "typeName": { - "id": 29317, + "id": 29332, "name": "address", "nodeType": "ElementaryTypeName", "src": "1126:7:24", @@ -1965,12 +2676,12 @@ }, { "constant": false, - "id": 29320, + "id": 29335, "mutability": "mutable", "name": "value", "nameLocation": "1148:5:24", "nodeType": "VariableDeclaration", - "scope": 29331, + "scope": 29346, "src": "1143:10:24", "stateVariable": false, "storageLocation": "default", @@ -1979,7 +2690,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29319, + "id": 29334, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1143:4:24", @@ -1992,12 +2703,12 @@ }, { "constant": false, - "id": 29322, + "id": 29337, "mutability": "mutable", "name": "deadline", "nameLocation": "1160:8:24", "nodeType": "VariableDeclaration", - "scope": 29331, + "scope": 29346, "src": "1155:13:24", "stateVariable": false, "storageLocation": "default", @@ -2006,7 +2717,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29321, + "id": 29336, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1155:4:24", @@ -2019,12 +2730,12 @@ }, { "constant": false, - "id": 29324, + "id": 29339, "mutability": "mutable", "name": "v", "nameLocation": "1176:1:24", "nodeType": "VariableDeclaration", - "scope": 29331, + "scope": 29346, "src": "1170:7:24", "stateVariable": false, "storageLocation": "default", @@ -2033,7 +2744,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29323, + "id": 29338, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1170:5:24", @@ -2046,12 +2757,12 @@ }, { "constant": false, - "id": 29326, + "id": 29341, "mutability": "mutable", "name": "r", "nameLocation": "1187:1:24", "nodeType": "VariableDeclaration", - "scope": 29331, + "scope": 29346, "src": "1179:9:24", "stateVariable": false, "storageLocation": "default", @@ -2060,7 +2771,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29325, + "id": 29340, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1179:7:24", @@ -2073,12 +2784,12 @@ }, { "constant": false, - "id": 29328, + "id": 29343, "mutability": "mutable", "name": "s", "nameLocation": "1198:1:24", "nodeType": "VariableDeclaration", - "scope": 29331, + "scope": 29346, "src": "1190:9:24", "stateVariable": false, "storageLocation": "default", @@ -2087,7 +2798,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29327, + "id": 29342, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1190:7:24", @@ -2102,37 +2813,38 @@ "src": "1110:90:24" }, "returnParameters": { - "id": 29330, + "id": 29345, "nodeType": "ParameterList", "parameters": [], "src": "1209:0:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29339, + "id": 29354, "nodeType": "EventDefinition", "src": "1218:63:24", + "nodes": [], "anonymous": false, "eventSelector": "4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f", "name": "Mint", "nameLocation": "1224:4:24", "parameters": { - "id": 29338, + "id": 29353, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29333, + "id": 29348, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "1245:6:24", "nodeType": "VariableDeclaration", - "scope": 29339, + "scope": 29354, "src": "1229:22:24", "stateVariable": false, "storageLocation": "default", @@ -2141,7 +2853,7 @@ "typeString": "address" }, "typeName": { - "id": 29332, + "id": 29347, "name": "address", "nodeType": "ElementaryTypeName", "src": "1229:7:24", @@ -2155,13 +2867,13 @@ }, { "constant": false, - "id": 29335, + "id": 29350, "indexed": false, "mutability": "mutable", "name": "amount0", "nameLocation": "1258:7:24", "nodeType": "VariableDeclaration", - "scope": 29339, + "scope": 29354, "src": "1253:12:24", "stateVariable": false, "storageLocation": "default", @@ -2170,7 +2882,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29334, + "id": 29349, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1253:4:24", @@ -2183,13 +2895,13 @@ }, { "constant": false, - "id": 29337, + "id": 29352, "indexed": false, "mutability": "mutable", "name": "amount1", "nameLocation": "1272:7:24", "nodeType": "VariableDeclaration", - "scope": 29339, + "scope": 29354, "src": "1267:12:24", "stateVariable": false, "storageLocation": "default", @@ -2198,7 +2910,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29336, + "id": 29351, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1267:4:24", @@ -2214,26 +2926,27 @@ } }, { - "id": 29349, + "id": 29364, "nodeType": "EventDefinition", "src": "1287:83:24", + "nodes": [], "anonymous": false, "eventSelector": "dccd412f0b1252819cb1fd330b93224ca42612892bb3f4f789976e6d81936496", "name": "Burn", "nameLocation": "1293:4:24", "parameters": { - "id": 29348, + "id": 29363, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29341, + "id": 29356, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "1314:6:24", "nodeType": "VariableDeclaration", - "scope": 29349, + "scope": 29364, "src": "1298:22:24", "stateVariable": false, "storageLocation": "default", @@ -2242,7 +2955,7 @@ "typeString": "address" }, "typeName": { - "id": 29340, + "id": 29355, "name": "address", "nodeType": "ElementaryTypeName", "src": "1298:7:24", @@ -2256,13 +2969,13 @@ }, { "constant": false, - "id": 29343, + "id": 29358, "indexed": false, "mutability": "mutable", "name": "amount0", "nameLocation": "1327:7:24", "nodeType": "VariableDeclaration", - "scope": 29349, + "scope": 29364, "src": "1322:12:24", "stateVariable": false, "storageLocation": "default", @@ -2271,7 +2984,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29342, + "id": 29357, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1322:4:24", @@ -2284,13 +2997,13 @@ }, { "constant": false, - "id": 29345, + "id": 29360, "indexed": false, "mutability": "mutable", "name": "amount1", "nameLocation": "1341:7:24", "nodeType": "VariableDeclaration", - "scope": 29349, + "scope": 29364, "src": "1336:12:24", "stateVariable": false, "storageLocation": "default", @@ -2299,7 +3012,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29344, + "id": 29359, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1336:4:24", @@ -2312,13 +3025,13 @@ }, { "constant": false, - "id": 29347, + "id": 29362, "indexed": true, "mutability": "mutable", "name": "to", "nameLocation": "1366:2:24", "nodeType": "VariableDeclaration", - "scope": 29349, + "scope": 29364, "src": "1350:18:24", "stateVariable": false, "storageLocation": "default", @@ -2327,7 +3040,7 @@ "typeString": "address" }, "typeName": { - "id": 29346, + "id": 29361, "name": "address", "nodeType": "ElementaryTypeName", "src": "1350:7:24", @@ -2344,26 +3057,27 @@ } }, { - "id": 29363, + "id": 29378, "nodeType": "EventDefinition", "src": "1376:182:24", + "nodes": [], "anonymous": false, "eventSelector": "d78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d822", "name": "Swap", "nameLocation": "1382:4:24", "parameters": { - "id": 29362, + "id": 29377, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29351, + "id": 29366, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "1413:6:24", "nodeType": "VariableDeclaration", - "scope": 29363, + "scope": 29378, "src": "1397:22:24", "stateVariable": false, "storageLocation": "default", @@ -2372,7 +3086,7 @@ "typeString": "address" }, "typeName": { - "id": 29350, + "id": 29365, "name": "address", "nodeType": "ElementaryTypeName", "src": "1397:7:24", @@ -2386,13 +3100,13 @@ }, { "constant": false, - "id": 29353, + "id": 29368, "indexed": false, "mutability": "mutable", "name": "amount0In", "nameLocation": "1435:9:24", "nodeType": "VariableDeclaration", - "scope": 29363, + "scope": 29378, "src": "1430:14:24", "stateVariable": false, "storageLocation": "default", @@ -2401,7 +3115,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29352, + "id": 29367, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1430:4:24", @@ -2414,13 +3128,13 @@ }, { "constant": false, - "id": 29355, + "id": 29370, "indexed": false, "mutability": "mutable", "name": "amount1In", "nameLocation": "1460:9:24", "nodeType": "VariableDeclaration", - "scope": 29363, + "scope": 29378, "src": "1455:14:24", "stateVariable": false, "storageLocation": "default", @@ -2429,7 +3143,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29354, + "id": 29369, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1455:4:24", @@ -2442,13 +3156,13 @@ }, { "constant": false, - "id": 29357, + "id": 29372, "indexed": false, "mutability": "mutable", "name": "amount0Out", "nameLocation": "1485:10:24", "nodeType": "VariableDeclaration", - "scope": 29363, + "scope": 29378, "src": "1480:15:24", "stateVariable": false, "storageLocation": "default", @@ -2457,7 +3171,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29356, + "id": 29371, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1480:4:24", @@ -2470,13 +3184,13 @@ }, { "constant": false, - "id": 29359, + "id": 29374, "indexed": false, "mutability": "mutable", "name": "amount1Out", "nameLocation": "1511:10:24", "nodeType": "VariableDeclaration", - "scope": 29363, + "scope": 29378, "src": "1506:15:24", "stateVariable": false, "storageLocation": "default", @@ -2485,7 +3199,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29358, + "id": 29373, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1506:4:24", @@ -2498,13 +3212,13 @@ }, { "constant": false, - "id": 29361, + "id": 29376, "indexed": true, "mutability": "mutable", "name": "to", "nameLocation": "1548:2:24", "nodeType": "VariableDeclaration", - "scope": 29363, + "scope": 29378, "src": "1532:18:24", "stateVariable": false, "storageLocation": "default", @@ -2513,7 +3227,7 @@ "typeString": "address" }, "typeName": { - "id": 29360, + "id": 29375, "name": "address", "nodeType": "ElementaryTypeName", "src": "1532:7:24", @@ -2530,26 +3244,27 @@ } }, { - "id": 29369, + "id": 29384, "nodeType": "EventDefinition", "src": "1564:47:24", + "nodes": [], "anonymous": false, "eventSelector": "1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1", "name": "Sync", "nameLocation": "1570:4:24", "parameters": { - "id": 29368, + "id": 29383, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29365, + "id": 29380, "indexed": false, "mutability": "mutable", "name": "reserve0", "nameLocation": "1583:8:24", "nodeType": "VariableDeclaration", - "scope": 29369, + "scope": 29384, "src": "1575:16:24", "stateVariable": false, "storageLocation": "default", @@ -2558,7 +3273,7 @@ "typeString": "uint112" }, "typeName": { - "id": 29364, + "id": 29379, "name": "uint112", "nodeType": "ElementaryTypeName", "src": "1575:7:24", @@ -2571,13 +3286,13 @@ }, { "constant": false, - "id": 29367, + "id": 29382, "indexed": false, "mutability": "mutable", "name": "reserve1", "nameLocation": "1601:8:24", "nodeType": "VariableDeclaration", - "scope": 29369, + "scope": 29384, "src": "1593:16:24", "stateVariable": false, "storageLocation": "default", @@ -2586,7 +3301,7 @@ "typeString": "uint112" }, "typeName": { - "id": 29366, + "id": 29381, "name": "uint112", "nodeType": "ElementaryTypeName", "src": "1593:7:24", @@ -2602,9 +3317,10 @@ } }, { - "id": 29374, + "id": 29389, "nodeType": "FunctionDefinition", "src": "1619:58:24", + "nodes": [], "functionSelector": "ba9a7a56", "implemented": false, "kind": "function", @@ -2612,23 +3328,23 @@ "name": "MINIMUM_LIQUIDITY", "nameLocation": "1628:17:24", "parameters": { - "id": 29370, + "id": 29385, "nodeType": "ParameterList", "parameters": [], "src": "1645:2:24" }, "returnParameters": { - "id": 29373, + "id": 29388, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29372, + "id": 29387, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29374, + "scope": 29389, "src": "1671:4:24", "stateVariable": false, "storageLocation": "default", @@ -2637,7 +3353,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29371, + "id": 29386, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1671:4:24", @@ -2651,15 +3367,16 @@ ], "src": "1670:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29379, + "id": 29394, "nodeType": "FunctionDefinition", "src": "1683:51:24", + "nodes": [], "functionSelector": "c45a0155", "implemented": false, "kind": "function", @@ -2667,23 +3384,23 @@ "name": "factory", "nameLocation": "1692:7:24", "parameters": { - "id": 29375, + "id": 29390, "nodeType": "ParameterList", "parameters": [], "src": "1699:2:24" }, "returnParameters": { - "id": 29378, + "id": 29393, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29377, + "id": 29392, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29379, + "scope": 29394, "src": "1725:7:24", "stateVariable": false, "storageLocation": "default", @@ -2692,7 +3409,7 @@ "typeString": "address" }, "typeName": { - "id": 29376, + "id": 29391, "name": "address", "nodeType": "ElementaryTypeName", "src": "1725:7:24", @@ -2707,15 +3424,16 @@ ], "src": "1724:9:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29384, + "id": 29399, "nodeType": "FunctionDefinition", "src": "1740:50:24", + "nodes": [], "functionSelector": "0dfe1681", "implemented": false, "kind": "function", @@ -2723,23 +3441,23 @@ "name": "token0", "nameLocation": "1749:6:24", "parameters": { - "id": 29380, + "id": 29395, "nodeType": "ParameterList", "parameters": [], "src": "1755:2:24" }, "returnParameters": { - "id": 29383, + "id": 29398, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29382, + "id": 29397, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29384, + "scope": 29399, "src": "1781:7:24", "stateVariable": false, "storageLocation": "default", @@ -2748,7 +3466,7 @@ "typeString": "address" }, "typeName": { - "id": 29381, + "id": 29396, "name": "address", "nodeType": "ElementaryTypeName", "src": "1781:7:24", @@ -2763,15 +3481,16 @@ ], "src": "1780:9:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29389, + "id": 29404, "nodeType": "FunctionDefinition", "src": "1796:50:24", + "nodes": [], "functionSelector": "d21220a7", "implemented": false, "kind": "function", @@ -2779,23 +3498,23 @@ "name": "token1", "nameLocation": "1805:6:24", "parameters": { - "id": 29385, + "id": 29400, "nodeType": "ParameterList", "parameters": [], "src": "1811:2:24" }, "returnParameters": { - "id": 29388, + "id": 29403, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29387, + "id": 29402, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29389, + "scope": 29404, "src": "1837:7:24", "stateVariable": false, "storageLocation": "default", @@ -2804,7 +3523,7 @@ "typeString": "address" }, "typeName": { - "id": 29386, + "id": 29401, "name": "address", "nodeType": "ElementaryTypeName", "src": "1837:7:24", @@ -2819,15 +3538,16 @@ ], "src": "1836:9:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29398, + "id": 29413, "nodeType": "FunctionDefinition", "src": "1852:109:24", + "nodes": [], "functionSelector": "0902f1ac", "implemented": false, "kind": "function", @@ -2835,23 +3555,23 @@ "name": "getReserves", "nameLocation": "1861:11:24", "parameters": { - "id": 29390, + "id": 29405, "nodeType": "ParameterList", "parameters": [], "src": "1872:2:24" }, "returnParameters": { - "id": 29397, + "id": 29412, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29392, + "id": 29407, "mutability": "mutable", "name": "reserve0", "nameLocation": "1906:8:24", "nodeType": "VariableDeclaration", - "scope": 29398, + "scope": 29413, "src": "1898:16:24", "stateVariable": false, "storageLocation": "default", @@ -2860,7 +3580,7 @@ "typeString": "uint112" }, "typeName": { - "id": 29391, + "id": 29406, "name": "uint112", "nodeType": "ElementaryTypeName", "src": "1898:7:24", @@ -2873,12 +3593,12 @@ }, { "constant": false, - "id": 29394, + "id": 29409, "mutability": "mutable", "name": "reserve1", "nameLocation": "1924:8:24", "nodeType": "VariableDeclaration", - "scope": 29398, + "scope": 29413, "src": "1916:16:24", "stateVariable": false, "storageLocation": "default", @@ -2887,7 +3607,7 @@ "typeString": "uint112" }, "typeName": { - "id": 29393, + "id": 29408, "name": "uint112", "nodeType": "ElementaryTypeName", "src": "1916:7:24", @@ -2900,12 +3620,12 @@ }, { "constant": false, - "id": 29396, + "id": 29411, "mutability": "mutable", "name": "blockTimestampLast", "nameLocation": "1941:18:24", "nodeType": "VariableDeclaration", - "scope": 29398, + "scope": 29413, "src": "1934:25:24", "stateVariable": false, "storageLocation": "default", @@ -2914,7 +3634,7 @@ "typeString": "uint32" }, "typeName": { - "id": 29395, + "id": 29410, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1934:6:24", @@ -2928,15 +3648,16 @@ ], "src": "1897:63:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29403, + "id": 29418, "nodeType": "FunctionDefinition", "src": "1967:61:24", + "nodes": [], "functionSelector": "5909c0d5", "implemented": false, "kind": "function", @@ -2944,23 +3665,23 @@ "name": "price0CumulativeLast", "nameLocation": "1976:20:24", "parameters": { - "id": 29399, + "id": 29414, "nodeType": "ParameterList", "parameters": [], "src": "1996:2:24" }, "returnParameters": { - "id": 29402, + "id": 29417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29401, + "id": 29416, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29403, + "scope": 29418, "src": "2022:4:24", "stateVariable": false, "storageLocation": "default", @@ -2969,7 +3690,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29400, + "id": 29415, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2022:4:24", @@ -2983,15 +3704,16 @@ ], "src": "2021:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29408, + "id": 29423, "nodeType": "FunctionDefinition", "src": "2034:61:24", + "nodes": [], "functionSelector": "5a3d5493", "implemented": false, "kind": "function", @@ -2999,23 +3721,23 @@ "name": "price1CumulativeLast", "nameLocation": "2043:20:24", "parameters": { - "id": 29404, + "id": 29419, "nodeType": "ParameterList", "parameters": [], "src": "2063:2:24" }, "returnParameters": { - "id": 29407, + "id": 29422, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29406, + "id": 29421, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29408, + "scope": 29423, "src": "2089:4:24", "stateVariable": false, "storageLocation": "default", @@ -3024,7 +3746,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29405, + "id": 29420, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2089:4:24", @@ -3038,15 +3760,16 @@ ], "src": "2088:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29413, + "id": 29428, "nodeType": "FunctionDefinition", "src": "2101:46:24", + "nodes": [], "functionSelector": "7464fc3d", "implemented": false, "kind": "function", @@ -3054,23 +3777,23 @@ "name": "kLast", "nameLocation": "2110:5:24", "parameters": { - "id": 29409, + "id": 29424, "nodeType": "ParameterList", "parameters": [], "src": "2115:2:24" }, "returnParameters": { - "id": 29412, + "id": 29427, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29411, + "id": 29426, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29413, + "scope": 29428, "src": "2141:4:24", "stateVariable": false, "storageLocation": "default", @@ -3079,7 +3802,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29410, + "id": 29425, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2141:4:24", @@ -3093,15 +3816,16 @@ ], "src": "2140:6:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29420, + "id": 29435, "nodeType": "FunctionDefinition", "src": "2155:60:24", + "nodes": [], "functionSelector": "6a627842", "implemented": false, "kind": "function", @@ -3109,17 +3833,17 @@ "name": "mint", "nameLocation": "2164:4:24", "parameters": { - "id": 29416, + "id": 29431, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29415, + "id": 29430, "mutability": "mutable", "name": "to", "nameLocation": "2177:2:24", "nodeType": "VariableDeclaration", - "scope": 29420, + "scope": 29435, "src": "2169:10:24", "stateVariable": false, "storageLocation": "default", @@ -3128,7 +3852,7 @@ "typeString": "address" }, "typeName": { - "id": 29414, + "id": 29429, "name": "address", "nodeType": "ElementaryTypeName", "src": "2169:7:24", @@ -3144,17 +3868,17 @@ "src": "2168:12:24" }, "returnParameters": { - "id": 29419, + "id": 29434, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29418, + "id": 29433, "mutability": "mutable", "name": "liquidity", "nameLocation": "2204:9:24", "nodeType": "VariableDeclaration", - "scope": 29420, + "scope": 29435, "src": "2199:14:24", "stateVariable": false, "storageLocation": "default", @@ -3163,7 +3887,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29417, + "id": 29432, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2199:4:24", @@ -3177,15 +3901,16 @@ ], "src": "2198:16:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29429, + "id": 29444, "nodeType": "FunctionDefinition", "src": "2221:72:24", + "nodes": [], "functionSelector": "89afcb44", "implemented": false, "kind": "function", @@ -3193,17 +3918,17 @@ "name": "burn", "nameLocation": "2230:4:24", "parameters": { - "id": 29423, + "id": 29438, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29422, + "id": 29437, "mutability": "mutable", "name": "to", "nameLocation": "2243:2:24", "nodeType": "VariableDeclaration", - "scope": 29429, + "scope": 29444, "src": "2235:10:24", "stateVariable": false, "storageLocation": "default", @@ -3212,7 +3937,7 @@ "typeString": "address" }, "typeName": { - "id": 29421, + "id": 29436, "name": "address", "nodeType": "ElementaryTypeName", "src": "2235:7:24", @@ -3228,17 +3953,17 @@ "src": "2234:12:24" }, "returnParameters": { - "id": 29428, + "id": 29443, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29425, + "id": 29440, "mutability": "mutable", "name": "amount0", "nameLocation": "2270:7:24", "nodeType": "VariableDeclaration", - "scope": 29429, + "scope": 29444, "src": "2265:12:24", "stateVariable": false, "storageLocation": "default", @@ -3247,7 +3972,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29424, + "id": 29439, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2265:4:24", @@ -3260,12 +3985,12 @@ }, { "constant": false, - "id": 29427, + "id": 29442, "mutability": "mutable", "name": "amount1", "nameLocation": "2284:7:24", "nodeType": "VariableDeclaration", - "scope": 29429, + "scope": 29444, "src": "2279:12:24", "stateVariable": false, "storageLocation": "default", @@ -3274,7 +3999,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29426, + "id": 29441, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2279:4:24", @@ -3288,15 +4013,16 @@ ], "src": "2264:28:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29440, + "id": 29455, "nodeType": "FunctionDefinition", "src": "2299:90:24", + "nodes": [], "functionSelector": "022c0d9f", "implemented": false, "kind": "function", @@ -3304,17 +4030,17 @@ "name": "swap", "nameLocation": "2308:4:24", "parameters": { - "id": 29438, + "id": 29453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29431, + "id": 29446, "mutability": "mutable", "name": "amount0Out", "nameLocation": "2318:10:24", "nodeType": "VariableDeclaration", - "scope": 29440, + "scope": 29455, "src": "2313:15:24", "stateVariable": false, "storageLocation": "default", @@ -3323,7 +4049,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29430, + "id": 29445, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2313:4:24", @@ -3336,12 +4062,12 @@ }, { "constant": false, - "id": 29433, + "id": 29448, "mutability": "mutable", "name": "amount1Out", "nameLocation": "2335:10:24", "nodeType": "VariableDeclaration", - "scope": 29440, + "scope": 29455, "src": "2330:15:24", "stateVariable": false, "storageLocation": "default", @@ -3350,7 +4076,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29432, + "id": 29447, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2330:4:24", @@ -3363,12 +4089,12 @@ }, { "constant": false, - "id": 29435, + "id": 29450, "mutability": "mutable", "name": "to", "nameLocation": "2355:2:24", "nodeType": "VariableDeclaration", - "scope": 29440, + "scope": 29455, "src": "2347:10:24", "stateVariable": false, "storageLocation": "default", @@ -3377,7 +4103,7 @@ "typeString": "address" }, "typeName": { - "id": 29434, + "id": 29449, "name": "address", "nodeType": "ElementaryTypeName", "src": "2347:7:24", @@ -3391,12 +4117,12 @@ }, { "constant": false, - "id": 29437, + "id": 29452, "mutability": "mutable", "name": "data", "nameLocation": "2374:4:24", "nodeType": "VariableDeclaration", - "scope": 29440, + "scope": 29455, "src": "2359:19:24", "stateVariable": false, "storageLocation": "calldata", @@ -3405,7 +4131,7 @@ "typeString": "bytes" }, "typeName": { - "id": 29436, + "id": 29451, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2359:5:24", @@ -3420,20 +4146,21 @@ "src": "2312:67:24" }, "returnParameters": { - "id": 29439, + "id": 29454, "nodeType": "ParameterList", "parameters": [], "src": "2388:0:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29445, + "id": 29460, "nodeType": "FunctionDefinition", "src": "2395:35:24", + "nodes": [], "functionSelector": "bc25cf77", "implemented": false, "kind": "function", @@ -3441,17 +4168,17 @@ "name": "skim", "nameLocation": "2404:4:24", "parameters": { - "id": 29443, + "id": 29458, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29442, + "id": 29457, "mutability": "mutable", "name": "to", "nameLocation": "2417:2:24", "nodeType": "VariableDeclaration", - "scope": 29445, + "scope": 29460, "src": "2409:10:24", "stateVariable": false, "storageLocation": "default", @@ -3460,7 +4187,7 @@ "typeString": "address" }, "typeName": { - "id": 29441, + "id": 29456, "name": "address", "nodeType": "ElementaryTypeName", "src": "2409:7:24", @@ -3476,20 +4203,21 @@ "src": "2408:12:24" }, "returnParameters": { - "id": 29444, + "id": 29459, "nodeType": "ParameterList", "parameters": [], "src": "2429:0:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29448, + "id": 29463, "nodeType": "FunctionDefinition", "src": "2436:25:24", + "nodes": [], "functionSelector": "fff6cae9", "implemented": false, "kind": "function", @@ -3497,26 +4225,27 @@ "name": "sync", "nameLocation": "2445:4:24", "parameters": { - "id": 29446, + "id": 29461, "nodeType": "ParameterList", "parameters": [], "src": "2449:2:24" }, "returnParameters": { - "id": 29447, + "id": 29462, "nodeType": "ParameterList", "parameters": [], "src": "2460:0:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29455, + "id": 29470, "nodeType": "FunctionDefinition", "src": "2469:47:24", + "nodes": [], "functionSelector": "485cc955", "implemented": false, "kind": "function", @@ -3524,17 +4253,17 @@ "name": "initialize", "nameLocation": "2478:10:24", "parameters": { - "id": 29453, + "id": 29468, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29450, + "id": 29465, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29455, + "scope": 29470, "src": "2489:7:24", "stateVariable": false, "storageLocation": "default", @@ -3543,7 +4272,7 @@ "typeString": "address" }, "typeName": { - "id": 29449, + "id": 29464, "name": "address", "nodeType": "ElementaryTypeName", "src": "2489:7:24", @@ -3557,12 +4286,12 @@ }, { "constant": false, - "id": 29452, + "id": 29467, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29455, + "scope": 29470, "src": "2498:7:24", "stateVariable": false, "storageLocation": "default", @@ -3571,7 +4300,7 @@ "typeString": "address" }, "typeName": { - "id": 29451, + "id": 29466, "name": "address", "nodeType": "ElementaryTypeName", "src": "2498:7:24", @@ -3587,12 +4316,12 @@ "src": "2488:18:24" }, "returnParameters": { - "id": 29454, + "id": 29469, "nodeType": "ParameterList", "parameters": [], "src": "2515:0:24" }, - "scope": 29456, + "scope": 29471, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -3605,11 +4334,11 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29456 + 29471 ], "name": "IUniswapV2Pair", "nameLocation": "83:14:24", - "scope": 29457, + "scope": 29472, "usedErrors": [] } ], diff --git a/out/IUniswapV2Router.sol/IUniswapV2Router01.json b/out/IUniswapV2Router.sol/IUniswapV2Router01.json index 6d93c0e..588d81e 100644 --- a/out/IUniswapV2Router.sol/IUniswapV2Router01.json +++ b/out/IUniswapV2Router.sol/IUniswapV2Router01.json @@ -781,24 +781,823 @@ "swapTokensForExactETH(uint256,uint256,address[],address,uint256)": "4a25d94a", "swapTokensForExactTokens(uint256,uint256,address[],address,uint256)": "8803dbee" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"WETH\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amountADesired\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBDesired\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountAMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"addLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenDesired\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"addLiquidityETH\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountToken\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"factory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveOut\",\"type\":\"uint256\"}],\"name\":\"getAmountIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveOut\",\"type\":\"uint256\"}],\"name\":\"getAmountOut\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"}],\"name\":\"getAmountsIn\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"}],\"name\":\"getAmountsOut\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveB\",\"type\":\"uint256\"}],\"name\":\"quote\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountAMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"removeLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"removeLiquidityETH\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountToken\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"approveMax\",\"type\":\"bool\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"removeLiquidityETHWithPermit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountToken\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountAMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"approveMax\",\"type\":\"bool\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"removeLiquidityWithPermit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapETHForExactTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactETHForTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactTokensForETH\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactTokensForTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountInMax\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapTokensForExactETH\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountInMax\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapTokensForExactTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IUniswapV2Router.sol\":\"IUniswapV2Router01\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/IUniswapV2Router.sol\":{\"keccak256\":\"0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee\",\"dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "WETH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountADesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "addLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountTokenDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "addLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "factory", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "getAmountIn", + "outputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "getAmountOut", + "outputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getAmountsIn", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getAmountsOut", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveB", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "quote", + "outputs": [ + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityETHWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "swapETHForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "swapExactETHForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapExactTokensForETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapExactTokensForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapTokensForExactETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapTokensForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/IUniswapV2Router.sol": "IUniswapV2Router01" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/IUniswapV2Router.sol": { + "keccak256": "0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4", + "urls": [ + "bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee", + "dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/IUniswapV2Router.sol", - "id": 29850, + "id": 29865, "exportedSymbols": { "IUniswapV2Router01": [ - 29764 + 29779 ], "IUniswapV2Router02": [ - 29849 + 29864 ] }, "nodeType": "SourceUnit", "src": "46:4884:25", "nodes": [ { - "id": 29458, + "id": 29473, "nodeType": "PragmaDirective", "src": "46:23:25", + "nodes": [], "literals": [ "solidity", "^", @@ -807,14 +1606,15 @@ ] }, { - "id": 29764, + "id": 29779, "nodeType": "ContractDefinition", "src": "73:3591:25", "nodes": [ { - "id": 29463, + "id": 29478, "nodeType": "FunctionDefinition", "src": "109:51:25", + "nodes": [], "functionSelector": "c45a0155", "implemented": false, "kind": "function", @@ -822,23 +1622,23 @@ "name": "factory", "nameLocation": "118:7:25", "parameters": { - "id": 29459, + "id": 29474, "nodeType": "ParameterList", "parameters": [], "src": "125:2:25" }, "returnParameters": { - "id": 29462, + "id": 29477, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29461, + "id": 29476, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29463, + "scope": 29478, "src": "151:7:25", "stateVariable": false, "storageLocation": "default", @@ -847,7 +1647,7 @@ "typeString": "address" }, "typeName": { - "id": 29460, + "id": 29475, "name": "address", "nodeType": "ElementaryTypeName", "src": "151:7:25", @@ -862,15 +1662,16 @@ ], "src": "150:9:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29468, + "id": 29483, "nodeType": "FunctionDefinition", "src": "166:48:25", + "nodes": [], "functionSelector": "ad5c4648", "implemented": false, "kind": "function", @@ -878,23 +1679,23 @@ "name": "WETH", "nameLocation": "175:4:25", "parameters": { - "id": 29464, + "id": 29479, "nodeType": "ParameterList", "parameters": [], "src": "179:2:25" }, "returnParameters": { - "id": 29467, + "id": 29482, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29466, + "id": 29481, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29468, + "scope": 29483, "src": "205:7:25", "stateVariable": false, "storageLocation": "default", @@ -903,7 +1704,7 @@ "typeString": "address" }, "typeName": { - "id": 29465, + "id": 29480, "name": "address", "nodeType": "ElementaryTypeName", "src": "205:7:25", @@ -918,15 +1719,16 @@ ], "src": "204:9:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29493, + "id": 29508, "nodeType": "FunctionDefinition", "src": "222:298:25", + "nodes": [], "functionSelector": "e8e33700", "implemented": false, "kind": "function", @@ -934,17 +1736,17 @@ "name": "addLiquidity", "nameLocation": "231:12:25", "parameters": { - "id": 29485, + "id": 29500, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29470, + "id": 29485, "mutability": "mutable", "name": "tokenA", "nameLocation": "262:6:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "254:14:25", "stateVariable": false, "storageLocation": "default", @@ -953,7 +1755,7 @@ "typeString": "address" }, "typeName": { - "id": 29469, + "id": 29484, "name": "address", "nodeType": "ElementaryTypeName", "src": "254:7:25", @@ -967,12 +1769,12 @@ }, { "constant": false, - "id": 29472, + "id": 29487, "mutability": "mutable", "name": "tokenB", "nameLocation": "287:6:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "279:14:25", "stateVariable": false, "storageLocation": "default", @@ -981,7 +1783,7 @@ "typeString": "address" }, "typeName": { - "id": 29471, + "id": 29486, "name": "address", "nodeType": "ElementaryTypeName", "src": "279:7:25", @@ -995,12 +1797,12 @@ }, { "constant": false, - "id": 29474, + "id": 29489, "mutability": "mutable", "name": "amountADesired", "nameLocation": "309:14:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "304:19:25", "stateVariable": false, "storageLocation": "default", @@ -1009,7 +1811,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29473, + "id": 29488, "name": "uint", "nodeType": "ElementaryTypeName", "src": "304:4:25", @@ -1022,12 +1824,12 @@ }, { "constant": false, - "id": 29476, + "id": 29491, "mutability": "mutable", "name": "amountBDesired", "nameLocation": "339:14:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "334:19:25", "stateVariable": false, "storageLocation": "default", @@ -1036,7 +1838,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29475, + "id": 29490, "name": "uint", "nodeType": "ElementaryTypeName", "src": "334:4:25", @@ -1049,12 +1851,12 @@ }, { "constant": false, - "id": 29478, + "id": 29493, "mutability": "mutable", "name": "amountAMin", "nameLocation": "369:10:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "364:15:25", "stateVariable": false, "storageLocation": "default", @@ -1063,7 +1865,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29477, + "id": 29492, "name": "uint", "nodeType": "ElementaryTypeName", "src": "364:4:25", @@ -1076,12 +1878,12 @@ }, { "constant": false, - "id": 29480, + "id": 29495, "mutability": "mutable", "name": "amountBMin", "nameLocation": "395:10:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "390:15:25", "stateVariable": false, "storageLocation": "default", @@ -1090,7 +1892,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29479, + "id": 29494, "name": "uint", "nodeType": "ElementaryTypeName", "src": "390:4:25", @@ -1103,12 +1905,12 @@ }, { "constant": false, - "id": 29482, + "id": 29497, "mutability": "mutable", "name": "to", "nameLocation": "424:2:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "416:10:25", "stateVariable": false, "storageLocation": "default", @@ -1117,7 +1919,7 @@ "typeString": "address" }, "typeName": { - "id": 29481, + "id": 29496, "name": "address", "nodeType": "ElementaryTypeName", "src": "416:7:25", @@ -1131,12 +1933,12 @@ }, { "constant": false, - "id": 29484, + "id": 29499, "mutability": "mutable", "name": "deadline", "nameLocation": "442:8:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "437:13:25", "stateVariable": false, "storageLocation": "default", @@ -1145,7 +1947,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29483, + "id": 29498, "name": "uint", "nodeType": "ElementaryTypeName", "src": "437:4:25", @@ -1160,17 +1962,17 @@ "src": "243:214:25" }, "returnParameters": { - "id": 29492, + "id": 29507, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29487, + "id": 29502, "mutability": "mutable", "name": "amountA", "nameLocation": "481:7:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "476:12:25", "stateVariable": false, "storageLocation": "default", @@ -1179,7 +1981,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29486, + "id": 29501, "name": "uint", "nodeType": "ElementaryTypeName", "src": "476:4:25", @@ -1192,12 +1994,12 @@ }, { "constant": false, - "id": 29489, + "id": 29504, "mutability": "mutable", "name": "amountB", "nameLocation": "495:7:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "490:12:25", "stateVariable": false, "storageLocation": "default", @@ -1206,7 +2008,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29488, + "id": 29503, "name": "uint", "nodeType": "ElementaryTypeName", "src": "490:4:25", @@ -1219,12 +2021,12 @@ }, { "constant": false, - "id": 29491, + "id": 29506, "mutability": "mutable", "name": "liquidity", "nameLocation": "509:9:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "504:14:25", "stateVariable": false, "storageLocation": "default", @@ -1233,7 +2035,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29490, + "id": 29505, "name": "uint", "nodeType": "ElementaryTypeName", "src": "504:4:25", @@ -1247,15 +2049,16 @@ ], "src": "475:44:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29514, + "id": 29529, "nodeType": "FunctionDefinition", "src": "526:269:25", + "nodes": [], "functionSelector": "f305d719", "implemented": false, "kind": "function", @@ -1263,17 +2066,17 @@ "name": "addLiquidityETH", "nameLocation": "535:15:25", "parameters": { - "id": 29506, + "id": 29521, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29495, + "id": 29510, "mutability": "mutable", "name": "token", "nameLocation": "569:5:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "561:13:25", "stateVariable": false, "storageLocation": "default", @@ -1282,7 +2085,7 @@ "typeString": "address" }, "typeName": { - "id": 29494, + "id": 29509, "name": "address", "nodeType": "ElementaryTypeName", "src": "561:7:25", @@ -1296,12 +2099,12 @@ }, { "constant": false, - "id": 29497, + "id": 29512, "mutability": "mutable", "name": "amountTokenDesired", "nameLocation": "590:18:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "585:23:25", "stateVariable": false, "storageLocation": "default", @@ -1310,7 +2113,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29496, + "id": 29511, "name": "uint", "nodeType": "ElementaryTypeName", "src": "585:4:25", @@ -1323,12 +2126,12 @@ }, { "constant": false, - "id": 29499, + "id": 29514, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "624:14:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "619:19:25", "stateVariable": false, "storageLocation": "default", @@ -1337,7 +2140,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29498, + "id": 29513, "name": "uint", "nodeType": "ElementaryTypeName", "src": "619:4:25", @@ -1350,12 +2153,12 @@ }, { "constant": false, - "id": 29501, + "id": 29516, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "654:12:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "649:17:25", "stateVariable": false, "storageLocation": "default", @@ -1364,7 +2167,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29500, + "id": 29515, "name": "uint", "nodeType": "ElementaryTypeName", "src": "649:4:25", @@ -1377,12 +2180,12 @@ }, { "constant": false, - "id": 29503, + "id": 29518, "mutability": "mutable", "name": "to", "nameLocation": "685:2:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "677:10:25", "stateVariable": false, "storageLocation": "default", @@ -1391,7 +2194,7 @@ "typeString": "address" }, "typeName": { - "id": 29502, + "id": 29517, "name": "address", "nodeType": "ElementaryTypeName", "src": "677:7:25", @@ -1405,12 +2208,12 @@ }, { "constant": false, - "id": 29505, + "id": 29520, "mutability": "mutable", "name": "deadline", "nameLocation": "703:8:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "698:13:25", "stateVariable": false, "storageLocation": "default", @@ -1419,7 +2222,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29504, + "id": 29519, "name": "uint", "nodeType": "ElementaryTypeName", "src": "698:4:25", @@ -1434,17 +2237,17 @@ "src": "550:168:25" }, "returnParameters": { - "id": 29513, + "id": 29528, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29508, + "id": 29523, "mutability": "mutable", "name": "amountToken", "nameLocation": "750:11:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "745:16:25", "stateVariable": false, "storageLocation": "default", @@ -1453,7 +2256,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29507, + "id": 29522, "name": "uint", "nodeType": "ElementaryTypeName", "src": "745:4:25", @@ -1466,12 +2269,12 @@ }, { "constant": false, - "id": 29510, + "id": 29525, "mutability": "mutable", "name": "amountETH", "nameLocation": "768:9:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "763:14:25", "stateVariable": false, "storageLocation": "default", @@ -1480,7 +2283,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29509, + "id": 29524, "name": "uint", "nodeType": "ElementaryTypeName", "src": "763:4:25", @@ -1493,12 +2296,12 @@ }, { "constant": false, - "id": 29512, + "id": 29527, "mutability": "mutable", "name": "liquidity", "nameLocation": "784:9:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "779:14:25", "stateVariable": false, "storageLocation": "default", @@ -1507,7 +2310,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29511, + "id": 29526, "name": "uint", "nodeType": "ElementaryTypeName", "src": "779:4:25", @@ -1521,15 +2324,16 @@ ], "src": "744:50:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29535, + "id": 29550, "nodeType": "FunctionDefinition", "src": "801:250:25", + "nodes": [], "functionSelector": "baa2abde", "implemented": false, "kind": "function", @@ -1537,17 +2341,17 @@ "name": "removeLiquidity", "nameLocation": "810:15:25", "parameters": { - "id": 29529, + "id": 29544, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29516, + "id": 29531, "mutability": "mutable", "name": "tokenA", "nameLocation": "844:6:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "836:14:25", "stateVariable": false, "storageLocation": "default", @@ -1556,7 +2360,7 @@ "typeString": "address" }, "typeName": { - "id": 29515, + "id": 29530, "name": "address", "nodeType": "ElementaryTypeName", "src": "836:7:25", @@ -1570,12 +2374,12 @@ }, { "constant": false, - "id": 29518, + "id": 29533, "mutability": "mutable", "name": "tokenB", "nameLocation": "869:6:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "861:14:25", "stateVariable": false, "storageLocation": "default", @@ -1584,7 +2388,7 @@ "typeString": "address" }, "typeName": { - "id": 29517, + "id": 29532, "name": "address", "nodeType": "ElementaryTypeName", "src": "861:7:25", @@ -1598,12 +2402,12 @@ }, { "constant": false, - "id": 29520, + "id": 29535, "mutability": "mutable", "name": "liquidity", "nameLocation": "891:9:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "886:14:25", "stateVariable": false, "storageLocation": "default", @@ -1612,7 +2416,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29519, + "id": 29534, "name": "uint", "nodeType": "ElementaryTypeName", "src": "886:4:25", @@ -1625,12 +2429,12 @@ }, { "constant": false, - "id": 29522, + "id": 29537, "mutability": "mutable", "name": "amountAMin", "nameLocation": "916:10:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "911:15:25", "stateVariable": false, "storageLocation": "default", @@ -1639,7 +2443,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29521, + "id": 29536, "name": "uint", "nodeType": "ElementaryTypeName", "src": "911:4:25", @@ -1652,12 +2456,12 @@ }, { "constant": false, - "id": 29524, + "id": 29539, "mutability": "mutable", "name": "amountBMin", "nameLocation": "942:10:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "937:15:25", "stateVariable": false, "storageLocation": "default", @@ -1666,7 +2470,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29523, + "id": 29538, "name": "uint", "nodeType": "ElementaryTypeName", "src": "937:4:25", @@ -1679,12 +2483,12 @@ }, { "constant": false, - "id": 29526, + "id": 29541, "mutability": "mutable", "name": "to", "nameLocation": "971:2:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "963:10:25", "stateVariable": false, "storageLocation": "default", @@ -1693,7 +2497,7 @@ "typeString": "address" }, "typeName": { - "id": 29525, + "id": 29540, "name": "address", "nodeType": "ElementaryTypeName", "src": "963:7:25", @@ -1707,12 +2511,12 @@ }, { "constant": false, - "id": 29528, + "id": 29543, "mutability": "mutable", "name": "deadline", "nameLocation": "989:8:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "984:13:25", "stateVariable": false, "storageLocation": "default", @@ -1721,7 +2525,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29527, + "id": 29542, "name": "uint", "nodeType": "ElementaryTypeName", "src": "984:4:25", @@ -1736,17 +2540,17 @@ "src": "825:179:25" }, "returnParameters": { - "id": 29534, + "id": 29549, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29531, + "id": 29546, "mutability": "mutable", "name": "amountA", "nameLocation": "1028:7:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "1023:12:25", "stateVariable": false, "storageLocation": "default", @@ -1755,7 +2559,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29530, + "id": 29545, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1023:4:25", @@ -1768,12 +2572,12 @@ }, { "constant": false, - "id": 29533, + "id": 29548, "mutability": "mutable", "name": "amountB", "nameLocation": "1042:7:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "1037:12:25", "stateVariable": false, "storageLocation": "default", @@ -1782,7 +2586,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29532, + "id": 29547, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1037:4:25", @@ -1796,15 +2600,16 @@ ], "src": "1022:28:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29554, + "id": 29569, "nodeType": "FunctionDefinition", "src": "1057:239:25", + "nodes": [], "functionSelector": "02751cec", "implemented": false, "kind": "function", @@ -1812,17 +2617,17 @@ "name": "removeLiquidityETH", "nameLocation": "1066:18:25", "parameters": { - "id": 29548, + "id": 29563, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29537, + "id": 29552, "mutability": "mutable", "name": "token", "nameLocation": "1103:5:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1095:13:25", "stateVariable": false, "storageLocation": "default", @@ -1831,7 +2636,7 @@ "typeString": "address" }, "typeName": { - "id": 29536, + "id": 29551, "name": "address", "nodeType": "ElementaryTypeName", "src": "1095:7:25", @@ -1845,12 +2650,12 @@ }, { "constant": false, - "id": 29539, + "id": 29554, "mutability": "mutable", "name": "liquidity", "nameLocation": "1124:9:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1119:14:25", "stateVariable": false, "storageLocation": "default", @@ -1859,7 +2664,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29538, + "id": 29553, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1119:4:25", @@ -1872,12 +2677,12 @@ }, { "constant": false, - "id": 29541, + "id": 29556, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "1149:14:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1144:19:25", "stateVariable": false, "storageLocation": "default", @@ -1886,7 +2691,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29540, + "id": 29555, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1144:4:25", @@ -1899,12 +2704,12 @@ }, { "constant": false, - "id": 29543, + "id": 29558, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "1179:12:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1174:17:25", "stateVariable": false, "storageLocation": "default", @@ -1913,7 +2718,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29542, + "id": 29557, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1174:4:25", @@ -1926,12 +2731,12 @@ }, { "constant": false, - "id": 29545, + "id": 29560, "mutability": "mutable", "name": "to", "nameLocation": "1210:2:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1202:10:25", "stateVariable": false, "storageLocation": "default", @@ -1940,7 +2745,7 @@ "typeString": "address" }, "typeName": { - "id": 29544, + "id": 29559, "name": "address", "nodeType": "ElementaryTypeName", "src": "1202:7:25", @@ -1954,12 +2759,12 @@ }, { "constant": false, - "id": 29547, + "id": 29562, "mutability": "mutable", "name": "deadline", "nameLocation": "1228:8:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1223:13:25", "stateVariable": false, "storageLocation": "default", @@ -1968,7 +2773,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29546, + "id": 29561, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1223:4:25", @@ -1983,17 +2788,17 @@ "src": "1084:159:25" }, "returnParameters": { - "id": 29553, + "id": 29568, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29550, + "id": 29565, "mutability": "mutable", "name": "amountToken", "nameLocation": "1267:11:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1262:16:25", "stateVariable": false, "storageLocation": "default", @@ -2002,7 +2807,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29549, + "id": 29564, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1262:4:25", @@ -2015,12 +2820,12 @@ }, { "constant": false, - "id": 29552, + "id": 29567, "mutability": "mutable", "name": "amountETH", "nameLocation": "1285:9:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1280:14:25", "stateVariable": false, "storageLocation": "default", @@ -2029,7 +2834,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29551, + "id": 29566, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1280:4:25", @@ -2043,15 +2848,16 @@ ], "src": "1261:34:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29583, + "id": 29598, "nodeType": "FunctionDefinition", "src": "1302:317:25", + "nodes": [], "functionSelector": "2195995c", "implemented": false, "kind": "function", @@ -2059,17 +2865,17 @@ "name": "removeLiquidityWithPermit", "nameLocation": "1311:25:25", "parameters": { - "id": 29577, + "id": 29592, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29556, + "id": 29571, "mutability": "mutable", "name": "tokenA", "nameLocation": "1355:6:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1347:14:25", "stateVariable": false, "storageLocation": "default", @@ -2078,7 +2884,7 @@ "typeString": "address" }, "typeName": { - "id": 29555, + "id": 29570, "name": "address", "nodeType": "ElementaryTypeName", "src": "1347:7:25", @@ -2092,12 +2898,12 @@ }, { "constant": false, - "id": 29558, + "id": 29573, "mutability": "mutable", "name": "tokenB", "nameLocation": "1380:6:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1372:14:25", "stateVariable": false, "storageLocation": "default", @@ -2106,7 +2912,7 @@ "typeString": "address" }, "typeName": { - "id": 29557, + "id": 29572, "name": "address", "nodeType": "ElementaryTypeName", "src": "1372:7:25", @@ -2120,12 +2926,12 @@ }, { "constant": false, - "id": 29560, + "id": 29575, "mutability": "mutable", "name": "liquidity", "nameLocation": "1402:9:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1397:14:25", "stateVariable": false, "storageLocation": "default", @@ -2134,7 +2940,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29559, + "id": 29574, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1397:4:25", @@ -2147,12 +2953,12 @@ }, { "constant": false, - "id": 29562, + "id": 29577, "mutability": "mutable", "name": "amountAMin", "nameLocation": "1427:10:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1422:15:25", "stateVariable": false, "storageLocation": "default", @@ -2161,7 +2967,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29561, + "id": 29576, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1422:4:25", @@ -2174,12 +2980,12 @@ }, { "constant": false, - "id": 29564, + "id": 29579, "mutability": "mutable", "name": "amountBMin", "nameLocation": "1453:10:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1448:15:25", "stateVariable": false, "storageLocation": "default", @@ -2188,7 +2994,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29563, + "id": 29578, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1448:4:25", @@ -2201,12 +3007,12 @@ }, { "constant": false, - "id": 29566, + "id": 29581, "mutability": "mutable", "name": "to", "nameLocation": "1482:2:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1474:10:25", "stateVariable": false, "storageLocation": "default", @@ -2215,7 +3021,7 @@ "typeString": "address" }, "typeName": { - "id": 29565, + "id": 29580, "name": "address", "nodeType": "ElementaryTypeName", "src": "1474:7:25", @@ -2229,12 +3035,12 @@ }, { "constant": false, - "id": 29568, + "id": 29583, "mutability": "mutable", "name": "deadline", "nameLocation": "1500:8:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1495:13:25", "stateVariable": false, "storageLocation": "default", @@ -2243,7 +3049,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29567, + "id": 29582, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1495:4:25", @@ -2256,12 +3062,12 @@ }, { "constant": false, - "id": 29570, + "id": 29585, "mutability": "mutable", "name": "approveMax", "nameLocation": "1524:10:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1519:15:25", "stateVariable": false, "storageLocation": "default", @@ -2270,7 +3076,7 @@ "typeString": "bool" }, "typeName": { - "id": 29569, + "id": 29584, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1519:4:25", @@ -2283,12 +3089,12 @@ }, { "constant": false, - "id": 29572, + "id": 29587, "mutability": "mutable", "name": "v", "nameLocation": "1542:1:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1536:7:25", "stateVariable": false, "storageLocation": "default", @@ -2297,7 +3103,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29571, + "id": 29586, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1536:5:25", @@ -2310,12 +3116,12 @@ }, { "constant": false, - "id": 29574, + "id": 29589, "mutability": "mutable", "name": "r", "nameLocation": "1553:1:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1545:9:25", "stateVariable": false, "storageLocation": "default", @@ -2324,7 +3130,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29573, + "id": 29588, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1545:7:25", @@ -2337,12 +3143,12 @@ }, { "constant": false, - "id": 29576, + "id": 29591, "mutability": "mutable", "name": "s", "nameLocation": "1564:1:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1556:9:25", "stateVariable": false, "storageLocation": "default", @@ -2351,7 +3157,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29575, + "id": 29590, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1556:7:25", @@ -2366,17 +3172,17 @@ "src": "1336:236:25" }, "returnParameters": { - "id": 29582, + "id": 29597, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29579, + "id": 29594, "mutability": "mutable", "name": "amountA", "nameLocation": "1596:7:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1591:12:25", "stateVariable": false, "storageLocation": "default", @@ -2385,7 +3191,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29578, + "id": 29593, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1591:4:25", @@ -2398,12 +3204,12 @@ }, { "constant": false, - "id": 29581, + "id": 29596, "mutability": "mutable", "name": "amountB", "nameLocation": "1610:7:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1605:12:25", "stateVariable": false, "storageLocation": "default", @@ -2412,7 +3218,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29580, + "id": 29595, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1605:4:25", @@ -2426,15 +3232,16 @@ ], "src": "1590:28:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29610, + "id": 29625, "nodeType": "FunctionDefinition", "src": "1625:306:25", + "nodes": [], "functionSelector": "ded9382a", "implemented": false, "kind": "function", @@ -2442,17 +3249,17 @@ "name": "removeLiquidityETHWithPermit", "nameLocation": "1634:28:25", "parameters": { - "id": 29604, + "id": 29619, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29585, + "id": 29600, "mutability": "mutable", "name": "token", "nameLocation": "1681:5:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1673:13:25", "stateVariable": false, "storageLocation": "default", @@ -2461,7 +3268,7 @@ "typeString": "address" }, "typeName": { - "id": 29584, + "id": 29599, "name": "address", "nodeType": "ElementaryTypeName", "src": "1673:7:25", @@ -2475,12 +3282,12 @@ }, { "constant": false, - "id": 29587, + "id": 29602, "mutability": "mutable", "name": "liquidity", "nameLocation": "1702:9:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1697:14:25", "stateVariable": false, "storageLocation": "default", @@ -2489,7 +3296,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29586, + "id": 29601, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1697:4:25", @@ -2502,12 +3309,12 @@ }, { "constant": false, - "id": 29589, + "id": 29604, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "1727:14:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1722:19:25", "stateVariable": false, "storageLocation": "default", @@ -2516,7 +3323,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29588, + "id": 29603, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1722:4:25", @@ -2529,12 +3336,12 @@ }, { "constant": false, - "id": 29591, + "id": 29606, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "1757:12:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1752:17:25", "stateVariable": false, "storageLocation": "default", @@ -2543,7 +3350,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29590, + "id": 29605, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1752:4:25", @@ -2556,12 +3363,12 @@ }, { "constant": false, - "id": 29593, + "id": 29608, "mutability": "mutable", "name": "to", "nameLocation": "1788:2:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1780:10:25", "stateVariable": false, "storageLocation": "default", @@ -2570,7 +3377,7 @@ "typeString": "address" }, "typeName": { - "id": 29592, + "id": 29607, "name": "address", "nodeType": "ElementaryTypeName", "src": "1780:7:25", @@ -2584,12 +3391,12 @@ }, { "constant": false, - "id": 29595, + "id": 29610, "mutability": "mutable", "name": "deadline", "nameLocation": "1806:8:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1801:13:25", "stateVariable": false, "storageLocation": "default", @@ -2598,7 +3405,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29594, + "id": 29609, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1801:4:25", @@ -2611,12 +3418,12 @@ }, { "constant": false, - "id": 29597, + "id": 29612, "mutability": "mutable", "name": "approveMax", "nameLocation": "1830:10:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1825:15:25", "stateVariable": false, "storageLocation": "default", @@ -2625,7 +3432,7 @@ "typeString": "bool" }, "typeName": { - "id": 29596, + "id": 29611, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1825:4:25", @@ -2638,12 +3445,12 @@ }, { "constant": false, - "id": 29599, + "id": 29614, "mutability": "mutable", "name": "v", "nameLocation": "1848:1:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1842:7:25", "stateVariable": false, "storageLocation": "default", @@ -2652,7 +3459,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29598, + "id": 29613, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1842:5:25", @@ -2665,12 +3472,12 @@ }, { "constant": false, - "id": 29601, + "id": 29616, "mutability": "mutable", "name": "r", "nameLocation": "1859:1:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1851:9:25", "stateVariable": false, "storageLocation": "default", @@ -2679,7 +3486,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29600, + "id": 29615, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1851:7:25", @@ -2692,12 +3499,12 @@ }, { "constant": false, - "id": 29603, + "id": 29618, "mutability": "mutable", "name": "s", "nameLocation": "1870:1:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1862:9:25", "stateVariable": false, "storageLocation": "default", @@ -2706,7 +3513,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29602, + "id": 29617, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1862:7:25", @@ -2721,17 +3528,17 @@ "src": "1662:216:25" }, "returnParameters": { - "id": 29609, + "id": 29624, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29606, + "id": 29621, "mutability": "mutable", "name": "amountToken", "nameLocation": "1902:11:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1897:16:25", "stateVariable": false, "storageLocation": "default", @@ -2740,7 +3547,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29605, + "id": 29620, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1897:4:25", @@ -2753,12 +3560,12 @@ }, { "constant": false, - "id": 29608, + "id": 29623, "mutability": "mutable", "name": "amountETH", "nameLocation": "1920:9:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1915:14:25", "stateVariable": false, "storageLocation": "default", @@ -2767,7 +3574,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29607, + "id": 29622, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1915:4:25", @@ -2781,15 +3588,16 @@ ], "src": "1896:34:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29627, + "id": 29642, "nodeType": "FunctionDefinition", "src": "1937:213:25", + "nodes": [], "functionSelector": "38ed1739", "implemented": false, "kind": "function", @@ -2797,17 +3605,17 @@ "name": "swapExactTokensForTokens", "nameLocation": "1946:24:25", "parameters": { - "id": 29622, + "id": 29637, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29612, + "id": 29627, "mutability": "mutable", "name": "amountIn", "nameLocation": "1986:8:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "1981:13:25", "stateVariable": false, "storageLocation": "default", @@ -2816,7 +3624,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29611, + "id": 29626, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1981:4:25", @@ -2829,12 +3637,12 @@ }, { "constant": false, - "id": 29614, + "id": 29629, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "2010:12:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2005:17:25", "stateVariable": false, "storageLocation": "default", @@ -2843,7 +3651,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29613, + "id": 29628, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2005:4:25", @@ -2856,12 +3664,12 @@ }, { "constant": false, - "id": 29617, + "id": 29632, "mutability": "mutable", "name": "path", "nameLocation": "2052:4:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2033:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -2871,7 +3679,7 @@ }, "typeName": { "baseType": { - "id": 29615, + "id": 29630, "name": "address", "nodeType": "ElementaryTypeName", "src": "2033:7:25", @@ -2881,7 +3689,7 @@ "typeString": "address" } }, - "id": 29616, + "id": 29631, "nodeType": "ArrayTypeName", "src": "2033:9:25", "typeDescriptions": { @@ -2893,12 +3701,12 @@ }, { "constant": false, - "id": 29619, + "id": 29634, "mutability": "mutable", "name": "to", "nameLocation": "2075:2:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2067:10:25", "stateVariable": false, "storageLocation": "default", @@ -2907,7 +3715,7 @@ "typeString": "address" }, "typeName": { - "id": 29618, + "id": 29633, "name": "address", "nodeType": "ElementaryTypeName", "src": "2067:7:25", @@ -2921,12 +3729,12 @@ }, { "constant": false, - "id": 29621, + "id": 29636, "mutability": "mutable", "name": "deadline", "nameLocation": "2093:8:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2088:13:25", "stateVariable": false, "storageLocation": "default", @@ -2935,7 +3743,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29620, + "id": 29635, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2088:4:25", @@ -2950,17 +3758,17 @@ "src": "1970:138:25" }, "returnParameters": { - "id": 29626, + "id": 29641, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29625, + "id": 29640, "mutability": "mutable", "name": "amounts", "nameLocation": "2141:7:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2127:21:25", "stateVariable": false, "storageLocation": "memory", @@ -2970,7 +3778,7 @@ }, "typeName": { "baseType": { - "id": 29623, + "id": 29638, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2127:4:25", @@ -2979,7 +3787,7 @@ "typeString": "uint256" } }, - "id": 29624, + "id": 29639, "nodeType": "ArrayTypeName", "src": "2127:6:25", "typeDescriptions": { @@ -2992,15 +3800,16 @@ ], "src": "2126:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29644, + "id": 29659, "nodeType": "FunctionDefinition", "src": "2156:213:25", + "nodes": [], "functionSelector": "8803dbee", "implemented": false, "kind": "function", @@ -3008,17 +3817,17 @@ "name": "swapTokensForExactTokens", "nameLocation": "2165:24:25", "parameters": { - "id": 29639, + "id": 29654, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29629, + "id": 29644, "mutability": "mutable", "name": "amountOut", "nameLocation": "2205:9:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2200:14:25", "stateVariable": false, "storageLocation": "default", @@ -3027,7 +3836,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29628, + "id": 29643, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2200:4:25", @@ -3040,12 +3849,12 @@ }, { "constant": false, - "id": 29631, + "id": 29646, "mutability": "mutable", "name": "amountInMax", "nameLocation": "2230:11:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2225:16:25", "stateVariable": false, "storageLocation": "default", @@ -3054,7 +3863,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29630, + "id": 29645, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2225:4:25", @@ -3067,12 +3876,12 @@ }, { "constant": false, - "id": 29634, + "id": 29649, "mutability": "mutable", "name": "path", "nameLocation": "2271:4:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2252:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3082,7 +3891,7 @@ }, "typeName": { "baseType": { - "id": 29632, + "id": 29647, "name": "address", "nodeType": "ElementaryTypeName", "src": "2252:7:25", @@ -3092,7 +3901,7 @@ "typeString": "address" } }, - "id": 29633, + "id": 29648, "nodeType": "ArrayTypeName", "src": "2252:9:25", "typeDescriptions": { @@ -3104,12 +3913,12 @@ }, { "constant": false, - "id": 29636, + "id": 29651, "mutability": "mutable", "name": "to", "nameLocation": "2294:2:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2286:10:25", "stateVariable": false, "storageLocation": "default", @@ -3118,7 +3927,7 @@ "typeString": "address" }, "typeName": { - "id": 29635, + "id": 29650, "name": "address", "nodeType": "ElementaryTypeName", "src": "2286:7:25", @@ -3132,12 +3941,12 @@ }, { "constant": false, - "id": 29638, + "id": 29653, "mutability": "mutable", "name": "deadline", "nameLocation": "2312:8:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2307:13:25", "stateVariable": false, "storageLocation": "default", @@ -3146,7 +3955,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29637, + "id": 29652, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2307:4:25", @@ -3161,17 +3970,17 @@ "src": "2189:138:25" }, "returnParameters": { - "id": 29643, + "id": 29658, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29642, + "id": 29657, "mutability": "mutable", "name": "amounts", "nameLocation": "2360:7:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2346:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3181,7 +3990,7 @@ }, "typeName": { "baseType": { - "id": 29640, + "id": 29655, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2346:4:25", @@ -3190,7 +3999,7 @@ "typeString": "uint256" } }, - "id": 29641, + "id": 29656, "nodeType": "ArrayTypeName", "src": "2346:6:25", "typeDescriptions": { @@ -3203,15 +4012,16 @@ ], "src": "2345:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29659, + "id": 29674, "nodeType": "FunctionDefinition", "src": "2375:178:25", + "nodes": [], "functionSelector": "7ff36ab5", "implemented": false, "kind": "function", @@ -3219,17 +4029,17 @@ "name": "swapExactETHForTokens", "nameLocation": "2384:21:25", "parameters": { - "id": 29654, + "id": 29669, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29646, + "id": 29661, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "2411:12:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2406:17:25", "stateVariable": false, "storageLocation": "default", @@ -3238,7 +4048,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29645, + "id": 29660, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2406:4:25", @@ -3251,12 +4061,12 @@ }, { "constant": false, - "id": 29649, + "id": 29664, "mutability": "mutable", "name": "path", "nameLocation": "2444:4:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2425:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3266,7 +4076,7 @@ }, "typeName": { "baseType": { - "id": 29647, + "id": 29662, "name": "address", "nodeType": "ElementaryTypeName", "src": "2425:7:25", @@ -3276,7 +4086,7 @@ "typeString": "address" } }, - "id": 29648, + "id": 29663, "nodeType": "ArrayTypeName", "src": "2425:9:25", "typeDescriptions": { @@ -3288,12 +4098,12 @@ }, { "constant": false, - "id": 29651, + "id": 29666, "mutability": "mutable", "name": "to", "nameLocation": "2458:2:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2450:10:25", "stateVariable": false, "storageLocation": "default", @@ -3302,7 +4112,7 @@ "typeString": "address" }, "typeName": { - "id": 29650, + "id": 29665, "name": "address", "nodeType": "ElementaryTypeName", "src": "2450:7:25", @@ -3316,12 +4126,12 @@ }, { "constant": false, - "id": 29653, + "id": 29668, "mutability": "mutable", "name": "deadline", "nameLocation": "2467:8:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2462:13:25", "stateVariable": false, "storageLocation": "default", @@ -3330,7 +4140,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29652, + "id": 29667, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2462:4:25", @@ -3345,17 +4155,17 @@ "src": "2405:71:25" }, "returnParameters": { - "id": 29658, + "id": 29673, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29657, + "id": 29672, "mutability": "mutable", "name": "amounts", "nameLocation": "2544:7:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2530:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3365,7 +4175,7 @@ }, "typeName": { "baseType": { - "id": 29655, + "id": 29670, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2530:4:25", @@ -3374,7 +4184,7 @@ "typeString": "uint256" } }, - "id": 29656, + "id": 29671, "nodeType": "ArrayTypeName", "src": "2530:6:25", "typeDescriptions": { @@ -3387,15 +4197,16 @@ ], "src": "2529:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29676, + "id": 29691, "nodeType": "FunctionDefinition", "src": "2559:176:25", + "nodes": [], "functionSelector": "4a25d94a", "implemented": false, "kind": "function", @@ -3403,17 +4214,17 @@ "name": "swapTokensForExactETH", "nameLocation": "2568:21:25", "parameters": { - "id": 29671, + "id": 29686, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29661, + "id": 29676, "mutability": "mutable", "name": "amountOut", "nameLocation": "2595:9:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2590:14:25", "stateVariable": false, "storageLocation": "default", @@ -3422,7 +4233,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29660, + "id": 29675, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2590:4:25", @@ -3435,12 +4246,12 @@ }, { "constant": false, - "id": 29663, + "id": 29678, "mutability": "mutable", "name": "amountInMax", "nameLocation": "2611:11:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2606:16:25", "stateVariable": false, "storageLocation": "default", @@ -3449,7 +4260,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29662, + "id": 29677, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2606:4:25", @@ -3462,12 +4273,12 @@ }, { "constant": false, - "id": 29666, + "id": 29681, "mutability": "mutable", "name": "path", "nameLocation": "2643:4:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2624:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3477,7 +4288,7 @@ }, "typeName": { "baseType": { - "id": 29664, + "id": 29679, "name": "address", "nodeType": "ElementaryTypeName", "src": "2624:7:25", @@ -3487,7 +4298,7 @@ "typeString": "address" } }, - "id": 29665, + "id": 29680, "nodeType": "ArrayTypeName", "src": "2624:9:25", "typeDescriptions": { @@ -3499,12 +4310,12 @@ }, { "constant": false, - "id": 29668, + "id": 29683, "mutability": "mutable", "name": "to", "nameLocation": "2657:2:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2649:10:25", "stateVariable": false, "storageLocation": "default", @@ -3513,7 +4324,7 @@ "typeString": "address" }, "typeName": { - "id": 29667, + "id": 29682, "name": "address", "nodeType": "ElementaryTypeName", "src": "2649:7:25", @@ -3527,12 +4338,12 @@ }, { "constant": false, - "id": 29670, + "id": 29685, "mutability": "mutable", "name": "deadline", "nameLocation": "2666:8:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2661:13:25", "stateVariable": false, "storageLocation": "default", @@ -3541,7 +4352,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29669, + "id": 29684, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2661:4:25", @@ -3556,17 +4367,17 @@ "src": "2589:86:25" }, "returnParameters": { - "id": 29675, + "id": 29690, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29674, + "id": 29689, "mutability": "mutable", "name": "amounts", "nameLocation": "2726:7:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2712:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3576,7 +4387,7 @@ }, "typeName": { "baseType": { - "id": 29672, + "id": 29687, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2712:4:25", @@ -3585,7 +4396,7 @@ "typeString": "uint256" } }, - "id": 29673, + "id": 29688, "nodeType": "ArrayTypeName", "src": "2712:6:25", "typeDescriptions": { @@ -3598,15 +4409,16 @@ ], "src": "2711:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29693, + "id": 29708, "nodeType": "FunctionDefinition", "src": "2741:176:25", + "nodes": [], "functionSelector": "18cbafe5", "implemented": false, "kind": "function", @@ -3614,17 +4426,17 @@ "name": "swapExactTokensForETH", "nameLocation": "2750:21:25", "parameters": { - "id": 29688, + "id": 29703, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29678, + "id": 29693, "mutability": "mutable", "name": "amountIn", "nameLocation": "2777:8:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2772:13:25", "stateVariable": false, "storageLocation": "default", @@ -3633,7 +4445,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29677, + "id": 29692, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2772:4:25", @@ -3646,12 +4458,12 @@ }, { "constant": false, - "id": 29680, + "id": 29695, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "2792:12:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2787:17:25", "stateVariable": false, "storageLocation": "default", @@ -3660,7 +4472,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29679, + "id": 29694, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2787:4:25", @@ -3673,12 +4485,12 @@ }, { "constant": false, - "id": 29683, + "id": 29698, "mutability": "mutable", "name": "path", "nameLocation": "2825:4:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2806:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3688,7 +4500,7 @@ }, "typeName": { "baseType": { - "id": 29681, + "id": 29696, "name": "address", "nodeType": "ElementaryTypeName", "src": "2806:7:25", @@ -3698,7 +4510,7 @@ "typeString": "address" } }, - "id": 29682, + "id": 29697, "nodeType": "ArrayTypeName", "src": "2806:9:25", "typeDescriptions": { @@ -3710,12 +4522,12 @@ }, { "constant": false, - "id": 29685, + "id": 29700, "mutability": "mutable", "name": "to", "nameLocation": "2839:2:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2831:10:25", "stateVariable": false, "storageLocation": "default", @@ -3724,7 +4536,7 @@ "typeString": "address" }, "typeName": { - "id": 29684, + "id": 29699, "name": "address", "nodeType": "ElementaryTypeName", "src": "2831:7:25", @@ -3738,12 +4550,12 @@ }, { "constant": false, - "id": 29687, + "id": 29702, "mutability": "mutable", "name": "deadline", "nameLocation": "2848:8:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2843:13:25", "stateVariable": false, "storageLocation": "default", @@ -3752,7 +4564,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29686, + "id": 29701, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2843:4:25", @@ -3767,17 +4579,17 @@ "src": "2771:86:25" }, "returnParameters": { - "id": 29692, + "id": 29707, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29691, + "id": 29706, "mutability": "mutable", "name": "amounts", "nameLocation": "2908:7:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2894:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3787,7 +4599,7 @@ }, "typeName": { "baseType": { - "id": 29689, + "id": 29704, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2894:4:25", @@ -3796,7 +4608,7 @@ "typeString": "uint256" } }, - "id": 29690, + "id": 29705, "nodeType": "ArrayTypeName", "src": "2894:6:25", "typeDescriptions": { @@ -3809,15 +4621,16 @@ ], "src": "2893:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29708, + "id": 29723, "nodeType": "FunctionDefinition", "src": "2923:175:25", + "nodes": [], "functionSelector": "fb3bdb41", "implemented": false, "kind": "function", @@ -3825,17 +4638,17 @@ "name": "swapETHForExactTokens", "nameLocation": "2932:21:25", "parameters": { - "id": 29703, + "id": 29718, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29695, + "id": 29710, "mutability": "mutable", "name": "amountOut", "nameLocation": "2959:9:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "2954:14:25", "stateVariable": false, "storageLocation": "default", @@ -3844,7 +4657,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29694, + "id": 29709, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2954:4:25", @@ -3857,12 +4670,12 @@ }, { "constant": false, - "id": 29698, + "id": 29713, "mutability": "mutable", "name": "path", "nameLocation": "2989:4:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "2970:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3872,7 +4685,7 @@ }, "typeName": { "baseType": { - "id": 29696, + "id": 29711, "name": "address", "nodeType": "ElementaryTypeName", "src": "2970:7:25", @@ -3882,7 +4695,7 @@ "typeString": "address" } }, - "id": 29697, + "id": 29712, "nodeType": "ArrayTypeName", "src": "2970:9:25", "typeDescriptions": { @@ -3894,12 +4707,12 @@ }, { "constant": false, - "id": 29700, + "id": 29715, "mutability": "mutable", "name": "to", "nameLocation": "3003:2:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "2995:10:25", "stateVariable": false, "storageLocation": "default", @@ -3908,7 +4721,7 @@ "typeString": "address" }, "typeName": { - "id": 29699, + "id": 29714, "name": "address", "nodeType": "ElementaryTypeName", "src": "2995:7:25", @@ -3922,12 +4735,12 @@ }, { "constant": false, - "id": 29702, + "id": 29717, "mutability": "mutable", "name": "deadline", "nameLocation": "3012:8:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "3007:13:25", "stateVariable": false, "storageLocation": "default", @@ -3936,7 +4749,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29701, + "id": 29716, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3007:4:25", @@ -3951,17 +4764,17 @@ "src": "2953:68:25" }, "returnParameters": { - "id": 29707, + "id": 29722, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29706, + "id": 29721, "mutability": "mutable", "name": "amounts", "nameLocation": "3089:7:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "3075:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3971,7 +4784,7 @@ }, "typeName": { "baseType": { - "id": 29704, + "id": 29719, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3075:4:25", @@ -3980,7 +4793,7 @@ "typeString": "uint256" } }, - "id": 29705, + "id": 29720, "nodeType": "ArrayTypeName", "src": "3075:6:25", "typeDescriptions": { @@ -3993,15 +4806,16 @@ ], "src": "3074:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29719, + "id": 29734, "nodeType": "FunctionDefinition", "src": "3106:96:25", + "nodes": [], "functionSelector": "ad615dec", "implemented": false, "kind": "function", @@ -4009,17 +4823,17 @@ "name": "quote", "nameLocation": "3115:5:25", "parameters": { - "id": 29715, + "id": 29730, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29710, + "id": 29725, "mutability": "mutable", "name": "amountA", "nameLocation": "3126:7:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3121:12:25", "stateVariable": false, "storageLocation": "default", @@ -4028,7 +4842,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29709, + "id": 29724, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3121:4:25", @@ -4041,12 +4855,12 @@ }, { "constant": false, - "id": 29712, + "id": 29727, "mutability": "mutable", "name": "reserveA", "nameLocation": "3140:8:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3135:13:25", "stateVariable": false, "storageLocation": "default", @@ -4055,7 +4869,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29711, + "id": 29726, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3135:4:25", @@ -4068,12 +4882,12 @@ }, { "constant": false, - "id": 29714, + "id": 29729, "mutability": "mutable", "name": "reserveB", "nameLocation": "3155:8:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3150:13:25", "stateVariable": false, "storageLocation": "default", @@ -4082,7 +4896,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29713, + "id": 29728, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3150:4:25", @@ -4097,17 +4911,17 @@ "src": "3120:44:25" }, "returnParameters": { - "id": 29718, + "id": 29733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29717, + "id": 29732, "mutability": "mutable", "name": "amountB", "nameLocation": "3193:7:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3188:12:25", "stateVariable": false, "storageLocation": "default", @@ -4116,7 +4930,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29716, + "id": 29731, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3188:4:25", @@ -4130,15 +4944,16 @@ ], "src": "3187:14:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29730, + "id": 29745, "nodeType": "FunctionDefinition", "src": "3208:109:25", + "nodes": [], "functionSelector": "054d50d4", "implemented": false, "kind": "function", @@ -4146,17 +4961,17 @@ "name": "getAmountOut", "nameLocation": "3217:12:25", "parameters": { - "id": 29726, + "id": 29741, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29721, + "id": 29736, "mutability": "mutable", "name": "amountIn", "nameLocation": "3235:8:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3230:13:25", "stateVariable": false, "storageLocation": "default", @@ -4165,7 +4980,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29720, + "id": 29735, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3230:4:25", @@ -4178,12 +4993,12 @@ }, { "constant": false, - "id": 29723, + "id": 29738, "mutability": "mutable", "name": "reserveIn", "nameLocation": "3250:9:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3245:14:25", "stateVariable": false, "storageLocation": "default", @@ -4192,7 +5007,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29722, + "id": 29737, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3245:4:25", @@ -4205,12 +5020,12 @@ }, { "constant": false, - "id": 29725, + "id": 29740, "mutability": "mutable", "name": "reserveOut", "nameLocation": "3266:10:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3261:15:25", "stateVariable": false, "storageLocation": "default", @@ -4219,7 +5034,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29724, + "id": 29739, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3261:4:25", @@ -4234,17 +5049,17 @@ "src": "3229:48:25" }, "returnParameters": { - "id": 29729, + "id": 29744, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29728, + "id": 29743, "mutability": "mutable", "name": "amountOut", "nameLocation": "3306:9:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3301:14:25", "stateVariable": false, "storageLocation": "default", @@ -4253,7 +5068,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29727, + "id": 29742, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3301:4:25", @@ -4267,15 +5082,16 @@ ], "src": "3300:16:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29741, + "id": 29756, "nodeType": "FunctionDefinition", "src": "3323:108:25", + "nodes": [], "functionSelector": "85f8c259", "implemented": false, "kind": "function", @@ -4283,17 +5099,17 @@ "name": "getAmountIn", "nameLocation": "3332:11:25", "parameters": { - "id": 29737, + "id": 29752, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29732, + "id": 29747, "mutability": "mutable", "name": "amountOut", "nameLocation": "3349:9:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3344:14:25", "stateVariable": false, "storageLocation": "default", @@ -4302,7 +5118,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29731, + "id": 29746, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3344:4:25", @@ -4315,12 +5131,12 @@ }, { "constant": false, - "id": 29734, + "id": 29749, "mutability": "mutable", "name": "reserveIn", "nameLocation": "3365:9:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3360:14:25", "stateVariable": false, "storageLocation": "default", @@ -4329,7 +5145,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29733, + "id": 29748, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3360:4:25", @@ -4342,12 +5158,12 @@ }, { "constant": false, - "id": 29736, + "id": 29751, "mutability": "mutable", "name": "reserveOut", "nameLocation": "3381:10:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3376:15:25", "stateVariable": false, "storageLocation": "default", @@ -4356,7 +5172,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29735, + "id": 29750, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3376:4:25", @@ -4371,17 +5187,17 @@ "src": "3343:49:25" }, "returnParameters": { - "id": 29740, + "id": 29755, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29739, + "id": 29754, "mutability": "mutable", "name": "amountIn", "nameLocation": "3421:8:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3416:13:25", "stateVariable": false, "storageLocation": "default", @@ -4390,7 +5206,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29738, + "id": 29753, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3416:4:25", @@ -4404,15 +5220,16 @@ ], "src": "3415:15:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29752, + "id": 29767, "nodeType": "FunctionDefinition", "src": "3437:109:25", + "nodes": [], "functionSelector": "d06ca61f", "implemented": false, "kind": "function", @@ -4420,17 +5237,17 @@ "name": "getAmountsOut", "nameLocation": "3446:13:25", "parameters": { - "id": 29747, + "id": 29762, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29743, + "id": 29758, "mutability": "mutable", "name": "amountIn", "nameLocation": "3465:8:25", "nodeType": "VariableDeclaration", - "scope": 29752, + "scope": 29767, "src": "3460:13:25", "stateVariable": false, "storageLocation": "default", @@ -4439,7 +5256,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29742, + "id": 29757, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3460:4:25", @@ -4452,12 +5269,12 @@ }, { "constant": false, - "id": 29746, + "id": 29761, "mutability": "mutable", "name": "path", "nameLocation": "3494:4:25", "nodeType": "VariableDeclaration", - "scope": 29752, + "scope": 29767, "src": "3475:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -4467,7 +5284,7 @@ }, "typeName": { "baseType": { - "id": 29744, + "id": 29759, "name": "address", "nodeType": "ElementaryTypeName", "src": "3475:7:25", @@ -4477,7 +5294,7 @@ "typeString": "address" } }, - "id": 29745, + "id": 29760, "nodeType": "ArrayTypeName", "src": "3475:9:25", "typeDescriptions": { @@ -4491,17 +5308,17 @@ "src": "3459:40:25" }, "returnParameters": { - "id": 29751, + "id": 29766, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29750, + "id": 29765, "mutability": "mutable", "name": "amounts", "nameLocation": "3537:7:25", "nodeType": "VariableDeclaration", - "scope": 29752, + "scope": 29767, "src": "3523:21:25", "stateVariable": false, "storageLocation": "memory", @@ -4511,7 +5328,7 @@ }, "typeName": { "baseType": { - "id": 29748, + "id": 29763, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3523:4:25", @@ -4520,7 +5337,7 @@ "typeString": "uint256" } }, - "id": 29749, + "id": 29764, "nodeType": "ArrayTypeName", "src": "3523:6:25", "typeDescriptions": { @@ -4533,15 +5350,16 @@ ], "src": "3522:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29763, + "id": 29778, "nodeType": "FunctionDefinition", "src": "3552:109:25", + "nodes": [], "functionSelector": "1f00ca74", "implemented": false, "kind": "function", @@ -4549,17 +5367,17 @@ "name": "getAmountsIn", "nameLocation": "3561:12:25", "parameters": { - "id": 29758, + "id": 29773, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29754, + "id": 29769, "mutability": "mutable", "name": "amountOut", "nameLocation": "3579:9:25", "nodeType": "VariableDeclaration", - "scope": 29763, + "scope": 29778, "src": "3574:14:25", "stateVariable": false, "storageLocation": "default", @@ -4568,7 +5386,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29753, + "id": 29768, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3574:4:25", @@ -4581,12 +5399,12 @@ }, { "constant": false, - "id": 29757, + "id": 29772, "mutability": "mutable", "name": "path", "nameLocation": "3609:4:25", "nodeType": "VariableDeclaration", - "scope": 29763, + "scope": 29778, "src": "3590:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -4596,7 +5414,7 @@ }, "typeName": { "baseType": { - "id": 29755, + "id": 29770, "name": "address", "nodeType": "ElementaryTypeName", "src": "3590:7:25", @@ -4606,7 +5424,7 @@ "typeString": "address" } }, - "id": 29756, + "id": 29771, "nodeType": "ArrayTypeName", "src": "3590:9:25", "typeDescriptions": { @@ -4620,17 +5438,17 @@ "src": "3573:41:25" }, "returnParameters": { - "id": 29762, + "id": 29777, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29761, + "id": 29776, "mutability": "mutable", "name": "amounts", "nameLocation": "3652:7:25", "nodeType": "VariableDeclaration", - "scope": 29763, + "scope": 29778, "src": "3638:21:25", "stateVariable": false, "storageLocation": "memory", @@ -4640,7 +5458,7 @@ }, "typeName": { "baseType": { - "id": 29759, + "id": 29774, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3638:4:25", @@ -4649,7 +5467,7 @@ "typeString": "uint256" } }, - "id": 29760, + "id": 29775, "nodeType": "ArrayTypeName", "src": "3638:6:25", "typeDescriptions": { @@ -4662,7 +5480,7 @@ ], "src": "3637:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "view", "virtual": false, "visibility": "external" @@ -4675,22 +5493,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29764 + 29779 ], "name": "IUniswapV2Router01", "nameLocation": "83:18:25", - "scope": 29850, + "scope": 29865, "usedErrors": [] }, { - "id": 29849, + "id": 29864, "nodeType": "ContractDefinition", "src": "3668:1262:25", "nodes": [ { - "id": 29783, + "id": 29798, "nodeType": "FunctionDefinition", "src": "3726:250:25", + "nodes": [], "functionSelector": "af2979eb", "implemented": false, "kind": "function", @@ -4698,17 +5517,17 @@ "name": "removeLiquidityETHSupportingFeeOnTransferTokens", "nameLocation": "3735:47:25", "parameters": { - "id": 29779, + "id": 29794, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29768, + "id": 29783, "mutability": "mutable", "name": "token", "nameLocation": "3801:5:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3793:13:25", "stateVariable": false, "storageLocation": "default", @@ -4717,7 +5536,7 @@ "typeString": "address" }, "typeName": { - "id": 29767, + "id": 29782, "name": "address", "nodeType": "ElementaryTypeName", "src": "3793:7:25", @@ -4731,12 +5550,12 @@ }, { "constant": false, - "id": 29770, + "id": 29785, "mutability": "mutable", "name": "liquidity", "nameLocation": "3822:9:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3817:14:25", "stateVariable": false, "storageLocation": "default", @@ -4745,7 +5564,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29769, + "id": 29784, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3817:4:25", @@ -4758,12 +5577,12 @@ }, { "constant": false, - "id": 29772, + "id": 29787, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "3847:14:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3842:19:25", "stateVariable": false, "storageLocation": "default", @@ -4772,7 +5591,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29771, + "id": 29786, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3842:4:25", @@ -4785,12 +5604,12 @@ }, { "constant": false, - "id": 29774, + "id": 29789, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "3877:12:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3872:17:25", "stateVariable": false, "storageLocation": "default", @@ -4799,7 +5618,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29773, + "id": 29788, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3872:4:25", @@ -4812,12 +5631,12 @@ }, { "constant": false, - "id": 29776, + "id": 29791, "mutability": "mutable", "name": "to", "nameLocation": "3908:2:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3900:10:25", "stateVariable": false, "storageLocation": "default", @@ -4826,7 +5645,7 @@ "typeString": "address" }, "typeName": { - "id": 29775, + "id": 29790, "name": "address", "nodeType": "ElementaryTypeName", "src": "3900:7:25", @@ -4840,12 +5659,12 @@ }, { "constant": false, - "id": 29778, + "id": 29793, "mutability": "mutable", "name": "deadline", "nameLocation": "3926:8:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3921:13:25", "stateVariable": false, "storageLocation": "default", @@ -4854,7 +5673,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29777, + "id": 29792, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3921:4:25", @@ -4869,17 +5688,17 @@ "src": "3782:159:25" }, "returnParameters": { - "id": 29782, + "id": 29797, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29781, + "id": 29796, "mutability": "mutable", "name": "amountETH", "nameLocation": "3965:9:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3960:14:25", "stateVariable": false, "storageLocation": "default", @@ -4888,7 +5707,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29780, + "id": 29795, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3960:4:25", @@ -4902,15 +5721,16 @@ ], "src": "3959:16:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29808, + "id": 29823, "nodeType": "FunctionDefinition", "src": "3982:317:25", + "nodes": [], "functionSelector": "5b0d5984", "implemented": false, "kind": "function", @@ -4918,17 +5738,17 @@ "name": "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens", "nameLocation": "3991:57:25", "parameters": { - "id": 29804, + "id": 29819, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29785, + "id": 29800, "mutability": "mutable", "name": "token", "nameLocation": "4067:5:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4059:13:25", "stateVariable": false, "storageLocation": "default", @@ -4937,7 +5757,7 @@ "typeString": "address" }, "typeName": { - "id": 29784, + "id": 29799, "name": "address", "nodeType": "ElementaryTypeName", "src": "4059:7:25", @@ -4951,12 +5771,12 @@ }, { "constant": false, - "id": 29787, + "id": 29802, "mutability": "mutable", "name": "liquidity", "nameLocation": "4088:9:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4083:14:25", "stateVariable": false, "storageLocation": "default", @@ -4965,7 +5785,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29786, + "id": 29801, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4083:4:25", @@ -4978,12 +5798,12 @@ }, { "constant": false, - "id": 29789, + "id": 29804, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "4113:14:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4108:19:25", "stateVariable": false, "storageLocation": "default", @@ -4992,7 +5812,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29788, + "id": 29803, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4108:4:25", @@ -5005,12 +5825,12 @@ }, { "constant": false, - "id": 29791, + "id": 29806, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "4143:12:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4138:17:25", "stateVariable": false, "storageLocation": "default", @@ -5019,7 +5839,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29790, + "id": 29805, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4138:4:25", @@ -5032,12 +5852,12 @@ }, { "constant": false, - "id": 29793, + "id": 29808, "mutability": "mutable", "name": "to", "nameLocation": "4174:2:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4166:10:25", "stateVariable": false, "storageLocation": "default", @@ -5046,7 +5866,7 @@ "typeString": "address" }, "typeName": { - "id": 29792, + "id": 29807, "name": "address", "nodeType": "ElementaryTypeName", "src": "4166:7:25", @@ -5060,12 +5880,12 @@ }, { "constant": false, - "id": 29795, + "id": 29810, "mutability": "mutable", "name": "deadline", "nameLocation": "4192:8:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4187:13:25", "stateVariable": false, "storageLocation": "default", @@ -5074,7 +5894,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29794, + "id": 29809, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4187:4:25", @@ -5087,12 +5907,12 @@ }, { "constant": false, - "id": 29797, + "id": 29812, "mutability": "mutable", "name": "approveMax", "nameLocation": "4216:10:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4211:15:25", "stateVariable": false, "storageLocation": "default", @@ -5101,7 +5921,7 @@ "typeString": "bool" }, "typeName": { - "id": 29796, + "id": 29811, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4211:4:25", @@ -5114,12 +5934,12 @@ }, { "constant": false, - "id": 29799, + "id": 29814, "mutability": "mutable", "name": "v", "nameLocation": "4234:1:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4228:7:25", "stateVariable": false, "storageLocation": "default", @@ -5128,7 +5948,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29798, + "id": 29813, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "4228:5:25", @@ -5141,12 +5961,12 @@ }, { "constant": false, - "id": 29801, + "id": 29816, "mutability": "mutable", "name": "r", "nameLocation": "4245:1:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4237:9:25", "stateVariable": false, "storageLocation": "default", @@ -5155,7 +5975,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29800, + "id": 29815, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4237:7:25", @@ -5168,12 +5988,12 @@ }, { "constant": false, - "id": 29803, + "id": 29818, "mutability": "mutable", "name": "s", "nameLocation": "4256:1:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4248:9:25", "stateVariable": false, "storageLocation": "default", @@ -5182,7 +6002,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29802, + "id": 29817, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4248:7:25", @@ -5197,17 +6017,17 @@ "src": "4048:216:25" }, "returnParameters": { - "id": 29807, + "id": 29822, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29806, + "id": 29821, "mutability": "mutable", "name": "amountETH", "nameLocation": "4288:9:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4283:14:25", "stateVariable": false, "storageLocation": "default", @@ -5216,7 +6036,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29805, + "id": 29820, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4283:4:25", @@ -5230,15 +6050,16 @@ ], "src": "4282:16:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29822, + "id": 29837, "nodeType": "FunctionDefinition", "src": "4307:210:25", + "nodes": [], "functionSelector": "5c11d795", "implemented": false, "kind": "function", @@ -5246,17 +6067,17 @@ "name": "swapExactTokensForTokensSupportingFeeOnTransferTokens", "nameLocation": "4316:53:25", "parameters": { - "id": 29820, + "id": 29835, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29810, + "id": 29825, "mutability": "mutable", "name": "amountIn", "nameLocation": "4385:8:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4380:13:25", "stateVariable": false, "storageLocation": "default", @@ -5265,7 +6086,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29809, + "id": 29824, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4380:4:25", @@ -5278,12 +6099,12 @@ }, { "constant": false, - "id": 29812, + "id": 29827, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "4409:12:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4404:17:25", "stateVariable": false, "storageLocation": "default", @@ -5292,7 +6113,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29811, + "id": 29826, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4404:4:25", @@ -5305,12 +6126,12 @@ }, { "constant": false, - "id": 29815, + "id": 29830, "mutability": "mutable", "name": "path", "nameLocation": "4451:4:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4432:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -5320,7 +6141,7 @@ }, "typeName": { "baseType": { - "id": 29813, + "id": 29828, "name": "address", "nodeType": "ElementaryTypeName", "src": "4432:7:25", @@ -5330,7 +6151,7 @@ "typeString": "address" } }, - "id": 29814, + "id": 29829, "nodeType": "ArrayTypeName", "src": "4432:9:25", "typeDescriptions": { @@ -5342,12 +6163,12 @@ }, { "constant": false, - "id": 29817, + "id": 29832, "mutability": "mutable", "name": "to", "nameLocation": "4474:2:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4466:10:25", "stateVariable": false, "storageLocation": "default", @@ -5356,7 +6177,7 @@ "typeString": "address" }, "typeName": { - "id": 29816, + "id": 29831, "name": "address", "nodeType": "ElementaryTypeName", "src": "4466:7:25", @@ -5370,12 +6191,12 @@ }, { "constant": false, - "id": 29819, + "id": 29834, "mutability": "mutable", "name": "deadline", "nameLocation": "4492:8:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4487:13:25", "stateVariable": false, "storageLocation": "default", @@ -5384,7 +6205,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29818, + "id": 29833, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4487:4:25", @@ -5399,20 +6220,21 @@ "src": "4369:138:25" }, "returnParameters": { - "id": 29821, + "id": 29836, "nodeType": "ParameterList", "parameters": [], "src": "4516:0:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29834, + "id": 29849, "nodeType": "FunctionDefinition", "src": "4523:191:25", + "nodes": [], "functionSelector": "b6f9de95", "implemented": false, "kind": "function", @@ -5420,17 +6242,17 @@ "name": "swapExactETHForTokensSupportingFeeOnTransferTokens", "nameLocation": "4532:50:25", "parameters": { - "id": 29832, + "id": 29847, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29824, + "id": 29839, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "4598:12:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4593:17:25", "stateVariable": false, "storageLocation": "default", @@ -5439,7 +6261,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29823, + "id": 29838, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4593:4:25", @@ -5452,12 +6274,12 @@ }, { "constant": false, - "id": 29827, + "id": 29842, "mutability": "mutable", "name": "path", "nameLocation": "4640:4:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4621:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -5467,7 +6289,7 @@ }, "typeName": { "baseType": { - "id": 29825, + "id": 29840, "name": "address", "nodeType": "ElementaryTypeName", "src": "4621:7:25", @@ -5477,7 +6299,7 @@ "typeString": "address" } }, - "id": 29826, + "id": 29841, "nodeType": "ArrayTypeName", "src": "4621:9:25", "typeDescriptions": { @@ -5489,12 +6311,12 @@ }, { "constant": false, - "id": 29829, + "id": 29844, "mutability": "mutable", "name": "to", "nameLocation": "4663:2:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4655:10:25", "stateVariable": false, "storageLocation": "default", @@ -5503,7 +6325,7 @@ "typeString": "address" }, "typeName": { - "id": 29828, + "id": 29843, "name": "address", "nodeType": "ElementaryTypeName", "src": "4655:7:25", @@ -5517,12 +6339,12 @@ }, { "constant": false, - "id": 29831, + "id": 29846, "mutability": "mutable", "name": "deadline", "nameLocation": "4681:8:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4676:13:25", "stateVariable": false, "storageLocation": "default", @@ -5531,7 +6353,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29830, + "id": 29845, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4676:4:25", @@ -5546,20 +6368,21 @@ "src": "4582:114:25" }, "returnParameters": { - "id": 29833, + "id": 29848, "nodeType": "ParameterList", "parameters": [], "src": "4713:0:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29848, + "id": 29863, "nodeType": "FunctionDefinition", "src": "4720:207:25", + "nodes": [], "functionSelector": "791ac947", "implemented": false, "kind": "function", @@ -5567,17 +6390,17 @@ "name": "swapExactTokensForETHSupportingFeeOnTransferTokens", "nameLocation": "4729:50:25", "parameters": { - "id": 29846, + "id": 29861, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29836, + "id": 29851, "mutability": "mutable", "name": "amountIn", "nameLocation": "4795:8:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4790:13:25", "stateVariable": false, "storageLocation": "default", @@ -5586,7 +6409,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29835, + "id": 29850, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4790:4:25", @@ -5599,12 +6422,12 @@ }, { "constant": false, - "id": 29838, + "id": 29853, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "4819:12:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4814:17:25", "stateVariable": false, "storageLocation": "default", @@ -5613,7 +6436,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29837, + "id": 29852, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4814:4:25", @@ -5626,12 +6449,12 @@ }, { "constant": false, - "id": 29841, + "id": 29856, "mutability": "mutable", "name": "path", "nameLocation": "4861:4:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4842:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -5641,7 +6464,7 @@ }, "typeName": { "baseType": { - "id": 29839, + "id": 29854, "name": "address", "nodeType": "ElementaryTypeName", "src": "4842:7:25", @@ -5651,7 +6474,7 @@ "typeString": "address" } }, - "id": 29840, + "id": 29855, "nodeType": "ArrayTypeName", "src": "4842:9:25", "typeDescriptions": { @@ -5663,12 +6486,12 @@ }, { "constant": false, - "id": 29843, + "id": 29858, "mutability": "mutable", "name": "to", "nameLocation": "4884:2:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4876:10:25", "stateVariable": false, "storageLocation": "default", @@ -5677,7 +6500,7 @@ "typeString": "address" }, "typeName": { - "id": 29842, + "id": 29857, "name": "address", "nodeType": "ElementaryTypeName", "src": "4876:7:25", @@ -5691,12 +6514,12 @@ }, { "constant": false, - "id": 29845, + "id": 29860, "mutability": "mutable", "name": "deadline", "nameLocation": "4902:8:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4897:13:25", "stateVariable": false, "storageLocation": "default", @@ -5705,7 +6528,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29844, + "id": 29859, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4897:4:25", @@ -5720,12 +6543,12 @@ "src": "4779:138:25" }, "returnParameters": { - "id": 29847, + "id": 29862, "nodeType": "ParameterList", "parameters": [], "src": "4926:0:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -5735,13 +6558,16 @@ "baseContracts": [ { "baseName": { - "id": 29765, + "id": 29780, "name": "IUniswapV2Router01", + "nameLocations": [ + "3700:18:25" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29764, + "referencedDeclaration": 29779, "src": "3700:18:25" }, - "id": 29766, + "id": 29781, "nodeType": "InheritanceSpecifier", "src": "3700:18:25" } @@ -5751,12 +6577,12 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29849, - 29764 + 29864, + 29779 ], "name": "IUniswapV2Router02", "nameLocation": "3678:18:25", - "scope": 29850, + "scope": 29865, "usedErrors": [] } ], diff --git a/out/IUniswapV2Router.sol/IUniswapV2Router02.json b/out/IUniswapV2Router.sol/IUniswapV2Router02.json index 30275c8..2922271 100644 --- a/out/IUniswapV2Router.sol/IUniswapV2Router02.json +++ b/out/IUniswapV2Router.sol/IUniswapV2Router02.json @@ -988,24 +988,1022 @@ "swapTokensForExactETH(uint256,uint256,address[],address,uint256)": "4a25d94a", "swapTokensForExactTokens(uint256,uint256,address[],address,uint256)": "8803dbee" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"WETH\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amountADesired\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBDesired\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountAMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"addLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenDesired\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"addLiquidityETH\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountToken\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"factory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveOut\",\"type\":\"uint256\"}],\"name\":\"getAmountIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveOut\",\"type\":\"uint256\"}],\"name\":\"getAmountOut\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"}],\"name\":\"getAmountsIn\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"}],\"name\":\"getAmountsOut\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveB\",\"type\":\"uint256\"}],\"name\":\"quote\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountAMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"removeLiquidity\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"removeLiquidityETH\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountToken\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"removeLiquidityETHSupportingFeeOnTransferTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"approveMax\",\"type\":\"bool\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"removeLiquidityETHWithPermit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountToken\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountTokenMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountETHMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"approveMax\",\"type\":\"bool\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"removeLiquidityETHWithPermitSupportingFeeOnTransferTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountETH\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"liquidity\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountAMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountBMin\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"approveMax\",\"type\":\"bool\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"removeLiquidityWithPermit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amountA\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountB\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapETHForExactTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactETHForTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactETHForTokensSupportingFeeOnTransferTokens\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactTokensForETH\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactTokensForETHSupportingFeeOnTransferTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactTokensForTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountIn\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountOutMin\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapExactTokensForTokensSupportingFeeOnTransferTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountInMax\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapTokensForExactETH\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amountOut\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amountInMax\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"path\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"}],\"name\":\"swapTokensForExactTokens\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IUniswapV2Router.sol\":\"IUniswapV2Router02\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/IUniswapV2Router.sol\":{\"keccak256\":\"0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee\",\"dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "WETH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountADesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "addLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amountTokenDesired", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "addLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "factory", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "getAmountIn", + "outputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveOut", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "getAmountOut", + "outputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getAmountsIn", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getAmountsOut", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reserveB", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "quote", + "outputs": [ + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidity", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityETH", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityETHSupportingFeeOnTransferTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityETHWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountTokenMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountETHMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "amountETH", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + }, + { + "internalType": "uint256", + "name": "liquidity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountAMin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountBMin", + "type": "uint256" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "approveMax", + "type": "bool" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLiquidityWithPermit", + "outputs": [ + { + "internalType": "uint256", + "name": "amountA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountB", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "swapETHForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "swapExactETHForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "swapExactETHForTokensSupportingFeeOnTransferTokens" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapExactTokensForETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapExactTokensForETHSupportingFeeOnTransferTokens" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapExactTokensForTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountOutMin", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapExactTokensForTokensSupportingFeeOnTransferTokens" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapTokensForExactETH", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountOut", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amountInMax", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "path", + "type": "address[]" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "swapTokensForExactTokens", + "outputs": [ + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/IUniswapV2Router.sol": "IUniswapV2Router02" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/IUniswapV2Router.sol": { + "keccak256": "0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4", + "urls": [ + "bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee", + "dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/IUniswapV2Router.sol", - "id": 29850, + "id": 29865, "exportedSymbols": { "IUniswapV2Router01": [ - 29764 + 29779 ], "IUniswapV2Router02": [ - 29849 + 29864 ] }, "nodeType": "SourceUnit", "src": "46:4884:25", "nodes": [ { - "id": 29458, + "id": 29473, "nodeType": "PragmaDirective", "src": "46:23:25", + "nodes": [], "literals": [ "solidity", "^", @@ -1014,14 +2012,15 @@ ] }, { - "id": 29764, + "id": 29779, "nodeType": "ContractDefinition", "src": "73:3591:25", "nodes": [ { - "id": 29463, + "id": 29478, "nodeType": "FunctionDefinition", "src": "109:51:25", + "nodes": [], "functionSelector": "c45a0155", "implemented": false, "kind": "function", @@ -1029,23 +2028,23 @@ "name": "factory", "nameLocation": "118:7:25", "parameters": { - "id": 29459, + "id": 29474, "nodeType": "ParameterList", "parameters": [], "src": "125:2:25" }, "returnParameters": { - "id": 29462, + "id": 29477, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29461, + "id": 29476, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29463, + "scope": 29478, "src": "151:7:25", "stateVariable": false, "storageLocation": "default", @@ -1054,7 +2053,7 @@ "typeString": "address" }, "typeName": { - "id": 29460, + "id": 29475, "name": "address", "nodeType": "ElementaryTypeName", "src": "151:7:25", @@ -1069,15 +2068,16 @@ ], "src": "150:9:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29468, + "id": 29483, "nodeType": "FunctionDefinition", "src": "166:48:25", + "nodes": [], "functionSelector": "ad5c4648", "implemented": false, "kind": "function", @@ -1085,23 +2085,23 @@ "name": "WETH", "nameLocation": "175:4:25", "parameters": { - "id": 29464, + "id": 29479, "nodeType": "ParameterList", "parameters": [], "src": "179:2:25" }, "returnParameters": { - "id": 29467, + "id": 29482, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29466, + "id": 29481, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29468, + "scope": 29483, "src": "205:7:25", "stateVariable": false, "storageLocation": "default", @@ -1110,7 +2110,7 @@ "typeString": "address" }, "typeName": { - "id": 29465, + "id": 29480, "name": "address", "nodeType": "ElementaryTypeName", "src": "205:7:25", @@ -1125,15 +2125,16 @@ ], "src": "204:9:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29493, + "id": 29508, "nodeType": "FunctionDefinition", "src": "222:298:25", + "nodes": [], "functionSelector": "e8e33700", "implemented": false, "kind": "function", @@ -1141,17 +2142,17 @@ "name": "addLiquidity", "nameLocation": "231:12:25", "parameters": { - "id": 29485, + "id": 29500, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29470, + "id": 29485, "mutability": "mutable", "name": "tokenA", "nameLocation": "262:6:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "254:14:25", "stateVariable": false, "storageLocation": "default", @@ -1160,7 +2161,7 @@ "typeString": "address" }, "typeName": { - "id": 29469, + "id": 29484, "name": "address", "nodeType": "ElementaryTypeName", "src": "254:7:25", @@ -1174,12 +2175,12 @@ }, { "constant": false, - "id": 29472, + "id": 29487, "mutability": "mutable", "name": "tokenB", "nameLocation": "287:6:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "279:14:25", "stateVariable": false, "storageLocation": "default", @@ -1188,7 +2189,7 @@ "typeString": "address" }, "typeName": { - "id": 29471, + "id": 29486, "name": "address", "nodeType": "ElementaryTypeName", "src": "279:7:25", @@ -1202,12 +2203,12 @@ }, { "constant": false, - "id": 29474, + "id": 29489, "mutability": "mutable", "name": "amountADesired", "nameLocation": "309:14:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "304:19:25", "stateVariable": false, "storageLocation": "default", @@ -1216,7 +2217,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29473, + "id": 29488, "name": "uint", "nodeType": "ElementaryTypeName", "src": "304:4:25", @@ -1229,12 +2230,12 @@ }, { "constant": false, - "id": 29476, + "id": 29491, "mutability": "mutable", "name": "amountBDesired", "nameLocation": "339:14:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "334:19:25", "stateVariable": false, "storageLocation": "default", @@ -1243,7 +2244,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29475, + "id": 29490, "name": "uint", "nodeType": "ElementaryTypeName", "src": "334:4:25", @@ -1256,12 +2257,12 @@ }, { "constant": false, - "id": 29478, + "id": 29493, "mutability": "mutable", "name": "amountAMin", "nameLocation": "369:10:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "364:15:25", "stateVariable": false, "storageLocation": "default", @@ -1270,7 +2271,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29477, + "id": 29492, "name": "uint", "nodeType": "ElementaryTypeName", "src": "364:4:25", @@ -1283,12 +2284,12 @@ }, { "constant": false, - "id": 29480, + "id": 29495, "mutability": "mutable", "name": "amountBMin", "nameLocation": "395:10:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "390:15:25", "stateVariable": false, "storageLocation": "default", @@ -1297,7 +2298,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29479, + "id": 29494, "name": "uint", "nodeType": "ElementaryTypeName", "src": "390:4:25", @@ -1310,12 +2311,12 @@ }, { "constant": false, - "id": 29482, + "id": 29497, "mutability": "mutable", "name": "to", "nameLocation": "424:2:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "416:10:25", "stateVariable": false, "storageLocation": "default", @@ -1324,7 +2325,7 @@ "typeString": "address" }, "typeName": { - "id": 29481, + "id": 29496, "name": "address", "nodeType": "ElementaryTypeName", "src": "416:7:25", @@ -1338,12 +2339,12 @@ }, { "constant": false, - "id": 29484, + "id": 29499, "mutability": "mutable", "name": "deadline", "nameLocation": "442:8:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "437:13:25", "stateVariable": false, "storageLocation": "default", @@ -1352,7 +2353,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29483, + "id": 29498, "name": "uint", "nodeType": "ElementaryTypeName", "src": "437:4:25", @@ -1367,17 +2368,17 @@ "src": "243:214:25" }, "returnParameters": { - "id": 29492, + "id": 29507, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29487, + "id": 29502, "mutability": "mutable", "name": "amountA", "nameLocation": "481:7:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "476:12:25", "stateVariable": false, "storageLocation": "default", @@ -1386,7 +2387,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29486, + "id": 29501, "name": "uint", "nodeType": "ElementaryTypeName", "src": "476:4:25", @@ -1399,12 +2400,12 @@ }, { "constant": false, - "id": 29489, + "id": 29504, "mutability": "mutable", "name": "amountB", "nameLocation": "495:7:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "490:12:25", "stateVariable": false, "storageLocation": "default", @@ -1413,7 +2414,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29488, + "id": 29503, "name": "uint", "nodeType": "ElementaryTypeName", "src": "490:4:25", @@ -1426,12 +2427,12 @@ }, { "constant": false, - "id": 29491, + "id": 29506, "mutability": "mutable", "name": "liquidity", "nameLocation": "509:9:25", "nodeType": "VariableDeclaration", - "scope": 29493, + "scope": 29508, "src": "504:14:25", "stateVariable": false, "storageLocation": "default", @@ -1440,7 +2441,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29490, + "id": 29505, "name": "uint", "nodeType": "ElementaryTypeName", "src": "504:4:25", @@ -1454,15 +2455,16 @@ ], "src": "475:44:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29514, + "id": 29529, "nodeType": "FunctionDefinition", "src": "526:269:25", + "nodes": [], "functionSelector": "f305d719", "implemented": false, "kind": "function", @@ -1470,17 +2472,17 @@ "name": "addLiquidityETH", "nameLocation": "535:15:25", "parameters": { - "id": 29506, + "id": 29521, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29495, + "id": 29510, "mutability": "mutable", "name": "token", "nameLocation": "569:5:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "561:13:25", "stateVariable": false, "storageLocation": "default", @@ -1489,7 +2491,7 @@ "typeString": "address" }, "typeName": { - "id": 29494, + "id": 29509, "name": "address", "nodeType": "ElementaryTypeName", "src": "561:7:25", @@ -1503,12 +2505,12 @@ }, { "constant": false, - "id": 29497, + "id": 29512, "mutability": "mutable", "name": "amountTokenDesired", "nameLocation": "590:18:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "585:23:25", "stateVariable": false, "storageLocation": "default", @@ -1517,7 +2519,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29496, + "id": 29511, "name": "uint", "nodeType": "ElementaryTypeName", "src": "585:4:25", @@ -1530,12 +2532,12 @@ }, { "constant": false, - "id": 29499, + "id": 29514, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "624:14:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "619:19:25", "stateVariable": false, "storageLocation": "default", @@ -1544,7 +2546,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29498, + "id": 29513, "name": "uint", "nodeType": "ElementaryTypeName", "src": "619:4:25", @@ -1557,12 +2559,12 @@ }, { "constant": false, - "id": 29501, + "id": 29516, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "654:12:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "649:17:25", "stateVariable": false, "storageLocation": "default", @@ -1571,7 +2573,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29500, + "id": 29515, "name": "uint", "nodeType": "ElementaryTypeName", "src": "649:4:25", @@ -1584,12 +2586,12 @@ }, { "constant": false, - "id": 29503, + "id": 29518, "mutability": "mutable", "name": "to", "nameLocation": "685:2:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "677:10:25", "stateVariable": false, "storageLocation": "default", @@ -1598,7 +2600,7 @@ "typeString": "address" }, "typeName": { - "id": 29502, + "id": 29517, "name": "address", "nodeType": "ElementaryTypeName", "src": "677:7:25", @@ -1612,12 +2614,12 @@ }, { "constant": false, - "id": 29505, + "id": 29520, "mutability": "mutable", "name": "deadline", "nameLocation": "703:8:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "698:13:25", "stateVariable": false, "storageLocation": "default", @@ -1626,7 +2628,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29504, + "id": 29519, "name": "uint", "nodeType": "ElementaryTypeName", "src": "698:4:25", @@ -1641,17 +2643,17 @@ "src": "550:168:25" }, "returnParameters": { - "id": 29513, + "id": 29528, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29508, + "id": 29523, "mutability": "mutable", "name": "amountToken", "nameLocation": "750:11:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "745:16:25", "stateVariable": false, "storageLocation": "default", @@ -1660,7 +2662,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29507, + "id": 29522, "name": "uint", "nodeType": "ElementaryTypeName", "src": "745:4:25", @@ -1673,12 +2675,12 @@ }, { "constant": false, - "id": 29510, + "id": 29525, "mutability": "mutable", "name": "amountETH", "nameLocation": "768:9:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "763:14:25", "stateVariable": false, "storageLocation": "default", @@ -1687,7 +2689,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29509, + "id": 29524, "name": "uint", "nodeType": "ElementaryTypeName", "src": "763:4:25", @@ -1700,12 +2702,12 @@ }, { "constant": false, - "id": 29512, + "id": 29527, "mutability": "mutable", "name": "liquidity", "nameLocation": "784:9:25", "nodeType": "VariableDeclaration", - "scope": 29514, + "scope": 29529, "src": "779:14:25", "stateVariable": false, "storageLocation": "default", @@ -1714,7 +2716,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29511, + "id": 29526, "name": "uint", "nodeType": "ElementaryTypeName", "src": "779:4:25", @@ -1728,15 +2730,16 @@ ], "src": "744:50:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29535, + "id": 29550, "nodeType": "FunctionDefinition", "src": "801:250:25", + "nodes": [], "functionSelector": "baa2abde", "implemented": false, "kind": "function", @@ -1744,17 +2747,17 @@ "name": "removeLiquidity", "nameLocation": "810:15:25", "parameters": { - "id": 29529, + "id": 29544, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29516, + "id": 29531, "mutability": "mutable", "name": "tokenA", "nameLocation": "844:6:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "836:14:25", "stateVariable": false, "storageLocation": "default", @@ -1763,7 +2766,7 @@ "typeString": "address" }, "typeName": { - "id": 29515, + "id": 29530, "name": "address", "nodeType": "ElementaryTypeName", "src": "836:7:25", @@ -1777,12 +2780,12 @@ }, { "constant": false, - "id": 29518, + "id": 29533, "mutability": "mutable", "name": "tokenB", "nameLocation": "869:6:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "861:14:25", "stateVariable": false, "storageLocation": "default", @@ -1791,7 +2794,7 @@ "typeString": "address" }, "typeName": { - "id": 29517, + "id": 29532, "name": "address", "nodeType": "ElementaryTypeName", "src": "861:7:25", @@ -1805,12 +2808,12 @@ }, { "constant": false, - "id": 29520, + "id": 29535, "mutability": "mutable", "name": "liquidity", "nameLocation": "891:9:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "886:14:25", "stateVariable": false, "storageLocation": "default", @@ -1819,7 +2822,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29519, + "id": 29534, "name": "uint", "nodeType": "ElementaryTypeName", "src": "886:4:25", @@ -1832,12 +2835,12 @@ }, { "constant": false, - "id": 29522, + "id": 29537, "mutability": "mutable", "name": "amountAMin", "nameLocation": "916:10:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "911:15:25", "stateVariable": false, "storageLocation": "default", @@ -1846,7 +2849,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29521, + "id": 29536, "name": "uint", "nodeType": "ElementaryTypeName", "src": "911:4:25", @@ -1859,12 +2862,12 @@ }, { "constant": false, - "id": 29524, + "id": 29539, "mutability": "mutable", "name": "amountBMin", "nameLocation": "942:10:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "937:15:25", "stateVariable": false, "storageLocation": "default", @@ -1873,7 +2876,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29523, + "id": 29538, "name": "uint", "nodeType": "ElementaryTypeName", "src": "937:4:25", @@ -1886,12 +2889,12 @@ }, { "constant": false, - "id": 29526, + "id": 29541, "mutability": "mutable", "name": "to", "nameLocation": "971:2:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "963:10:25", "stateVariable": false, "storageLocation": "default", @@ -1900,7 +2903,7 @@ "typeString": "address" }, "typeName": { - "id": 29525, + "id": 29540, "name": "address", "nodeType": "ElementaryTypeName", "src": "963:7:25", @@ -1914,12 +2917,12 @@ }, { "constant": false, - "id": 29528, + "id": 29543, "mutability": "mutable", "name": "deadline", "nameLocation": "989:8:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "984:13:25", "stateVariable": false, "storageLocation": "default", @@ -1928,7 +2931,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29527, + "id": 29542, "name": "uint", "nodeType": "ElementaryTypeName", "src": "984:4:25", @@ -1943,17 +2946,17 @@ "src": "825:179:25" }, "returnParameters": { - "id": 29534, + "id": 29549, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29531, + "id": 29546, "mutability": "mutable", "name": "amountA", "nameLocation": "1028:7:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "1023:12:25", "stateVariable": false, "storageLocation": "default", @@ -1962,7 +2965,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29530, + "id": 29545, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1023:4:25", @@ -1975,12 +2978,12 @@ }, { "constant": false, - "id": 29533, + "id": 29548, "mutability": "mutable", "name": "amountB", "nameLocation": "1042:7:25", "nodeType": "VariableDeclaration", - "scope": 29535, + "scope": 29550, "src": "1037:12:25", "stateVariable": false, "storageLocation": "default", @@ -1989,7 +2992,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29532, + "id": 29547, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1037:4:25", @@ -2003,15 +3006,16 @@ ], "src": "1022:28:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29554, + "id": 29569, "nodeType": "FunctionDefinition", "src": "1057:239:25", + "nodes": [], "functionSelector": "02751cec", "implemented": false, "kind": "function", @@ -2019,17 +3023,17 @@ "name": "removeLiquidityETH", "nameLocation": "1066:18:25", "parameters": { - "id": 29548, + "id": 29563, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29537, + "id": 29552, "mutability": "mutable", "name": "token", "nameLocation": "1103:5:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1095:13:25", "stateVariable": false, "storageLocation": "default", @@ -2038,7 +3042,7 @@ "typeString": "address" }, "typeName": { - "id": 29536, + "id": 29551, "name": "address", "nodeType": "ElementaryTypeName", "src": "1095:7:25", @@ -2052,12 +3056,12 @@ }, { "constant": false, - "id": 29539, + "id": 29554, "mutability": "mutable", "name": "liquidity", "nameLocation": "1124:9:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1119:14:25", "stateVariable": false, "storageLocation": "default", @@ -2066,7 +3070,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29538, + "id": 29553, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1119:4:25", @@ -2079,12 +3083,12 @@ }, { "constant": false, - "id": 29541, + "id": 29556, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "1149:14:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1144:19:25", "stateVariable": false, "storageLocation": "default", @@ -2093,7 +3097,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29540, + "id": 29555, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1144:4:25", @@ -2106,12 +3110,12 @@ }, { "constant": false, - "id": 29543, + "id": 29558, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "1179:12:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1174:17:25", "stateVariable": false, "storageLocation": "default", @@ -2120,7 +3124,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29542, + "id": 29557, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1174:4:25", @@ -2133,12 +3137,12 @@ }, { "constant": false, - "id": 29545, + "id": 29560, "mutability": "mutable", "name": "to", "nameLocation": "1210:2:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1202:10:25", "stateVariable": false, "storageLocation": "default", @@ -2147,7 +3151,7 @@ "typeString": "address" }, "typeName": { - "id": 29544, + "id": 29559, "name": "address", "nodeType": "ElementaryTypeName", "src": "1202:7:25", @@ -2161,12 +3165,12 @@ }, { "constant": false, - "id": 29547, + "id": 29562, "mutability": "mutable", "name": "deadline", "nameLocation": "1228:8:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1223:13:25", "stateVariable": false, "storageLocation": "default", @@ -2175,7 +3179,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29546, + "id": 29561, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1223:4:25", @@ -2190,17 +3194,17 @@ "src": "1084:159:25" }, "returnParameters": { - "id": 29553, + "id": 29568, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29550, + "id": 29565, "mutability": "mutable", "name": "amountToken", "nameLocation": "1267:11:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1262:16:25", "stateVariable": false, "storageLocation": "default", @@ -2209,7 +3213,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29549, + "id": 29564, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1262:4:25", @@ -2222,12 +3226,12 @@ }, { "constant": false, - "id": 29552, + "id": 29567, "mutability": "mutable", "name": "amountETH", "nameLocation": "1285:9:25", "nodeType": "VariableDeclaration", - "scope": 29554, + "scope": 29569, "src": "1280:14:25", "stateVariable": false, "storageLocation": "default", @@ -2236,7 +3240,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29551, + "id": 29566, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1280:4:25", @@ -2250,15 +3254,16 @@ ], "src": "1261:34:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29583, + "id": 29598, "nodeType": "FunctionDefinition", "src": "1302:317:25", + "nodes": [], "functionSelector": "2195995c", "implemented": false, "kind": "function", @@ -2266,17 +3271,17 @@ "name": "removeLiquidityWithPermit", "nameLocation": "1311:25:25", "parameters": { - "id": 29577, + "id": 29592, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29556, + "id": 29571, "mutability": "mutable", "name": "tokenA", "nameLocation": "1355:6:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1347:14:25", "stateVariable": false, "storageLocation": "default", @@ -2285,7 +3290,7 @@ "typeString": "address" }, "typeName": { - "id": 29555, + "id": 29570, "name": "address", "nodeType": "ElementaryTypeName", "src": "1347:7:25", @@ -2299,12 +3304,12 @@ }, { "constant": false, - "id": 29558, + "id": 29573, "mutability": "mutable", "name": "tokenB", "nameLocation": "1380:6:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1372:14:25", "stateVariable": false, "storageLocation": "default", @@ -2313,7 +3318,7 @@ "typeString": "address" }, "typeName": { - "id": 29557, + "id": 29572, "name": "address", "nodeType": "ElementaryTypeName", "src": "1372:7:25", @@ -2327,12 +3332,12 @@ }, { "constant": false, - "id": 29560, + "id": 29575, "mutability": "mutable", "name": "liquidity", "nameLocation": "1402:9:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1397:14:25", "stateVariable": false, "storageLocation": "default", @@ -2341,7 +3346,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29559, + "id": 29574, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1397:4:25", @@ -2354,12 +3359,12 @@ }, { "constant": false, - "id": 29562, + "id": 29577, "mutability": "mutable", "name": "amountAMin", "nameLocation": "1427:10:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1422:15:25", "stateVariable": false, "storageLocation": "default", @@ -2368,7 +3373,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29561, + "id": 29576, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1422:4:25", @@ -2381,12 +3386,12 @@ }, { "constant": false, - "id": 29564, + "id": 29579, "mutability": "mutable", "name": "amountBMin", "nameLocation": "1453:10:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1448:15:25", "stateVariable": false, "storageLocation": "default", @@ -2395,7 +3400,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29563, + "id": 29578, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1448:4:25", @@ -2408,12 +3413,12 @@ }, { "constant": false, - "id": 29566, + "id": 29581, "mutability": "mutable", "name": "to", "nameLocation": "1482:2:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1474:10:25", "stateVariable": false, "storageLocation": "default", @@ -2422,7 +3427,7 @@ "typeString": "address" }, "typeName": { - "id": 29565, + "id": 29580, "name": "address", "nodeType": "ElementaryTypeName", "src": "1474:7:25", @@ -2436,12 +3441,12 @@ }, { "constant": false, - "id": 29568, + "id": 29583, "mutability": "mutable", "name": "deadline", "nameLocation": "1500:8:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1495:13:25", "stateVariable": false, "storageLocation": "default", @@ -2450,7 +3455,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29567, + "id": 29582, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1495:4:25", @@ -2463,12 +3468,12 @@ }, { "constant": false, - "id": 29570, + "id": 29585, "mutability": "mutable", "name": "approveMax", "nameLocation": "1524:10:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1519:15:25", "stateVariable": false, "storageLocation": "default", @@ -2477,7 +3482,7 @@ "typeString": "bool" }, "typeName": { - "id": 29569, + "id": 29584, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1519:4:25", @@ -2490,12 +3495,12 @@ }, { "constant": false, - "id": 29572, + "id": 29587, "mutability": "mutable", "name": "v", "nameLocation": "1542:1:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1536:7:25", "stateVariable": false, "storageLocation": "default", @@ -2504,7 +3509,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29571, + "id": 29586, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1536:5:25", @@ -2517,12 +3522,12 @@ }, { "constant": false, - "id": 29574, + "id": 29589, "mutability": "mutable", "name": "r", "nameLocation": "1553:1:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1545:9:25", "stateVariable": false, "storageLocation": "default", @@ -2531,7 +3536,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29573, + "id": 29588, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1545:7:25", @@ -2544,12 +3549,12 @@ }, { "constant": false, - "id": 29576, + "id": 29591, "mutability": "mutable", "name": "s", "nameLocation": "1564:1:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1556:9:25", "stateVariable": false, "storageLocation": "default", @@ -2558,7 +3563,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29575, + "id": 29590, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1556:7:25", @@ -2573,17 +3578,17 @@ "src": "1336:236:25" }, "returnParameters": { - "id": 29582, + "id": 29597, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29579, + "id": 29594, "mutability": "mutable", "name": "amountA", "nameLocation": "1596:7:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1591:12:25", "stateVariable": false, "storageLocation": "default", @@ -2592,7 +3597,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29578, + "id": 29593, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1591:4:25", @@ -2605,12 +3610,12 @@ }, { "constant": false, - "id": 29581, + "id": 29596, "mutability": "mutable", "name": "amountB", "nameLocation": "1610:7:25", "nodeType": "VariableDeclaration", - "scope": 29583, + "scope": 29598, "src": "1605:12:25", "stateVariable": false, "storageLocation": "default", @@ -2619,7 +3624,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29580, + "id": 29595, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1605:4:25", @@ -2633,15 +3638,16 @@ ], "src": "1590:28:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29610, + "id": 29625, "nodeType": "FunctionDefinition", "src": "1625:306:25", + "nodes": [], "functionSelector": "ded9382a", "implemented": false, "kind": "function", @@ -2649,17 +3655,17 @@ "name": "removeLiquidityETHWithPermit", "nameLocation": "1634:28:25", "parameters": { - "id": 29604, + "id": 29619, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29585, + "id": 29600, "mutability": "mutable", "name": "token", "nameLocation": "1681:5:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1673:13:25", "stateVariable": false, "storageLocation": "default", @@ -2668,7 +3674,7 @@ "typeString": "address" }, "typeName": { - "id": 29584, + "id": 29599, "name": "address", "nodeType": "ElementaryTypeName", "src": "1673:7:25", @@ -2682,12 +3688,12 @@ }, { "constant": false, - "id": 29587, + "id": 29602, "mutability": "mutable", "name": "liquidity", "nameLocation": "1702:9:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1697:14:25", "stateVariable": false, "storageLocation": "default", @@ -2696,7 +3702,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29586, + "id": 29601, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1697:4:25", @@ -2709,12 +3715,12 @@ }, { "constant": false, - "id": 29589, + "id": 29604, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "1727:14:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1722:19:25", "stateVariable": false, "storageLocation": "default", @@ -2723,7 +3729,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29588, + "id": 29603, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1722:4:25", @@ -2736,12 +3742,12 @@ }, { "constant": false, - "id": 29591, + "id": 29606, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "1757:12:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1752:17:25", "stateVariable": false, "storageLocation": "default", @@ -2750,7 +3756,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29590, + "id": 29605, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1752:4:25", @@ -2763,12 +3769,12 @@ }, { "constant": false, - "id": 29593, + "id": 29608, "mutability": "mutable", "name": "to", "nameLocation": "1788:2:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1780:10:25", "stateVariable": false, "storageLocation": "default", @@ -2777,7 +3783,7 @@ "typeString": "address" }, "typeName": { - "id": 29592, + "id": 29607, "name": "address", "nodeType": "ElementaryTypeName", "src": "1780:7:25", @@ -2791,12 +3797,12 @@ }, { "constant": false, - "id": 29595, + "id": 29610, "mutability": "mutable", "name": "deadline", "nameLocation": "1806:8:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1801:13:25", "stateVariable": false, "storageLocation": "default", @@ -2805,7 +3811,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29594, + "id": 29609, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1801:4:25", @@ -2818,12 +3824,12 @@ }, { "constant": false, - "id": 29597, + "id": 29612, "mutability": "mutable", "name": "approveMax", "nameLocation": "1830:10:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1825:15:25", "stateVariable": false, "storageLocation": "default", @@ -2832,7 +3838,7 @@ "typeString": "bool" }, "typeName": { - "id": 29596, + "id": 29611, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1825:4:25", @@ -2845,12 +3851,12 @@ }, { "constant": false, - "id": 29599, + "id": 29614, "mutability": "mutable", "name": "v", "nameLocation": "1848:1:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1842:7:25", "stateVariable": false, "storageLocation": "default", @@ -2859,7 +3865,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29598, + "id": 29613, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1842:5:25", @@ -2872,12 +3878,12 @@ }, { "constant": false, - "id": 29601, + "id": 29616, "mutability": "mutable", "name": "r", "nameLocation": "1859:1:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1851:9:25", "stateVariable": false, "storageLocation": "default", @@ -2886,7 +3892,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29600, + "id": 29615, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1851:7:25", @@ -2899,12 +3905,12 @@ }, { "constant": false, - "id": 29603, + "id": 29618, "mutability": "mutable", "name": "s", "nameLocation": "1870:1:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1862:9:25", "stateVariable": false, "storageLocation": "default", @@ -2913,7 +3919,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29602, + "id": 29617, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1862:7:25", @@ -2928,17 +3934,17 @@ "src": "1662:216:25" }, "returnParameters": { - "id": 29609, + "id": 29624, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29606, + "id": 29621, "mutability": "mutable", "name": "amountToken", "nameLocation": "1902:11:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1897:16:25", "stateVariable": false, "storageLocation": "default", @@ -2947,7 +3953,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29605, + "id": 29620, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1897:4:25", @@ -2960,12 +3966,12 @@ }, { "constant": false, - "id": 29608, + "id": 29623, "mutability": "mutable", "name": "amountETH", "nameLocation": "1920:9:25", "nodeType": "VariableDeclaration", - "scope": 29610, + "scope": 29625, "src": "1915:14:25", "stateVariable": false, "storageLocation": "default", @@ -2974,7 +3980,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29607, + "id": 29622, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1915:4:25", @@ -2988,15 +3994,16 @@ ], "src": "1896:34:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29627, + "id": 29642, "nodeType": "FunctionDefinition", "src": "1937:213:25", + "nodes": [], "functionSelector": "38ed1739", "implemented": false, "kind": "function", @@ -3004,17 +4011,17 @@ "name": "swapExactTokensForTokens", "nameLocation": "1946:24:25", "parameters": { - "id": 29622, + "id": 29637, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29612, + "id": 29627, "mutability": "mutable", "name": "amountIn", "nameLocation": "1986:8:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "1981:13:25", "stateVariable": false, "storageLocation": "default", @@ -3023,7 +4030,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29611, + "id": 29626, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1981:4:25", @@ -3036,12 +4043,12 @@ }, { "constant": false, - "id": 29614, + "id": 29629, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "2010:12:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2005:17:25", "stateVariable": false, "storageLocation": "default", @@ -3050,7 +4057,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29613, + "id": 29628, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2005:4:25", @@ -3063,12 +4070,12 @@ }, { "constant": false, - "id": 29617, + "id": 29632, "mutability": "mutable", "name": "path", "nameLocation": "2052:4:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2033:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3078,7 +4085,7 @@ }, "typeName": { "baseType": { - "id": 29615, + "id": 29630, "name": "address", "nodeType": "ElementaryTypeName", "src": "2033:7:25", @@ -3088,7 +4095,7 @@ "typeString": "address" } }, - "id": 29616, + "id": 29631, "nodeType": "ArrayTypeName", "src": "2033:9:25", "typeDescriptions": { @@ -3100,12 +4107,12 @@ }, { "constant": false, - "id": 29619, + "id": 29634, "mutability": "mutable", "name": "to", "nameLocation": "2075:2:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2067:10:25", "stateVariable": false, "storageLocation": "default", @@ -3114,7 +4121,7 @@ "typeString": "address" }, "typeName": { - "id": 29618, + "id": 29633, "name": "address", "nodeType": "ElementaryTypeName", "src": "2067:7:25", @@ -3128,12 +4135,12 @@ }, { "constant": false, - "id": 29621, + "id": 29636, "mutability": "mutable", "name": "deadline", "nameLocation": "2093:8:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2088:13:25", "stateVariable": false, "storageLocation": "default", @@ -3142,7 +4149,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29620, + "id": 29635, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2088:4:25", @@ -3157,17 +4164,17 @@ "src": "1970:138:25" }, "returnParameters": { - "id": 29626, + "id": 29641, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29625, + "id": 29640, "mutability": "mutable", "name": "amounts", "nameLocation": "2141:7:25", "nodeType": "VariableDeclaration", - "scope": 29627, + "scope": 29642, "src": "2127:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3177,7 +4184,7 @@ }, "typeName": { "baseType": { - "id": 29623, + "id": 29638, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2127:4:25", @@ -3186,7 +4193,7 @@ "typeString": "uint256" } }, - "id": 29624, + "id": 29639, "nodeType": "ArrayTypeName", "src": "2127:6:25", "typeDescriptions": { @@ -3199,15 +4206,16 @@ ], "src": "2126:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29644, + "id": 29659, "nodeType": "FunctionDefinition", "src": "2156:213:25", + "nodes": [], "functionSelector": "8803dbee", "implemented": false, "kind": "function", @@ -3215,17 +4223,17 @@ "name": "swapTokensForExactTokens", "nameLocation": "2165:24:25", "parameters": { - "id": 29639, + "id": 29654, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29629, + "id": 29644, "mutability": "mutable", "name": "amountOut", "nameLocation": "2205:9:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2200:14:25", "stateVariable": false, "storageLocation": "default", @@ -3234,7 +4242,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29628, + "id": 29643, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2200:4:25", @@ -3247,12 +4255,12 @@ }, { "constant": false, - "id": 29631, + "id": 29646, "mutability": "mutable", "name": "amountInMax", "nameLocation": "2230:11:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2225:16:25", "stateVariable": false, "storageLocation": "default", @@ -3261,7 +4269,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29630, + "id": 29645, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2225:4:25", @@ -3274,12 +4282,12 @@ }, { "constant": false, - "id": 29634, + "id": 29649, "mutability": "mutable", "name": "path", "nameLocation": "2271:4:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2252:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3289,7 +4297,7 @@ }, "typeName": { "baseType": { - "id": 29632, + "id": 29647, "name": "address", "nodeType": "ElementaryTypeName", "src": "2252:7:25", @@ -3299,7 +4307,7 @@ "typeString": "address" } }, - "id": 29633, + "id": 29648, "nodeType": "ArrayTypeName", "src": "2252:9:25", "typeDescriptions": { @@ -3311,12 +4319,12 @@ }, { "constant": false, - "id": 29636, + "id": 29651, "mutability": "mutable", "name": "to", "nameLocation": "2294:2:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2286:10:25", "stateVariable": false, "storageLocation": "default", @@ -3325,7 +4333,7 @@ "typeString": "address" }, "typeName": { - "id": 29635, + "id": 29650, "name": "address", "nodeType": "ElementaryTypeName", "src": "2286:7:25", @@ -3339,12 +4347,12 @@ }, { "constant": false, - "id": 29638, + "id": 29653, "mutability": "mutable", "name": "deadline", "nameLocation": "2312:8:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2307:13:25", "stateVariable": false, "storageLocation": "default", @@ -3353,7 +4361,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29637, + "id": 29652, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2307:4:25", @@ -3368,17 +4376,17 @@ "src": "2189:138:25" }, "returnParameters": { - "id": 29643, + "id": 29658, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29642, + "id": 29657, "mutability": "mutable", "name": "amounts", "nameLocation": "2360:7:25", "nodeType": "VariableDeclaration", - "scope": 29644, + "scope": 29659, "src": "2346:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3388,7 +4396,7 @@ }, "typeName": { "baseType": { - "id": 29640, + "id": 29655, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2346:4:25", @@ -3397,7 +4405,7 @@ "typeString": "uint256" } }, - "id": 29641, + "id": 29656, "nodeType": "ArrayTypeName", "src": "2346:6:25", "typeDescriptions": { @@ -3410,15 +4418,16 @@ ], "src": "2345:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29659, + "id": 29674, "nodeType": "FunctionDefinition", "src": "2375:178:25", + "nodes": [], "functionSelector": "7ff36ab5", "implemented": false, "kind": "function", @@ -3426,17 +4435,17 @@ "name": "swapExactETHForTokens", "nameLocation": "2384:21:25", "parameters": { - "id": 29654, + "id": 29669, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29646, + "id": 29661, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "2411:12:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2406:17:25", "stateVariable": false, "storageLocation": "default", @@ -3445,7 +4454,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29645, + "id": 29660, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2406:4:25", @@ -3458,12 +4467,12 @@ }, { "constant": false, - "id": 29649, + "id": 29664, "mutability": "mutable", "name": "path", "nameLocation": "2444:4:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2425:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3473,7 +4482,7 @@ }, "typeName": { "baseType": { - "id": 29647, + "id": 29662, "name": "address", "nodeType": "ElementaryTypeName", "src": "2425:7:25", @@ -3483,7 +4492,7 @@ "typeString": "address" } }, - "id": 29648, + "id": 29663, "nodeType": "ArrayTypeName", "src": "2425:9:25", "typeDescriptions": { @@ -3495,12 +4504,12 @@ }, { "constant": false, - "id": 29651, + "id": 29666, "mutability": "mutable", "name": "to", "nameLocation": "2458:2:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2450:10:25", "stateVariable": false, "storageLocation": "default", @@ -3509,7 +4518,7 @@ "typeString": "address" }, "typeName": { - "id": 29650, + "id": 29665, "name": "address", "nodeType": "ElementaryTypeName", "src": "2450:7:25", @@ -3523,12 +4532,12 @@ }, { "constant": false, - "id": 29653, + "id": 29668, "mutability": "mutable", "name": "deadline", "nameLocation": "2467:8:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2462:13:25", "stateVariable": false, "storageLocation": "default", @@ -3537,7 +4546,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29652, + "id": 29667, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2462:4:25", @@ -3552,17 +4561,17 @@ "src": "2405:71:25" }, "returnParameters": { - "id": 29658, + "id": 29673, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29657, + "id": 29672, "mutability": "mutable", "name": "amounts", "nameLocation": "2544:7:25", "nodeType": "VariableDeclaration", - "scope": 29659, + "scope": 29674, "src": "2530:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3572,7 +4581,7 @@ }, "typeName": { "baseType": { - "id": 29655, + "id": 29670, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2530:4:25", @@ -3581,7 +4590,7 @@ "typeString": "uint256" } }, - "id": 29656, + "id": 29671, "nodeType": "ArrayTypeName", "src": "2530:6:25", "typeDescriptions": { @@ -3594,15 +4603,16 @@ ], "src": "2529:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29676, + "id": 29691, "nodeType": "FunctionDefinition", "src": "2559:176:25", + "nodes": [], "functionSelector": "4a25d94a", "implemented": false, "kind": "function", @@ -3610,17 +4620,17 @@ "name": "swapTokensForExactETH", "nameLocation": "2568:21:25", "parameters": { - "id": 29671, + "id": 29686, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29661, + "id": 29676, "mutability": "mutable", "name": "amountOut", "nameLocation": "2595:9:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2590:14:25", "stateVariable": false, "storageLocation": "default", @@ -3629,7 +4639,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29660, + "id": 29675, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2590:4:25", @@ -3642,12 +4652,12 @@ }, { "constant": false, - "id": 29663, + "id": 29678, "mutability": "mutable", "name": "amountInMax", "nameLocation": "2611:11:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2606:16:25", "stateVariable": false, "storageLocation": "default", @@ -3656,7 +4666,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29662, + "id": 29677, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2606:4:25", @@ -3669,12 +4679,12 @@ }, { "constant": false, - "id": 29666, + "id": 29681, "mutability": "mutable", "name": "path", "nameLocation": "2643:4:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2624:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3684,7 +4694,7 @@ }, "typeName": { "baseType": { - "id": 29664, + "id": 29679, "name": "address", "nodeType": "ElementaryTypeName", "src": "2624:7:25", @@ -3694,7 +4704,7 @@ "typeString": "address" } }, - "id": 29665, + "id": 29680, "nodeType": "ArrayTypeName", "src": "2624:9:25", "typeDescriptions": { @@ -3706,12 +4716,12 @@ }, { "constant": false, - "id": 29668, + "id": 29683, "mutability": "mutable", "name": "to", "nameLocation": "2657:2:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2649:10:25", "stateVariable": false, "storageLocation": "default", @@ -3720,7 +4730,7 @@ "typeString": "address" }, "typeName": { - "id": 29667, + "id": 29682, "name": "address", "nodeType": "ElementaryTypeName", "src": "2649:7:25", @@ -3734,12 +4744,12 @@ }, { "constant": false, - "id": 29670, + "id": 29685, "mutability": "mutable", "name": "deadline", "nameLocation": "2666:8:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2661:13:25", "stateVariable": false, "storageLocation": "default", @@ -3748,7 +4758,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29669, + "id": 29684, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2661:4:25", @@ -3763,17 +4773,17 @@ "src": "2589:86:25" }, "returnParameters": { - "id": 29675, + "id": 29690, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29674, + "id": 29689, "mutability": "mutable", "name": "amounts", "nameLocation": "2726:7:25", "nodeType": "VariableDeclaration", - "scope": 29676, + "scope": 29691, "src": "2712:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3783,7 +4793,7 @@ }, "typeName": { "baseType": { - "id": 29672, + "id": 29687, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2712:4:25", @@ -3792,7 +4802,7 @@ "typeString": "uint256" } }, - "id": 29673, + "id": 29688, "nodeType": "ArrayTypeName", "src": "2712:6:25", "typeDescriptions": { @@ -3805,15 +4815,16 @@ ], "src": "2711:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29693, + "id": 29708, "nodeType": "FunctionDefinition", "src": "2741:176:25", + "nodes": [], "functionSelector": "18cbafe5", "implemented": false, "kind": "function", @@ -3821,17 +4832,17 @@ "name": "swapExactTokensForETH", "nameLocation": "2750:21:25", "parameters": { - "id": 29688, + "id": 29703, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29678, + "id": 29693, "mutability": "mutable", "name": "amountIn", "nameLocation": "2777:8:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2772:13:25", "stateVariable": false, "storageLocation": "default", @@ -3840,7 +4851,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29677, + "id": 29692, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2772:4:25", @@ -3853,12 +4864,12 @@ }, { "constant": false, - "id": 29680, + "id": 29695, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "2792:12:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2787:17:25", "stateVariable": false, "storageLocation": "default", @@ -3867,7 +4878,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29679, + "id": 29694, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2787:4:25", @@ -3880,12 +4891,12 @@ }, { "constant": false, - "id": 29683, + "id": 29698, "mutability": "mutable", "name": "path", "nameLocation": "2825:4:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2806:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -3895,7 +4906,7 @@ }, "typeName": { "baseType": { - "id": 29681, + "id": 29696, "name": "address", "nodeType": "ElementaryTypeName", "src": "2806:7:25", @@ -3905,7 +4916,7 @@ "typeString": "address" } }, - "id": 29682, + "id": 29697, "nodeType": "ArrayTypeName", "src": "2806:9:25", "typeDescriptions": { @@ -3917,12 +4928,12 @@ }, { "constant": false, - "id": 29685, + "id": 29700, "mutability": "mutable", "name": "to", "nameLocation": "2839:2:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2831:10:25", "stateVariable": false, "storageLocation": "default", @@ -3931,7 +4942,7 @@ "typeString": "address" }, "typeName": { - "id": 29684, + "id": 29699, "name": "address", "nodeType": "ElementaryTypeName", "src": "2831:7:25", @@ -3945,12 +4956,12 @@ }, { "constant": false, - "id": 29687, + "id": 29702, "mutability": "mutable", "name": "deadline", "nameLocation": "2848:8:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2843:13:25", "stateVariable": false, "storageLocation": "default", @@ -3959,7 +4970,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29686, + "id": 29701, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2843:4:25", @@ -3974,17 +4985,17 @@ "src": "2771:86:25" }, "returnParameters": { - "id": 29692, + "id": 29707, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29691, + "id": 29706, "mutability": "mutable", "name": "amounts", "nameLocation": "2908:7:25", "nodeType": "VariableDeclaration", - "scope": 29693, + "scope": 29708, "src": "2894:21:25", "stateVariable": false, "storageLocation": "memory", @@ -3994,7 +5005,7 @@ }, "typeName": { "baseType": { - "id": 29689, + "id": 29704, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2894:4:25", @@ -4003,7 +5014,7 @@ "typeString": "uint256" } }, - "id": 29690, + "id": 29705, "nodeType": "ArrayTypeName", "src": "2894:6:25", "typeDescriptions": { @@ -4016,15 +5027,16 @@ ], "src": "2893:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29708, + "id": 29723, "nodeType": "FunctionDefinition", "src": "2923:175:25", + "nodes": [], "functionSelector": "fb3bdb41", "implemented": false, "kind": "function", @@ -4032,17 +5044,17 @@ "name": "swapETHForExactTokens", "nameLocation": "2932:21:25", "parameters": { - "id": 29703, + "id": 29718, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29695, + "id": 29710, "mutability": "mutable", "name": "amountOut", "nameLocation": "2959:9:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "2954:14:25", "stateVariable": false, "storageLocation": "default", @@ -4051,7 +5063,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29694, + "id": 29709, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2954:4:25", @@ -4064,12 +5076,12 @@ }, { "constant": false, - "id": 29698, + "id": 29713, "mutability": "mutable", "name": "path", "nameLocation": "2989:4:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "2970:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -4079,7 +5091,7 @@ }, "typeName": { "baseType": { - "id": 29696, + "id": 29711, "name": "address", "nodeType": "ElementaryTypeName", "src": "2970:7:25", @@ -4089,7 +5101,7 @@ "typeString": "address" } }, - "id": 29697, + "id": 29712, "nodeType": "ArrayTypeName", "src": "2970:9:25", "typeDescriptions": { @@ -4101,12 +5113,12 @@ }, { "constant": false, - "id": 29700, + "id": 29715, "mutability": "mutable", "name": "to", "nameLocation": "3003:2:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "2995:10:25", "stateVariable": false, "storageLocation": "default", @@ -4115,7 +5127,7 @@ "typeString": "address" }, "typeName": { - "id": 29699, + "id": 29714, "name": "address", "nodeType": "ElementaryTypeName", "src": "2995:7:25", @@ -4129,12 +5141,12 @@ }, { "constant": false, - "id": 29702, + "id": 29717, "mutability": "mutable", "name": "deadline", "nameLocation": "3012:8:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "3007:13:25", "stateVariable": false, "storageLocation": "default", @@ -4143,7 +5155,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29701, + "id": 29716, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3007:4:25", @@ -4158,17 +5170,17 @@ "src": "2953:68:25" }, "returnParameters": { - "id": 29707, + "id": 29722, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29706, + "id": 29721, "mutability": "mutable", "name": "amounts", "nameLocation": "3089:7:25", "nodeType": "VariableDeclaration", - "scope": 29708, + "scope": 29723, "src": "3075:21:25", "stateVariable": false, "storageLocation": "memory", @@ -4178,7 +5190,7 @@ }, "typeName": { "baseType": { - "id": 29704, + "id": 29719, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3075:4:25", @@ -4187,7 +5199,7 @@ "typeString": "uint256" } }, - "id": 29705, + "id": 29720, "nodeType": "ArrayTypeName", "src": "3075:6:25", "typeDescriptions": { @@ -4200,15 +5212,16 @@ ], "src": "3074:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29719, + "id": 29734, "nodeType": "FunctionDefinition", "src": "3106:96:25", + "nodes": [], "functionSelector": "ad615dec", "implemented": false, "kind": "function", @@ -4216,17 +5229,17 @@ "name": "quote", "nameLocation": "3115:5:25", "parameters": { - "id": 29715, + "id": 29730, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29710, + "id": 29725, "mutability": "mutable", "name": "amountA", "nameLocation": "3126:7:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3121:12:25", "stateVariable": false, "storageLocation": "default", @@ -4235,7 +5248,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29709, + "id": 29724, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3121:4:25", @@ -4248,12 +5261,12 @@ }, { "constant": false, - "id": 29712, + "id": 29727, "mutability": "mutable", "name": "reserveA", "nameLocation": "3140:8:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3135:13:25", "stateVariable": false, "storageLocation": "default", @@ -4262,7 +5275,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29711, + "id": 29726, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3135:4:25", @@ -4275,12 +5288,12 @@ }, { "constant": false, - "id": 29714, + "id": 29729, "mutability": "mutable", "name": "reserveB", "nameLocation": "3155:8:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3150:13:25", "stateVariable": false, "storageLocation": "default", @@ -4289,7 +5302,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29713, + "id": 29728, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3150:4:25", @@ -4304,17 +5317,17 @@ "src": "3120:44:25" }, "returnParameters": { - "id": 29718, + "id": 29733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29717, + "id": 29732, "mutability": "mutable", "name": "amountB", "nameLocation": "3193:7:25", "nodeType": "VariableDeclaration", - "scope": 29719, + "scope": 29734, "src": "3188:12:25", "stateVariable": false, "storageLocation": "default", @@ -4323,7 +5336,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29716, + "id": 29731, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3188:4:25", @@ -4337,15 +5350,16 @@ ], "src": "3187:14:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29730, + "id": 29745, "nodeType": "FunctionDefinition", "src": "3208:109:25", + "nodes": [], "functionSelector": "054d50d4", "implemented": false, "kind": "function", @@ -4353,17 +5367,17 @@ "name": "getAmountOut", "nameLocation": "3217:12:25", "parameters": { - "id": 29726, + "id": 29741, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29721, + "id": 29736, "mutability": "mutable", "name": "amountIn", "nameLocation": "3235:8:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3230:13:25", "stateVariable": false, "storageLocation": "default", @@ -4372,7 +5386,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29720, + "id": 29735, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3230:4:25", @@ -4385,12 +5399,12 @@ }, { "constant": false, - "id": 29723, + "id": 29738, "mutability": "mutable", "name": "reserveIn", "nameLocation": "3250:9:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3245:14:25", "stateVariable": false, "storageLocation": "default", @@ -4399,7 +5413,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29722, + "id": 29737, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3245:4:25", @@ -4412,12 +5426,12 @@ }, { "constant": false, - "id": 29725, + "id": 29740, "mutability": "mutable", "name": "reserveOut", "nameLocation": "3266:10:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3261:15:25", "stateVariable": false, "storageLocation": "default", @@ -4426,7 +5440,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29724, + "id": 29739, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3261:4:25", @@ -4441,17 +5455,17 @@ "src": "3229:48:25" }, "returnParameters": { - "id": 29729, + "id": 29744, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29728, + "id": 29743, "mutability": "mutable", "name": "amountOut", "nameLocation": "3306:9:25", "nodeType": "VariableDeclaration", - "scope": 29730, + "scope": 29745, "src": "3301:14:25", "stateVariable": false, "storageLocation": "default", @@ -4460,7 +5474,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29727, + "id": 29742, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3301:4:25", @@ -4474,15 +5488,16 @@ ], "src": "3300:16:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29741, + "id": 29756, "nodeType": "FunctionDefinition", "src": "3323:108:25", + "nodes": [], "functionSelector": "85f8c259", "implemented": false, "kind": "function", @@ -4490,17 +5505,17 @@ "name": "getAmountIn", "nameLocation": "3332:11:25", "parameters": { - "id": 29737, + "id": 29752, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29732, + "id": 29747, "mutability": "mutable", "name": "amountOut", "nameLocation": "3349:9:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3344:14:25", "stateVariable": false, "storageLocation": "default", @@ -4509,7 +5524,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29731, + "id": 29746, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3344:4:25", @@ -4522,12 +5537,12 @@ }, { "constant": false, - "id": 29734, + "id": 29749, "mutability": "mutable", "name": "reserveIn", "nameLocation": "3365:9:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3360:14:25", "stateVariable": false, "storageLocation": "default", @@ -4536,7 +5551,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29733, + "id": 29748, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3360:4:25", @@ -4549,12 +5564,12 @@ }, { "constant": false, - "id": 29736, + "id": 29751, "mutability": "mutable", "name": "reserveOut", "nameLocation": "3381:10:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3376:15:25", "stateVariable": false, "storageLocation": "default", @@ -4563,7 +5578,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29735, + "id": 29750, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3376:4:25", @@ -4578,17 +5593,17 @@ "src": "3343:49:25" }, "returnParameters": { - "id": 29740, + "id": 29755, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29739, + "id": 29754, "mutability": "mutable", "name": "amountIn", "nameLocation": "3421:8:25", "nodeType": "VariableDeclaration", - "scope": 29741, + "scope": 29756, "src": "3416:13:25", "stateVariable": false, "storageLocation": "default", @@ -4597,7 +5612,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29738, + "id": 29753, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3416:4:25", @@ -4611,15 +5626,16 @@ ], "src": "3415:15:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "pure", "virtual": false, "visibility": "external" }, { - "id": 29752, + "id": 29767, "nodeType": "FunctionDefinition", "src": "3437:109:25", + "nodes": [], "functionSelector": "d06ca61f", "implemented": false, "kind": "function", @@ -4627,17 +5643,17 @@ "name": "getAmountsOut", "nameLocation": "3446:13:25", "parameters": { - "id": 29747, + "id": 29762, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29743, + "id": 29758, "mutability": "mutable", "name": "amountIn", "nameLocation": "3465:8:25", "nodeType": "VariableDeclaration", - "scope": 29752, + "scope": 29767, "src": "3460:13:25", "stateVariable": false, "storageLocation": "default", @@ -4646,7 +5662,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29742, + "id": 29757, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3460:4:25", @@ -4659,12 +5675,12 @@ }, { "constant": false, - "id": 29746, + "id": 29761, "mutability": "mutable", "name": "path", "nameLocation": "3494:4:25", "nodeType": "VariableDeclaration", - "scope": 29752, + "scope": 29767, "src": "3475:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -4674,7 +5690,7 @@ }, "typeName": { "baseType": { - "id": 29744, + "id": 29759, "name": "address", "nodeType": "ElementaryTypeName", "src": "3475:7:25", @@ -4684,7 +5700,7 @@ "typeString": "address" } }, - "id": 29745, + "id": 29760, "nodeType": "ArrayTypeName", "src": "3475:9:25", "typeDescriptions": { @@ -4698,17 +5714,17 @@ "src": "3459:40:25" }, "returnParameters": { - "id": 29751, + "id": 29766, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29750, + "id": 29765, "mutability": "mutable", "name": "amounts", "nameLocation": "3537:7:25", "nodeType": "VariableDeclaration", - "scope": 29752, + "scope": 29767, "src": "3523:21:25", "stateVariable": false, "storageLocation": "memory", @@ -4718,7 +5734,7 @@ }, "typeName": { "baseType": { - "id": 29748, + "id": 29763, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3523:4:25", @@ -4727,7 +5743,7 @@ "typeString": "uint256" } }, - "id": 29749, + "id": 29764, "nodeType": "ArrayTypeName", "src": "3523:6:25", "typeDescriptions": { @@ -4740,15 +5756,16 @@ ], "src": "3522:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 29763, + "id": 29778, "nodeType": "FunctionDefinition", "src": "3552:109:25", + "nodes": [], "functionSelector": "1f00ca74", "implemented": false, "kind": "function", @@ -4756,17 +5773,17 @@ "name": "getAmountsIn", "nameLocation": "3561:12:25", "parameters": { - "id": 29758, + "id": 29773, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29754, + "id": 29769, "mutability": "mutable", "name": "amountOut", "nameLocation": "3579:9:25", "nodeType": "VariableDeclaration", - "scope": 29763, + "scope": 29778, "src": "3574:14:25", "stateVariable": false, "storageLocation": "default", @@ -4775,7 +5792,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29753, + "id": 29768, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3574:4:25", @@ -4788,12 +5805,12 @@ }, { "constant": false, - "id": 29757, + "id": 29772, "mutability": "mutable", "name": "path", "nameLocation": "3609:4:25", "nodeType": "VariableDeclaration", - "scope": 29763, + "scope": 29778, "src": "3590:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -4803,7 +5820,7 @@ }, "typeName": { "baseType": { - "id": 29755, + "id": 29770, "name": "address", "nodeType": "ElementaryTypeName", "src": "3590:7:25", @@ -4813,7 +5830,7 @@ "typeString": "address" } }, - "id": 29756, + "id": 29771, "nodeType": "ArrayTypeName", "src": "3590:9:25", "typeDescriptions": { @@ -4827,17 +5844,17 @@ "src": "3573:41:25" }, "returnParameters": { - "id": 29762, + "id": 29777, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29761, + "id": 29776, "mutability": "mutable", "name": "amounts", "nameLocation": "3652:7:25", "nodeType": "VariableDeclaration", - "scope": 29763, + "scope": 29778, "src": "3638:21:25", "stateVariable": false, "storageLocation": "memory", @@ -4847,7 +5864,7 @@ }, "typeName": { "baseType": { - "id": 29759, + "id": 29774, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3638:4:25", @@ -4856,7 +5873,7 @@ "typeString": "uint256" } }, - "id": 29760, + "id": 29775, "nodeType": "ArrayTypeName", "src": "3638:6:25", "typeDescriptions": { @@ -4869,7 +5886,7 @@ ], "src": "3637:23:25" }, - "scope": 29764, + "scope": 29779, "stateMutability": "view", "virtual": false, "visibility": "external" @@ -4882,22 +5899,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29764 + 29779 ], "name": "IUniswapV2Router01", "nameLocation": "83:18:25", - "scope": 29850, + "scope": 29865, "usedErrors": [] }, { - "id": 29849, + "id": 29864, "nodeType": "ContractDefinition", "src": "3668:1262:25", "nodes": [ { - "id": 29783, + "id": 29798, "nodeType": "FunctionDefinition", "src": "3726:250:25", + "nodes": [], "functionSelector": "af2979eb", "implemented": false, "kind": "function", @@ -4905,17 +5923,17 @@ "name": "removeLiquidityETHSupportingFeeOnTransferTokens", "nameLocation": "3735:47:25", "parameters": { - "id": 29779, + "id": 29794, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29768, + "id": 29783, "mutability": "mutable", "name": "token", "nameLocation": "3801:5:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3793:13:25", "stateVariable": false, "storageLocation": "default", @@ -4924,7 +5942,7 @@ "typeString": "address" }, "typeName": { - "id": 29767, + "id": 29782, "name": "address", "nodeType": "ElementaryTypeName", "src": "3793:7:25", @@ -4938,12 +5956,12 @@ }, { "constant": false, - "id": 29770, + "id": 29785, "mutability": "mutable", "name": "liquidity", "nameLocation": "3822:9:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3817:14:25", "stateVariable": false, "storageLocation": "default", @@ -4952,7 +5970,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29769, + "id": 29784, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3817:4:25", @@ -4965,12 +5983,12 @@ }, { "constant": false, - "id": 29772, + "id": 29787, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "3847:14:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3842:19:25", "stateVariable": false, "storageLocation": "default", @@ -4979,7 +5997,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29771, + "id": 29786, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3842:4:25", @@ -4992,12 +6010,12 @@ }, { "constant": false, - "id": 29774, + "id": 29789, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "3877:12:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3872:17:25", "stateVariable": false, "storageLocation": "default", @@ -5006,7 +6024,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29773, + "id": 29788, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3872:4:25", @@ -5019,12 +6037,12 @@ }, { "constant": false, - "id": 29776, + "id": 29791, "mutability": "mutable", "name": "to", "nameLocation": "3908:2:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3900:10:25", "stateVariable": false, "storageLocation": "default", @@ -5033,7 +6051,7 @@ "typeString": "address" }, "typeName": { - "id": 29775, + "id": 29790, "name": "address", "nodeType": "ElementaryTypeName", "src": "3900:7:25", @@ -5047,12 +6065,12 @@ }, { "constant": false, - "id": 29778, + "id": 29793, "mutability": "mutable", "name": "deadline", "nameLocation": "3926:8:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3921:13:25", "stateVariable": false, "storageLocation": "default", @@ -5061,7 +6079,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29777, + "id": 29792, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3921:4:25", @@ -5076,17 +6094,17 @@ "src": "3782:159:25" }, "returnParameters": { - "id": 29782, + "id": 29797, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29781, + "id": 29796, "mutability": "mutable", "name": "amountETH", "nameLocation": "3965:9:25", "nodeType": "VariableDeclaration", - "scope": 29783, + "scope": 29798, "src": "3960:14:25", "stateVariable": false, "storageLocation": "default", @@ -5095,7 +6113,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29780, + "id": 29795, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3960:4:25", @@ -5109,15 +6127,16 @@ ], "src": "3959:16:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29808, + "id": 29823, "nodeType": "FunctionDefinition", "src": "3982:317:25", + "nodes": [], "functionSelector": "5b0d5984", "implemented": false, "kind": "function", @@ -5125,17 +6144,17 @@ "name": "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens", "nameLocation": "3991:57:25", "parameters": { - "id": 29804, + "id": 29819, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29785, + "id": 29800, "mutability": "mutable", "name": "token", "nameLocation": "4067:5:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4059:13:25", "stateVariable": false, "storageLocation": "default", @@ -5144,7 +6163,7 @@ "typeString": "address" }, "typeName": { - "id": 29784, + "id": 29799, "name": "address", "nodeType": "ElementaryTypeName", "src": "4059:7:25", @@ -5158,12 +6177,12 @@ }, { "constant": false, - "id": 29787, + "id": 29802, "mutability": "mutable", "name": "liquidity", "nameLocation": "4088:9:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4083:14:25", "stateVariable": false, "storageLocation": "default", @@ -5172,7 +6191,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29786, + "id": 29801, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4083:4:25", @@ -5185,12 +6204,12 @@ }, { "constant": false, - "id": 29789, + "id": 29804, "mutability": "mutable", "name": "amountTokenMin", "nameLocation": "4113:14:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4108:19:25", "stateVariable": false, "storageLocation": "default", @@ -5199,7 +6218,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29788, + "id": 29803, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4108:4:25", @@ -5212,12 +6231,12 @@ }, { "constant": false, - "id": 29791, + "id": 29806, "mutability": "mutable", "name": "amountETHMin", "nameLocation": "4143:12:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4138:17:25", "stateVariable": false, "storageLocation": "default", @@ -5226,7 +6245,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29790, + "id": 29805, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4138:4:25", @@ -5239,12 +6258,12 @@ }, { "constant": false, - "id": 29793, + "id": 29808, "mutability": "mutable", "name": "to", "nameLocation": "4174:2:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4166:10:25", "stateVariable": false, "storageLocation": "default", @@ -5253,7 +6272,7 @@ "typeString": "address" }, "typeName": { - "id": 29792, + "id": 29807, "name": "address", "nodeType": "ElementaryTypeName", "src": "4166:7:25", @@ -5267,12 +6286,12 @@ }, { "constant": false, - "id": 29795, + "id": 29810, "mutability": "mutable", "name": "deadline", "nameLocation": "4192:8:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4187:13:25", "stateVariable": false, "storageLocation": "default", @@ -5281,7 +6300,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29794, + "id": 29809, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4187:4:25", @@ -5294,12 +6313,12 @@ }, { "constant": false, - "id": 29797, + "id": 29812, "mutability": "mutable", "name": "approveMax", "nameLocation": "4216:10:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4211:15:25", "stateVariable": false, "storageLocation": "default", @@ -5308,7 +6327,7 @@ "typeString": "bool" }, "typeName": { - "id": 29796, + "id": 29811, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4211:4:25", @@ -5321,12 +6340,12 @@ }, { "constant": false, - "id": 29799, + "id": 29814, "mutability": "mutable", "name": "v", "nameLocation": "4234:1:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4228:7:25", "stateVariable": false, "storageLocation": "default", @@ -5335,7 +6354,7 @@ "typeString": "uint8" }, "typeName": { - "id": 29798, + "id": 29813, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "4228:5:25", @@ -5348,12 +6367,12 @@ }, { "constant": false, - "id": 29801, + "id": 29816, "mutability": "mutable", "name": "r", "nameLocation": "4245:1:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4237:9:25", "stateVariable": false, "storageLocation": "default", @@ -5362,7 +6381,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29800, + "id": 29815, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4237:7:25", @@ -5375,12 +6394,12 @@ }, { "constant": false, - "id": 29803, + "id": 29818, "mutability": "mutable", "name": "s", "nameLocation": "4256:1:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4248:9:25", "stateVariable": false, "storageLocation": "default", @@ -5389,7 +6408,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 29802, + "id": 29817, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4248:7:25", @@ -5404,17 +6423,17 @@ "src": "4048:216:25" }, "returnParameters": { - "id": 29807, + "id": 29822, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29806, + "id": 29821, "mutability": "mutable", "name": "amountETH", "nameLocation": "4288:9:25", "nodeType": "VariableDeclaration", - "scope": 29808, + "scope": 29823, "src": "4283:14:25", "stateVariable": false, "storageLocation": "default", @@ -5423,7 +6442,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29805, + "id": 29820, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4283:4:25", @@ -5437,15 +6456,16 @@ ], "src": "4282:16:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29822, + "id": 29837, "nodeType": "FunctionDefinition", "src": "4307:210:25", + "nodes": [], "functionSelector": "5c11d795", "implemented": false, "kind": "function", @@ -5453,17 +6473,17 @@ "name": "swapExactTokensForTokensSupportingFeeOnTransferTokens", "nameLocation": "4316:53:25", "parameters": { - "id": 29820, + "id": 29835, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29810, + "id": 29825, "mutability": "mutable", "name": "amountIn", "nameLocation": "4385:8:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4380:13:25", "stateVariable": false, "storageLocation": "default", @@ -5472,7 +6492,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29809, + "id": 29824, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4380:4:25", @@ -5485,12 +6505,12 @@ }, { "constant": false, - "id": 29812, + "id": 29827, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "4409:12:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4404:17:25", "stateVariable": false, "storageLocation": "default", @@ -5499,7 +6519,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29811, + "id": 29826, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4404:4:25", @@ -5512,12 +6532,12 @@ }, { "constant": false, - "id": 29815, + "id": 29830, "mutability": "mutable", "name": "path", "nameLocation": "4451:4:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4432:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -5527,7 +6547,7 @@ }, "typeName": { "baseType": { - "id": 29813, + "id": 29828, "name": "address", "nodeType": "ElementaryTypeName", "src": "4432:7:25", @@ -5537,7 +6557,7 @@ "typeString": "address" } }, - "id": 29814, + "id": 29829, "nodeType": "ArrayTypeName", "src": "4432:9:25", "typeDescriptions": { @@ -5549,12 +6569,12 @@ }, { "constant": false, - "id": 29817, + "id": 29832, "mutability": "mutable", "name": "to", "nameLocation": "4474:2:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4466:10:25", "stateVariable": false, "storageLocation": "default", @@ -5563,7 +6583,7 @@ "typeString": "address" }, "typeName": { - "id": 29816, + "id": 29831, "name": "address", "nodeType": "ElementaryTypeName", "src": "4466:7:25", @@ -5577,12 +6597,12 @@ }, { "constant": false, - "id": 29819, + "id": 29834, "mutability": "mutable", "name": "deadline", "nameLocation": "4492:8:25", "nodeType": "VariableDeclaration", - "scope": 29822, + "scope": 29837, "src": "4487:13:25", "stateVariable": false, "storageLocation": "default", @@ -5591,7 +6611,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29818, + "id": 29833, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4487:4:25", @@ -5606,20 +6626,21 @@ "src": "4369:138:25" }, "returnParameters": { - "id": 29821, + "id": 29836, "nodeType": "ParameterList", "parameters": [], "src": "4516:0:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 29834, + "id": 29849, "nodeType": "FunctionDefinition", "src": "4523:191:25", + "nodes": [], "functionSelector": "b6f9de95", "implemented": false, "kind": "function", @@ -5627,17 +6648,17 @@ "name": "swapExactETHForTokensSupportingFeeOnTransferTokens", "nameLocation": "4532:50:25", "parameters": { - "id": 29832, + "id": 29847, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29824, + "id": 29839, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "4598:12:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4593:17:25", "stateVariable": false, "storageLocation": "default", @@ -5646,7 +6667,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29823, + "id": 29838, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4593:4:25", @@ -5659,12 +6680,12 @@ }, { "constant": false, - "id": 29827, + "id": 29842, "mutability": "mutable", "name": "path", "nameLocation": "4640:4:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4621:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -5674,7 +6695,7 @@ }, "typeName": { "baseType": { - "id": 29825, + "id": 29840, "name": "address", "nodeType": "ElementaryTypeName", "src": "4621:7:25", @@ -5684,7 +6705,7 @@ "typeString": "address" } }, - "id": 29826, + "id": 29841, "nodeType": "ArrayTypeName", "src": "4621:9:25", "typeDescriptions": { @@ -5696,12 +6717,12 @@ }, { "constant": false, - "id": 29829, + "id": 29844, "mutability": "mutable", "name": "to", "nameLocation": "4663:2:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4655:10:25", "stateVariable": false, "storageLocation": "default", @@ -5710,7 +6731,7 @@ "typeString": "address" }, "typeName": { - "id": 29828, + "id": 29843, "name": "address", "nodeType": "ElementaryTypeName", "src": "4655:7:25", @@ -5724,12 +6745,12 @@ }, { "constant": false, - "id": 29831, + "id": 29846, "mutability": "mutable", "name": "deadline", "nameLocation": "4681:8:25", "nodeType": "VariableDeclaration", - "scope": 29834, + "scope": 29849, "src": "4676:13:25", "stateVariable": false, "storageLocation": "default", @@ -5738,7 +6759,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29830, + "id": 29845, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4676:4:25", @@ -5753,20 +6774,21 @@ "src": "4582:114:25" }, "returnParameters": { - "id": 29833, + "id": 29848, "nodeType": "ParameterList", "parameters": [], "src": "4713:0:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "payable", "virtual": false, "visibility": "external" }, { - "id": 29848, + "id": 29863, "nodeType": "FunctionDefinition", "src": "4720:207:25", + "nodes": [], "functionSelector": "791ac947", "implemented": false, "kind": "function", @@ -5774,17 +6796,17 @@ "name": "swapExactTokensForETHSupportingFeeOnTransferTokens", "nameLocation": "4729:50:25", "parameters": { - "id": 29846, + "id": 29861, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29836, + "id": 29851, "mutability": "mutable", "name": "amountIn", "nameLocation": "4795:8:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4790:13:25", "stateVariable": false, "storageLocation": "default", @@ -5793,7 +6815,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29835, + "id": 29850, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4790:4:25", @@ -5806,12 +6828,12 @@ }, { "constant": false, - "id": 29838, + "id": 29853, "mutability": "mutable", "name": "amountOutMin", "nameLocation": "4819:12:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4814:17:25", "stateVariable": false, "storageLocation": "default", @@ -5820,7 +6842,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29837, + "id": 29852, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4814:4:25", @@ -5833,12 +6855,12 @@ }, { "constant": false, - "id": 29841, + "id": 29856, "mutability": "mutable", "name": "path", "nameLocation": "4861:4:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4842:23:25", "stateVariable": false, "storageLocation": "calldata", @@ -5848,7 +6870,7 @@ }, "typeName": { "baseType": { - "id": 29839, + "id": 29854, "name": "address", "nodeType": "ElementaryTypeName", "src": "4842:7:25", @@ -5858,7 +6880,7 @@ "typeString": "address" } }, - "id": 29840, + "id": 29855, "nodeType": "ArrayTypeName", "src": "4842:9:25", "typeDescriptions": { @@ -5870,12 +6892,12 @@ }, { "constant": false, - "id": 29843, + "id": 29858, "mutability": "mutable", "name": "to", "nameLocation": "4884:2:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4876:10:25", "stateVariable": false, "storageLocation": "default", @@ -5884,7 +6906,7 @@ "typeString": "address" }, "typeName": { - "id": 29842, + "id": 29857, "name": "address", "nodeType": "ElementaryTypeName", "src": "4876:7:25", @@ -5898,12 +6920,12 @@ }, { "constant": false, - "id": 29845, + "id": 29860, "mutability": "mutable", "name": "deadline", "nameLocation": "4902:8:25", "nodeType": "VariableDeclaration", - "scope": 29848, + "scope": 29863, "src": "4897:13:25", "stateVariable": false, "storageLocation": "default", @@ -5912,7 +6934,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29844, + "id": 29859, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4897:4:25", @@ -5927,12 +6949,12 @@ "src": "4779:138:25" }, "returnParameters": { - "id": 29847, + "id": 29862, "nodeType": "ParameterList", "parameters": [], "src": "4926:0:25" }, - "scope": 29849, + "scope": 29864, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -5942,13 +6964,16 @@ "baseContracts": [ { "baseName": { - "id": 29765, + "id": 29780, "name": "IUniswapV2Router01", + "nameLocations": [ + "3700:18:25" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29764, + "referencedDeclaration": 29779, "src": "3700:18:25" }, - "id": 29766, + "id": 29781, "nodeType": "InheritanceSpecifier", "src": "3700:18:25" } @@ -5958,12 +6983,12 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29849, - 29764 + 29864, + 29779 ], "name": "IUniswapV2Router02", "nameLocation": "3678:18:25", - "scope": 29850, + "scope": 29865, "usedErrors": [] } ], diff --git a/out/InterfacesAggregated.sol/ITreasury.json b/out/InterfacesAggregated.sol/ITreasury.json index 40e8a63..7865562 100644 --- a/out/InterfacesAggregated.sol/ITreasury.json +++ b/out/InterfacesAggregated.sol/ITreasury.json @@ -27,27 +27,89 @@ "methodIdentifiers": { "updateTaxesAccrued(uint256)": "755965b8" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"updateTaxesAccrued\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/InterfacesAggregated.sol\":\"ITreasury\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/InterfacesAggregated.sol\":{\"keccak256\":\"0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128\",\"dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "amt", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateTaxesAccrued" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/InterfacesAggregated.sol": "ITreasury" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/InterfacesAggregated.sol": { + "keccak256": "0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095", + "urls": [ + "bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128", + "dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/InterfacesAggregated.sol", - "id": 29874, + "id": 29889, "exportedSymbols": { "ITreasury": [ - 29867 + 29882 ], "IUniswapV2Factory": [ - 29861 + 29876 ], "IVesting": [ - 29873 + 29888 ] }, "nodeType": "SourceUnit", "src": "46:332:26", "nodes": [ { - "id": 29851, + "id": 29866, "nodeType": "PragmaDirective", "src": "46:23:26", + "nodes": [], "literals": [ "solidity", "^", @@ -56,14 +118,15 @@ ] }, { - "id": 29861, + "id": 29876, "nodeType": "ContractDefinition", "src": "73:122:26", "nodes": [ { - "id": 29860, + "id": 29875, "nodeType": "FunctionDefinition", "src": "108:84:26", + "nodes": [], "functionSelector": "c9c65396", "implemented": false, "kind": "function", @@ -71,17 +134,17 @@ "name": "createPair", "nameLocation": "117:10:26", "parameters": { - "id": 29856, + "id": 29871, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29853, + "id": 29868, "mutability": "mutable", "name": "tokenA", "nameLocation": "136:6:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "128:14:26", "stateVariable": false, "storageLocation": "default", @@ -90,7 +153,7 @@ "typeString": "address" }, "typeName": { - "id": 29852, + "id": 29867, "name": "address", "nodeType": "ElementaryTypeName", "src": "128:7:26", @@ -104,12 +167,12 @@ }, { "constant": false, - "id": 29855, + "id": 29870, "mutability": "mutable", "name": "tokenB", "nameLocation": "152:6:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "144:14:26", "stateVariable": false, "storageLocation": "default", @@ -118,7 +181,7 @@ "typeString": "address" }, "typeName": { - "id": 29854, + "id": 29869, "name": "address", "nodeType": "ElementaryTypeName", "src": "144:7:26", @@ -134,17 +197,17 @@ "src": "127:32:26" }, "returnParameters": { - "id": 29859, + "id": 29874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29858, + "id": 29873, "mutability": "mutable", "name": "pair", "nameLocation": "186:4:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "178:12:26", "stateVariable": false, "storageLocation": "default", @@ -153,7 +216,7 @@ "typeString": "address" }, "typeName": { - "id": 29857, + "id": 29872, "name": "address", "nodeType": "ElementaryTypeName", "src": "178:7:26", @@ -168,7 +231,7 @@ ], "src": "177:14:26" }, - "scope": 29861, + "scope": 29876, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -181,22 +244,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29861 + 29876 ], "name": "IUniswapV2Factory", "nameLocation": "83:17:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] }, { - "id": 29867, + "id": 29882, "nodeType": "ContractDefinition", "src": "199:77:26", "nodes": [ { - "id": 29866, + "id": 29881, "nodeType": "FunctionDefinition", "src": "226:47:26", + "nodes": [], "functionSelector": "755965b8", "implemented": false, "kind": "function", @@ -204,17 +268,17 @@ "name": "updateTaxesAccrued", "nameLocation": "235:18:26", "parameters": { - "id": 29864, + "id": 29879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29863, + "id": 29878, "mutability": "mutable", "name": "amt", "nameLocation": "259:3:26", "nodeType": "VariableDeclaration", - "scope": 29866, + "scope": 29881, "src": "254:8:26", "stateVariable": false, "storageLocation": "default", @@ -223,7 +287,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29862, + "id": 29877, "name": "uint", "nodeType": "ElementaryTypeName", "src": "254:4:26", @@ -238,12 +302,12 @@ "src": "253:10:26" }, "returnParameters": { - "id": 29865, + "id": 29880, "nodeType": "ParameterList", "parameters": [], "src": "272:0:26" }, - "scope": 29867, + "scope": 29882, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -256,22 +320,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29867 + 29882 ], "name": "ITreasury", "nameLocation": "209:9:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] }, { - "id": 29873, + "id": 29888, "nodeType": "ContractDefinition", "src": "280:98:26", "nodes": [ { - "id": 29872, + "id": 29887, "nodeType": "FunctionDefinition", "src": "306:69:26", + "nodes": [], "functionSelector": "08ac7624", "implemented": false, "kind": "function", @@ -279,23 +344,23 @@ "name": "getAllVestedTokens", "nameLocation": "315:18:26", "parameters": { - "id": 29868, + "id": 29883, "nodeType": "ParameterList", "parameters": [], "src": "333:2:26" }, "returnParameters": { - "id": 29871, + "id": 29886, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29870, + "id": 29885, "mutability": "mutable", "name": "amount", "nameLocation": "367:6:26", "nodeType": "VariableDeclaration", - "scope": 29872, + "scope": 29887, "src": "359:14:26", "stateVariable": false, "storageLocation": "default", @@ -304,7 +369,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29869, + "id": 29884, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "359:7:26", @@ -318,7 +383,7 @@ ], "src": "358:16:26" }, - "scope": 29873, + "scope": 29888, "stateMutability": "view", "virtual": false, "visibility": "external" @@ -331,11 +396,11 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29873 + 29888 ], "name": "IVesting", "nameLocation": "290:8:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] } ], diff --git a/out/InterfacesAggregated.sol/IUniswapV2Factory.json b/out/InterfacesAggregated.sol/IUniswapV2Factory.json index 5dffdf8..d4b31dc 100644 --- a/out/InterfacesAggregated.sol/IUniswapV2Factory.json +++ b/out/InterfacesAggregated.sol/IUniswapV2Factory.json @@ -38,27 +38,101 @@ "methodIdentifiers": { "createPair(address,address)": "c9c65396" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"tokenA\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenB\",\"type\":\"address\"}],\"name\":\"createPair\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"pair\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/InterfacesAggregated.sol\":\"IUniswapV2Factory\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/InterfacesAggregated.sol\":{\"keccak256\":\"0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128\",\"dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "tokenA", + "type": "address" + }, + { + "internalType": "address", + "name": "tokenB", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createPair", + "outputs": [ + { + "internalType": "address", + "name": "pair", + "type": "address" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/InterfacesAggregated.sol": "IUniswapV2Factory" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/InterfacesAggregated.sol": { + "keccak256": "0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095", + "urls": [ + "bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128", + "dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/InterfacesAggregated.sol", - "id": 29874, + "id": 29889, "exportedSymbols": { "ITreasury": [ - 29867 + 29882 ], "IUniswapV2Factory": [ - 29861 + 29876 ], "IVesting": [ - 29873 + 29888 ] }, "nodeType": "SourceUnit", "src": "46:332:26", "nodes": [ { - "id": 29851, + "id": 29866, "nodeType": "PragmaDirective", "src": "46:23:26", + "nodes": [], "literals": [ "solidity", "^", @@ -67,14 +141,15 @@ ] }, { - "id": 29861, + "id": 29876, "nodeType": "ContractDefinition", "src": "73:122:26", "nodes": [ { - "id": 29860, + "id": 29875, "nodeType": "FunctionDefinition", "src": "108:84:26", + "nodes": [], "functionSelector": "c9c65396", "implemented": false, "kind": "function", @@ -82,17 +157,17 @@ "name": "createPair", "nameLocation": "117:10:26", "parameters": { - "id": 29856, + "id": 29871, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29853, + "id": 29868, "mutability": "mutable", "name": "tokenA", "nameLocation": "136:6:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "128:14:26", "stateVariable": false, "storageLocation": "default", @@ -101,7 +176,7 @@ "typeString": "address" }, "typeName": { - "id": 29852, + "id": 29867, "name": "address", "nodeType": "ElementaryTypeName", "src": "128:7:26", @@ -115,12 +190,12 @@ }, { "constant": false, - "id": 29855, + "id": 29870, "mutability": "mutable", "name": "tokenB", "nameLocation": "152:6:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "144:14:26", "stateVariable": false, "storageLocation": "default", @@ -129,7 +204,7 @@ "typeString": "address" }, "typeName": { - "id": 29854, + "id": 29869, "name": "address", "nodeType": "ElementaryTypeName", "src": "144:7:26", @@ -145,17 +220,17 @@ "src": "127:32:26" }, "returnParameters": { - "id": 29859, + "id": 29874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29858, + "id": 29873, "mutability": "mutable", "name": "pair", "nameLocation": "186:4:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "178:12:26", "stateVariable": false, "storageLocation": "default", @@ -164,7 +239,7 @@ "typeString": "address" }, "typeName": { - "id": 29857, + "id": 29872, "name": "address", "nodeType": "ElementaryTypeName", "src": "178:7:26", @@ -179,7 +254,7 @@ ], "src": "177:14:26" }, - "scope": 29861, + "scope": 29876, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -192,22 +267,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29861 + 29876 ], "name": "IUniswapV2Factory", "nameLocation": "83:17:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] }, { - "id": 29867, + "id": 29882, "nodeType": "ContractDefinition", "src": "199:77:26", "nodes": [ { - "id": 29866, + "id": 29881, "nodeType": "FunctionDefinition", "src": "226:47:26", + "nodes": [], "functionSelector": "755965b8", "implemented": false, "kind": "function", @@ -215,17 +291,17 @@ "name": "updateTaxesAccrued", "nameLocation": "235:18:26", "parameters": { - "id": 29864, + "id": 29879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29863, + "id": 29878, "mutability": "mutable", "name": "amt", "nameLocation": "259:3:26", "nodeType": "VariableDeclaration", - "scope": 29866, + "scope": 29881, "src": "254:8:26", "stateVariable": false, "storageLocation": "default", @@ -234,7 +310,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29862, + "id": 29877, "name": "uint", "nodeType": "ElementaryTypeName", "src": "254:4:26", @@ -249,12 +325,12 @@ "src": "253:10:26" }, "returnParameters": { - "id": 29865, + "id": 29880, "nodeType": "ParameterList", "parameters": [], "src": "272:0:26" }, - "scope": 29867, + "scope": 29882, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -267,22 +343,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29867 + 29882 ], "name": "ITreasury", "nameLocation": "209:9:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] }, { - "id": 29873, + "id": 29888, "nodeType": "ContractDefinition", "src": "280:98:26", "nodes": [ { - "id": 29872, + "id": 29887, "nodeType": "FunctionDefinition", "src": "306:69:26", + "nodes": [], "functionSelector": "08ac7624", "implemented": false, "kind": "function", @@ -290,23 +367,23 @@ "name": "getAllVestedTokens", "nameLocation": "315:18:26", "parameters": { - "id": 29868, + "id": 29883, "nodeType": "ParameterList", "parameters": [], "src": "333:2:26" }, "returnParameters": { - "id": 29871, + "id": 29886, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29870, + "id": 29885, "mutability": "mutable", "name": "amount", "nameLocation": "367:6:26", "nodeType": "VariableDeclaration", - "scope": 29872, + "scope": 29887, "src": "359:14:26", "stateVariable": false, "storageLocation": "default", @@ -315,7 +392,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29869, + "id": 29884, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "359:7:26", @@ -329,7 +406,7 @@ ], "src": "358:16:26" }, - "scope": 29873, + "scope": 29888, "stateMutability": "view", "virtual": false, "visibility": "external" @@ -342,11 +419,11 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29873 + 29888 ], "name": "IVesting", "nameLocation": "290:8:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] } ], diff --git a/out/InterfacesAggregated.sol/IVesting.json b/out/InterfacesAggregated.sol/IVesting.json index a5d8fa6..51b496d 100644 --- a/out/InterfacesAggregated.sol/IVesting.json +++ b/out/InterfacesAggregated.sol/IVesting.json @@ -27,27 +27,90 @@ "methodIdentifiers": { "getAllVestedTokens()": "08ac7624" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"getAllVestedTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/InterfacesAggregated.sol\":\"IVesting\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/interfaces/InterfacesAggregated.sol\":{\"keccak256\":\"0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128\",\"dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "getAllVestedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/interfaces/InterfacesAggregated.sol": "IVesting" + }, + "libraries": {} + }, + "sources": { + "src/interfaces/InterfacesAggregated.sol": { + "keccak256": "0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095", + "urls": [ + "bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128", + "dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/interfaces/InterfacesAggregated.sol", - "id": 29874, + "id": 29889, "exportedSymbols": { "ITreasury": [ - 29867 + 29882 ], "IUniswapV2Factory": [ - 29861 + 29876 ], "IVesting": [ - 29873 + 29888 ] }, "nodeType": "SourceUnit", "src": "46:332:26", "nodes": [ { - "id": 29851, + "id": 29866, "nodeType": "PragmaDirective", "src": "46:23:26", + "nodes": [], "literals": [ "solidity", "^", @@ -56,14 +119,15 @@ ] }, { - "id": 29861, + "id": 29876, "nodeType": "ContractDefinition", "src": "73:122:26", "nodes": [ { - "id": 29860, + "id": 29875, "nodeType": "FunctionDefinition", "src": "108:84:26", + "nodes": [], "functionSelector": "c9c65396", "implemented": false, "kind": "function", @@ -71,17 +135,17 @@ "name": "createPair", "nameLocation": "117:10:26", "parameters": { - "id": 29856, + "id": 29871, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29853, + "id": 29868, "mutability": "mutable", "name": "tokenA", "nameLocation": "136:6:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "128:14:26", "stateVariable": false, "storageLocation": "default", @@ -90,7 +154,7 @@ "typeString": "address" }, "typeName": { - "id": 29852, + "id": 29867, "name": "address", "nodeType": "ElementaryTypeName", "src": "128:7:26", @@ -104,12 +168,12 @@ }, { "constant": false, - "id": 29855, + "id": 29870, "mutability": "mutable", "name": "tokenB", "nameLocation": "152:6:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "144:14:26", "stateVariable": false, "storageLocation": "default", @@ -118,7 +182,7 @@ "typeString": "address" }, "typeName": { - "id": 29854, + "id": 29869, "name": "address", "nodeType": "ElementaryTypeName", "src": "144:7:26", @@ -134,17 +198,17 @@ "src": "127:32:26" }, "returnParameters": { - "id": 29859, + "id": 29874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29858, + "id": 29873, "mutability": "mutable", "name": "pair", "nameLocation": "186:4:26", "nodeType": "VariableDeclaration", - "scope": 29860, + "scope": 29875, "src": "178:12:26", "stateVariable": false, "storageLocation": "default", @@ -153,7 +217,7 @@ "typeString": "address" }, "typeName": { - "id": 29857, + "id": 29872, "name": "address", "nodeType": "ElementaryTypeName", "src": "178:7:26", @@ -168,7 +232,7 @@ ], "src": "177:14:26" }, - "scope": 29861, + "scope": 29876, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -181,22 +245,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29861 + 29876 ], "name": "IUniswapV2Factory", "nameLocation": "83:17:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] }, { - "id": 29867, + "id": 29882, "nodeType": "ContractDefinition", "src": "199:77:26", "nodes": [ { - "id": 29866, + "id": 29881, "nodeType": "FunctionDefinition", "src": "226:47:26", + "nodes": [], "functionSelector": "755965b8", "implemented": false, "kind": "function", @@ -204,17 +269,17 @@ "name": "updateTaxesAccrued", "nameLocation": "235:18:26", "parameters": { - "id": 29864, + "id": 29879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29863, + "id": 29878, "mutability": "mutable", "name": "amt", "nameLocation": "259:3:26", "nodeType": "VariableDeclaration", - "scope": 29866, + "scope": 29881, "src": "254:8:26", "stateVariable": false, "storageLocation": "default", @@ -223,7 +288,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29862, + "id": 29877, "name": "uint", "nodeType": "ElementaryTypeName", "src": "254:4:26", @@ -238,12 +303,12 @@ "src": "253:10:26" }, "returnParameters": { - "id": 29865, + "id": 29880, "nodeType": "ParameterList", "parameters": [], "src": "272:0:26" }, - "scope": 29867, + "scope": 29882, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -256,22 +321,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29867 + 29882 ], "name": "ITreasury", "nameLocation": "209:9:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] }, { - "id": 29873, + "id": 29888, "nodeType": "ContractDefinition", "src": "280:98:26", "nodes": [ { - "id": 29872, + "id": 29887, "nodeType": "FunctionDefinition", "src": "306:69:26", + "nodes": [], "functionSelector": "08ac7624", "implemented": false, "kind": "function", @@ -279,23 +345,23 @@ "name": "getAllVestedTokens", "nameLocation": "315:18:26", "parameters": { - "id": 29868, + "id": 29883, "nodeType": "ParameterList", "parameters": [], "src": "333:2:26" }, "returnParameters": { - "id": 29871, + "id": 29886, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29870, + "id": 29885, "mutability": "mutable", "name": "amount", "nameLocation": "367:6:26", "nodeType": "VariableDeclaration", - "scope": 29872, + "scope": 29887, "src": "359:14:26", "stateVariable": false, "storageLocation": "default", @@ -304,7 +370,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29869, + "id": 29884, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "359:7:26", @@ -318,7 +384,7 @@ ], "src": "358:16:26" }, - "scope": 29873, + "scope": 29888, "stateMutability": "view", "virtual": false, "visibility": "external" @@ -331,11 +397,11 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 29873 + 29888 ], "name": "IVesting", "nameLocation": "290:8:26", - "scope": 29874, + "scope": 29889, "usedErrors": [] } ], diff --git a/out/MainDeployment.t.sol/MainDeploymentTest.json b/out/MainDeployment.t.sol/MainDeploymentTest.json index 8f37502..ae269e4 100644 --- a/out/MainDeployment.t.sol/MainDeploymentTest.json +++ b/out/MainDeployment.t.sol/MainDeploymentTest.json @@ -684,6 +684,46 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "test_mainDeploymentTest_claim_edge_cases", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "test_mainDeploymentTest_claim_fuzzing1", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "test_mainDeploymentTest_claim_fuzzing2", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "test_mainDeploymentTest_claim_restrictions", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [], "name": "test_mainDeploymentTest_init_state", @@ -739,13 +779,13 @@ } ], "bytecode": { - "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b031990911617905561894e806100596000396000f3fe60806040523480156200001157600080fd5b5060043610620001455760003560e01c80638c38922f11620000bb578063c060c5f3116200007a578063c060c5f31462000247578063c5ba73ed146200025e578063e70dd6cf1462000267578063eea962101462000270578063fa7626d4146200027a57600080fd5b80638c38922f14620002065780639f71f14a146200020f578063b8dae58b1462000218578063b967b5a71462000222578063ba414fa6146200022c57600080fd5b80633493f4ca11620001085780633493f4ca14620001ae57806338505fb014620001b75780636c676a6014620001c05780637a8fe3c014620001e65780637ed9db5914620001ef57600080fd5b80630a831a15146200014a5780630a9254e41462000156578063174a5be4146200016057806330f7c5c31462000180578063344b14781462000197575b600080fd5b6200015462000288565b005b620001546200082a565b62000169600181565b60405160ff90911681526020015b60405180910390f35b62000154620001913660046200201a565b620009b6565b62000154620001a83660046200201a565b62000b2c565b62000169600b81565b62000169600281565b620001d7620001d136600462002059565b62000c3c565b60405190815260200162000177565b62000169600c81565b6200015462000200366004620020b3565b62000c9a565b62000169600a81565b62000169600481565b6200015462000e69565b62000154620016ae565b6200023662001794565b604051901515815260200162000177565b620001d7620002583660046200201a565b620018c9565b62000169600381565b62000169600081565b62000154620018da565b600054620002369060ff1681565b601954604080516318160ddd60e01b815290516200030e926001600160a01b0316916318160ddd9160048083019260209291908290030181865afa158015620002d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fb9190620020ee565b6b033b2e3c9fd0803ce800000062001b33565b6019546040516370a0823160e01b81523060048201526200035a916001600160a01b0316906370a0823190602401602060405180830381865afa158015620002d5573d6000803e3d6000fd5b6019546018546040516370a0823160e01b81526001600160a01b039182166004820152620003dd9291909116906370a08231906024015b602060405180830381865afa158015620003af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d59190620020ee565b600062001b33565b60195460408051638da5cb5b60e01b8152905162000457926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa1580156200042a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000450919062002108565b3062001c0c565b601954604080516311318fbb60e21b81529051620004dc926001600160a01b0316916344c63eec9160048083019260209291908290030181865afa158015620004a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004ca919062002108565b6018546001600160a01b031662001c0c565b601954604080516311318fbb60e21b81529051620005cb926001600160a01b031691639b19251a9183916344c63eec9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000557919062002108565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015b602060405180830381865afa1580156200059d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005c391906200212f565b600162001d06565b601954604051634d8c928d60e11b81526001600160a01b03909116600482018190526200060191639b19251a906024016200057f565b60195460408051638da5cb5b60e01b8152905162000656926001600160a01b031691639b19251a918391638da5cb5b9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b601854604080516385d4cad360e01b81529051620006db926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620006a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006c9919062002108565b6019546001600160a01b031662001c0c565b6018546040805163f02c6d8f60e01b8152905162000728926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa158015620003af573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b81529051620007a3926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200079b91906200212f565b600062001d06565b60185460408051638da5cb5b60e01b8152905162000828926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015620007f0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000816919062002108565b6002546001600160a01b031662001c0c565b565b62000834620016ae565b6200083e620018da565b633b9aca006012633b9aca0080604051620008599062001ff0565b93845260c060208501819052600a908501526950726f7665205a65726f60b01b60e0850152610100604085018190526005908501526450524f564560d81b61012085015260ff9092166060840152608083015260a082015261014001604051809103906000f080158015620008d2573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b0392831690811790915560025460405191921690620009079062001ffe565b6001600160a01b03928316815291166020820152604001604051809103906000f0801580156200093b573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b03928316908117909155601954604051631bdbfcef60e21b8152600481019290925290911690636f6ff3bc90602401600060405180830381600087803b1580156200099b57600080fd5b505af1158015620009b0573d6000803e3d6000fd5b50505050565b6000828411620009d257620009cc848462002165565b620009de565b620009de838562002165565b905080600003620009ef5750505050565b60008415620009ff578462000a01565b835b9050600062000a1284600a6200227e565b62000a2a906b033b2e3c9fd0803ce8000000620022a2565b8262000a436b033b2e3c9fd0803ce800000086620022b9565b62000a4f9190620022a2565b1090508062000b2457604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b6080820152602081018690529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528660405162000aea9190620022db565b60405180910390a1600080516020620088f98339815191528560405162000b12919062002314565b60405180910390a162000b2462001e7d565b505050505050565b600082841162000b485762000b42848462002165565b62000b54565b62000b54838562002165565b9050818111158062000c3557604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e63652000000000000000006080820152602081018590529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528560405162000bfb9190620022db565b60405180910390a1600080516020620088f98339815191528460405162000c23919062002314565b60405180910390a162000c3562001e7d565b5050505050565b60008415801562000c4b575081155b1562000c5a5750600062000c92565b83830362000c6a57508162000c92565b8362000c77818562002165565b62000c8390876200233f565b62000c8f919062002356565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562000cff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d259190620020ee565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb90859060600160405160208183030381529060405280519060200120878562000d7d919062002356565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801562000dcc57600080fd5b505af115801562000de1573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000b249350861691506370a0823190602401602060405180830381865afa15801562000e31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e579190620020ee565b62000e63868462002356565b62001b33565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015269d3c21bcecceda10000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562000ecd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ef391906200212f565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562000f4e57600080fd5b505af115801562000f63573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b03928316600482015290821660248201526044810186905291169250636c4f94dc91506064016020604051808303816000875af115801562000fc8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fee91906200212f565b62000ffd5762000ffd62002371565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200104c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200107291906200212f565b62001081576200108162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620010bd9291909116906370a082319060240162000391565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200110c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200113291906200212f565b62001141576200114162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620011d69291909116906370a0823190602401602060405180830381865afa15801562001195573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011bb9190620020ee565b6064620011ca84600c620022b9565b62000e639190620022a2565b620011e46224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001233573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200125991906200212f565b62001268576200126862002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620012f19291909116906370a0823190602401602060405180830381865afa158015620012bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012e29190620020ee565b6064620011ca846014620022b9565b620012ff6224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200134e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200137491906200212f565b62001383576200138362002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200140c9291909116906370a0823190602401602060405180830381865afa158015620013d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013fd9190620020ee565b6064620011ca84601c620022b9565b6200141a626ebe0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001469573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200148f91906200212f565b6200149e576200149e62002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620015279291909116906370a0823190602401602060405180830381865afa158015620014f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015189190620020ee565b6064620011ca846034620022b9565b6200153562dd7c0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001584573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015aa91906200212f565b620015b957620015b962002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200163a9291909116906370a0823190602401602060405180830381865afa1580156200160d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016339190620020ee565b8262001b33565b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200169957600080fd5b505af115801562000c35573d6000803e3d6000fd5b604051620016bc906200200c565b604051809103906000f080158015620016d9573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405162001708906200200c565b604051809103906000f08015801562001725573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405162001754906200200c565b604051809103906000f08015801562001771573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff1615620017b55750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15620018c45760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b8284015282518083038401815260608301909352600092909162001846917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001620023b6565b60408051601f19818403018152908290526200186291620023e9565b6000604051808303816000865af19150503d8060008114620018a1576040519150601f19603f3d011682016040523d82523d6000602084013e620018a6565b606091505b5091505080806020019051810190620018c091906200212f565b9150505b919050565b600062000c92848484600062000c3c565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b80821462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001ba69060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a1600080516020620088f98339815191528160405162001bce9190620022db565b60405180910390a1600080516020620088f98339815191528260405162001bf6919062002314565b60405180910390a162001c0862001e7d565b5050565b806001600160a01b0316826001600160a01b03161462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001c949060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8160405162001ccd919062002407565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8260405162001bf691906200244c565b8015158215151462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001d7d9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838162001dd0576040518060400160405280600581526020016466616c736560d81b81525062001dee565b604051806040016040528060048152602001637472756560e01b8152505b60405162001dfd9190620024a5565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838262001e50576040518060400160405280600581526020016466616c736560d81b81525062001e6e565b604051806040016040528060048152602001637472756560e01b8152505b60405162001bf69190620024e4565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1562001f7f5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f198184030181529082905262001f1a9291602001620023b6565b60408051601f198184030181529082905262001f3691620023e9565b6000604051808303816000865af19150503d806000811462001f75576040519150601f19603f3d011682016040523d82523d6000602084013e62001f7a565b606091505b505050505b6000805461ff001916610100179055565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0262001fb6834262002356565b6040518263ffffffff1660e01b815260040162001fd591815260200190565b600060405180830381600087803b1580156200169957600080fd5b614499806200251083390190565b61196d80620069a983390190565b6105e3806200831683390190565b6000806000606084860312156200203057600080fd5b505081359360208301359350604090920135919050565b80151581146200205657600080fd5b50565b600080600080608085870312156200207057600080fd5b8435935060208501359250604085013591506060850135620020928162002047565b939692955090935050565b6001600160a01b03811681146200205657600080fd5b600080600060608486031215620020c957600080fd5b833592506020840135620020dd816200209d565b929592945050506040919091013590565b6000602082840312156200210157600080fd5b5051919050565b6000602082840312156200211b57600080fd5b815162002128816200209d565b9392505050565b6000602082840312156200214257600080fd5b8151620021288162002047565b634e487b7160e01b600052601160045260246000fd5b6000828210156200217a576200217a6200214f565b500390565b600181815b80851115620021c0578160001904821115620021a457620021a46200214f565b80851615620021b257918102915b93841c939080029062002184565b509250929050565b600082620021d95750600162002278565b81620021e85750600062002278565b81600181146200220157600281146200220c576200222c565b600191505062002278565b60ff8411156200222057620022206200214f565b50506001821b62002278565b5060208310610133831016604e8410600b841016171562002251575081810a62002278565b6200225d83836200217f565b80600019048211156200227457620022746200214f565b0290505b92915050565b6000620021288383620021c8565b634e487b7160e01b600052601260045260246000fd5b600082620022b457620022b46200228c565b500490565b6000816000190483118215151615620022d657620022d66200214f565b500290565b6040815260006200230660408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200230660408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000826200235157620023516200228c565b500690565b600082198211156200236c576200236c6200214f565b500190565b634e487b7160e01b600052600160045260246000fd5b60005b83811015620023a45781810151838201526020016200238a565b83811115620009b05750506000910152565b6001600160e01b0319831681528151600090620023db81600485016020870162002387565b919091016004019392505050565b60008251620023fd81846020870162002387565b9190910192915050565b6040815260006200243260408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200243260408301600a815269080808081058dd1d585b60b21b602082015260400190565b600081518084526200249181602086016020860162002387565b601f01601f19169290920160200192915050565b604081526000620024d060408301600a8152690808115e1c1958dd195960b21b602082015260400190565b828103602084015262000c92818562002477565b604081526000620024d060408301600a815269080808081058dd1d585b60b21b60208201526040019056fe60a06040526011805460ff191690553480156200001b57600080fd5b5060405162004499380380620044998339810160408190526200003e91620005fc565b848460036200004e83826200072c565b5060046200005d82826200072c565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a6200090b565b6200011190876200091c565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200093e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200093e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200093e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a6200090b565b620002f190836200091c565b600e5560055460ff166200030790600a6200090b565b6200031390826200091c565b600f5560055460ff166200032990600a6200090b565b620003369060016200091c565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a6200090b565b6200040290896200091c565b62000414565b5050505050506200098b565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000970565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b83821115620005f25760008385830101525b9695505050505050565b60008060008060008060c087890312156200061657600080fd5b865160208801519096506001600160401b03808211156200063657600080fd5b620006448a838b0162000545565b965060408901519150808211156200065b57600080fd5b506200066a89828a0162000545565b945050606087015160ff811681146200068257600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006b357607f821691505b602082108103620006d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620007035750805b601f850160051c820191505b8181101562000724578281556001016200070f565b505050505050565b81516001600160401b038111156200074857620007486200052f565b62000760816200075984546200069e565b84620006da565b602080601f8311600181146200079857600084156200077f5750858301515b600019600386901b1c1916600185901b17855562000724565b600085815260208120601f198616915b82811015620007c957888601518255948401946001909101908401620007a8565b5085821015620007e85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200084f578160001904821115620008335762000833620007f8565b808516156200084157918102915b93841c939080029062000813565b509250929050565b600082620008685750600162000529565b81620008775750600062000529565b81600181146200089057600281146200089b57620008bb565b600191505062000529565b60ff841115620008af57620008af620007f8565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008e0575081810a62000529565b620008ec83836200080e565b8060001904821115620009035762000903620007f8565b029392505050565b60006200052660ff84168362000857565b6000816000190483118215151615620009395762000939620007f8565b500290565b6000602082840312156200095157600080fd5b81516001600160a01b03811681146200096957600080fd5b9392505050565b60008219821115620009865762000986620007f8565b500190565b608051613aeb620009ae600039600081816107e20152611c890152613aeb6000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f003360a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220bc03a64286b04608fb74648281473dd9f7d839206dc1cb5360a14ad859ffbfc664736f6c634300080f0033", - "sourceMap": "306:3680:25:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;306:3680:25;;;;;;;;;-1:-1:-1;3122:37:26;3086:77;;;-1:-1:-1;;;;;;3086:77:26;;;;;;306:3680:25;;;;;;", + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b031990911617905561a7c5806200005a6000396000f3fe60806040523480156200001157600080fd5b5060043610620001755760003560e01c80637ed9db5911620000d3578063ba414fa61162000086578063ba414fa6146200029e578063c060c5f314620002b9578063c5ba73ed14620002d0578063e70dd6cf14620002d9578063eea9621014620002e2578063fa7626d414620002ec57600080fd5b80637ed9db59146200024a57806386ef399b14620002615780638c38922f14620002785780639f71f14a1462000281578063b8dae58b146200028a578063b967b5a7146200029457600080fd5b8063344b1478116200012c578063344b147814620001e85780633493f4ca14620001ff57806338505fb014620002085780636686e15414620002115780636c676a60146200021b5780637a8fe3c0146200024157600080fd5b806304740900146200017a5780630a831a1514620001865780630a9254e41462000190578063174a5be4146200019a5780631afcfe2214620001ba57806330f7c5c314620001d1575b600080fd5b62000184620002fa565b005b6200018462000a09565b6200018462000fab565b620001a3600181565b60405160ff90911681526020015b60405180910390f35b62000184620001cb36600462003e93565b62001137565b62000184620001e236600462003ead565b620019a9565b62000184620001f936600462003ead565b62001b1f565b620001a3600b81565b620001a3600281565b6200018462001c28565b620002326200022c36600462003ee9565b620022dd565b604051908152602001620001b1565b620001a3600c81565b620001846200025b36600462003f43565b6200233b565b620001846200027236600462003e93565b6200250a565b620001a3600a81565b620001a3600481565b6200018462002b89565b6200018462003246565b620002a86200332c565b6040519015158152602001620001b1565b62000232620002ca36600462003ead565b62003461565b620001a3600381565b620001a3600081565b620001846200347c565b600054620002a89060ff1681565b60195460185460405163a9059cbb60e01b81526001600160a01b0391821660048201526a0422ca8b0a00a4250000006024820181905292919091169063a9059cbb906044016020604051808303816000875af11580156200035f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000385919062003f7e565b50600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620003d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003fb919062003f7e565b6200040a576200040a62003f9e565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362000453939082169291169069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af115801562000473573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000499919062003f7e565b620004a857620004a862003f9e565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620004f1939082169291169069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af115801562000511573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000537919062003f7e565b62000546576200054662003f9e565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200058a92911690849069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af1158015620005aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005d0919062003f7e565b620005df57620005df62003f9e565b620005ed62127500620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200063c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000662919062003f7e565b62000671576200067162003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620006fc9291909116906370a0823190602401602060405180830381865afa158015620006c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006eb919062003fd8565b691969368974c05b00000062003735565b6200070a62cb0700620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562000759573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200077f919062003f7e565b6200078e576200078e62003f9e565b6019546001546040516370a0823160e01b81526001600160a01b039182166004820152620008199291909116906370a0823190602401602060405180830381865afa158015620007e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000808919062003fd8565b697f0e10af47c1c700000062003735565b6200082762b89200620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562000876573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200089c919062003f7e565b620008ab57620008ab62003f9e565b6019546001546040516370a0823160e01b81526001600160a01b039182166004820152620009379291909116906370a08231906024015b602060405180830381865afa15801562000900573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000926919062003fd8565b69d3c21bcecceda100000062003735565b620009466301dfe200620036d5565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562000995573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620009bb919062003f7e565b620009ca57620009ca62003f9e565b6019546002546040516370a0823160e01b81526001600160a01b03918216600482015262000a069291909116906370a0823190602401620008e2565b50565b601954604080516318160ddd60e01b8152905162000a8f926001600160a01b0316916318160ddd9160048083019260209291908290030181865afa15801562000a56573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a7c919062003fd8565b6b033b2e3c9fd0803ce800000062003735565b6019546040516370a0823160e01b815230600482015262000adb916001600160a01b0316906370a0823190602401602060405180830381865afa15801562000a56573d6000803e3d6000fd5b6019546018546040516370a0823160e01b81526001600160a01b03918216600482015262000b5e9291909116906370a08231906024015b602060405180830381865afa15801562000b30573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b56919062003fd8565b600062003735565b60195460408051638da5cb5b60e01b8152905162000bd8926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa15801562000bab573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000bd1919062003ff2565b306200380e565b601954604080516311318fbb60e21b8152905162000c5d926001600160a01b0316916344c63eec9160048083019260209291908290030181865afa15801562000c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000c4b919062003ff2565b6018546001600160a01b03166200380e565b601954604080516311318fbb60e21b8152905162000d4c926001600160a01b031691639b19251a9183916344c63eec9160048083019260209291908290030181865afa15801562000cb2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000cd8919062003ff2565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015b602060405180830381865afa15801562000d1e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d44919062003f7e565b600162003908565b601954604051634d8c928d60e11b81526001600160a01b039091166004820181905262000d8291639b19251a9060240162000d00565b60195460408051638da5cb5b60e01b8152905162000dd7926001600160a01b031691639b19251a918391638da5cb5b9160048083019260209291908290030181865afa15801562000cb2573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905162000e5c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000e24573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e4a919062003ff2565b6019546001600160a01b03166200380e565b6018546040805163f02c6d8f60e01b8152905162000ea9926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000b30573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000f24926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000ef6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f1c919062003f7e565b600062003908565b60185460408051638da5cb5b60e01b8152905162000fa9926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa15801562000f71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f97919062003ff2565b6002546001600160a01b03166200380e565b565b62000fb562003246565b62000fbf6200347c565b633b9aca006012633b9aca008060405162000fda9062003e69565b93845260c060208501819052600a908501526950726f7665205a65726f60b01b60e0850152610100604085018190526005908501526450524f564560d81b61012085015260ff9092166060840152608083015260a082015261014001604051809103906000f08015801562001053573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b0392831690811790915560025460405191921690620010889062003e77565b6001600160a01b03928316815291166020820152604001604051809103906000f080158015620010bc573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b03928316908117909155601954604051631bdbfcef60e21b8152600481019290925290911690636f6ff3bc90602401600060405180830381600087803b1580156200111c57600080fd5b505af115801562001131573d6000803e3d6000fd5b50505050565b620011598169152d02c7e14af68000006a52b7d2dcc80cd2e400000062003a7f565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101849052929350169063a9059cbb906044016020604051808303816000875af1158015620011b1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011d7919062003f7e565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b1580156200123257600080fd5b505af115801562001247573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc94506200128b939283169290911690869060040162003fb4565b6020604051808303816000875af1158015620012ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012d1919062003f7e565b620012e057620012e062003f9e565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200132f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001355919062003f7e565b62001364576200136462003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620013a09291909116906370a082319060240162000b12565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620013ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001415919062003f7e565b62001424576200142462003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620014c99291909116906370a08231906024015b602060405180830381865afa15801562001479573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200149f919062003fd8565b6064620014ae84600c62004028565b620014ba91906200405e565b670de0b6b3a764000062001b1f565b620014d76224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001526573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200154c919062003f7e565b6200155b576200155b62003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620015e49291909116906370a0823190602401602060405180830381865afa158015620015af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015d5919062003fd8565b6064620014ae84601462004028565b620015f26224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001641573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001667919062003f7e565b62001676576200167662003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620016ff9291909116906370a0823190602401602060405180830381865afa158015620016ca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016f0919062003fd8565b6064620014ae84601c62004028565b6200170d626ebe00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200175c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001782919062003f7e565b62001791576200179162003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200181a9291909116906370a0823190602401602060405180830381865afa158015620017e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200180b919062003fd8565b6064620014ae84603462004028565b6200182862dd7c00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001877573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200189d919062003f7e565b620018ac57620018ac62003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200192e9291909116906370a08231906024015b602060405180830381865afa15801562001901573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001927919062003fd8565b8262003735565b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200198d57600080fd5b505af1158015620019a2573d6000803e3d6000fd5b5050505050565b6000828411620019c557620019bf848462004075565b620019d1565b620019d1838562004075565b905080600003620019e25750505050565b60008415620019f25784620019f4565b835b9050600062001a0584600a62004188565b62001a1d906b033b2e3c9fd0803ce80000006200405e565b8262001a366b033b2e3c9fd0803ce80000008662004028565b62001a4291906200405e565b1090508062001b1757604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a7708339815191529181900360a00190a16000805160206200a7708339815191528660405162001add919062004196565b60405180910390a16000805160206200a7708339815191528560405162001b059190620041cf565b60405180910390a162001b1762003ac0565b505050505050565b600082841162001b3b5762001b35848462004075565b62001b47565b62001b47838562004075565b90508181111580620019a257604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a7708339815191529181900360a00190a16000805160206200a7708339815191528560405162001bee919062004196565b60405180910390a16000805160206200a7708339815191528460405162001c169190620041cf565b60405180910390a1620019a262003ac0565b60195460185460405163a9059cbb60e01b81526001600160a01b0391821660048201526a0422ca8b0a00a4250000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562001c8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cb3919062003f7e565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562001d0e57600080fd5b505af115801562001d23573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152737109709ecfa91a80626ff3989d68f67f5b1dd12d925063f28dceb39150608401600060405180830381600087803b15801562001dc857600080fd5b505af115801562001ddd573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e3257600080fd5b505af115801562001e47573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062001e9593928316929091169069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af115801562001eb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001edb919062003f7e565b62001eea5762001eea62003f9e565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152737109709ecfa91a80626ff3989d68f67f5b1dd12d9063f28dceb390608401600060405180830381600087803b15801562001f7957600080fd5b505af115801562001f8e573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001fe357600080fd5b505af115801562001ff8573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af11580156200204b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002071919062003f7e565b62002080576200208062003f9e565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620020d157600080fd5b505af1158015620020e6573d6000803e3d6000fd5b50505050620020f96301dfe200620036d5565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200214a57600080fd5b505af11580156200215f573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152737109709ecfa91a80626ff3989d68f67f5b1dd12d925063f28dceb39150608401600060405180830381600087803b158015620021fb57600080fd5b505af115801562002210573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200226557600080fd5b505af11580156200227a573d6000803e3d6000fd5b505050507f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200198d57600080fd5b600084158015620022ec575081155b15620022fb5750600062002333565b8383036200230b57508162002333565b8362002318818562004075565b620023249087620041fa565b62002330919062004211565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015620023a0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023c6919062003fd8565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856200241e919062004211565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b1580156200246d57600080fd5b505af115801562002482573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262001b179350861691506370a0823190602401602060405180830381865afa158015620024d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024f8919062003fd8565b62002504868462004211565b62003735565b6200252c8169152d02c7e14af68000006a52b7d2dcc80cd2e400000062003a7f565b6019546018549192506001600160a01b039081169163a9059cbb91166200255584600362004028565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015620025a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620025c7919062003f7e565b50600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562002617573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200263d919062003f7e565b6200264c576200264c62003f9e565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200268b9390821692911690869060040162003fb4565b6020604051808303816000875af1158015620026ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620026d1919062003f7e565b620026e057620026e062003f9e565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200271f9390821692911690869060040162003fb4565b6020604051808303816000875af11580156200273f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002765919062003f7e565b62002774576200277462003f9e565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620027ae929116908490869060040162003fb4565b6020604051808303816000875af1158015620027ce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027f4919062003f7e565b62002803576200280362003f9e565b6200281162127500620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002860573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002886919062003f7e565b62002895576200289562003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620028d19291909116906370a08231906024016200145b565b620028df62cb0700620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200292e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002954919062003f7e565b62002963576200296362003f9e565b6019546001546040516370a0823160e01b81526001600160a01b039182166004820152620029ec9291909116906370a0823190602401602060405180830381865afa158015620029b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029dd919062003fd8565b6064620014ae84603c62004028565b620029fa62b89200620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002a49573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a6f919062003f7e565b62002a7e5762002a7e62003f9e565b6019546001546040516370a0823160e01b81526001600160a01b03918216600482015262002aba9291909116906370a0823190602401620018e3565b62002ac96301dfe200620036d5565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002b3e919062003f7e565b62002b4d5762002b4d62003f9e565b6019546002546040516370a0823160e01b81526001600160a01b03918216600482015262000a069291909116906370a0823190602401620018e3565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015269d3c21bcecceda10000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562002bed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c13919062003f7e565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562002c6e57600080fd5b505af115801562002c83573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002cc7939283169290911690869060040162003fb4565b6020604051808303816000875af115801562002ce7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002d0d919062003f7e565b62002d1c5762002d1c62003f9e565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562002d6b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002d91919062003f7e565b62002da05762002da062003f9e565b6019546003546040516370a0823160e01b81526001600160a01b03918216600482015262002ddc9291909116906370a082319060240162000b12565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002e2b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e51919062003f7e565b62002e605762002e6062003f9e565b6019546003546040516370a0823160e01b81526001600160a01b03918216600482015262002ef59291909116906370a0823190602401602060405180830381865afa15801562002eb4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002eda919062003fd8565b606462002ee984600c62004028565b6200250491906200405e565b62002f036224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002f52573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002f78919062003f7e565b62002f875762002f8762003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620030109291909116906370a0823190602401602060405180830381865afa15801562002fdb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003001919062003fd8565b606462002ee984601462004028565b6200301e6224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200306d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003093919062003f7e565b620030a257620030a262003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200312b9291909116906370a0823190602401602060405180830381865afa158015620030f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200311c919062003fd8565b606462002ee984601c62004028565b62003139626ebe00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003188573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620031ae919062003f7e565b620031bd57620031bd62003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200181a9291909116906370a0823190602401602060405180830381865afa15801562003211573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003237919062003fd8565b606462002ee984603462004028565b604051620032549062003e85565b604051809103906000f08015801562003271573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b0392909216919091179055604051620032a09062003e85565b604051809103906000f080158015620032bd573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620032ec9062003e85565b604051809103906000f08015801562003309573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200334d5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156200345c5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091620033de917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016200424d565b60408051601f1981840301815290829052620033fa9162004280565b6000604051808303816000865af19150503d806000811462003439576040519150601f19603f3d011682016040523d82523d6000602084013e6200343e565b606091505b509150508080602001905181019062003458919062003f7e565b9150505b919050565b6000620034728484846000620022dd565b90505b9392505050565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf02620036fb834262004211565b6040518263ffffffff1660e01b81526004016200371a91815260200190565b600060405180830381600087803b1580156200198d57600080fd5b8082146200380a577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620037a89060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a77083398151915281604051620037d0919062004196565b60405180910390a16000805160206200a77083398151915282604051620037f89190620041cf565b60405180910390a16200380a62003ac0565b5050565b806001600160a01b0316826001600160a01b0316146200380a577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620038969060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620038cf91906200429e565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f82604051620037f89190620042e3565b801515821515146200380a577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200397f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620039d2576040518060400160405280600581526020016466616c736560d81b815250620039f0565b604051806040016040528060048152602001637472756560e01b8152505b604051620039ff91906200433c565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838262003a52576040518060400160405280600581526020016466616c736560d81b81525062003a70565b604051806040016040528060048152602001637472756560e01b8152505b604051620037f891906200437b565b600062003a8e84848462003bd3565b9050620034756040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262003dc9565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1562003bc25760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f198184030181529082905262003b5d92916020016200424d565b60408051601f198184030181529082905262003b799162004280565b6000604051808303816000865af19150503d806000811462003bb8576040519150601f19603f3d011682016040523d82523d6000602084013e62003bbd565b606091505b505050505b6000805461ff001916610100179055565b60008183111562003c505760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e0000606482015260840160405180910390fd5b82841015801562003c615750818411155b1562003c6f57508262003475565b600062003c7d848462004075565b62003c8a90600162004211565b90506003851115801562003c9d57508481115b1562003cb85762003caf858562004211565b91505062003475565b62003cc7600360001962004075565b851015801562003ce3575062003ce08560001962004075565b81115b1562003d035762003cf78560001962004075565b62003caf908462004075565b8285111562003d6557600062003d1a848762004075565b9050600062003d2a8383620041fa565b90508060000362003d415784935050505062003475565b600162003d4f828862004211565b62003d5b919062004075565b9350505062003dc1565b8385101562003dc157600062003d7c868662004075565b9050600062003d8c8383620041fa565b90508060000362003da35785935050505062003475565b62003daf818662004075565b62003dbc90600162004211565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162003df5929190620043a6565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162003e2c919062004280565b600060405180830381855afa9150503d806000811462001b17576040519150601f19603f3d011682016040523d82523d6000602084013e62001b17565b61446c80620043cb83390190565b611962806200883783390190565b6105d7806200a19983390190565b60006020828403121562003ea657600080fd5b5035919050565b60008060006060848603121562003ec357600080fd5b505081359360208301359350604090920135919050565b801515811462000a0657600080fd5b6000806000806080858703121562003f0057600080fd5b843593506020850135925060408501359150606085013562003f228162003eda565b939692955090935050565b6001600160a01b038116811462000a0657600080fd5b60008060006060848603121562003f5957600080fd5b83359250602084013562003f6d8162003f2d565b929592945050506040919091013590565b60006020828403121562003f9157600080fd5b8151620034758162003eda565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b039384168152919092166020820152604081019190915260600190565b60006020828403121562003feb57600080fd5b5051919050565b6000602082840312156200400557600080fd5b8151620034758162003f2d565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762004042576200404262004012565b92915050565b634e487b7160e01b600052601260045260246000fd5b60008262004070576200407062004048565b500490565b8181038181111562004042576200404262004012565b600181815b80851115620040cc578160001904821115620040b057620040b062004012565b80851615620040be57918102915b93841c939080029062004090565b509250929050565b600082620040e55750600162004042565b81620040f45750600062004042565b81600181146200410d5760028114620041185762004138565b600191505062004042565b60ff8411156200412c576200412c62004012565b50506001821b62004042565b5060208310610133831016604e8410600b84101617156200415d575081810a62004042565b6200416983836200408b565b806000190482111562004180576200418062004012565b029392505050565b6000620034758383620040d4565b604081526000620041c160408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b604081526000620041c160408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000826200420c576200420c62004048565b500690565b8082018082111562004042576200404262004012565b60005b83811015620042445781810151838201526020016200422a565b50506000910152565b6001600160e01b03198316815281516000906200427281600485016020870162004227565b919091016004019392505050565b600082516200429481846020870162004227565b9190910192915050565b604081526000620042c960408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000620042c960408301600a815269080808081058dd1d585b60b21b602082015260400190565b600081518084526200432881602086016020860162004227565b601f01601f19169290920160200192915050565b6040815260006200436760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200233381856200430e565b6040815260006200436760408301600a815269080808081058dd1d585b60b21b602082015260400190565b604081526000620043bb60408301856200430e565b9050826020830152939250505056fe60a06040526011805460ff191690553480156200001b57600080fd5b506040516200446c3803806200446c8339810160408190526200003e91620005f4565b848460036200004e838262000724565b5060046200005d828262000724565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a62000903565b62000111908762000914565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200092e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200092e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200092e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a62000903565b620002f1908362000914565b600e5560055460ff166200030790600a62000903565b62000313908262000914565b600f5560055460ff166200032990600a62000903565b6200033690600162000914565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a62000903565b62000402908962000914565b62000414565b50505050505062000976565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000960565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b600093810190920192909252949350505050565b60008060008060008060c087890312156200060e57600080fd5b865160208801519096506001600160401b03808211156200062e57600080fd5b6200063c8a838b0162000545565b965060408901519150808211156200065357600080fd5b506200066289828a0162000545565b945050606087015160ff811681146200067a57600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006ab57607f821691505b602082108103620006cc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620006fb5750805b601f850160051c820191505b818110156200071c5782815560010162000707565b505050505050565b81516001600160401b038111156200074057620007406200052f565b620007588162000751845462000696565b84620006d2565b602080601f831160018114620007905760008415620007775750858301515b600019600386901b1c1916600185901b1785556200071c565b600085815260208120601f198616915b82811015620007c157888601518255948401946001909101908401620007a0565b5085821015620007e05787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620008475781600019048211156200082b576200082b620007f0565b808516156200083957918102915b93841c93908002906200080b565b509250929050565b600082620008605750600162000529565b816200086f5750600062000529565b81600181146200088857600281146200089357620008b3565b600191505062000529565b60ff841115620008a757620008a7620007f0565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008d8575081810a62000529565b620008e4838362000806565b8060001904821115620008fb57620008fb620007f0565b029392505050565b60006200052660ff8416836200084f565b8082028115828204841417620005295762000529620007f0565b6000602082840312156200094157600080fd5b81516001600160a01b03811681146200095957600080fd5b9392505050565b80820180821115620005295762000529620007f0565b608051613ad362000999600039600081816107e20152611c890152613ad36000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a0565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e2565b60186020526000908152604090205481565b6002546103b9565b6103da6104203660046134fd565b61099a565b61039061043336600461353e565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a0565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a0565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d5366004613557565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b36600461353e565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c366004613573565b6110bc565b61039061055f366004613590565b6112e7565b6103b9610572366004613573565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a0565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e2565b60166020526000908152604090205481565b61043f61060e366004613573565b60156020526000908152604090205460ff1681565b6103da610631366004613573565b60136020526000908152604090205460ff1681565b6103906106543660046134a0565b611624565b61043f610667366004613573565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a0565b61168e565b6103da61069d3660046134a0565b6116dd565b6103906106b036600461353e565b6116ea565b6106c86106c3366004613573565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f6366004613573565b60176020526000908152604090205460ff1681565b61039061071936600461353e565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b61039061075236600461353e565b611dbe565b6103b96107653660046135c5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e366004613573565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c5366004613573565b61201d565b6103906107d8366004613573565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a0565b612219565b610390610825366004613590565b612418565b6103b9610838366004613573565b60196020526000908152604090205481565b6103da610858366004613573565b60126020526000908152604090205460ff1681565b6103b961087b366004613573565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135f3565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b60606003805461090090613628565b80601f016020809104026020016040519081016040528092919081815260200182805461092c90613628565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a51602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135f3565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a61375c565b610ac4908261376b565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135f3565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135f3565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613782565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135f3565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135f3565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a61375c565b610ee6908261376b565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135f3565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137df565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135f3565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135f3565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613782565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df9084906137f8565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c9084906137f8565b90915550505050565b60606004805461090090613628565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613782565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a79602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135f3565b60055460ff1661172b90600a61375c565b611735908261376b565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137df565b6001600160a01b0387166000908152601960205260408120549192506117d4828461380b565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135f3565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135f3565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b815260206004820152604660248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b815260206004820152603960248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b8152602060048201526044602482018190526000805160206139e9833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b815260206004820152604260248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135f3565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e2881426137f8565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135f3565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135f3565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613782565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061380b565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc82846137f8565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a74908561376b565b612a7e919061381e565b90506000612a8c828561380b565b905083612a9982846137f8565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c91906137f8565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a09602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a2b602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d1613856565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613267919061386c565b8160018151811061327a5761327a613856565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138cd565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a91908101906138ee565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c6137f8565b6040518663ffffffff1660e01b815260040161339d9594939291906139ac565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e2613856565b602002602001015192505050919050565b60006124fc828461380b565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156134b357600080fd5b82356134be816133ff565b946020939093013593505050565b803560ff811681146134dd57600080fd5b919050565b6000602082840312156134f457600080fd5b6124fc826134cc565b60008060006060848603121561351257600080fd5b833561351d816133ff565b9250602084013561352d816133ff565b929592945050506040919091013590565b60006020828403121561355057600080fd5b5035919050565b6000806040838503121561356a57600080fd5b6134be836134cc565b60006020828403121561358557600080fd5b81356124fc816133ff565b600080604083850312156135a357600080fd5b82356135ae816133ff565b91506135bc602084016134cc565b90509250929050565b600080604083850312156135d857600080fd5b82356135e3816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061363c57607f821691505b60208210810361365c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136b357816000190482111561369957613699613662565b808516156136a657918102915b93841c939080029061367d565b509250929050565b6000826136ca57506001610994565b816136d757506000610994565b81600181146136ed57600281146136f757613713565b6001915050610994565b60ff84111561370857613708613662565b50506001821b610994565b5060208310610133831016604e8410600b8410161715613736575081810a610994565b6137408383613678565b806000190482111561375457613754613662565b029392505050565b60006124fc60ff8416836136bb565b808202811582820484141761099457610994613662565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b6000602082840312156137f157600080fd5b5051919050565b8082018082111561099457610994613662565b8181038181111561099457610994613662565b60008261383b57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561387e57600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138c25781516001600160a01b03168752958201959082019060010161389d565b509495945050505050565b8281526040602082015260006138e66040830184613889565b949350505050565b6000602080838503121561390157600080fd5b825167ffffffffffffffff8082111561391957600080fd5b818501915085601f83011261392d57600080fd5b81518181111561393f5761393f613840565b8060051b604051601f19603f8301168101818110858211171561396457613964613840565b60405291825284820192508381018501918883111561398257600080fd5b938501935b828510156139a057845184529385019392850192613987565b98975050505050505050565b85815284602082015260a0604082015260006139cb60a0830186613889565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f6afa79d2dd6dc16daa6196b4a596cb84785ca65de715a6382c40987a3939e4c64736f6c6343000811003360a06040523480156200001157600080fd5b5060405162001962380380620019628339810160408190526200003491620001b2565b600080546001600160a01b0319163390811782556040519091829160008051602062001942833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194283398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161172e62000214600039600081816101d7015281816108320152610be5015261172e6000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160d565b90506000606461035384600861162f565b61035d919061160d565b610367908361162f565b606461037485600c61162f565b61037e919061160d565b6103889190611646565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611659565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d61168e565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116a4565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b906000526020600020906003020160020160008282546109479190611646565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611659565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611659565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611659565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116c6565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116a4565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611659565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff8142611646565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611659565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c5908490611646565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611659565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116df565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115611607576116076115de565b92915050565b60008261162a57634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417611607576116076115de565b80820180821115611607576116076115de565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116b657600080fd5b8151801515811461151c57600080fd5b6000602082840312156116d857600080fd5b5051919050565b6000600182016116f1576116f16115de565b506001019056fea2646970667358221220d2355449aa619c52df97b3ae1052a171b8fa5fa41104c173bef64d6cc1fd6c1b64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c63430008110033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220583485df38d2f8d815109cb31c6d64fc274c9066b9f2f549bb1c045690fe199d64736f6c63430008110033", + "sourceMap": "306:10985:25:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;306:10985:25;;;;;;;;;-1:-1:-1;3122:37:26;3086:77;;;-1:-1:-1;;;;;;3086:77:26;;;;;;306:10985:25;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x60806040523480156200001157600080fd5b5060043610620001455760003560e01c80638c38922f11620000bb578063c060c5f3116200007a578063c060c5f31462000247578063c5ba73ed146200025e578063e70dd6cf1462000267578063eea962101462000270578063fa7626d4146200027a57600080fd5b80638c38922f14620002065780639f71f14a146200020f578063b8dae58b1462000218578063b967b5a71462000222578063ba414fa6146200022c57600080fd5b80633493f4ca11620001085780633493f4ca14620001ae57806338505fb014620001b75780636c676a6014620001c05780637a8fe3c014620001e65780637ed9db5914620001ef57600080fd5b80630a831a15146200014a5780630a9254e41462000156578063174a5be4146200016057806330f7c5c31462000180578063344b14781462000197575b600080fd5b6200015462000288565b005b620001546200082a565b62000169600181565b60405160ff90911681526020015b60405180910390f35b62000154620001913660046200201a565b620009b6565b62000154620001a83660046200201a565b62000b2c565b62000169600b81565b62000169600281565b620001d7620001d136600462002059565b62000c3c565b60405190815260200162000177565b62000169600c81565b6200015462000200366004620020b3565b62000c9a565b62000169600a81565b62000169600481565b6200015462000e69565b62000154620016ae565b6200023662001794565b604051901515815260200162000177565b620001d7620002583660046200201a565b620018c9565b62000169600381565b62000169600081565b62000154620018da565b600054620002369060ff1681565b601954604080516318160ddd60e01b815290516200030e926001600160a01b0316916318160ddd9160048083019260209291908290030181865afa158015620002d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fb9190620020ee565b6b033b2e3c9fd0803ce800000062001b33565b6019546040516370a0823160e01b81523060048201526200035a916001600160a01b0316906370a0823190602401602060405180830381865afa158015620002d5573d6000803e3d6000fd5b6019546018546040516370a0823160e01b81526001600160a01b039182166004820152620003dd9291909116906370a08231906024015b602060405180830381865afa158015620003af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d59190620020ee565b600062001b33565b60195460408051638da5cb5b60e01b8152905162000457926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa1580156200042a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000450919062002108565b3062001c0c565b601954604080516311318fbb60e21b81529051620004dc926001600160a01b0316916344c63eec9160048083019260209291908290030181865afa158015620004a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004ca919062002108565b6018546001600160a01b031662001c0c565b601954604080516311318fbb60e21b81529051620005cb926001600160a01b031691639b19251a9183916344c63eec9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000557919062002108565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015b602060405180830381865afa1580156200059d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005c391906200212f565b600162001d06565b601954604051634d8c928d60e11b81526001600160a01b03909116600482018190526200060191639b19251a906024016200057f565b60195460408051638da5cb5b60e01b8152905162000656926001600160a01b031691639b19251a918391638da5cb5b9160048083019260209291908290030181865afa15801562000531573d6000803e3d6000fd5b601854604080516385d4cad360e01b81529051620006db926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620006a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006c9919062002108565b6019546001600160a01b031662001c0c565b6018546040805163f02c6d8f60e01b8152905162000728926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa158015620003af573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b81529051620007a3926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200079b91906200212f565b600062001d06565b60185460408051638da5cb5b60e01b8152905162000828926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015620007f0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000816919062002108565b6002546001600160a01b031662001c0c565b565b62000834620016ae565b6200083e620018da565b633b9aca006012633b9aca0080604051620008599062001ff0565b93845260c060208501819052600a908501526950726f7665205a65726f60b01b60e0850152610100604085018190526005908501526450524f564560d81b61012085015260ff9092166060840152608083015260a082015261014001604051809103906000f080158015620008d2573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b0392831690811790915560025460405191921690620009079062001ffe565b6001600160a01b03928316815291166020820152604001604051809103906000f0801580156200093b573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b03928316908117909155601954604051631bdbfcef60e21b8152600481019290925290911690636f6ff3bc90602401600060405180830381600087803b1580156200099b57600080fd5b505af1158015620009b0573d6000803e3d6000fd5b50505050565b6000828411620009d257620009cc848462002165565b620009de565b620009de838562002165565b905080600003620009ef5750505050565b60008415620009ff578462000a01565b835b9050600062000a1284600a6200227e565b62000a2a906b033b2e3c9fd0803ce8000000620022a2565b8262000a436b033b2e3c9fd0803ce800000086620022b9565b62000a4f9190620022a2565b1090508062000b2457604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b6080820152602081018690529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528660405162000aea9190620022db565b60405180910390a1600080516020620088f98339815191528560405162000b12919062002314565b60405180910390a162000b2462001e7d565b505050505050565b600082841162000b485762000b42848462002165565b62000b54565b62000b54838562002165565b9050818111158062000c3557604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e63652000000000000000006080820152602081018590529051600080516020620088f98339815191529181900360a00190a1600080516020620088f98339815191528560405162000bfb9190620022db565b60405180910390a1600080516020620088f98339815191528460405162000c23919062002314565b60405180910390a162000c3562001e7d565b5050505050565b60008415801562000c4b575081155b1562000c5a5750600062000c92565b83830362000c6a57508162000c92565b8362000c77818562002165565b62000c8390876200233f565b62000c8f919062002356565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562000cff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d259190620020ee565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb90859060600160405160208183030381529060405280519060200120878562000d7d919062002356565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801562000dcc57600080fd5b505af115801562000de1573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000b249350861691506370a0823190602401602060405180830381865afa15801562000e31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e579190620020ee565b62000e63868462002356565b62001b33565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015269d3c21bcecceda10000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562000ecd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ef391906200212f565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562000f4e57600080fd5b505af115801562000f63573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b03928316600482015290821660248201526044810186905291169250636c4f94dc91506064016020604051808303816000875af115801562000fc8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fee91906200212f565b62000ffd5762000ffd62002371565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200104c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200107291906200212f565b62001081576200108162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620010bd9291909116906370a082319060240162000391565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200110c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200113291906200212f565b62001141576200114162002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620011d69291909116906370a0823190602401602060405180830381865afa15801562001195573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011bb9190620020ee565b6064620011ca84600c620022b9565b62000e639190620022a2565b620011e46224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001233573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200125991906200212f565b62001268576200126862002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620012f19291909116906370a0823190602401602060405180830381865afa158015620012bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012e29190620020ee565b6064620011ca846014620022b9565b620012ff6224ea0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200134e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200137491906200212f565b62001383576200138362002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200140c9291909116906370a0823190602401602060405180830381865afa158015620013d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013fd9190620020ee565b6064620011ca84601c620022b9565b6200141a626ebe0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001469573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200148f91906200212f565b6200149e576200149e62002371565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620015279291909116906370a0823190602401602060405180830381865afa158015620014f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015189190620020ee565b6064620011ca846034620022b9565b6200153562dd7c0062001f90565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001584573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015aa91906200212f565b620015b957620015b962002371565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200163a9291909116906370a0823190602401602060405180830381865afa1580156200160d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016339190620020ee565b8262001b33565b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200169957600080fd5b505af115801562000c35573d6000803e3d6000fd5b604051620016bc906200200c565b604051809103906000f080158015620016d9573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405162001708906200200c565b604051809103906000f08015801562001725573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405162001754906200200c565b604051809103906000f08015801562001771573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff1615620017b55750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15620018c45760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b8284015282518083038401815260608301909352600092909162001846917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001620023b6565b60408051601f19818403018152908290526200186291620023e9565b6000604051808303816000865af19150503d8060008114620018a1576040519150601f19603f3d011682016040523d82523d6000602084013e620018a6565b606091505b5091505080806020019051810190620018c091906200212f565b9150505b919050565b600062000c92848484600062000c3c565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b80821462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001ba69060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a1600080516020620088f98339815191528160405162001bce9190620022db565b60405180910390a1600080516020620088f98339815191528260405162001bf6919062002314565b60405180910390a162001c0862001e7d565b5050565b806001600160a01b0316826001600160a01b03161462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001c949060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8160405162001ccd919062002407565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f8260405162001bf691906200244c565b8015158215151462001c08577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405162001d7d9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838162001dd0576040518060400160405280600581526020016466616c736560d81b81525062001dee565b604051806040016040528060048152602001637472756560e01b8152505b60405162001dfd9190620024a5565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838262001e50576040518060400160405280600581526020016466616c736560d81b81525062001e6e565b604051806040016040528060048152602001637472756560e01b8152505b60405162001bf69190620024e4565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1562001f7f5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f198184030181529082905262001f1a9291602001620023b6565b60408051601f198184030181529082905262001f3691620023e9565b6000604051808303816000865af19150503d806000811462001f75576040519150601f19603f3d011682016040523d82523d6000602084013e62001f7a565b606091505b505050505b6000805461ff001916610100179055565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0262001fb6834262002356565b6040518263ffffffff1660e01b815260040162001fd591815260200190565b600060405180830381600087803b1580156200169957600080fd5b614499806200251083390190565b61196d80620069a983390190565b6105e3806200831683390190565b6000806000606084860312156200203057600080fd5b505081359360208301359350604090920135919050565b80151581146200205657600080fd5b50565b600080600080608085870312156200207057600080fd5b8435935060208501359250604085013591506060850135620020928162002047565b939692955090935050565b6001600160a01b03811681146200205657600080fd5b600080600060608486031215620020c957600080fd5b833592506020840135620020dd816200209d565b929592945050506040919091013590565b6000602082840312156200210157600080fd5b5051919050565b6000602082840312156200211b57600080fd5b815162002128816200209d565b9392505050565b6000602082840312156200214257600080fd5b8151620021288162002047565b634e487b7160e01b600052601160045260246000fd5b6000828210156200217a576200217a6200214f565b500390565b600181815b80851115620021c0578160001904821115620021a457620021a46200214f565b80851615620021b257918102915b93841c939080029062002184565b509250929050565b600082620021d95750600162002278565b81620021e85750600062002278565b81600181146200220157600281146200220c576200222c565b600191505062002278565b60ff8411156200222057620022206200214f565b50506001821b62002278565b5060208310610133831016604e8410600b841016171562002251575081810a62002278565b6200225d83836200217f565b80600019048211156200227457620022746200214f565b0290505b92915050565b6000620021288383620021c8565b634e487b7160e01b600052601260045260246000fd5b600082620022b457620022b46200228c565b500490565b6000816000190483118215151615620022d657620022d66200214f565b500290565b6040815260006200230660408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200230660408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000826200235157620023516200228c565b500690565b600082198211156200236c576200236c6200214f565b500190565b634e487b7160e01b600052600160045260246000fd5b60005b83811015620023a45781810151838201526020016200238a565b83811115620009b05750506000910152565b6001600160e01b0319831681528151600090620023db81600485016020870162002387565b919091016004019392505050565b60008251620023fd81846020870162002387565b9190910192915050565b6040815260006200243260408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200243260408301600a815269080808081058dd1d585b60b21b602082015260400190565b600081518084526200249181602086016020860162002387565b601f01601f19169290920160200192915050565b604081526000620024d060408301600a8152690808115e1c1958dd195960b21b602082015260400190565b828103602084015262000c92818562002477565b604081526000620024d060408301600a815269080808081058dd1d585b60b21b60208201526040019056fe60a06040526011805460ff191690553480156200001b57600080fd5b5060405162004499380380620044998339810160408190526200003e91620005fc565b848460036200004e83826200072c565b5060046200005d82826200072c565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a6200090b565b6200011190876200091c565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200093e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200093e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200093e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a6200090b565b620002f190836200091c565b600e5560055460ff166200030790600a6200090b565b6200031390826200091c565b600f5560055460ff166200032990600a6200090b565b620003369060016200091c565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a6200090b565b6200040290896200091c565b62000414565b5050505050506200098b565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000970565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b83821115620005f25760008385830101525b9695505050505050565b60008060008060008060c087890312156200061657600080fd5b865160208801519096506001600160401b03808211156200063657600080fd5b620006448a838b0162000545565b965060408901519150808211156200065b57600080fd5b506200066a89828a0162000545565b945050606087015160ff811681146200068257600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006b357607f821691505b602082108103620006d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620007035750805b601f850160051c820191505b8181101562000724578281556001016200070f565b505050505050565b81516001600160401b038111156200074857620007486200052f565b62000760816200075984546200069e565b84620006da565b602080601f8311600181146200079857600084156200077f5750858301515b600019600386901b1c1916600185901b17855562000724565b600085815260208120601f198616915b82811015620007c957888601518255948401946001909101908401620007a8565b5085821015620007e85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200084f578160001904821115620008335762000833620007f8565b808516156200084157918102915b93841c939080029062000813565b509250929050565b600082620008685750600162000529565b81620008775750600062000529565b81600181146200089057600281146200089b57620008bb565b600191505062000529565b60ff841115620008af57620008af620007f8565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008e0575081810a62000529565b620008ec83836200080e565b8060001904821115620009035762000903620007f8565b029392505050565b60006200052660ff84168362000857565b6000816000190483118215151615620009395762000939620007f8565b500290565b6000602082840312156200095157600080fd5b81516001600160a01b03811681146200096957600080fd5b9392505050565b60008219821115620009865762000986620007f8565b500190565b608051613aeb620009ae600039600081816107e20152611c890152613aeb6000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f003360a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220bc03a64286b04608fb74648281473dd9f7d839206dc1cb5360a14ad859ffbfc664736f6c634300080f0033", - "sourceMap": "306:3680:25:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1375:828;;;:::i;:::-;;432:907;;;:::i;1745:36:26:-;;1780:1;1745:36;;;;;186:4:27;174:17;;;156:36;;144:2;129:18;1745:36:26;;;;;;;;4740:583;;;;;;:::i;:::-;;:::i;5374:479::-;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;6028:291;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:27;;;1232:2;1217:18;6028:291:26;1098:177:27;2262:45:26;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;2092:45::-;;2135:2;2092:45;;2005:36;;2040:1;2005:36;;2256:1725:25;;;:::i;3312:184:26:-;;;:::i;1819:584:0:-;;;:::i;:::-;;;1969:14:27;;1962:22;1944:41;;1932:2;1917:18;1819:584:0;1804:187:27;5861:159:26;;;;;;:::i;:::-;;:::i;1916:36::-;;1951:1;1916:36;;1655;;1690:1;1655:36;;3620:551;;;:::i;1572:26:0:-;;;;;;;;;1375:828:25;1448:10;;:24;;;-1:-1:-1;;;1448:24:25;;;;1439:59;;-1:-1:-1;;;;;1448:10:25;;:22;;:24;;;;;;;;;;;;;;:10;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1478:19;1439:8;:59::i;:::-;1518:10;;:35;;-1:-1:-1;;;1518:35:25;;1547:4;1518:35;;;2331:51:27;1509:69:25;;-1:-1:-1;;;;;1518:10:25;;:20;;2304:18:27;;1518:35:25;;;;;;;;;;;;;;;;;;;;;;1509:69;1598:10;;1627:7;;1598:38;;-1:-1:-1;;;1598:38:25;;-1:-1:-1;;;;;1627:7:25;;;1598:38;;;2331:51:27;1589::25;;1598:10;;;;;:20;;2304:18:27;;1598:38:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1638:1;1589:8;:51::i;:::-;1660:10;;:18;;;-1:-1:-1;;;1660:18:25;;;;1651:46;;-1:-1:-1;;;;;1660:10:25;;:16;;:18;;;;;;;;;;;;;;:10;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1691:4;1651:8;:46::i;:::-;1717:10;;:20;;;-1:-1:-1;;;1717:20:25;;;;1708:49;;-1:-1:-1;;;;;1717:10:25;;:18;;:20;;;;;;;;;;;;;;:10;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1748:7;;-1:-1:-1;;;;;1748:7:25;1708:8;:49::i;:::-;1777:10;;1798:20;;;-1:-1:-1;;;1798:20:25;;;;1768:60;;-1:-1:-1;;;;;1777:10:25;;:20;;:10;;1798:18;;:20;;;;;;;;;;;;;;1777:10;1798:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1777:42;;-1:-1:-1;;;;;;1777:42:25;;;;;;;-1:-1:-1;;;;;2349:32:27;;;1777:42:25;;;2331:51:27;2304:18;;1777:42:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1823:4;1768:8;:60::i;:::-;1848:10;;:41;;-1:-1:-1;;;1848:41:25;;-1:-1:-1;;;;;1848:10:25;;;:41;;;2331:51:27;;;1839:60:25;;1848:20;;2304:18:27;;1848:41:25;2185:203:27;1839:60:25;1919:10;;1940:18;;;-1:-1:-1;;;1940:18:25;;;;1910:60;;-1:-1:-1;;;;;1919:10:25;;:20;;:10;;1940:16;;:18;;;;;;;;;;;;;;1919:10;1940:18;;;;;;;;;;;;;;1910:60;1992:7;;:20;;;-1:-1:-1;;;1992:20:25;;;;1983:57;;-1:-1:-1;;;;;1992:7:25;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2028:10;;-1:-1:-1;;;;;2028:10:25;1983:8;:57::i;:::-;2060:7;;:26;;;-1:-1:-1;;;2060:26:25;;;;2051:39;;-1:-1:-1;;;;;2060:7:25;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;2051:39;2110:7;;:24;;;-1:-1:-1;;;2110:24:25;;;;2101:43;;-1:-1:-1;;;;;2110:7:25;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2138:5;2101:8;:43::i;:::-;2164:7;;:15;;;-1:-1:-1;;;2164:15:25;;;;2155:40;;-1:-1:-1;;;;;2164:7:25;;:13;;:15;;;;;;;;;;;;;;:7;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2190:3;;-1:-1:-1;;;;;2190:3:25;2155:8;:40::i;:::-;1375:828::o;432:907::-;467:14;:12;:14::i;:::-;492:13;:11;:13::i;:::-;700;860:2;917:13;970;673:352;;;;;:::i;:::-;3354:25:27;;;3415:3;3410:2;3395:18;;3388:31;;;3456:2;3435:19;;;3428:31;-1:-1:-1;;;3490:3:27;3475:19;;3468:41;3528:3;3562:2;3547:18;;3540:30;;;3606:1;3586:18;;;3579:29;-1:-1:-1;;;3639:3:27;3624:19;;3617:36;3737:4;3725:17;;;3720:2;3705:18;;3698:45;-1:-1:-1;3759:19:27;;3752:35;-1:-1:-1;3803:19:27;;3796:35;3685:3;3670:19;673:352:25;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;660:10:25;:365;;-1:-1:-1;;;;;;660:365:25;-1:-1:-1;;;;;660:365:25;;;;;;;;;1214:3;;1144:85;;660:365;;1214:3;;1144:85;;;:::i;:::-;-1:-1:-1;;;;;4072:15:27;;;4054:34;;4124:15;;4119:2;4104:18;;4097:43;4004:2;3989:18;1144:85:25;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1134:7:25;:95;;-1:-1:-1;;;;;;1134:95:25;-1:-1:-1;;;;;1134:95:25;;;;;;;;;1292:10;;:39;;-1:-1:-1;;;1292:39:25;;;;;2331:51:27;;;;1292:10:25;;;;:21;;2304:18:27;;1292:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;432:907::o;4740:583:26:-;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:26;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;6429:21:27;;;6486:2;6466:18;;;6459:30;6525:34;6520:2;6505:18;;6498:62;-1:-1:-1;;;6591:3:27;6576:19;;6569:51;6687:4;6672:20;;6665:36;;;5095:80:26;;-1:-1:-1;;;;;;;;;;;5095:80:26;;;;6652:3:27;5095:80:26;;;-1:-1:-1;;;;;;;;;;;5224:4:26;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:26;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:26;;;;;5585:261;;5617:88;;;7958:21:27;;;8015:2;7995:18;;;7988:30;8054:34;8049:2;8034:18;;8027:62;8126:26;8120:3;8105:19;;8098:55;8220:4;8205:20;;8198:36;;;5617:88:26;;-1:-1:-1;;;;;;;;;;;5617:88:26;;;;8185:3:27;5617:88:26;;;-1:-1:-1;;;;;;;;;;;5754:4:26;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:26;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;6028:291::-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:26;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:26;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:26;;-1:-1:-1;;;;;2349:32:27;;;4404:31:26;;;2331:51:27;;;;4314:19:26;;;4360;;4314;;4404:22;;2304:18:27;;4404:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;;-1:-1:-1;;;;;8687:32:27;;;4502:25:26;;;8669:51:27;8736:18;;;8729:34;;;4390:45:26;;-1:-1:-1;4448:4:26;;;;;;:10;;4473:4;;8642:18:27;;4502:25:26;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;;;;;-1:-1:-1;;;;;;4448:139:26;;;-1:-1:-1;;;;;8994:32:27;;;4448:139:26;;;8976:51:27;9043:18;;;9036:34;;;;9086:18;;;9079:34;8949:18;;4448:139:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:26;;-1:-1:-1;;;4609:31:26;;-1:-1:-1;;;;;2349:32:27;;;4609:31:26;;;2331:51:27;4600:52:26;;-1:-1:-1;4609:22:26;;;-1:-1:-1;4609:22:26;;2304:18:27;;4609:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;:::-;4600:8;:52::i;2256:1725:25:-;2358:10;;2386:7;;2358:46;;-1:-1:-1;;;2358:46:25;;-1:-1:-1;;;;;2386:7:25;;;2358:46;;;8669:51:27;2330:15:25;8736:18:27;;;8729:34;;;2330:15:25;2358:10;;;;;:19;;8642:18:27;;2358:46:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2473:3:25;;2451:27;;-1:-1:-1;;;2451:27:25;;-1:-1:-1;;;;;2473:3:25;;;2451:27;;;2331:51:27;2451:13:25;;;;2304:18:27;;2451:27:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2529:3:25;;2557:7;;2575:3;;2529:60;;-1:-1:-1;;;2529:60:25;;-1:-1:-1;;;;;2557:7:25;;;2529:60;;;9364:34:27;2575:3:25;;;9414:18:27;;;9407:43;9466:18;;;9459:34;;;2529:3:25;;;-1:-1:-1;2529:19:25;;-1:-1:-1;9299:18:27;;2529:60:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2522:68;;;;:::i;:::-;2636:3;;2666:7;;2636:39;;-1:-1:-1;;;2636:39:25;;-1:-1:-1;;;;;2666:7:25;;;2636:39;;;2331:51:27;2636:3:25;;;:21;;2304:18:27;;2636:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2629:47;;;;:::i;:::-;2726:10;;2755:3;;2726:34;;-1:-1:-1;;;2726:34:25;;-1:-1:-1;;;;;2755:3:25;;;2726:34;;;2331:51:27;2717:47:25;;2726:10;;;;;:20;;2304:18:27;;2726:34:25;2185:203:27;2717:47:25;2823:3;;2845:7;;2823:31;;-1:-1:-1;;;2823:31:25;;-1:-1:-1;;;;;2845:7:25;;;2823:31;;;2331:51:27;2823:3:25;;;:13;;2304:18:27;;2823:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2816:39;;;;:::i;:::-;2906:10;;2935:3;;2906:34;;-1:-1:-1;;;2906:34:25;;-1:-1:-1;;;;;2935:3:25;;;2906:34;;;2331:51:27;2897:64:25;;2906:10;;;;;:20;;2304:18:27;;2906:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2957:3;2942:12;:7;2952:2;2942:12;:::i;:::-;:18;;;;:::i;2897:64::-;2999:13;3004:7;2999:4;:13::i;:::-;3071:3;;3093:7;;3071:31;;-1:-1:-1;;;3071:31:25;;-1:-1:-1;;;;;3093:7:25;;;3071:31;;;2331:51:27;3071:3:25;;;:13;;2304:18:27;;3071:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3064:39;;;;:::i;:::-;3154:10;;3183:3;;3154:34;;-1:-1:-1;;;3154:34:25;;-1:-1:-1;;;;;3183:3:25;;;3154:34;;;2331:51:27;3145:64:25;;3154:10;;;;;:20;;2304:18:27;;3154:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3205:3;3190:12;:7;3200:2;3190:12;:::i;3145:64::-;3247:13;3252:7;3247:4;:13::i;:::-;3319:3;;3341:7;;3319:31;;-1:-1:-1;;;3319:31:25;;-1:-1:-1;;;;;3341:7:25;;;3319:31;;;2331:51:27;3319:3:25;;;:13;;2304:18:27;;3319:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3312:39;;;;:::i;:::-;3402:10;;3431:3;;3402:34;;-1:-1:-1;;;3402:34:25;;-1:-1:-1;;;;;3431:3:25;;;3402:34;;;2331:51:27;3393:64:25;;3402:10;;;;;:20;;2304:18:27;;3402:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3453:3;3438:12;:7;3448:2;3438:12;:::i;3393:64::-;3496:14;3501:8;3496:4;:14::i;:::-;3569:3;;3591:7;;3569:31;;-1:-1:-1;;;3569:31:25;;-1:-1:-1;;;;;3591:7:25;;;3569:31;;;2331:51:27;3569:3:25;;;:13;;2304:18:27;;3569:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3562:39;;;;:::i;:::-;3652:10;;3681:3;;3652:34;;-1:-1:-1;;;3652:34:25;;-1:-1:-1;;;;;3681:3:25;;;3652:34;;;2331:51:27;3643:64:25;;3652:10;;;;;:20;;2304:18:27;;3652:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3703:3;3688:12;:7;3698:2;3688:12;:::i;3643:64::-;3746:14;3751:8;3746:4;:14::i;:::-;3819:3;;3841:7;;3819:31;;-1:-1:-1;;;3819:31:25;;-1:-1:-1;;;;;3841:7:25;;;3819:31;;;2331:51:27;3819:3:25;;;:13;;2304:18:27;;3819:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3812:39;;;;:::i;:::-;3902:10;;3931:3;;3902:34;;-1:-1:-1;;;3902:34:25;;-1:-1:-1;;;;;3931:3:25;;;3902:34;;;2331:51:27;3893:53:25;;3902:10;;;;;:20;;2304:18:27;;3902:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3938:7;3893:8;:53::i;:::-;317:28:1;309:37;;-1:-1:-1;;;;;3959:12:25;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3312:184:26;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:26;:17;;-1:-1:-1;;;;;;3354:17:26;-1:-1:-1;;;;;3354:17:26;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:26;:17;;-1:-1:-1;;;;;;3395:17:26;-1:-1:-1;;;;;3395:17:26;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:26;:17;;-1:-1:-1;;;;;;3462:17:26;-1:-1:-1;;;;;3462:17:26;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;8669:51:27;;;-1:-1:-1;;;8736:18:27;;;8729:34;2196:43:0;;;;;;;;;8642:18:27;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:26:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;3620:551::-;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:26;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:26;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551::o;5202:262:0:-;5264:1;5259;:6;5255:203;;5286:41;;;;;11035:2:27;11017:21;;;11074:2;11054:18;;;11047:30;11113:34;11108:2;11093:18;;11086:62;-1:-1:-1;;;11179:2:27;11164:18;;11157:32;11221:3;11206:19;;10833:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;:::-;;;;;;;;5441:6;:4;:6::i;:::-;5202:262;;:::o;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:0;:1;-1:-1:-1;;;;;3678:6:0;;3674:212;;3705:44;;;;;11438:2:27;11420:21;;;11477:2;11457:18;;;11450:30;11516:34;11511:2;11496:18;;11489:62;-1:-1:-1;;;11582:2:27;11567:18;;11560:35;11627:3;11612:19;;11236:401;3705:44:0;;;;;;;;3768:34;3800:1;3768:34;;;;;;:::i;:::-;;;;;;;;3821;3853:1;3821:34;;;;;;:::i;789:312:2:-;859:1;854:6;;:1;:6;;;850:245;;881:41;;;;;12602:2:27;12584:21;;;12641:2;12621:18;;;12614:30;12680:34;12675:2;12660:18;;12653:62;-1:-1:-1;;;12746:2:27;12731:18;;12724:32;12788:3;12773:19;;12400:398;881:41:2;;;;;;;;941:52;972:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;941:52;;;;;;:::i;:::-;;;;;;;;1012;1043:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;1012:52;;;;;;:::i;2410:424:0:-;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;8976:51:27;;;-1:-1:-1;;;9043:18:27;;;9036:34;;;;2705:4:0;9086:18:27;;;9079:34;2482:11:0;;1671:64;2579:43;;8949:18:27;;2645:67:0;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;17530:93:4:-;17585:7;;17593:22;17611:4;17593:15;:22;:::i;:::-;17585:31;;;;;;;;;;;;;1244:25:27;;1232:2;1217:18;;1098:177;17585:31:4;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;203:316:27:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:27;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:27;494:18;;;481:32;;203:316;-1:-1:-1;203:316:27:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;576:60;524:118;:::o;647:446::-;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:27;;-1:-1:-1;;647:446:27:o;1280:131::-;-1:-1:-1;;;;;1355:31:27;;1345:42;;1335:70;;1401:1;1398;1391:12;1416:383;1493:6;1501;1509;1562:2;1550:9;1541:7;1537:23;1533:32;1530:52;;;1578:1;1575;1568:12;1530:52;1614:9;1601:23;1591:33;;1674:2;1663:9;1659:18;1646:32;1687:31;1712:5;1687:31;:::i;:::-;1416:383;;1737:5;;-1:-1:-1;;;1789:2:27;1774:18;;;;1761:32;;1416:383::o;1996:184::-;2066:6;2119:2;2107:9;2098:7;2094:23;2090:32;2087:52;;;2135:1;2132;2125:12;2087:52;-1:-1:-1;2158:16:27;;1996:184;-1:-1:-1;1996:184:27:o;2393:251::-;2463:6;2516:2;2504:9;2495:7;2491:23;2487:32;2484:52;;;2532:1;2529;2522:12;2484:52;2564:9;2558:16;2583:31;2608:5;2583:31;:::i;:::-;2633:5;2393:251;-1:-1:-1;;;2393:251:27:o;2649:245::-;2716:6;2769:2;2757:9;2748:7;2744:23;2740:32;2737:52;;;2785:1;2782;2775:12;2737:52;2817:9;2811:16;2836:28;2858:5;2836:28;:::i;4151:127::-;4212:10;4207:3;4203:20;4200:1;4193:31;4243:4;4240:1;4233:15;4267:4;4264:1;4257:15;4283:125;4323:4;4351:1;4348;4345:8;4342:34;;;4356:18;;:::i;:::-;-1:-1:-1;4393:9:27;;4283:125::o;4413:422::-;4502:1;4545:5;4502:1;4559:270;4580:7;4570:8;4567:21;4559:270;;;4639:4;4635:1;4631:6;4627:17;4621:4;4618:27;4615:53;;;4648:18;;:::i;:::-;4698:7;4688:8;4684:22;4681:55;;;4718:16;;;;4681:55;4797:22;;;;4757:15;;;;4559:270;;;4563:3;4413:422;;;;;:::o;4840:806::-;4889:5;4919:8;4909:80;;-1:-1:-1;4960:1:27;4974:5;;4909:80;5008:4;4998:76;;-1:-1:-1;5045:1:27;5059:5;;4998:76;5090:4;5108:1;5103:59;;;;5176:1;5171:130;;;;5083:218;;5103:59;5133:1;5124:10;;5147:5;;;5171:130;5208:3;5198:8;5195:17;5192:43;;;5215:18;;:::i;:::-;-1:-1:-1;;5271:1:27;5257:16;;5286:5;;5083:218;;5385:2;5375:8;5372:16;5366:3;5360:4;5357:13;5353:36;5347:2;5337:8;5334:16;5329:2;5323:4;5320:12;5316:35;5313:77;5310:159;;;-1:-1:-1;5422:19:27;;;5454:5;;5310:159;5501:34;5526:8;5520:4;5501:34;:::i;:::-;5571:6;5567:1;5563:6;5559:19;5550:7;5547:32;5544:58;;;5582:18;;:::i;:::-;5620:20;;-1:-1:-1;4840:806:27;;;;;:::o;5651:131::-;5711:5;5740:36;5767:8;5761:4;5740:36;:::i;5787:127::-;5848:10;5843:3;5839:20;5836:1;5829:31;5879:4;5876:1;5869:15;5903:4;5900:1;5893:15;5919:120;5959:1;5985;5975:35;;5990:18;;:::i;:::-;-1:-1:-1;6024:9:27;;5919:120::o;6044:168::-;6084:7;6150:1;6146;6142:6;6138:14;6135:1;6132:21;6127:1;6120:9;6113:17;6109:45;6106:71;;;6157:18;;:::i;:::-;-1:-1:-1;6197:9:27;;6044:168::o;6876:348::-;7106:2;7095:9;7088:21;7069:4;7126:49;7171:2;7160:9;7156:18;6789:2;6777:15;;-1:-1:-1;;;6817:4:27;6808:14;;6801:36;6862:2;6853:12;;6712:159;7126:49;7118:57;;7211:6;7206:2;7195:9;7191:18;7184:34;6876:348;;;;:::o;7393:::-;7623:2;7612:9;7605:21;7586:4;7643:49;7688:2;7677:9;7673:18;7306:2;7294:15;;-1:-1:-1;;;7334:4:27;7325:14;;7318:36;7379:2;7370:12;;7229:159;8245:112;8277:1;8303;8293:35;;8308:18;;:::i;:::-;-1:-1:-1;8342:9:27;;8245:112::o;8362:128::-;8402:3;8433:1;8429:6;8426:1;8423:13;8420:39;;;8439:18;;:::i;:::-;-1:-1:-1;8475:9:27;;8362:128::o;9504:127::-;9565:10;9560:3;9556:20;9553:1;9546:31;9596:4;9593:1;9586:15;9620:4;9617:1;9610:15;9915:258;9987:1;9997:113;10011:6;10008:1;10005:13;9997:113;;;10087:11;;;10081:18;10068:11;;;10061:39;10033:2;10026:10;9997:113;;;10128:6;10125:1;10122:13;10119:48;;;-1:-1:-1;;10163:1:27;10145:16;;10138:27;9915:258::o;10178:371::-;-1:-1:-1;;;;;;10363:33:27;;10351:46;;10420:13;;10333:3;;10442:61;10420:13;10492:1;10483:11;;10476:4;10464:17;;10442:61;:::i;:::-;10523:16;;;;10541:1;10519:24;;10178:371;-1:-1:-1;;;10178:371:27:o;10554:274::-;10683:3;10721:6;10715:13;10737:53;10783:6;10778:3;10771:4;10763:6;10759:17;10737:53;:::i;:::-;10806:16;;;;;10554:274;-1:-1:-1;;10554:274:27:o;11642:374::-;11872:2;11861:9;11854:21;11835:4;11892:49;11937:2;11926:9;11922:18;6789:2;6777:15;;-1:-1:-1;;;6817:4:27;6808:14;;6801:36;6862:2;6853:12;;6712:159;11892:49;-1:-1:-1;;;;;11977:32:27;;;;11972:2;11957:18;;;;11950:60;;;;-1:-1:-1;11884:57:27;11642:374::o;12021:::-;12251:2;12240:9;12233:21;12214:4;12271:49;12316:2;12305:9;12301:18;7306:2;7294:15;;-1:-1:-1;;;7334:4:27;7325:14;;7318:36;7379:2;7370:12;;7229:159;12803:258;12845:3;12883:5;12877:12;12910:6;12905:3;12898:19;12926:63;12982:6;12975:4;12970:3;12966:14;12959:4;12952:5;12948:16;12926:63;:::i;:::-;13043:2;13022:15;-1:-1:-1;;13018:29:27;13009:39;;;;13050:4;13005:50;;12803:258;-1:-1:-1;;12803:258:27:o;13066:440::-;13316:2;13305:9;13298:21;13279:4;13342:49;13387:2;13376:9;13372:18;6789:2;6777:15;;-1:-1:-1;;;6817:4:27;6808:14;;6801:36;6862:2;6853:12;;6712:159;13342:49;13439:9;13431:6;13427:22;13422:2;13411:9;13407:18;13400:50;13467:33;13493:6;13485;13467:33;:::i;13511:440::-;13761:2;13750:9;13743:21;13724:4;13787:49;13832:2;13821:9;13817:18;7306:2;7294:15;;-1:-1:-1;;;7334:4:27;7325:14;;7318:36;7379:2;7370:12;;7229:159", + "object": "0x60806040523480156200001157600080fd5b5060043610620001755760003560e01c80637ed9db5911620000d3578063ba414fa61162000086578063ba414fa6146200029e578063c060c5f314620002b9578063c5ba73ed14620002d0578063e70dd6cf14620002d9578063eea9621014620002e2578063fa7626d414620002ec57600080fd5b80637ed9db59146200024a57806386ef399b14620002615780638c38922f14620002785780639f71f14a1462000281578063b8dae58b146200028a578063b967b5a7146200029457600080fd5b8063344b1478116200012c578063344b147814620001e85780633493f4ca14620001ff57806338505fb014620002085780636686e15414620002115780636c676a60146200021b5780637a8fe3c0146200024157600080fd5b806304740900146200017a5780630a831a1514620001865780630a9254e41462000190578063174a5be4146200019a5780631afcfe2214620001ba57806330f7c5c314620001d1575b600080fd5b62000184620002fa565b005b6200018462000a09565b6200018462000fab565b620001a3600181565b60405160ff90911681526020015b60405180910390f35b62000184620001cb36600462003e93565b62001137565b62000184620001e236600462003ead565b620019a9565b62000184620001f936600462003ead565b62001b1f565b620001a3600b81565b620001a3600281565b6200018462001c28565b620002326200022c36600462003ee9565b620022dd565b604051908152602001620001b1565b620001a3600c81565b620001846200025b36600462003f43565b6200233b565b620001846200027236600462003e93565b6200250a565b620001a3600a81565b620001a3600481565b6200018462002b89565b6200018462003246565b620002a86200332c565b6040519015158152602001620001b1565b62000232620002ca36600462003ead565b62003461565b620001a3600381565b620001a3600081565b620001846200347c565b600054620002a89060ff1681565b60195460185460405163a9059cbb60e01b81526001600160a01b0391821660048201526a0422ca8b0a00a4250000006024820181905292919091169063a9059cbb906044016020604051808303816000875af11580156200035f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000385919062003f7e565b50600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620003d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003fb919062003f7e565b6200040a576200040a62003f9e565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362000453939082169291169069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af115801562000473573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000499919062003f7e565b620004a857620004a862003f9e565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620004f1939082169291169069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af115801562000511573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000537919062003f7e565b62000546576200054662003f9e565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200058a92911690849069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af1158015620005aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005d0919062003f7e565b620005df57620005df62003f9e565b620005ed62127500620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200063c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000662919062003f7e565b62000671576200067162003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620006fc9291909116906370a0823190602401602060405180830381865afa158015620006c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006eb919062003fd8565b691969368974c05b00000062003735565b6200070a62cb0700620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562000759573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200077f919062003f7e565b6200078e576200078e62003f9e565b6019546001546040516370a0823160e01b81526001600160a01b039182166004820152620008199291909116906370a0823190602401602060405180830381865afa158015620007e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000808919062003fd8565b697f0e10af47c1c700000062003735565b6200082762b89200620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562000876573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200089c919062003f7e565b620008ab57620008ab62003f9e565b6019546001546040516370a0823160e01b81526001600160a01b039182166004820152620009379291909116906370a08231906024015b602060405180830381865afa15801562000900573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000926919062003fd8565b69d3c21bcecceda100000062003735565b620009466301dfe200620036d5565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562000995573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620009bb919062003f7e565b620009ca57620009ca62003f9e565b6019546002546040516370a0823160e01b81526001600160a01b03918216600482015262000a069291909116906370a0823190602401620008e2565b50565b601954604080516318160ddd60e01b8152905162000a8f926001600160a01b0316916318160ddd9160048083019260209291908290030181865afa15801562000a56573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a7c919062003fd8565b6b033b2e3c9fd0803ce800000062003735565b6019546040516370a0823160e01b815230600482015262000adb916001600160a01b0316906370a0823190602401602060405180830381865afa15801562000a56573d6000803e3d6000fd5b6019546018546040516370a0823160e01b81526001600160a01b03918216600482015262000b5e9291909116906370a08231906024015b602060405180830381865afa15801562000b30573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b56919062003fd8565b600062003735565b60195460408051638da5cb5b60e01b8152905162000bd8926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa15801562000bab573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000bd1919062003ff2565b306200380e565b601954604080516311318fbb60e21b8152905162000c5d926001600160a01b0316916344c63eec9160048083019260209291908290030181865afa15801562000c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000c4b919062003ff2565b6018546001600160a01b03166200380e565b601954604080516311318fbb60e21b8152905162000d4c926001600160a01b031691639b19251a9183916344c63eec9160048083019260209291908290030181865afa15801562000cb2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000cd8919062003ff2565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015b602060405180830381865afa15801562000d1e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d44919062003f7e565b600162003908565b601954604051634d8c928d60e11b81526001600160a01b039091166004820181905262000d8291639b19251a9060240162000d00565b60195460408051638da5cb5b60e01b8152905162000dd7926001600160a01b031691639b19251a918391638da5cb5b9160048083019260209291908290030181865afa15801562000cb2573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905162000e5c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000e24573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e4a919062003ff2565b6019546001600160a01b03166200380e565b6018546040805163f02c6d8f60e01b8152905162000ea9926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000b30573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000f24926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000ef6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f1c919062003f7e565b600062003908565b60185460408051638da5cb5b60e01b8152905162000fa9926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa15801562000f71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f97919062003ff2565b6002546001600160a01b03166200380e565b565b62000fb562003246565b62000fbf6200347c565b633b9aca006012633b9aca008060405162000fda9062003e69565b93845260c060208501819052600a908501526950726f7665205a65726f60b01b60e0850152610100604085018190526005908501526450524f564560d81b61012085015260ff9092166060840152608083015260a082015261014001604051809103906000f08015801562001053573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b0392831690811790915560025460405191921690620010889062003e77565b6001600160a01b03928316815291166020820152604001604051809103906000f080158015620010bc573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b03928316908117909155601954604051631bdbfcef60e21b8152600481019290925290911690636f6ff3bc90602401600060405180830381600087803b1580156200111c57600080fd5b505af115801562001131573d6000803e3d6000fd5b50505050565b620011598169152d02c7e14af68000006a52b7d2dcc80cd2e400000062003a7f565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101849052929350169063a9059cbb906044016020604051808303816000875af1158015620011b1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011d7919062003f7e565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b1580156200123257600080fd5b505af115801562001247573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc94506200128b939283169290911690869060040162003fb4565b6020604051808303816000875af1158015620012ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012d1919062003f7e565b620012e057620012e062003f9e565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200132f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001355919062003f7e565b62001364576200136462003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620013a09291909116906370a082319060240162000b12565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620013ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001415919062003f7e565b62001424576200142462003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620014c99291909116906370a08231906024015b602060405180830381865afa15801562001479573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200149f919062003fd8565b6064620014ae84600c62004028565b620014ba91906200405e565b670de0b6b3a764000062001b1f565b620014d76224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001526573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200154c919062003f7e565b6200155b576200155b62003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620015e49291909116906370a0823190602401602060405180830381865afa158015620015af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015d5919062003fd8565b6064620014ae84601462004028565b620015f26224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001641573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001667919062003f7e565b62001676576200167662003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620016ff9291909116906370a0823190602401602060405180830381865afa158015620016ca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016f0919062003fd8565b6064620014ae84601c62004028565b6200170d626ebe00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200175c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001782919062003f7e565b62001791576200179162003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200181a9291909116906370a0823190602401602060405180830381865afa158015620017e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200180b919062003fd8565b6064620014ae84603462004028565b6200182862dd7c00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001877573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200189d919062003f7e565b620018ac57620018ac62003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200192e9291909116906370a08231906024015b602060405180830381865afa15801562001901573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001927919062003fd8565b8262003735565b7f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200198d57600080fd5b505af1158015620019a2573d6000803e3d6000fd5b5050505050565b6000828411620019c557620019bf848462004075565b620019d1565b620019d1838562004075565b905080600003620019e25750505050565b60008415620019f25784620019f4565b835b9050600062001a0584600a62004188565b62001a1d906b033b2e3c9fd0803ce80000006200405e565b8262001a366b033b2e3c9fd0803ce80000008662004028565b62001a4291906200405e565b1090508062001b1757604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a7708339815191529181900360a00190a16000805160206200a7708339815191528660405162001add919062004196565b60405180910390a16000805160206200a7708339815191528560405162001b059190620041cf565b60405180910390a162001b1762003ac0565b505050505050565b600082841162001b3b5762001b35848462004075565b62001b47565b62001b47838562004075565b90508181111580620019a257604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a7708339815191529181900360a00190a16000805160206200a7708339815191528560405162001bee919062004196565b60405180910390a16000805160206200a7708339815191528460405162001c169190620041cf565b60405180910390a1620019a262003ac0565b60195460185460405163a9059cbb60e01b81526001600160a01b0391821660048201526a0422ca8b0a00a4250000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562001c8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cb3919062003f7e565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562001d0e57600080fd5b505af115801562001d23573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152737109709ecfa91a80626ff3989d68f67f5b1dd12d925063f28dceb39150608401600060405180830381600087803b15801562001dc857600080fd5b505af115801562001ddd573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e3257600080fd5b505af115801562001e47573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062001e9593928316929091169069d3c21bcecceda10000009060040162003fb4565b6020604051808303816000875af115801562001eb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001edb919062003f7e565b62001eea5762001eea62003f9e565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152737109709ecfa91a80626ff3989d68f67f5b1dd12d9063f28dceb390608401600060405180830381600087803b15801562001f7957600080fd5b505af115801562001f8e573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001fe357600080fd5b505af115801562001ff8573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af11580156200204b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002071919062003f7e565b62002080576200208062003f9e565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620020d157600080fd5b505af1158015620020e6573d6000803e3d6000fd5b50505050620020f96301dfe200620036d5565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200214a57600080fd5b505af11580156200215f573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152737109709ecfa91a80626ff3989d68f67f5b1dd12d925063f28dceb39150608401600060405180830381600087803b158015620021fb57600080fd5b505af115801562002210573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200226557600080fd5b505af11580156200227a573d6000803e3d6000fd5b505050507f885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d60001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200198d57600080fd5b600084158015620022ec575081155b15620022fb5750600062002333565b8383036200230b57508162002333565b8362002318818562004075565b620023249087620041fa565b62002330919062004211565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015620023a0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023c6919062003fd8565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856200241e919062004211565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b1580156200246d57600080fd5b505af115801562002482573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262001b179350861691506370a0823190602401602060405180830381865afa158015620024d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024f8919062003fd8565b62002504868462004211565b62003735565b6200252c8169152d02c7e14af68000006a52b7d2dcc80cd2e400000062003a7f565b6019546018549192506001600160a01b039081169163a9059cbb91166200255584600362004028565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015620025a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620025c7919062003f7e565b50600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562002617573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200263d919062003f7e565b6200264c576200264c62003f9e565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200268b9390821692911690869060040162003fb4565b6020604051808303816000875af1158015620026ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620026d1919062003f7e565b620026e057620026e062003f9e565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200271f9390821692911690869060040162003fb4565b6020604051808303816000875af11580156200273f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002765919062003f7e565b62002774576200277462003f9e565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620027ae929116908490869060040162003fb4565b6020604051808303816000875af1158015620027ce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027f4919062003f7e565b62002803576200280362003f9e565b6200281162127500620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002860573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002886919062003f7e565b62002895576200289562003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620028d19291909116906370a08231906024016200145b565b620028df62cb0700620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200292e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002954919062003f7e565b62002963576200296362003f9e565b6019546001546040516370a0823160e01b81526001600160a01b039182166004820152620029ec9291909116906370a0823190602401602060405180830381865afa158015620029b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029dd919062003fd8565b6064620014ae84603c62004028565b620029fa62b89200620036d5565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002a49573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a6f919062003f7e565b62002a7e5762002a7e62003f9e565b6019546001546040516370a0823160e01b81526001600160a01b03918216600482015262002aba9291909116906370a0823190602401620018e3565b62002ac96301dfe200620036d5565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002b3e919062003f7e565b62002b4d5762002b4d62003f9e565b6019546002546040516370a0823160e01b81526001600160a01b03918216600482015262000a069291909116906370a0823190602401620018e3565b60195460185460405163a9059cbb60e01b81526001600160a01b03918216600482015269d3c21bcecceda10000006024820181905292919091169063a9059cbb906044016020604051808303816000875af115801562002bed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c13919062003f7e565b506003546040516303223eab60e11b81526001600160a01b039091166004820152737109709ecfa91a80626ff3989d68f67f5b1dd12d906306447d5690602401600060405180830381600087803b15801562002c6e57600080fd5b505af115801562002c83573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002cc7939283169290911690869060040162003fb4565b6020604051808303816000875af115801562002ce7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002d0d919062003f7e565b62002d1c5762002d1c62003f9e565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562002d6b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002d91919062003f7e565b62002da05762002da062003f9e565b6019546003546040516370a0823160e01b81526001600160a01b03918216600482015262002ddc9291909116906370a082319060240162000b12565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002e2b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e51919062003f7e565b62002e605762002e6062003f9e565b6019546003546040516370a0823160e01b81526001600160a01b03918216600482015262002ef59291909116906370a0823190602401602060405180830381865afa15801562002eb4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002eda919062003fd8565b606462002ee984600c62004028565b6200250491906200405e565b62002f036224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562002f52573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002f78919062003f7e565b62002f875762002f8762003f9e565b6019546003546040516370a0823160e01b81526001600160a01b039182166004820152620030109291909116906370a0823190602401602060405180830381865afa15801562002fdb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003001919062003fd8565b606462002ee984601462004028565b6200301e6224ea00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200306d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003093919062003f7e565b620030a257620030a262003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200312b9291909116906370a0823190602401602060405180830381865afa158015620030f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200311c919062003fd8565b606462002ee984601c62004028565b62003139626ebe00620036d5565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003188573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620031ae919062003f7e565b620031bd57620031bd62003f9e565b6019546003546040516370a0823160e01b81526001600160a01b0391821660048201526200181a9291909116906370a0823190602401602060405180830381865afa15801562003211573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003237919062003fd8565b606462002ee984603462004028565b604051620032549062003e85565b604051809103906000f08015801562003271573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b0392909216919091179055604051620032a09062003e85565b604051809103906000f080158015620032bd573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620032ec9062003e85565b604051809103906000f08015801562003309573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200334d5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156200345c5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091620033de917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016200424d565b60408051601f1981840301815290829052620033fa9162004280565b6000604051808303816000865af19150503d806000811462003439576040519150601f19603f3d011682016040523d82523d6000602084013e6200343e565b606091505b509150508080602001905181019062003458919062003f7e565b9150505b919050565b6000620034728484846000620022dd565b90505b9392505050565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf02620036fb834262004211565b6040518263ffffffff1660e01b81526004016200371a91815260200190565b600060405180830381600087803b1580156200198d57600080fd5b8082146200380a577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620037a89060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a77083398151915281604051620037d0919062004196565b60405180910390a16000805160206200a77083398151915282604051620037f89190620041cf565b60405180910390a16200380a62003ac0565b5050565b806001600160a01b0316826001600160a01b0316146200380a577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620038969060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620038cf91906200429e565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f82604051620037f89190620042e3565b801515821515146200380a577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200397f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620039d2576040518060400160405280600581526020016466616c736560d81b815250620039f0565b604051806040016040528060048152602001637472756560e01b8152505b604051620039ff91906200433c565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838262003a52576040518060400160405280600581526020016466616c736560d81b81525062003a70565b604051806040016040528060048152602001637472756560e01b8152505b604051620037f891906200437b565b600062003a8e84848462003bd3565b9050620034756040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262003dc9565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1562003bc25760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f198184030181529082905262003b5d92916020016200424d565b60408051601f198184030181529082905262003b799162004280565b6000604051808303816000865af19150503d806000811462003bb8576040519150601f19603f3d011682016040523d82523d6000602084013e62003bbd565b606091505b505050505b6000805461ff001916610100179055565b60008183111562003c505760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e0000606482015260840160405180910390fd5b82841015801562003c615750818411155b1562003c6f57508262003475565b600062003c7d848462004075565b62003c8a90600162004211565b90506003851115801562003c9d57508481115b1562003cb85762003caf858562004211565b91505062003475565b62003cc7600360001962004075565b851015801562003ce3575062003ce08560001962004075565b81115b1562003d035762003cf78560001962004075565b62003caf908462004075565b8285111562003d6557600062003d1a848762004075565b9050600062003d2a8383620041fa565b90508060000362003d415784935050505062003475565b600162003d4f828862004211565b62003d5b919062004075565b9350505062003dc1565b8385101562003dc157600062003d7c868662004075565b9050600062003d8c8383620041fa565b90508060000362003da35785935050505062003475565b62003daf818662004075565b62003dbc90600162004211565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162003df5929190620043a6565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162003e2c919062004280565b600060405180830381855afa9150503d806000811462001b17576040519150601f19603f3d011682016040523d82523d6000602084013e62001b17565b61446c80620043cb83390190565b611962806200883783390190565b6105d7806200a19983390190565b60006020828403121562003ea657600080fd5b5035919050565b60008060006060848603121562003ec357600080fd5b505081359360208301359350604090920135919050565b801515811462000a0657600080fd5b6000806000806080858703121562003f0057600080fd5b843593506020850135925060408501359150606085013562003f228162003eda565b939692955090935050565b6001600160a01b038116811462000a0657600080fd5b60008060006060848603121562003f5957600080fd5b83359250602084013562003f6d8162003f2d565b929592945050506040919091013590565b60006020828403121562003f9157600080fd5b8151620034758162003eda565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b039384168152919092166020820152604081019190915260600190565b60006020828403121562003feb57600080fd5b5051919050565b6000602082840312156200400557600080fd5b8151620034758162003f2d565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762004042576200404262004012565b92915050565b634e487b7160e01b600052601260045260246000fd5b60008262004070576200407062004048565b500490565b8181038181111562004042576200404262004012565b600181815b80851115620040cc578160001904821115620040b057620040b062004012565b80851615620040be57918102915b93841c939080029062004090565b509250929050565b600082620040e55750600162004042565b81620040f45750600062004042565b81600181146200410d5760028114620041185762004138565b600191505062004042565b60ff8411156200412c576200412c62004012565b50506001821b62004042565b5060208310610133831016604e8410600b84101617156200415d575081810a62004042565b6200416983836200408b565b806000190482111562004180576200418062004012565b029392505050565b6000620034758383620040d4565b604081526000620041c160408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b604081526000620041c160408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000826200420c576200420c62004048565b500690565b8082018082111562004042576200404262004012565b60005b83811015620042445781810151838201526020016200422a565b50506000910152565b6001600160e01b03198316815281516000906200427281600485016020870162004227565b919091016004019392505050565b600082516200429481846020870162004227565b9190910192915050565b604081526000620042c960408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000620042c960408301600a815269080808081058dd1d585b60b21b602082015260400190565b600081518084526200432881602086016020860162004227565b601f01601f19169290920160200192915050565b6040815260006200436760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200233381856200430e565b6040815260006200436760408301600a815269080808081058dd1d585b60b21b602082015260400190565b604081526000620043bb60408301856200430e565b9050826020830152939250505056fe60a06040526011805460ff191690553480156200001b57600080fd5b506040516200446c3803806200446c8339810160408190526200003e91620005f4565b848460036200004e838262000724565b5060046200005d828262000724565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a62000903565b62000111908762000914565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200092e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200092e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200092e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a62000903565b620002f1908362000914565b600e5560055460ff166200030790600a62000903565b62000313908262000914565b600f5560055460ff166200032990600a62000903565b6200033690600162000914565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a62000903565b62000402908962000914565b62000414565b50505050505062000976565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000960565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b600093810190920192909252949350505050565b60008060008060008060c087890312156200060e57600080fd5b865160208801519096506001600160401b03808211156200062e57600080fd5b6200063c8a838b0162000545565b965060408901519150808211156200065357600080fd5b506200066289828a0162000545565b945050606087015160ff811681146200067a57600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006ab57607f821691505b602082108103620006cc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620006fb5750805b601f850160051c820191505b818110156200071c5782815560010162000707565b505050505050565b81516001600160401b038111156200074057620007406200052f565b620007588162000751845462000696565b84620006d2565b602080601f831160018114620007905760008415620007775750858301515b600019600386901b1c1916600185901b1785556200071c565b600085815260208120601f198616915b82811015620007c157888601518255948401946001909101908401620007a0565b5085821015620007e05787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620008475781600019048211156200082b576200082b620007f0565b808516156200083957918102915b93841c93908002906200080b565b509250929050565b600082620008605750600162000529565b816200086f5750600062000529565b81600181146200088857600281146200089357620008b3565b600191505062000529565b60ff841115620008a757620008a7620007f0565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008d8575081810a62000529565b620008e4838362000806565b8060001904821115620008fb57620008fb620007f0565b029392505050565b60006200052660ff8416836200084f565b8082028115828204841417620005295762000529620007f0565b6000602082840312156200094157600080fd5b81516001600160a01b03811681146200095957600080fd5b9392505050565b80820180821115620005295762000529620007f0565b608051613ad362000999600039600081816107e20152611c890152613ad36000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a0565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e2565b60186020526000908152604090205481565b6002546103b9565b6103da6104203660046134fd565b61099a565b61039061043336600461353e565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a0565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a0565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d5366004613557565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b36600461353e565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c366004613573565b6110bc565b61039061055f366004613590565b6112e7565b6103b9610572366004613573565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a0565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e2565b60166020526000908152604090205481565b61043f61060e366004613573565b60156020526000908152604090205460ff1681565b6103da610631366004613573565b60136020526000908152604090205460ff1681565b6103906106543660046134a0565b611624565b61043f610667366004613573565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a0565b61168e565b6103da61069d3660046134a0565b6116dd565b6103906106b036600461353e565b6116ea565b6106c86106c3366004613573565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f6366004613573565b60176020526000908152604090205460ff1681565b61039061071936600461353e565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b61039061075236600461353e565b611dbe565b6103b96107653660046135c5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e366004613573565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c5366004613573565b61201d565b6103906107d8366004613573565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a0565b612219565b610390610825366004613590565b612418565b6103b9610838366004613573565b60196020526000908152604090205481565b6103da610858366004613573565b60126020526000908152604090205460ff1681565b6103b961087b366004613573565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135f3565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b60606003805461090090613628565b80601f016020809104026020016040519081016040528092919081815260200182805461092c90613628565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a51602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135f3565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a61375c565b610ac4908261376b565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135f3565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135f3565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613782565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135f3565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135f3565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a61375c565b610ee6908261376b565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135f3565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137df565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135f3565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135f3565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613782565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df9084906137f8565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c9084906137f8565b90915550505050565b60606004805461090090613628565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613782565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a79602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135f3565b60055460ff1661172b90600a61375c565b611735908261376b565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137df565b6001600160a01b0387166000908152601960205260408120549192506117d4828461380b565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135f3565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135f3565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b815260206004820152604660248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b815260206004820152603960248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b8152602060048201526044602482018190526000805160206139e9833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b815260206004820152604260248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135f3565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e2881426137f8565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135f3565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135f3565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613782565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061380b565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc82846137f8565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a74908561376b565b612a7e919061381e565b90506000612a8c828561380b565b905083612a9982846137f8565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c91906137f8565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a09602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a2b602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d1613856565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613267919061386c565b8160018151811061327a5761327a613856565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138cd565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a91908101906138ee565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c6137f8565b6040518663ffffffff1660e01b815260040161339d9594939291906139ac565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e2613856565b602002602001015192505050919050565b60006124fc828461380b565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156134b357600080fd5b82356134be816133ff565b946020939093013593505050565b803560ff811681146134dd57600080fd5b919050565b6000602082840312156134f457600080fd5b6124fc826134cc565b60008060006060848603121561351257600080fd5b833561351d816133ff565b9250602084013561352d816133ff565b929592945050506040919091013590565b60006020828403121561355057600080fd5b5035919050565b6000806040838503121561356a57600080fd5b6134be836134cc565b60006020828403121561358557600080fd5b81356124fc816133ff565b600080604083850312156135a357600080fd5b82356135ae816133ff565b91506135bc602084016134cc565b90509250929050565b600080604083850312156135d857600080fd5b82356135e3816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061363c57607f821691505b60208210810361365c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136b357816000190482111561369957613699613662565b808516156136a657918102915b93841c939080029061367d565b509250929050565b6000826136ca57506001610994565b816136d757506000610994565b81600181146136ed57600281146136f757613713565b6001915050610994565b60ff84111561370857613708613662565b50506001821b610994565b5060208310610133831016604e8410600b8410161715613736575081810a610994565b6137408383613678565b806000190482111561375457613754613662565b029392505050565b60006124fc60ff8416836136bb565b808202811582820484141761099457610994613662565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b6000602082840312156137f157600080fd5b5051919050565b8082018082111561099457610994613662565b8181038181111561099457610994613662565b60008261383b57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561387e57600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138c25781516001600160a01b03168752958201959082019060010161389d565b509495945050505050565b8281526040602082015260006138e66040830184613889565b949350505050565b6000602080838503121561390157600080fd5b825167ffffffffffffffff8082111561391957600080fd5b818501915085601f83011261392d57600080fd5b81518181111561393f5761393f613840565b8060051b604051601f19603f8301168101818110858211171561396457613964613840565b60405291825284820192508381018501918883111561398257600080fd5b938501935b828510156139a057845184529385019392850192613987565b98975050505050505050565b85815284602082015260a0604082015260006139cb60a0830186613889565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f6afa79d2dd6dc16daa6196b4a596cb84785ca65de715a6382c40987a3939e4c64736f6c6343000811003360a06040523480156200001157600080fd5b5060405162001962380380620019628339810160408190526200003491620001b2565b600080546001600160a01b0319163390811782556040519091829160008051602062001942833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194283398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161172e62000214600039600081816101d7015281816108320152610be5015261172e6000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160d565b90506000606461035384600861162f565b61035d919061160d565b610367908361162f565b606461037485600c61162f565b61037e919061160d565b6103889190611646565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611659565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d61168e565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116a4565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b906000526020600020906003020160020160008282546109479190611646565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611659565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611659565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611659565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116c6565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116a4565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611659565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff8142611646565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611659565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c5908490611646565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611659565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116df565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115611607576116076115de565b92915050565b60008261162a57634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417611607576116076115de565b80820180821115611607576116076115de565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116b657600080fd5b8151801515811461151c57600080fd5b6000602082840312156116d857600080fd5b5051919050565b6000600182016116f1576116f16115de565b506001019056fea2646970667358221220d2355449aa619c52df97b3ae1052a171b8fa5fa41104c173bef64d6cc1fd6c1b64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c63430008110033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220583485df38d2f8d815109cb31c6d64fc274c9066b9f2f549bb1c045690fe199d64736f6c63430008110033", + "sourceMap": "306:10985:25:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5294:1960;;;:::i;:::-;;1375:828;;;:::i;432:907::-;;;:::i;1745:36:26:-;;1780:1;1745:36;;;;;186:4:27;174:17;;;156:36;;144:2;129:18;1745:36:26;;;;;;;;7321:1879:25;;;;;;:::i;:::-;;:::i;4740:583:26:-;;;;;;:::i;:::-;;:::i;5374:479::-;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;2283:1126:25;;;:::i;6028:291:26:-;;;;;;:::i;:::-;;:::i;:::-;;;1429:25:27;;;1417:2;1402:18;6028:291:26;1283:177:27;2262:45:26;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;9264:2022:25:-;;;;;;:::i;:::-;;:::i;2092:45:26:-;;2135:2;2092:45;;2005:36;;2040:1;2005:36;;3462:1782:25;;;:::i;3312:184:26:-;;;:::i;1819:584:0:-;;;:::i;:::-;;;2154:14:27;;2147:22;2129:41;;2117:2;2102:18;1819:584:0;1989:187:27;5861:159:26;;;;;;:::i;:::-;;:::i;1916:36::-;;1951:1;1916:36;;1655;;1690:1;1655:36;;3620:551;;;:::i;1572:26:0:-;;;;;;;;;5294:1960:25;5407:10;;5435:7;;5407:46;;-1:-1:-1;;;5407:46:25;;-1:-1:-1;;;;;5435:7:25;;;5407:46;;;2355:51:27;5379:15:25;2422:18:27;;;2415:34;;;5379:15:25;5407:10;;;;;:19;;2328:18:27;;5407:46:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5499:3:25;;5529:7;;5499:39;;-1:-1:-1;;;5499:39:25;;-1:-1:-1;;;;;5529:7:25;;;5499:39;;;2856:51:27;5499:3:25;;;:21;;2829:18:27;;5499:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5492:47;;;;:::i;:::-;5648:3;;5676:7;;5694:3;;5648:68;;-1:-1:-1;;;5648:68:25;;-1:-1:-1;;;;;5648:3:25;;;;:19;;:68;;5676:7;;;;5694:3;;;5700:15;;5648:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5641:76;;;;:::i;:::-;5769:3;;5797:7;;5769:3;5815;5769:68;;-1:-1:-1;;;5769:68:25;;-1:-1:-1;;;;;5769:3:25;;;;:19;;:68;;5797:7;;;;5815:3;;;5821:15;;5769:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5762:76;;;;:::i;:::-;5890:3;;5918:7;;5890:68;;-1:-1:-1;;;5890:68:25;;-1:-1:-1;;;;;5890:3:25;;;;:19;;:68;;5918:7;;;5890:3;;5942:15;;5890:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5883:76;;;;:::i;:::-;6034:13;6039:7;6034:4;:13::i;:::-;6065:3;;6087:7;;6065:31;;-1:-1:-1;;;6065:31:25;;-1:-1:-1;;;;;6087:7:25;;;6065:31;;;2856:51:27;6065:3:25;;;:13;;2829:18:27;;6065:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6058:39;;;;:::i;:::-;6183:10;;6212:3;;6183:34;;-1:-1:-1;;;6183:34:25;;-1:-1:-1;;;;;6212:3:25;;;6183:34;;;2856:51:27;6174:75:25;;6183:10;;;;;:20;;2829:18:27;;6183:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6220:26;6174:8;:75::i;:::-;6314:14;6319:8;6314:4;:14::i;:::-;6400:3;;6422:7;;6400:31;;-1:-1:-1;;;6400:31:25;;-1:-1:-1;;;;;6422:7:25;;;6400:31;;;2856:51:27;6400:3:25;;;:13;;2829:18:27;;6400:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6393:39;;;;:::i;:::-;6518:10;;;6547:3;6518:34;;-1:-1:-1;;;6518:34:25;;-1:-1:-1;;;;;6547:3:25;;;6518:34;;;2856:51:27;6509:74:25;;6518:10;;;;;:20;;2829:18:27;;6518:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6555:26;6509:8;:74::i;:::-;6649:14;6654:8;6649:4;:14::i;:::-;6761:3;;6783:7;;6761:31;;-1:-1:-1;;;6761:31:25;;-1:-1:-1;;;;;6783:7:25;;;6761:31;;;2856:51:27;6761:3:25;;;:13;;2829:18:27;;6761:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6754:39;;;;:::i;:::-;6868:10;;;6897:3;6868:34;;-1:-1:-1;;;6868:34:25;;-1:-1:-1;;;;;6897:3:25;;;6868:34;;;2856:51:27;6859:63:25;;6868:10;;;;;:20;;2829:18:27;;6868:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6905:15;6859:8;:63::i;:::-;6967:14;6972:8;6967:4;:14::i;:::-;7075:3;;7097:7;;7075:31;;-1:-1:-1;;;7075:31:25;;-1:-1:-1;;;;;7097:7:25;;;7075:31;;;2856:51:27;7075:3:25;;;:13;;2829:18:27;;7075:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7068:39;;;;:::i;:::-;7190:10;;7219:3;;7190:34;;-1:-1:-1;;;7190:34:25;;-1:-1:-1;;;;;7219:3:25;;;7190:34;;;2856:51:27;7181:63:25;;7190:10;;;;;:20;;2829:18:27;;7190:34:25;2710:203:27;7181:63:25;5353:1901;5294:1960::o;1375:828::-;1448:10;;:24;;;-1:-1:-1;;;1448:24:25;;;;1439:59;;-1:-1:-1;;;;;1448:10:25;;:22;;:24;;;;;;;;;;;;;;:10;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1478:19;1439:8;:59::i;:::-;1518:10;;:35;;-1:-1:-1;;;1518:35:25;;1547:4;1518:35;;;2856:51:27;1509:69:25;;-1:-1:-1;;;;;1518:10:25;;:20;;2829:18:27;;1518:35:25;;;;;;;;;;;;;;;;;;;;;;1509:69;1598:10;;1627:7;;1598:38;;-1:-1:-1;;;1598:38:25;;-1:-1:-1;;;;;1627:7:25;;;1598:38;;;2856:51:27;1589::25;;1598:10;;;;;:20;;2829:18:27;;1598:38:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1638:1;1589:8;:51::i;:::-;1660:10;;:18;;;-1:-1:-1;;;1660:18:25;;;;1651:46;;-1:-1:-1;;;;;1660:10:25;;:16;;:18;;;;;;;;;;;;;;:10;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1691:4;1651:8;:46::i;:::-;1717:10;;:20;;;-1:-1:-1;;;1717:20:25;;;;1708:49;;-1:-1:-1;;;;;1717:10:25;;:18;;:20;;;;;;;;;;;;;;:10;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1748:7;;-1:-1:-1;;;;;1748:7:25;1708:8;:49::i;:::-;1777:10;;1798:20;;;-1:-1:-1;;;1798:20:25;;;;1768:60;;-1:-1:-1;;;;;1777:10:25;;:20;;:10;;1798:18;;:20;;;;;;;;;;;;;;1777:10;1798:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1777:42;;-1:-1:-1;;;;;;1777:42:25;;;;;;;-1:-1:-1;;;;;2874:32:27;;;1777:42:25;;;2856:51:27;2829:18;;1777:42:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1823:4;1768:8;:60::i;:::-;1848:10;;:41;;-1:-1:-1;;;1848:41:25;;-1:-1:-1;;;;;1848:10:25;;;:41;;;2856:51:27;;;1839:60:25;;1848:20;;2829:18:27;;1848:41:25;2710:203:27;1839:60:25;1919:10;;1940:18;;;-1:-1:-1;;;1940:18:25;;;;1910:60;;-1:-1:-1;;;;;1919:10:25;;:20;;:10;;1940:16;;:18;;;;;;;;;;;;;;1919:10;1940:18;;;;;;;;;;;;;;1910:60;1992:7;;:20;;;-1:-1:-1;;;1992:20:25;;;;1983:57;;-1:-1:-1;;;;;1992:7:25;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2028:10;;-1:-1:-1;;;;;2028:10:25;1983:8;:57::i;:::-;2060:7;;:26;;;-1:-1:-1;;;2060:26:25;;;;2051:39;;-1:-1:-1;;;;;2060:7:25;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;2051:39;2110:7;;:24;;;-1:-1:-1;;;2110:24:25;;;;2101:43;;-1:-1:-1;;;;;2110:7:25;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2138:5;2101:8;:43::i;:::-;2164:7;;:15;;;-1:-1:-1;;;2164:15:25;;;;2155:40;;-1:-1:-1;;;;;2164:7:25;;:13;;:15;;;;;;;;;;;;;;:7;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2190:3;;-1:-1:-1;;;;;2190:3:25;2155:8;:40::i;:::-;1375:828::o;432:907::-;467:14;:12;:14::i;:::-;492:13;:11;:13::i;:::-;700;860:2;917:13;970;673:352;;;;;:::i;:::-;4362:25:27;;;4423:3;4418:2;4403:18;;4396:31;;;4464:2;4443:19;;;4436:31;-1:-1:-1;;;4498:3:27;4483:19;;4476:41;4536:3;4570:2;4555:18;;4548:30;;;4614:1;4594:18;;;4587:29;-1:-1:-1;;;4647:3:27;4632:19;;4625:36;4745:4;4733:17;;;4728:2;4713:18;;4706:45;-1:-1:-1;4767:19:27;;4760:35;-1:-1:-1;4811:19:27;;4804:35;4693:3;4678:19;673:352:25;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;660:10:25;:365;;-1:-1:-1;;;;;;660:365:25;-1:-1:-1;;;;;660:365:25;;;;;;;;;1214:3;;1144:85;;660:365;;1214:3;;1144:85;;;:::i;:::-;-1:-1:-1;;;;;5080:15:27;;;5062:34;;5132:15;;5127:2;5112:18;;5105:43;5012:2;4997:18;1144:85:25;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1134:7:25;:95;;-1:-1:-1;;;;;;1134:95:25;-1:-1:-1;;;;;1134:95:25;;;;;;;;;1292:10;;:39;;-1:-1:-1;;;1292:39:25;;;;;2856:51:27;;;;1292:10:25;;;;:21;;2829:18:27;;1292:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;432:907::o;7321:1879::-;7414:48;7420:7;7429:13;7444:17;7414:5;:48::i;:::-;7533:10;;7561:7;;7533:46;;-1:-1:-1;;;7533:46:25;;-1:-1:-1;;;;;7561:7:25;;;7533:46;;;2355:51:27;2422:18;;;2415:34;;;7404:58:25;;-1:-1:-1;7533:10:25;;:19;;2328:18:27;;7533:46:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;7648:3:25;;7626:27;;-1:-1:-1;;;7626:27:25;;-1:-1:-1;;;;;7648:3:25;;;7626:27;;;2856:51:27;7626:13:25;;;;2829:18:27;;7626:27:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7704:3:25;;7732:7;;7750:3;;7704:60;;-1:-1:-1;;;7704:60:25;;-1:-1:-1;;;;;7704:3:25;;;;-1:-1:-1;7704:19:25;;-1:-1:-1;7704:60:25;;7732:7;;;;7750:3;;;;7756:7;;7704:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7697:68;;;;:::i;:::-;7811:3;;7841:7;;7811:39;;-1:-1:-1;;;7811:39:25;;-1:-1:-1;;;;;7841:7:25;;;7811:39;;;2856:51:27;7811:3:25;;;:21;;2829:18:27;;7811:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7804:47;;;;:::i;:::-;7901:10;;7930:3;;7901:34;;-1:-1:-1;;;7901:34:25;;-1:-1:-1;;;;;7930:3:25;;;7901:34;;;2856:51:27;7892:47:25;;7901:10;;;;;:20;;2829:18:27;;7901:34:25;2710:203:27;7892:47:25;7998:3;;8020:7;;7998:31;;-1:-1:-1;;;7998:31:25;;-1:-1:-1;;;;;8020:7:25;;;7998:31;;;2856:51:27;7998:3:25;;;:13;;2829:18:27;;7998:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7991:39;;;;:::i;:::-;8083:10;;8112:3;;8083:34;;-1:-1:-1;;;8083:34:25;;-1:-1:-1;;;;;8112:3:25;;;8083:34;;;2856:51:27;8072:75:25;;8083:10;;;;;:20;;2829:18:27;;8083:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8134:3;8119:12;:7;8129:2;8119:12;:::i;:::-;:18;;;;:::i;:::-;8139:7;8072:10;:75::i;:::-;8185:13;8190:7;8185:4;:13::i;:::-;8257:3;;8279:7;;8257:31;;-1:-1:-1;;;8257:31:25;;-1:-1:-1;;;;;8279:7:25;;;8257:31;;;2856:51:27;8257:3:25;;;:13;;2829:18:27;;8257:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8250:39;;;;:::i;:::-;8342:10;;8371:3;;8342:34;;-1:-1:-1;;;8342:34:25;;-1:-1:-1;;;;;8371:3:25;;;8342:34;;;2856:51:27;8331:75:25;;8342:10;;;;;:20;;2829:18:27;;8342:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8393:3;8378:12;:7;8388:2;8378:12;:::i;8331:75::-;8444:13;8449:7;8444:4;:13::i;:::-;8516:3;;8538:7;;8516:31;;-1:-1:-1;;;8516:31:25;;-1:-1:-1;;;;;8538:7:25;;;8516:31;;;2856:51:27;8516:3:25;;;:13;;2829:18:27;;8516:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8509:39;;;;:::i;:::-;8601:10;;8630:3;;8601:34;;-1:-1:-1;;;8601:34:25;;-1:-1:-1;;;;;8630:3:25;;;8601:34;;;2856:51:27;8590:75:25;;8601:10;;;;;:20;;2829:18:27;;8601:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8652:3;8637:12;:7;8647:2;8637:12;:::i;8590:75::-;8704:14;8709:8;8704:4;:14::i;:::-;8777:3;;8799:7;;8777:31;;-1:-1:-1;;;8777:31:25;;-1:-1:-1;;;;;8799:7:25;;;8777:31;;;2856:51:27;8777:3:25;;;:13;;2829:18:27;;8777:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8770:39;;;;:::i;:::-;8862:10;;8891:3;;8862:34;;-1:-1:-1;;;8862:34:25;;-1:-1:-1;;;;;8891:3:25;;;8862:34;;;2856:51:27;8851:75:25;;8862:10;;;;;:20;;2829:18:27;;8862:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8913:3;8898:12;:7;8908:2;8898:12;:::i;8851:75::-;8965:14;8970:8;8965:4;:14::i;:::-;9038:3;;9060:7;;9038:31;;-1:-1:-1;;;9038:31:25;;-1:-1:-1;;;;;9060:7:25;;;9038:31;;;2856:51:27;9038:3:25;;;:13;;2829:18:27;;9038:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9031:39;;;;:::i;:::-;9121:10;;9150:3;;9121:34;;-1:-1:-1;;;9121:34:25;;-1:-1:-1;;;;;9150:3:25;;;9121:34;;;2856:51:27;9112:53:25;;9121:10;;;;;:20;;2829:18:27;;9121:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9157:7;9112:8;:53::i;:::-;317:28:1;309:37;;-1:-1:-1;;;;;9178:12:25;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7321:1879;:::o;4740:583:26:-;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:26;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;7820:21:27;;;7877:2;7857:18;;;7850:30;7916:34;7911:2;7896:18;;7889:62;-1:-1:-1;;;7982:3:27;7967:19;;7960:51;8078:4;8063:20;;8056:36;;;5095:80:26;;-1:-1:-1;;;;;;;;;;;5095:80:26;;;;8043:3:27;5095:80:26;;;-1:-1:-1;;;;;;;;;;;5224:4:26;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:26;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:26;;;;;5585:261;;5617:88;;;9349:21:27;;;9406:2;9386:18;;;9379:30;9445:34;9440:2;9425:18;;9418:62;9517:26;9511:3;9496:19;;9489:55;9611:4;9596:20;;9589:36;;;5617:88:26;;-1:-1:-1;;;;;;;;;;;5617:88:26;;;;9576:3:27;5617:88:26;;;-1:-1:-1;;;;;;;;;;;5754:4:26;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:26;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;2283:1126:25:-;2452:10;;2480:7;;2452:46;;-1:-1:-1;;;2452:46:25;;-1:-1:-1;;;;;2480:7:25;;;2452:46;;;2355:51:27;2370:15:25;2422:18:27;;;2415:34;;;2370:15:25;2452:10;;;;;:19;;2328:18:27;;2452:46:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2568:3:25;;2546:27;;-1:-1:-1;;;2546:27:25;;-1:-1:-1;;;;;2568:3:25;;;2546:27;;;2856:51:27;2546:13:25;;;;2829:18:27;;2546:27:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2639:77:25;;-1:-1:-1;;;2639:77:25;;9837:2:27;2639:77:25;;;9819:21:27;9876:2;9856:18;;;9849:30;9915:34;9895:18;;;9888:62;9986:28;9966:18;;;9959:56;2639:15:25;;-1:-1:-1;2639:15:25;;-1:-1:-1;10032:19:27;;2639:77:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2727:7;;;;;;;;;-1:-1:-1;;;;;2727:7:25;-1:-1:-1;;;;;2727:13:25;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2794:3:25;;2822:7;;2840:3;;2794:68;;-1:-1:-1;;;2794:68:25;;-1:-1:-1;;;;;2794:3:25;;;;-1:-1:-1;2794:19:25;;-1:-1:-1;2794:68:25;;2822:7;;;;2840:3;;;;2846:15;;2794:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2787:76;;;;:::i;:::-;2929:62;;-1:-1:-1;;;2929:62:25;;10263:2:27;2929:62:25;;;10245:21:27;10302:2;10282:18;;;10275:30;10341:34;10321:18;;;10314:62;-1:-1:-1;;;10392:18:27;;;10385:41;2929:15:25;;;;10443:19:27;;2929:62:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3002:7;;;;;;;;;-1:-1:-1;;;;;3002:7:25;-1:-1:-1;;;;;3002:13:25;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3064:3:25;;3094:7;;3064:39;;-1:-1:-1;;;3064:39:25;;-1:-1:-1;;;;;3094:7:25;;;3064:39;;;2856:51:27;3064:3:25;;;-1:-1:-1;3064:21:25;;-1:-1:-1;2829:18:27;;3064:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3057:47;;;;:::i;:::-;3154:7;;;;;;;;;-1:-1:-1;;;;;3154:7:25;-1:-1:-1;;;;;3154:13:25;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3182:14;3187:8;3182:4;:14::i;:::-;3247:7;;;;;;;;;-1:-1:-1;;;;;3247:7:25;-1:-1:-1;;;;;3247:13:25;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3275:71:25;;-1:-1:-1;;;3275:71:25;;10674:2:27;3275:71:25;;;10656:21:27;10713:2;10693:18;;;10686:30;10752:34;10732:18;;;10725:62;-1:-1:-1;;;10803:18:27;;;10796:50;3275:15:25;;-1:-1:-1;3275:15:25;;-1:-1:-1;10863:19:27;;3275:71:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3357:7;;;;;;;;;-1:-1:-1;;;;;3357:7:25;-1:-1:-1;;;;;3357:13:25;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;317:28:1;309:37;;-1:-1:-1;;;;;3385:12:25;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6028:291:26;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:26;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:26;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:26;;-1:-1:-1;;;;;2874:32:27;;;4404:31:26;;;2856:51:27;;;;4314:19:26;;;4360;;4314;;4404:22;;2829:18:27;;4404:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;;-1:-1:-1;;;;;2373:32:27;;;4502:25:26;;;2355:51:27;2422:18;;;2415:34;;;4390:45:26;;-1:-1:-1;4448:4:26;;;;;;:10;;4473:4;;2328:18:27;;4502:25:26;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;;;;;-1:-1:-1;;;;;;4448:139:26;;;-1:-1:-1;;;;;11360:32:27;;;4448:139:26;;;11342:51:27;11409:18;;;11402:34;;;;11452:18;;;11445:34;11315:18;;4448:139:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:26;;-1:-1:-1;;;4609:31:26;;-1:-1:-1;;;;;2874:32:27;;;4609:31:26;;;2856:51:27;4600:52:26;;-1:-1:-1;4609:22:26;;;-1:-1:-1;4609:22:26;;2829:18:27;;4609:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;:::-;4600:8;:52::i;9264:2022:25:-;9357:48;9363:7;9372:13;9387:17;9357:5;:48::i;:::-;9476:10;;9504:7;;9347:58;;-1:-1:-1;;;;;;9476:10:25;;;;:19;;9504:7;9514:9;9347:58;9522:1;9514:9;:::i;:::-;9476:48;;-1:-1:-1;;;;;;9476:48:25;;;;;;;-1:-1:-1;;;;;2373:32:27;;;9476:48:25;;;2355:51:27;2422:18;;;2415:34;2328:18;;9476:48:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;9570:3:25;;9600:7;;9570:39;;-1:-1:-1;;;9570:39:25;;-1:-1:-1;;;;;9600:7:25;;;9570:39;;;2856:51:27;9570:3:25;;;:21;;2829:18:27;;9570:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9563:47;;;;:::i;:::-;9719:3;;9747:7;;9765:3;;9719:60;;-1:-1:-1;;;9719:60:25;;-1:-1:-1;;;;;9719:3:25;;;;:19;;:60;;9747:7;;;;9765:3;;;9771:7;;9719:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9712:68;;;;:::i;:::-;9832:3;;9860:7;;9832:3;9878;9832:60;;-1:-1:-1;;;9832:60:25;;-1:-1:-1;;;;;9832:3:25;;;;:19;;:60;;9860:7;;;;9878:3;;;9884:7;;9832:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9825:68;;;;:::i;:::-;9945:3;;9973:7;;9945:60;;-1:-1:-1;;;9945:60:25;;-1:-1:-1;;;;;9945:3:25;;;;:19;;:60;;9973:7;;;9945:3;;9997:7;;9945:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9938:68;;;;:::i;:::-;10081:13;10086:7;10081:4;:13::i;:::-;10112:3;;10134:7;;10112:31;;-1:-1:-1;;;10112:31:25;;-1:-1:-1;;;;;10134:7:25;;;10112:31;;;2856:51:27;10112:3:25;;;:13;;2829:18:27;;10112:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10105:39;;;;:::i;:::-;10232:10;;10261:3;;10232:34;;-1:-1:-1;;;10232:34:25;;-1:-1:-1;;;;;10261:3:25;;;10232:34;;;2856:51:27;10221:77:25;;10232:10;;;;;:20;;2829:18:27;;10232:34:25;2710:203:27;10221:77:25;10363:14;10368:8;10363:4;:14::i;:::-;10449:3;;10471:7;;10449:31;;-1:-1:-1;;;10449:31:25;;-1:-1:-1;;;;;10471:7:25;;;10449:31;;;2856:51:27;10449:3:25;;;:13;;2829:18:27;;10449:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10442:39;;;;:::i;:::-;10569:10;;;10598:3;10569:34;;-1:-1:-1;;;10569:34:25;;-1:-1:-1;;;;;10598:3:25;;;10569:34;;;2856:51:27;10558:77:25;;10569:10;;;;;:20;;2829:18:27;;10569:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10621:3;10606:12;:7;10616:2;10606:12;:::i;10558:77::-;10701:14;10706:8;10701:4;:14::i;:::-;10813:3;;10835:7;;10813:31;;-1:-1:-1;;;10813:31:25;;-1:-1:-1;;;;;10835:7:25;;;10813:31;;;2856:51:27;10813:3:25;;;:13;;2829:18:27;;10813:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10806:39;;;;:::i;:::-;10920:10;;;10949:3;10920:34;;-1:-1:-1;;;10920:34:25;;-1:-1:-1;;;;;10949:3:25;;;10920:34;;;2856:51:27;10911:53:25;;10920:10;;;;;:20;;2829:18:27;;10920:34:25;2710:203:27;10911:53:25;11009:14;11014:8;11009:4;:14::i;:::-;11117:3;;11139:7;;11117:31;;-1:-1:-1;;;11117:31:25;;-1:-1:-1;;;;;11139:7:25;;;11117:31;;;2856:51:27;11117:3:25;;;:13;;2829:18:27;;11117:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11110:39;;;;:::i;:::-;11232:10;;11261:3;;11232:34;;-1:-1:-1;;;11232:34:25;;-1:-1:-1;;;;;11261:3:25;;;11232:34;;;2856:51:27;11223:53:25;;11232:10;;;;;:20;;2829:18:27;;11232:34:25;2710:203:27;3462:1782:25;3618:10;;3646:7;;3618:46;;-1:-1:-1;;;3618:46:25;;-1:-1:-1;;;;;3646:7:25;;;3618:46;;;2355:51:27;3536:15:25;2422:18:27;;;2415:34;;;3536:15:25;3618:10;;;;;:19;;2328:18:27;;3618:46:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;3734:3:25;;3712:27;;-1:-1:-1;;;3712:27:25;;-1:-1:-1;;;;;3734:3:25;;;3712:27;;;2856:51:27;3712:13:25;;;;2829:18:27;;3712:27:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3791:3:25;;3819:7;;3837:3;;3791:60;;-1:-1:-1;;;3791:60:25;;-1:-1:-1;;;;;3791:3:25;;;;-1:-1:-1;3791:19:25;;-1:-1:-1;3791:60:25;;3819:7;;;;3837:3;;;;3843:7;;3791:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3784:68;;;;:::i;:::-;3899:3;;3929:7;;3899:39;;-1:-1:-1;;;3899:39:25;;-1:-1:-1;;;;;3929:7:25;;;3899:39;;;2856:51:27;3899:3:25;;;:21;;2829:18:27;;3899:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3892:47;;;;:::i;:::-;3989:10;;4018:3;;3989:34;;-1:-1:-1;;;3989:34:25;;-1:-1:-1;;;;;4018:3:25;;;3989:34;;;2856:51:27;3980:47:25;;3989:10;;;;;:20;;2829:18:27;;3989:34:25;2710:203:27;3980:47:25;4086:3;;4108:7;;4086:31;;-1:-1:-1;;;4086:31:25;;-1:-1:-1;;;;;4108:7:25;;;4086:31;;;2856:51:27;4086:3:25;;;:13;;2829:18:27;;4086:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4079:39;;;;:::i;:::-;4169:10;;4198:3;;4169:34;;-1:-1:-1;;;4169:34:25;;-1:-1:-1;;;;;4198:3:25;;;4169:34;;;2856:51:27;4160:64:25;;4169:10;;;;;:20;;2829:18:27;;4169:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4220:3;4205:12;:7;4215:2;4205:12;:::i;:::-;:18;;;;:::i;4160:64::-;4262:13;4267:7;4262:4;:13::i;:::-;4334:3;;4356:7;;4334:31;;-1:-1:-1;;;4334:31:25;;-1:-1:-1;;;;;4356:7:25;;;4334:31;;;2856:51:27;4334:3:25;;;:13;;2829:18:27;;4334:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4327:39;;;;:::i;:::-;4417:10;;4446:3;;4417:34;;-1:-1:-1;;;4417:34:25;;-1:-1:-1;;;;;4446:3:25;;;4417:34;;;2856:51:27;4408:64:25;;4417:10;;;;;:20;;2829:18:27;;4417:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4468:3;4453:12;:7;4463:2;4453:12;:::i;4408:64::-;4510:13;4515:7;4510:4;:13::i;:::-;4582:3;;4604:7;;4582:31;;-1:-1:-1;;;4582:31:25;;-1:-1:-1;;;;;4604:7:25;;;4582:31;;;2856:51:27;4582:3:25;;;:13;;2829:18:27;;4582:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4575:39;;;;:::i;:::-;4665:10;;4694:3;;4665:34;;-1:-1:-1;;;4665:34:25;;-1:-1:-1;;;;;4694:3:25;;;4665:34;;;2856:51:27;4656:64:25;;4665:10;;;;;:20;;2829:18:27;;4665:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4716:3;4701:12;:7;4711:2;4701:12;:::i;4656:64::-;4759:14;4764:8;4759:4;:14::i;:::-;4832:3;;4854:7;;4832:31;;-1:-1:-1;;;4832:31:25;;-1:-1:-1;;;;;4854:7:25;;;4832:31;;;2856:51:27;4832:3:25;;;:13;;2829:18:27;;4832:31:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4825:39;;;;:::i;:::-;4915:10;;4944:3;;4915:34;;-1:-1:-1;;;4915:34:25;;-1:-1:-1;;;;;4944:3:25;;;4915:34;;;2856:51:27;4906:64:25;;4915:10;;;;;:20;;2829:18:27;;4915:34:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4966:3;4951:12;:7;4961:2;4951:12;:::i;3312:184:26:-;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:26;:17;;-1:-1:-1;;;;;;3354:17:26;-1:-1:-1;;;;;3354:17:26;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:26;:17;;-1:-1:-1;;;;;;3395:17:26;-1:-1:-1;;;;;3395:17:26;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:26;:17;;-1:-1:-1;;;;;;3462:17:26;-1:-1:-1;;;;;3462:17:26;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;2355:51:27;;;-1:-1:-1;;;2422:18:27;;;2415:34;2196:43:0;;;;;;;;;2328:18:27;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:26:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;:::-;5967:45;;5861:159;;;;;;:::o;3620:551::-;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:26;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:26;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551::o;17530:93:4:-;17585:7;;17593:22;17611:4;17593:15;:22;:::i;:::-;17585:31;;;;;;;;;;;;;1429:25:27;;1417:2;1402:18;;1283:177;17585:31:4;;;;;;;;;;;;;;;;;;;;5202:262:0;5264:1;5259;:6;5255:203;;5286:41;;;;;12907:2:27;12889:21;;;12946:2;12926:18;;;12919:30;12985:34;12980:2;12965:18;;12958:62;-1:-1:-1;;;13051:2:27;13036:18;;13029:32;13093:3;13078:19;;12705:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;:::-;;;;;;;;5441:6;:4;:6::i;:::-;5202:262;;:::o;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:0;:1;-1:-1:-1;;;;;3678:6:0;;3674:212;;3705:44;;;;;13310:2:27;13292:21;;;13349:2;13329:18;;;13322:30;13388:34;13383:2;13368:18;;13361:62;-1:-1:-1;;;13454:2:27;13439:18;;13432:35;13499:3;13484:19;;13108:401;3705:44:0;;;;;;;;3768:34;3800:1;3768:34;;;;;;:::i;:::-;;;;;;;;3821;3853:1;3821:34;;;;;;:::i;789:312:2:-;859:1;854:6;;:1;:6;;;850:245;;881:41;;;;;14474:2:27;14456:21;;;14513:2;14493:18;;;14486:30;14552:34;14547:2;14532:18;;14525:62;-1:-1:-1;;;14618:2:27;14603:18;;14596:32;14660:3;14645:19;;14272:398;881:41:2;;;;;;;;941:52;972:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;941:52;;;;;;:::i;:::-;;;;;;;;1012;1043:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;1012:52;;;;;;:::i;1880:190:9:-;1963:14;1998:19;2005:1;2008:3;2013;1998:6;:19::i;:::-;1989:28;;2027:36;;;;;;;;;;;;;;-1:-1:-1;;;2027:36:9;;;2056:6;2027:12;:36::i;2410:424:0:-;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;11342:51:27;;;-1:-1:-1;;;11409:18:27;;;11402:34;;;;2705:4:0;11452:18:27;;;11445:34;2482:11:0;;1671:64;2579:43;;11315:18:27;;2645:67:0;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;611:1263:9:-;695:14;736:3;729;:10;;721:85;;;;-1:-1:-1;;;721:85:9;;16043:2:27;721:85:9;;;16025:21:27;16082:2;16062:18;;;16055:30;16121:34;16101:18;;;16094:62;16192:32;16172:18;;;16165:60;16242:19;;721:85:9;;;;;;;;1040:3;1035:1;:8;;:20;;;;;1052:3;1047:1;:8;;1035:20;1031:34;;;-1:-1:-1;1064:1:9;1057:8;;1031:34;1076:12;1091:9;1097:3;1091;:9;:::i;:::-;:13;;1103:1;1091:13;:::i;:::-;1076:28;;1299:1;1294;:6;;:18;;;;;1311:1;1304:4;:8;1294:18;1290:38;;;1321:7;1327:1;1321:3;:7;:::i;:::-;1314:14;;;;;1290:38;1347:15;1361:1;-1:-1:-1;;1347:15:9;:::i;:::-;1342:1;:20;;:46;;;;-1:-1:-1;1373:15:9;1387:1;-1:-1:-1;;1373:15:9;:::i;:::-;1366:4;:22;1342:46;1338:82;;;1404:15;1418:1;-1:-1:-1;;1404:15:9;:::i;:::-;1397:23;;:3;:23;:::i;1338:82::-;1524:3;1520:1;:7;1516:352;;;1543:12;1558:7;1562:3;1558:1;:7;:::i;:::-;1543:22;-1:-1:-1;1579:11:9;1593;1600:4;1543:22;1593:11;:::i;:::-;1579:25;;1622:3;1629:1;1622:8;1618:24;;1639:3;1632:10;;;;;;;1618:24;1677:1;1665:9;1671:3;1665;:9;:::i;:::-;:13;;;;:::i;:::-;1656:22;;1529:160;;1516:352;;;1703:3;1699:1;:7;1695:173;;;1722:12;1737:7;1743:1;1737:3;:7;:::i;:::-;1722:22;-1:-1:-1;1758:11:9;1772;1779:4;1722:22;1772:11;:::i;:::-;1758:25;;1801:3;1808:1;1801:8;1797:24;;1818:3;1811:10;;;;;;;1797:24;1844:9;1850:3;1844;:9;:::i;:::-;:13;;1856:1;1844:13;:::i;:::-;1835:22;;1708:160;;1695:173;711:1163;611:1263;;;;;:::o;6307:207::-;6383:11;297:42;-1:-1:-1;;;;;6399:36:9;6483:2;6487;6436:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6436:54:9;;;;;;;;;;;;;;-1:-1:-1;;;;;6436:54:9;-1:-1:-1;;;6436:54:9;;;6399:92;;;6436:54;6399:92;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;203:180:27:-;262:6;315:2;303:9;294:7;290:23;286:32;283:52;;;331:1;328;321:12;283:52;-1:-1:-1;354:23:27;;203:180;-1:-1:-1;203:180:27:o;388:316::-;465:6;473;481;534:2;522:9;513:7;509:23;505:32;502:52;;;550:1;547;540:12;502:52;-1:-1:-1;;573:23:27;;;643:2;628:18;;615:32;;-1:-1:-1;694:2:27;679:18;;;666:32;;388:316;-1:-1:-1;388:316:27:o;709:118::-;795:5;788:13;781:21;774:5;771:32;761:60;;817:1;814;807:12;832:446;915:6;923;931;939;992:3;980:9;971:7;967:23;963:33;960:53;;;1009:1;1006;999:12;960:53;1045:9;1032:23;1022:33;;1102:2;1091:9;1087:18;1074:32;1064:42;;1153:2;1142:9;1138:18;1125:32;1115:42;;1207:2;1196:9;1192:18;1179:32;1220:28;1242:5;1220:28;:::i;:::-;832:446;;;;-1:-1:-1;832:446:27;;-1:-1:-1;;832:446:27:o;1465:131::-;-1:-1:-1;;;;;1540:31:27;;1530:42;;1520:70;;1586:1;1583;1576:12;1601:383;1678:6;1686;1694;1747:2;1735:9;1726:7;1722:23;1718:32;1715:52;;;1763:1;1760;1753:12;1715:52;1799:9;1786:23;1776:33;;1859:2;1848:9;1844:18;1831:32;1872:31;1897:5;1872:31;:::i;:::-;1601:383;;1922:5;;-1:-1:-1;;;1974:2:27;1959:18;;;;1946:32;;1601:383::o;2460:245::-;2527:6;2580:2;2568:9;2559:7;2555:23;2551:32;2548:52;;;2596:1;2593;2586:12;2548:52;2628:9;2622:16;2647:28;2669:5;2647:28;:::i;2918:127::-;2979:10;2974:3;2970:20;2967:1;2960:31;3010:4;3007:1;3000:15;3034:4;3031:1;3024:15;3050:407;-1:-1:-1;;;;;3340:15:27;;;3322:34;;3392:15;;;;3387:2;3372:18;;3365:43;3439:2;3424:18;;3417:34;;;;3272:2;3257:18;;3050:407::o;3462:184::-;3532:6;3585:2;3573:9;3564:7;3560:23;3556:32;3553:52;;;3601:1;3598;3591:12;3553:52;-1:-1:-1;3624:16:27;;3462:184;-1:-1:-1;3462:184:27:o;3651:251::-;3721:6;3774:2;3762:9;3753:7;3749:23;3745:32;3742:52;;;3790:1;3787;3780:12;3742:52;3822:9;3816:16;3841:31;3866:5;3841:31;:::i;5539:127::-;5600:10;5595:3;5591:20;5588:1;5581:31;5631:4;5628:1;5621:15;5655:4;5652:1;5645:15;5671:168;5744:9;;;5775;;5792:15;;;5786:22;;5772:37;5762:71;;5813:18;;:::i;:::-;5671:168;;;;:::o;5844:127::-;5905:10;5900:3;5896:20;5893:1;5886:31;5936:4;5933:1;5926:15;5960:4;5957:1;5950:15;5976:120;6016:1;6042;6032:35;;6047:18;;:::i;:::-;-1:-1:-1;6081:9:27;;5976:120::o;6101:128::-;6168:9;;;6189:11;;;6186:37;;;6203:18;;:::i;6234:422::-;6323:1;6366:5;6323:1;6380:270;6401:7;6391:8;6388:21;6380:270;;;6460:4;6456:1;6452:6;6448:17;6442:4;6439:27;6436:53;;;6469:18;;:::i;:::-;6519:7;6509:8;6505:22;6502:55;;;6539:16;;;;6502:55;6618:22;;;;6578:15;;;;6380:270;;;6384:3;6234:422;;;;;:::o;6661:806::-;6710:5;6740:8;6730:80;;-1:-1:-1;6781:1:27;6795:5;;6730:80;6829:4;6819:76;;-1:-1:-1;6866:1:27;6880:5;;6819:76;6911:4;6929:1;6924:59;;;;6997:1;6992:130;;;;6904:218;;6924:59;6954:1;6945:10;;6968:5;;;6992:130;7029:3;7019:8;7016:17;7013:43;;;7036:18;;:::i;:::-;-1:-1:-1;;7092:1:27;7078:16;;7107:5;;6904:218;;7206:2;7196:8;7193:16;7187:3;7181:4;7178:13;7174:36;7168:2;7158:8;7155:16;7150:2;7144:4;7141:12;7137:35;7134:77;7131:159;;;-1:-1:-1;7243:19:27;;;7275:5;;7131:159;7322:34;7347:8;7341:4;7322:34;:::i;:::-;7392:6;7388:1;7384:6;7380:19;7371:7;7368:32;7365:58;;;7403:18;;:::i;:::-;7441:20;;6661:806;-1:-1:-1;;;6661:806:27:o;7472:131::-;7532:5;7561:36;7588:8;7582:4;7561:36;:::i;8267:348::-;8497:2;8486:9;8479:21;8460:4;8517:49;8562:2;8551:9;8547:18;8180:2;8168:15;;-1:-1:-1;;;8208:4:27;8199:14;;8192:36;8253:2;8244:12;;8103:159;8517:49;8509:57;;8602:6;8597:2;8586:9;8582:18;8575:34;8267:348;;;;:::o;8784:::-;9014:2;9003:9;8996:21;8977:4;9034:49;9079:2;9068:9;9064:18;8697:2;8685:15;;-1:-1:-1;;;8725:4:27;8716:14;;8709:36;8770:2;8761:12;;8620:159;10893:112;10925:1;10951;10941:35;;10956:18;;:::i;:::-;-1:-1:-1;10990:9:27;;10893:112::o;11010:125::-;11075:9;;;11096:10;;;11093:36;;;11109:18;;:::i;11769:250::-;11854:1;11864:113;11878:6;11875:1;11872:13;11864:113;;;11954:11;;;11948:18;11935:11;;;11928:39;11900:2;11893:10;11864:113;;;-1:-1:-1;;12011:1:27;11993:16;;11986:27;11769:250::o;12024:384::-;-1:-1:-1;;;;;;12209:33:27;;12197:46;;12266:13;;12179:3;;12288:74;12266:13;12351:1;12342:11;;12335:4;12323:17;;12288:74;:::i;:::-;12382:16;;;;12400:1;12378:24;;12024:384;-1:-1:-1;;;12024:384:27:o;12413:287::-;12542:3;12580:6;12574:13;12596:66;12655:6;12650:3;12643:4;12635:6;12631:17;12596:66;:::i;:::-;12678:16;;;;;12413:287;-1:-1:-1;;12413:287:27:o;13514:374::-;13744:2;13733:9;13726:21;13707:4;13764:49;13809:2;13798:9;13794:18;8180:2;8168:15;;-1:-1:-1;;;8208:4:27;8199:14;;8192:36;8253:2;8244:12;;8103:159;13764:49;-1:-1:-1;;;;;13849:32:27;;;;13844:2;13829:18;;;;13822:60;;;;-1:-1:-1;13756:57:27;13514:374::o;13893:::-;14123:2;14112:9;14105:21;14086:4;14143:49;14188:2;14177:9;14173:18;8697:2;8685:15;;-1:-1:-1;;;8725:4:27;8716:14;;8709:36;8770:2;8761:12;;8620:159;14675:271;14717:3;14755:5;14749:12;14782:6;14777:3;14770:19;14798:76;14867:6;14860:4;14855:3;14851:14;14844:4;14837:5;14833:16;14798:76;:::i;:::-;14928:2;14907:15;-1:-1:-1;;14903:29:27;14894:39;;;;14935:4;14890:50;;14675:271;-1:-1:-1;;14675:271:27:o;14951:440::-;15201:2;15190:9;15183:21;15164:4;15227:49;15272:2;15261:9;15257:18;8180:2;8168:15;;-1:-1:-1;;;8208:4:27;8199:14;;8192:36;8253:2;8244:12;;8103:159;15227:49;15324:9;15316:6;15312:22;15307:2;15296:9;15292:18;15285:50;15352:33;15378:6;15370;15352:33;:::i;15396:440::-;15646:2;15635:9;15628:21;15609:4;15672:49;15717:2;15706:9;15702:18;8697:2;8685:15;;-1:-1:-1;;;8725:4:27;8716:14;;8709:36;8770:2;8761:12;;8620:159;16272:291;16449:2;16438:9;16431:21;16412:4;16469:45;16510:2;16499:9;16495:18;16487:6;16469:45;:::i;:::-;16461:53;;16550:6;16545:2;16534:9;16530:18;16523:34;16272:291;;;;;:::o", "linkReferences": {} }, "methodIdentifiers": { @@ -766,13 +806,1055 @@ "setUp()": "0a9254e4", "setUpTokens()": "eea96210", "test_mainDeploymentTest_claim()": "b8dae58b", + "test_mainDeploymentTest_claim_edge_cases()": "04740900", + "test_mainDeploymentTest_claim_fuzzing1(uint256)": "1afcfe22", + "test_mainDeploymentTest_claim_fuzzing2(uint256)": "86ef399b", + "test_mainDeploymentTest_claim_restrictions()": "6686e154", "test_mainDeploymentTest_init_state()": "0a831a15", "withinDiff(uint256,uint256,uint256)": "344b1478", "withinPrecision(uint256,uint256,uint256)": "30f7c5c3" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"INTEREST_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LATEFEE_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PREMIUM_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"nonZero\",\"type\":\"bool\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createActors\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"symbol\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUpTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_mainDeploymentTest_claim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_mainDeploymentTest_claim_edge_cases\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"test_mainDeploymentTest_claim_fuzzing1\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"test_mainDeploymentTest_claim_fuzzing2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_mainDeploymentTest_claim_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_mainDeploymentTest_init_state\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expectedDiff\",\"type\":\"uint256\"}],\"name\":\"withinDiff\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accuracy\",\"type\":\"uint256\"}],\"name\":\"withinPrecision\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"test_mainDeploymentTest_claim()\":{\"details\":\"Verifies claim() state changes\"},\"test_mainDeploymentTest_claim_edge_cases()\":{\"details\":\"Verifies claim() edge cases\"},\"test_mainDeploymentTest_claim_fuzzing1(uint256)\":{\"details\":\"Verifies claim() state changes using fuzzing\"},\"test_mainDeploymentTest_claim_fuzzing2(uint256)\":{\"details\":\"Verifies claim() edge cases using fuzzing\"},\"test_mainDeploymentTest_claim_restrictions()\":{\"details\":\"Verifies claim() restrictions\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/MainDeployment.t.sol\":\"MainDeploymentTest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/TaxToken.sol\":{\"keccak256\":\"0x8027c905e28f0b030a25b3c0fb16c9bd2e100ba07029be13c815977da0a8f014\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8934f9517322735c1bff0c0c5fc963460ee10fb61cc3482c77d2232a0104ebda\",\"dweb:/ipfs/Qmf6mrb3BE4dAnvLZpneafJbHRJkGTDrRQAc8gtfVjijx6\"]},\"src/Treasury.sol\":{\"keccak256\":\"0x27460b541b6369e633da21ef4570c204040a4cc0d40e95e78c269848f89b733b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e77dd6b109beb9728caf6156ea891e7e02d3167287658260bc3fef57b25699a\",\"dweb:/ipfs/QmaZRGiSa4S83tHN9HKDZe1DpgLEyAYZYdU9X3tpGPwCQT\"]},\"src/Vesting.sol\":{\"keccak256\":\"0x3fb59f7d29ccc67ec5aa7b9c064b73734c50c7a68a5f4cac138df7922dfc3356\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://0fc8b6e747264c821ede1849cc1c257d97de3006a78b5de396a3837d81377907\",\"dweb:/ipfs/QmU4HUzVvgQGUSS2vknorfoLMvfqvz1F5Whr4mW9x46w7w\"]},\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]},\"src/interfaces/ERC20.sol\":{\"keccak256\":\"0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd\",\"dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/interfaces/IUniswapV2Factory.sol\":{\"keccak256\":\"0xc47e18780475626ac1da1437417e84442c2328eaa2726669bd4d84d46f64f275\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://d0b18cef7206904c41fff4113a98513828cb5e393de57a6b6330dd1010498606\",\"dweb:/ipfs/QmRCyXnd2bvUyK39TAX9ddm7Ra7hWdMB7b2tqZeytnDyFm\"]},\"src/interfaces/IUniswapV2Router.sol\":{\"keccak256\":\"0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee\",\"dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5\"]},\"src/interfaces/InterfacesAggregated.sol\":{\"keccak256\":\"0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128\",\"dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843\",\"dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5\"]},\"test/MainDeployment.t.sol\":{\"keccak256\":\"0xc325d950e82c1275d9806943b1690e64356d55e24ce6b96681cdb2fa7e264858\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://3b7eb8fceb1be2888ba15070fbcf09f9800691a55eed819d8d8357423213dd8d\",\"dweb:/ipfs/QmamaHtPT67mGBU4J3FV1xeJnWwFGtXETgdTP4Yj4Vp8Wh\"]},\"test/Utility.sol\":{\"keccak256\":\"0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda\",\"dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "bool", + "name": "", + "type": "bool", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "val", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_named_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes", + "name": "val", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "val", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "val", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_named_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "logs", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "CL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "DL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "FL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "INTEREST_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "LATEFEE_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "LL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "PREMIUM_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "SL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "nonZero", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "createActors" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "symbol", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amt", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "mint" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "setUp" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "setUpTokens" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_mainDeploymentTest_claim" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_mainDeploymentTest_claim_edge_cases" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_mainDeploymentTest_claim_fuzzing1" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_mainDeploymentTest_claim_fuzzing2" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_mainDeploymentTest_claim_restrictions" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_mainDeploymentTest_init_state" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "expectedDiff", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withinDiff" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accuracy", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withinPrecision" + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "test_mainDeploymentTest_claim()": { + "details": "Verifies claim() state changes" + }, + "test_mainDeploymentTest_claim_edge_cases()": { + "details": "Verifies claim() edge cases" + }, + "test_mainDeploymentTest_claim_fuzzing1(uint256)": { + "details": "Verifies claim() state changes using fuzzing" + }, + "test_mainDeploymentTest_claim_fuzzing2(uint256)": { + "details": "Verifies claim() edge cases using fuzzing" + }, + "test_mainDeploymentTest_claim_restrictions()": { + "details": "Verifies claim() restrictions" + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "test/MainDeployment.t.sol": "MainDeploymentTest" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + }, + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdAssertions.sol": { + "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", + "urls": [ + "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", + "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdError.sol": { + "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", + "urls": [ + "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", + "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Test.sol": { + "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", + "urls": [ + "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", + "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + }, + "src/TaxToken.sol": { + "keccak256": "0x8027c905e28f0b030a25b3c0fb16c9bd2e100ba07029be13c815977da0a8f014", + "urls": [ + "bzz-raw://8934f9517322735c1bff0c0c5fc963460ee10fb61cc3482c77d2232a0104ebda", + "dweb:/ipfs/Qmf6mrb3BE4dAnvLZpneafJbHRJkGTDrRQAc8gtfVjijx6" + ], + "license": "MIT" + }, + "src/Treasury.sol": { + "keccak256": "0x27460b541b6369e633da21ef4570c204040a4cc0d40e95e78c269848f89b733b", + "urls": [ + "bzz-raw://6e77dd6b109beb9728caf6156ea891e7e02d3167287658260bc3fef57b25699a", + "dweb:/ipfs/QmaZRGiSa4S83tHN9HKDZe1DpgLEyAYZYdU9X3tpGPwCQT" + ], + "license": "MIT" + }, + "src/Vesting.sol": { + "keccak256": "0x3fb59f7d29ccc67ec5aa7b9c064b73734c50c7a68a5f4cac138df7922dfc3356", + "urls": [ + "bzz-raw://0fc8b6e747264c821ede1849cc1c257d97de3006a78b5de396a3837d81377907", + "dweb:/ipfs/QmU4HUzVvgQGUSS2vknorfoLMvfqvz1F5Whr4mW9x46w7w" + ], + "license": "UNLICENSED" + }, + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/extensions/Ownable.sol": { + "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", + "urls": [ + "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", + "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" + ], + "license": "MIT" + }, + "src/interfaces/ERC20.sol": { + "keccak256": "0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d", + "urls": [ + "bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd", + "dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IUniswapV2Factory.sol": { + "keccak256": "0xc47e18780475626ac1da1437417e84442c2328eaa2726669bd4d84d46f64f275", + "urls": [ + "bzz-raw://d0b18cef7206904c41fff4113a98513828cb5e393de57a6b6330dd1010498606", + "dweb:/ipfs/QmRCyXnd2bvUyK39TAX9ddm7Ra7hWdMB7b2tqZeytnDyFm" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IUniswapV2Router.sol": { + "keccak256": "0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4", + "urls": [ + "bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee", + "dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/InterfacesAggregated.sol": { + "keccak256": "0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095", + "urls": [ + "bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128", + "dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr" + ], + "license": "GPL-3.0-or-later" + }, + "src/users/Actor.sol": { + "keccak256": "0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3", + "urls": [ + "bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843", + "dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5" + ], + "license": "AGPL-3.0-or-later" + }, + "test/MainDeployment.t.sol": { + "keccak256": "0xc325d950e82c1275d9806943b1690e64356d55e24ce6b96681cdb2fa7e264858", + "urls": [ + "bzz-raw://3b7eb8fceb1be2888ba15070fbcf09f9800691a55eed819d8d8357423213dd8d", + "dweb:/ipfs/QmamaHtPT67mGBU4J3FV1xeJnWwFGtXETgdTP4Yj4Vp8Wh" + ], + "license": "UNLICENSED" + }, + "test/Utility.sol": { + "keccak256": "0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135", + "urls": [ + "bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda", + "dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s" + ], + "license": "AGPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "test/MainDeployment.t.sol", - "id": 30165, + "id": 30866, "exportedSymbols": { "Actor": [ 29769 @@ -781,13 +1863,13 @@ 1786 ], "Hevm": [ - 30183 + 30884 ], "IERC20": [ 29102 ], "MainDeploymentTest": [ - 30164 + 30865 ], "StdAssertions": [ 2671 @@ -817,10 +1899,10 @@ 27439 ], "User": [ - 30191 + 30892 ], "Utility": [ - 30714 + 31415 ], "Vesting": [ 28040 @@ -848,12 +1930,13 @@ ] }, "nodeType": "SourceUnit", - "src": "40:3948:25", + "src": "40:11253:25", "nodes": [ { "id": 29771, "nodeType": "PragmaDirective", "src": "40:24:25", + "nodes": [], "literals": [ "solidity", "^", @@ -865,10 +1948,11 @@ "id": 29772, "nodeType": "ImportDirective", "src": "68:39:25", + "nodes": [], "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 30165, + "scope": 30866, "sourceUnit": 8159, "symbolAliases": [], "unitAlias": "" @@ -877,11 +1961,12 @@ "id": 29773, "nodeType": "ImportDirective", "src": "109:23:25", + "nodes": [], "absolutePath": "test/Utility.sol", "file": "./Utility.sol", "nameLocation": "-1:-1:-1", - "scope": 30165, - "sourceUnit": 30715, + "scope": 30866, + "sourceUnit": 31416, "symbolAliases": [], "unitAlias": "" }, @@ -889,10 +1974,11 @@ "id": 29775, "nodeType": "ImportDirective", "src": "158:47:25", + "nodes": [], "absolutePath": "src/TaxToken.sol", "file": "../src/TaxToken.sol", "nameLocation": "-1:-1:-1", - "scope": 30165, + "scope": 30866, "sourceUnit": 26951, "symbolAliases": [ { @@ -914,10 +2000,11 @@ "id": 29777, "nodeType": "ImportDirective", "src": "207:47:25", + "nodes": [], "absolutePath": "src/Treasury.sol", "file": "../src/Treasury.sol", "nameLocation": "-1:-1:-1", - "scope": 30165, + "scope": 30866, "sourceUnit": 27440, "symbolAliases": [ { @@ -939,10 +2026,11 @@ "id": 29779, "nodeType": "ImportDirective", "src": "256:46:25", + "nodes": [], "absolutePath": "src/Vesting.sol", "file": "../src/Vesting.sol", "nameLocation": "-1:-1:-1", - "scope": 30165, + "scope": 30866, "sourceUnit": 28041, "symbolAliases": [ { @@ -961,19 +2049,20 @@ "unitAlias": "" }, { - "id": 30164, + "id": 30865, "nodeType": "ContractDefinition", - "src": "306:3680:25", + "src": "306:10985:25", "nodes": [ { "id": 29786, "nodeType": "VariableDeclaration", "src": "358:15:25", + "nodes": [], "constant": false, "mutability": "mutable", "name": "vesting", "nameLocation": "366:7:25", - "scope": 30164, + "scope": 30865, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -986,6 +2075,9 @@ "pathNode": { "id": 29784, "name": "Vesting", + "nameLocations": [ + "358:7:25" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 28040, "src": "358:7:25" @@ -1003,11 +2095,12 @@ "id": 29789, "nodeType": "VariableDeclaration", "src": "380:19:25", + "nodes": [], "constant": false, "mutability": "mutable", "name": "proveToken", "nameLocation": "389:10:25", - "scope": 30164, + "scope": 30865, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1020,6 +2113,9 @@ "pathNode": { "id": 29787, "name": "TaxToken", + "nameLocations": [ + "380:8:25" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 26950, "src": "380:8:25" @@ -1037,11 +2133,12 @@ "id": 29792, "nodeType": "VariableDeclaration", "src": "406:17:25", + "nodes": [], "constant": false, "mutability": "mutable", "name": "treasury", "nameLocation": "415:8:25", - "scope": 30164, + "scope": 30865, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1054,6 +2151,9 @@ "pathNode": { "id": 29790, "name": "Treasury", + "nameLocations": [ + "406:8:25" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 27439, "src": "406:8:25" @@ -1071,10 +2171,12 @@ "id": 29839, "nodeType": "FunctionDefinition", "src": "432:907:25", + "nodes": [], "body": { "id": 29838, "nodeType": "Block", "src": "456:883:25", + "nodes": [], "statements": [ { "expression": { @@ -1085,7 +2187,7 @@ "name": "createActors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30384, + "referencedDeclaration": 31085, "src": "467:12:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -1098,6 +2200,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "467:14:25", @@ -1120,7 +2223,7 @@ "name": "setUpTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30465, + "referencedDeclaration": 31166, "src": "492:11:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -1133,6 +2236,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "492:13:25", @@ -1311,6 +2415,9 @@ "pathNode": { "id": 29802, "name": "TaxToken", + "nameLocations": [ + "677:8:25" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 26950, "src": "677:8:25" @@ -1329,6 +2436,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "673:352:25", @@ -1418,6 +2526,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1170:19:25", @@ -1434,7 +2543,7 @@ "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30202, + "referencedDeclaration": 30903, "src": "1214:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", @@ -1474,6 +2583,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1206:12:25", @@ -1512,6 +2622,9 @@ "pathNode": { "id": 29815, "name": "Vesting", + "nameLocations": [ + "1148:7:25" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 28040, "src": "1148:7:25" @@ -1530,6 +2643,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1144:85:25", @@ -1599,6 +2713,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1314:16:25", @@ -1633,6 +2748,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1303:10:25", "memberName": "setVesting", "nodeType": "MemberAccess", "referencedDeclaration": 26559, @@ -1648,6 +2764,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1292:39:25", @@ -1681,7 +2798,7 @@ "parameters": [], "src": "456:0:25" }, - "scope": 30164, + "scope": 30865, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" @@ -1690,10 +2807,12 @@ "id": 29957, "nodeType": "FunctionDefinition", "src": "1375:828:25", + "nodes": [], "body": { "id": 29956, "nodeType": "Block", "src": "1428:775:25", + "nodes": [], "statements": [ { "expression": { @@ -1719,6 +2838,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1459:11:25", "memberName": "totalSupply", "nodeType": "MemberAccess", "referencedDeclaration": 28611, @@ -1734,6 +2854,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1448:24:25", @@ -1810,6 +2931,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1439:59:25", @@ -1838,7 +2960,7 @@ "referencedDeclaration": -28, "src": "1547:4:25", "typeDescriptions": { - "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeIdentifier": "t_contract$_MainDeploymentTest_$30865", "typeString": "contract MainDeploymentTest" } } @@ -1846,7 +2968,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeIdentifier": "t_contract$_MainDeploymentTest_$30865", "typeString": "contract MainDeploymentTest" } ], @@ -1875,6 +2997,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1539:13:25", @@ -1909,6 +3032,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1529:9:25", "memberName": "balanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 28625, @@ -1924,6 +3048,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1518:35:25", @@ -2000,6 +3125,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1509:69:25", @@ -2065,6 +3191,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1619:16:25", @@ -2099,6 +3226,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1609:9:25", "memberName": "balanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 28625, @@ -2114,6 +3242,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1598:38:25", @@ -2189,6 +3318,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1589:51:25", @@ -2226,6 +3356,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1671:5:25", "memberName": "owner", "nodeType": "MemberAccess", "referencedDeclaration": 28115, @@ -2241,6 +3372,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1660:18:25", @@ -2260,7 +3392,7 @@ "referencedDeclaration": -28, "src": "1691:4:25", "typeDescriptions": { - "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeIdentifier": "t_contract$_MainDeploymentTest_$30865", "typeString": "contract MainDeploymentTest" } } @@ -2268,7 +3400,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_MainDeploymentTest_$30164", + "typeIdentifier": "t_contract$_MainDeploymentTest_$30865", "typeString": "contract MainDeploymentTest" } ], @@ -2297,6 +3429,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1683:13:25", @@ -2356,6 +3489,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1651:46:25", @@ -2393,6 +3527,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1728:7:25", "memberName": "vesting", "nodeType": "MemberAccess", "referencedDeclaration": 25506, @@ -2408,6 +3543,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1717:20:25", @@ -2464,6 +3600,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1740:16:25", @@ -2523,6 +3660,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1708:49:25", @@ -2562,6 +3700,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1809:7:25", "memberName": "vesting", "nodeType": "MemberAccess", "referencedDeclaration": 25506, @@ -2577,6 +3716,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1798:20:25", @@ -2611,6 +3751,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1788:9:25", "memberName": "whitelist", "nodeType": "MemberAccess", "referencedDeclaration": 25534, @@ -2626,6 +3767,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1777:42:25", @@ -2701,6 +3843,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1768:60:25", @@ -2766,6 +3909,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1869:19:25", @@ -2800,6 +3944,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1859:9:25", "memberName": "whitelist", "nodeType": "MemberAccess", "referencedDeclaration": 25534, @@ -2815,6 +3960,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1848:41:25", @@ -2890,6 +4036,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1839:60:25", @@ -2929,6 +4076,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1951:5:25", "memberName": "owner", "nodeType": "MemberAccess", "referencedDeclaration": 28115, @@ -2944,6 +4092,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1940:18:25", @@ -2978,6 +4127,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1930:9:25", "memberName": "whitelist", "nodeType": "MemberAccess", "referencedDeclaration": 25534, @@ -2993,6 +4143,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1919:40:25", @@ -3068,6 +4219,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1910:60:25", @@ -3105,6 +4257,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2000:10:25", "memberName": "proveToken", "nodeType": "MemberAccess", "referencedDeclaration": 27449, @@ -3120,6 +4273,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1992:20:25", @@ -3176,6 +4330,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2020:19:25", @@ -3235,6 +4390,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1983:57:25", @@ -3272,6 +4428,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2068:16:25", "memberName": "vestingStartUnix", "nodeType": "MemberAccess", "referencedDeclaration": 27452, @@ -3287,6 +4444,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2060:26:25", @@ -3362,6 +4520,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2051:39:25", @@ -3399,6 +4558,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2118:14:25", "memberName": "vestingEnabled", "nodeType": "MemberAccess", "referencedDeclaration": 27455, @@ -3414,6 +4574,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2110:24:25", @@ -3489,6 +4650,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2101:43:25", @@ -3526,6 +4688,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2172:5:25", "memberName": "owner", "nodeType": "MemberAccess", "referencedDeclaration": 28115, @@ -3541,6 +4704,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2164:15:25", @@ -3557,7 +4721,7 @@ "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30202, + "referencedDeclaration": 30903, "src": "2190:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", @@ -3597,6 +4761,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2182:12:25", @@ -3656,6 +4821,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2155:40:25", @@ -3689,19 +4855,21 @@ "parameters": [], "src": "1428:0:25" }, - "scope": 30164, + "scope": 30865, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30163, + "id": 30062, "nodeType": "FunctionDefinition", - "src": "2256:1725:25", + "src": "2283:1126:25", + "nodes": [], "body": { - "id": 30162, + "id": 30061, "nodeType": "Block", - "src": "2304:1677:25", + "src": "2344:1065:25", + "nodes": [], "statements": [ { "assignments": [ @@ -3713,10 +4881,10 @@ "id": 29962, "mutability": "mutable", "name": "_amount", - "nameLocation": "2320:7:25", + "nameLocation": "2360:7:25", "nodeType": "VariableDeclaration", - "scope": 30162, - "src": "2315:12:25", + "scope": 30061, + "src": "2355:12:25", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3727,7 +4895,7 @@ "id": 29961, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2315:4:25", + "src": "2355:4:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3738,7 +4906,7 @@ ], "id": 29964, "initialValue": { - "hexValue": "315f3030305f303030", + "hexValue": "355f3030305f303030", "id": 29963, "isConstant": false, "isLValue": false, @@ -3746,16 +4914,16 @@ "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2330:15:25", + "src": "2370:15:25", "subdenomination": "ether", "typeDescriptions": { - "typeIdentifier": "t_rational_1000000000000000000000000_by_1", - "typeString": "int_const 1000000000000000000000000" + "typeIdentifier": "t_rational_5000000000000000000000000_by_1", + "typeString": "int_const 5000000000000000000000000" }, - "value": "1_000_000" + "value": "5_000_000" }, "nodeType": "VariableDeclarationStatement", - "src": "2315:30:25" + "src": "2355:30:25" }, { "expression": { @@ -3768,7 +4936,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29786, - "src": "2386:7:25", + "src": "2480:7:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" @@ -3788,7 +4956,7 @@ "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2378:7:25", + "src": "2472:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" @@ -3797,7 +4965,7 @@ "id": 29968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2378:7:25", + "src": "2472:7:25", "typeDescriptions": {} } }, @@ -3807,9 +4975,10 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2378:16:25", + "src": "2472:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3822,7 +4991,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29962, - "src": "2396:7:25", + "src": "2490:7:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3846,7 +5015,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29789, - "src": "2358:10:25", + "src": "2452:10:25", "typeDescriptions": { "typeIdentifier": "t_contract$_TaxToken_$26950", "typeString": "contract TaxToken" @@ -3857,10 +5026,11 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2463:8:25", "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": 28646, - "src": "2358:19:25", + "src": "2452:19:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" @@ -3872,9 +5042,10 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2358:46:25", + "src": "2452:46:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3883,7 +5054,7 @@ }, "id": 29974, "nodeType": "ExpressionStatement", - "src": "2358:46:25" + "src": "2452:46:25" }, { "expression": { @@ -3895,8 +5066,8 @@ "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "2473:3:25", + "referencedDeclaration": 30906, + "src": "2568:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" @@ -3916,7 +5087,7 @@ "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2465:7:25", + "src": "2560:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" @@ -3925,7 +5096,7 @@ "id": 29978, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2465:7:25", + "src": "2560:7:25", "typeDescriptions": {} } }, @@ -3935,9 +5106,10 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2465:12:25", + "src": "2560:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3958,7 +5130,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "2451:2:25", + "src": "2546:2:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9315", "typeString": "contract Vm" @@ -3969,10 +5141,11 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2549:10:25", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9043, - "src": "2451:13:25", + "src": "2546:13:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" @@ -3984,9 +5157,10 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2451:27:25", + "src": "2546:27:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", @@ -3995,63 +5169,190 @@ }, "id": 29983, "nodeType": "ExpressionStatement", - "src": "2451:27:25" + "src": "2546:27:25" }, { "expression": { "arguments": [ { - "arguments": [ - { - "arguments": [ - { - "id": 29989, - "name": "vesting", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 29786, - "src": "2557:7:25", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", - "typeString": "contract Vesting" - } - } - ], - "expression": { - "argumentTypes": [ + "hexValue": "56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e73656e646572206d75737420626520616e20696e766573746f72", + "id": 29987, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2655:60:25", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_04c0e7337b94cd08ab709ab9e01a52972b8997f541f0ec03cfdf895720fa5020", + "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" + }, + "value": "Vesting.sol::onlyInvestor() msg.sender must be an investor" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_04c0e7337b94cd08ab709ab9e01a52972b8997f541f0ec03cfdf895720fa5020", + "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" + } + ], + "expression": { + "id": 29984, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "2639:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 29986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2642:12:25", + "memberName": "expectRevert", + "nodeType": "MemberAccess", + "referencedDeclaration": 9079, + "src": "2639:15:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) external" + } + }, + "id": 29988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2639:77:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29989, + "nodeType": "ExpressionStatement", + "src": "2639:77:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 29990, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2727:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 29992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2735:5:25", + "memberName": "claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 27592, + "src": "2727:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 29993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2727:15:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 29994, + "nodeType": "ExpressionStatement", + "src": "2727:15:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30000, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "2822:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" } ], - "id": 29988, + "id": 29999, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2549:7:25", + "src": "2814:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29987, + "id": 29998, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2549:7:25", + "src": "2814:7:25", "typeDescriptions": {} } }, - "id": 29990, + "id": 30001, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2549:16:25", + "src": "2814:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4061,12 +5362,12 @@ { "arguments": [ { - "id": 29993, + "id": 30004, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "2575:3:25", + "referencedDeclaration": 30906, + "src": "2840:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" @@ -4080,34 +5381,35 @@ "typeString": "contract Actor" } ], - "id": 29992, + "id": 30003, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2567:7:25", + "src": "2832:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 29991, + "id": 30002, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2567:7:25", + "src": "2832:7:25", "typeDescriptions": {} } }, - "id": 29994, + "id": 30005, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2567:12:25", + "src": "2832:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4115,16 +5417,21 @@ } }, { - "id": 29995, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 29962, - "src": "2581:7:25", + "hexValue": "315f3030305f303030", + "id": 30006, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2846:15:25", + "subdenomination": "ether", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" } ], "expression": { @@ -4138,45 +5445,47 @@ "typeString": "address" }, { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" } ], "expression": { - "id": 29985, + "id": 29996, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30202, - "src": "2529:3:25", + "referencedDeclaration": 30903, + "src": "2794:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 29986, + "id": 29997, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2798:15:25", "memberName": "try_addInvestor", "nodeType": "MemberAccess", "referencedDeclaration": 29684, - "src": "2529:19:25", + "src": "2794:19:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 29996, + "id": 30007, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2529:60:25", + "src": "2794:68:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4191,35 +5500,162 @@ "typeString": "bool" } ], - "id": 29984, + "id": 29995, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2522:6:25", + "src": "2787:6:25", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 29997, + "id": 30008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2787:76:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30009, + "nodeType": "ExpressionStatement", + "src": "2787:76:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "56657374696e672e736f6c3a3a636c61696d28292076657374696e67206973206e6f7420656e61626c6564", + "id": 30013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2945:45:25", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_34ce9ff9fcf1e453c578e481f1424d1ad92317cc4ad3678a8839da76e7fbb7d6", + "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" + }, + "value": "Vesting.sol::claim() vesting is not enabled" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_34ce9ff9fcf1e453c578e481f1424d1ad92317cc4ad3678a8839da76e7fbb7d6", + "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" + } + ], + "expression": { + "id": 30010, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "2929:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30012, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2932:12:25", + "memberName": "expectRevert", + "nodeType": "MemberAccess", + "referencedDeclaration": 9079, + "src": "2929:15:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) external" + } + }, + "id": 30014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2929:62:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30015, + "nodeType": "ExpressionStatement", + "src": "2929:62:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30016, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3002:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 30018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3010:5:25", + "memberName": "claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 27592, + "src": "3002:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30019, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2522:68:25", + "src": "3002:15:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 29998, + "id": 30020, "nodeType": "ExpressionStatement", - "src": "2522:68:25" + "src": "3002:15:25" }, { "expression": { @@ -4229,12 +5665,12 @@ { "arguments": [ { - "id": 30004, + "id": 30026, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29786, - "src": "2666:7:25", + "src": "3094:7:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" @@ -4248,34 +5684,35 @@ "typeString": "contract Vesting" } ], - "id": 30003, + "id": 30025, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2658:7:25", + "src": "3086:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30002, + "id": 30024, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2658:7:25", + "src": "3086:7:25", "typeDescriptions": {} } }, - "id": 30005, + "id": 30027, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2658:16:25", + "src": "3086:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4291,40 +5728,42 @@ } ], "expression": { - "id": 30000, + "id": 30022, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30202, - "src": "2636:3:25", + "referencedDeclaration": 30903, + "src": "3064:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30001, + "id": 30023, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3068:17:25", "memberName": "try_enableVesting", "nodeType": "MemberAccess", "referencedDeclaration": 29622, - "src": "2636:21:25", + "src": "3064:21:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30006, + "id": 30028, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2636:39:25", + "src": "3064:39:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4339,91 +5778,10128 @@ "typeString": "bool" } ], - "id": 29999, + "id": 30021, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2629:6:25", + "src": "3057:6:25", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30007, + "id": 30029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3057:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30030, + "nodeType": "ExpressionStatement", + "src": "3057:47:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30031, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3154:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 30033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3162:5:25", + "memberName": "claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 27592, + "src": "3154:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30034, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2629:47:25", + "src": "3154:15:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30008, + "id": 30035, "nodeType": "ExpressionStatement", - "src": "2629:47:25" + "src": "3154:15:25" }, { "expression": { "arguments": [ { - "arguments": [ - { - "arguments": [ - { - "id": 30014, - "name": "jon", - "nodeType": "Identifier", + "hexValue": "3532", + "id": 30037, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3187:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_31449600_by_1", + "typeString": "int_const 31449600" + }, + "value": "52" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_31449600_by_1", + "typeString": "int_const 31449600" + } + ], + "id": 30036, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "3182:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3182:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30039, + "nodeType": "ExpressionStatement", + "src": "3182:14:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30040, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3247:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 30042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3255:5:25", + "memberName": "claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 27592, + "src": "3247:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3247:15:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30044, + "nodeType": "ExpressionStatement", + "src": "3247:15:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686173206e6f20746f6b656e7320746f20636c61696d", + "id": 30048, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3291:54:25", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7fe10741cbe6c2a9cecbadf80743676cd6f5fd9119dd5a58d21ffa6d6e330a51", + "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" + }, + "value": "Vesting.sol::claim() investor has no tokens to claim" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7fe10741cbe6c2a9cecbadf80743676cd6f5fd9119dd5a58d21ffa6d6e330a51", + "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" + } + ], + "expression": { + "id": 30045, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3275:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30047, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3278:12:25", + "memberName": "expectRevert", + "nodeType": "MemberAccess", + "referencedDeclaration": 9079, + "src": "3275:15:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) external" + } + }, + "id": 30049, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3275:71:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30050, + "nodeType": "ExpressionStatement", + "src": "3275:71:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30051, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3357:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + }, + "id": 30053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3365:5:25", + "memberName": "claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 27592, + "src": "3357:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3357:15:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30055, + "nodeType": "ExpressionStatement", + "src": "3357:15:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30056, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3385:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3388:9:25", + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 9060, + "src": "3385:12:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30059, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3385:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30060, + "nodeType": "ExpressionStatement", + "src": "3385:14:25" + } + ] + }, + "documentation": { + "id": 29958, + "nodeType": "StructuredDocumentation", + "src": "2239:38:25", + "text": "@dev Verifies claim() restrictions" + }, + "functionSelector": "6686e154", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "test_mainDeploymentTest_claim_restrictions", + "nameLocation": "2292:42:25", + "parameters": { + "id": 29959, + "nodeType": "ParameterList", + "parameters": [], + "src": "2334:2:25" + }, + "returnParameters": { + "id": 29960, + "nodeType": "ParameterList", + "parameters": [], + "src": "2344:0:25" + }, + "scope": 30865, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 30268, + "nodeType": "FunctionDefinition", + "src": "3462:1782:25", + "nodes": [], + "body": { + "id": 30267, + "nodeType": "Block", + "src": "3510:1734:25", + "nodes": [], + "statements": [ + { + "assignments": [ + 30067 + ], + "declarations": [ + { + "constant": false, + "id": 30067, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "3526:7:25", + "nodeType": "VariableDeclaration", + "scope": 30267, + "src": "3521:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30066, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3521:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 30069, + "initialValue": { + "hexValue": "315f3030305f303030", + "id": 30068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3536:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3521:30:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 30075, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3646:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3638:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30073, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3638:7:25", + "typeDescriptions": {} + } + }, + "id": 30076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3638:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 30077, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "3656:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 30070, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "3618:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3629:8:25", + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28646, + "src": "3618:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 30078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3618:46:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 30079, + "nodeType": "ExpressionStatement", + "src": "3618:46:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 30085, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "3734:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3726:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30083, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3726:7:25", + "typeDescriptions": {} + } + }, + "id": 30086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3726:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30080, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3712:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30082, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3715:10:25", + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 9043, + "src": "3712:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 30087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3712:27:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30088, + "nodeType": "ExpressionStatement", + "src": "3712:27:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30094, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3819:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3811:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30092, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3811:7:25", + "typeDescriptions": {} + } + }, + "id": 30095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3811:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30098, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "3837:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30097, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3829:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30096, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3829:7:25", + "typeDescriptions": {} + } + }, + "id": 30099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3829:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 30100, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "3843:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 30090, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "3791:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3795:15:25", + "memberName": "try_addInvestor", + "nodeType": "MemberAccess", + "referencedDeclaration": 29684, + "src": "3791:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 30101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3791:60:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30089, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "3784:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3784:68:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30103, + "nodeType": "ExpressionStatement", + "src": "3784:68:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30109, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "3929:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3921:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30107, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3921:7:25", + "typeDescriptions": {} + } + }, + "id": 30110, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3921:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30105, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "3899:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3903:17:25", + "memberName": "try_enableVesting", + "nodeType": "MemberAccess", + "referencedDeclaration": 29622, + "src": "3899:21:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3899:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30104, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "3892:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30112, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3892:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30113, + "nodeType": "ExpressionStatement", + "src": "3892:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30119, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4018:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4010:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30117, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4010:7:25", + "typeDescriptions": {} + } + }, + "id": 30120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4010:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30115, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "3989:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4000:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "3989:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3989:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 30122, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4025:1:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 30114, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "3980:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3980:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30124, + "nodeType": "ExpressionStatement", + "src": "3980:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30130, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "4108:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30129, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4100:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30128, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4100:7:25", + "typeDescriptions": {} + } + }, + "id": 30131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4100:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30126, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4086:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4090:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "4086:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4086:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30125, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "4079:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4079:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30134, + "nodeType": "ExpressionStatement", + "src": "4079:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30140, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4198:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4190:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30138, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4190:7:25", + "typeDescriptions": {} + } + }, + "id": 30141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4190:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30136, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "4169:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4180:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "4169:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4169:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30147, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30145, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30143, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "4205:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3132", + "id": 30144, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4215:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_12_by_1", + "typeString": "int_const 12" + }, + "value": "12" + }, + "src": "4205:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4220:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "4205:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30135, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "4160:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4160:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30149, + "nodeType": "ExpressionStatement", + "src": "4160:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "34", + "id": 30151, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4267:7:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + }, + "value": "4" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + } + ], + "id": 30150, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "4262:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30152, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4262:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30153, + "nodeType": "ExpressionStatement", + "src": "4262:13:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30159, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "4356:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30158, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4348:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30157, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4348:7:25", + "typeDescriptions": {} + } + }, + "id": 30160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4348:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30155, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4334:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4338:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "4334:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4334:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30154, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "4327:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4327:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30163, + "nodeType": "ExpressionStatement", + "src": "4327:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30169, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4446:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4438:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30167, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4438:7:25", + "typeDescriptions": {} + } + }, + "id": 30170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4438:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30165, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "4417:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4428:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "4417:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4417:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30172, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "4453:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3230", + "id": 30173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4463:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + }, + "src": "4453:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4468:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "4453:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30164, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "4408:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4408:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30178, + "nodeType": "ExpressionStatement", + "src": "4408:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "34", + "id": 30180, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4515:7:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + }, + "value": "4" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + } + ], + "id": 30179, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "4510:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4510:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30182, + "nodeType": "ExpressionStatement", + "src": "4510:13:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30188, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "4604:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30187, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4596:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30186, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4596:7:25", + "typeDescriptions": {} + } + }, + "id": 30189, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4596:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30184, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4582:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30185, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4586:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "4582:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4582:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30183, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "4575:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4575:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30192, + "nodeType": "ExpressionStatement", + "src": "4575:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30198, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4694:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4686:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30196, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4686:7:25", + "typeDescriptions": {} + } + }, + "id": 30199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4686:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30194, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "4665:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4676:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "4665:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4665:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30201, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "4701:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3238", + "id": 30202, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4711:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_28_by_1", + "typeString": "int_const 28" + }, + "value": "28" + }, + "src": "4701:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4716:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "4701:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30193, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "4656:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4656:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30207, + "nodeType": "ExpressionStatement", + "src": "4656:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3132", + "id": 30209, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4764:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_7257600_by_1", + "typeString": "int_const 7257600" + }, + "value": "12" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_7257600_by_1", + "typeString": "int_const 7257600" + } + ], + "id": 30208, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "4759:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4759:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30211, + "nodeType": "ExpressionStatement", + "src": "4759:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30217, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "4854:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4846:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30215, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4846:7:25", + "typeDescriptions": {} + } + }, + "id": 30218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4846:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30213, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4832:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4836:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "4832:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4832:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30212, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "4825:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4825:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30221, + "nodeType": "ExpressionStatement", + "src": "4825:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30227, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "4944:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30226, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4936:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30225, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4936:7:25", + "typeDescriptions": {} + } + }, + "id": 30228, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4936:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30223, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "4915:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4926:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "4915:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4915:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30234, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30230, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "4951:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3532", + "id": 30231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4961:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_52_by_1", + "typeString": "int_const 52" + }, + "value": "52" + }, + "src": "4951:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30233, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4966:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "4951:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30222, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "4906:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4906:64:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30236, + "nodeType": "ExpressionStatement", + "src": "4906:64:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3234", + "id": 30238, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5014:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_14515200_by_1", + "typeString": "int_const 14515200" + }, + "value": "24" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_14515200_by_1", + "typeString": "int_const 14515200" + } + ], + "id": 30237, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "5009:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5009:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30240, + "nodeType": "ExpressionStatement", + "src": "5009:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30246, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "5104:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5096:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30244, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5096:7:25", + "typeDescriptions": {} + } + }, + "id": 30247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5096:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30242, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "5082:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5086:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "5082:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5082:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30241, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "5075:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5075:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30250, + "nodeType": "ExpressionStatement", + "src": "5075:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30256, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "5194:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5186:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30254, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5186:7:25", + "typeDescriptions": {} + } + }, + "id": 30257, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5186:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30252, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "5165:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5176:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "5165:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5165:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 30259, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30067, + "src": "5201:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30251, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "5156:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5156:53:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30261, + "nodeType": "ExpressionStatement", + "src": "5156:53:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30262, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "5222:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30264, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5225:9:25", + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 9060, + "src": "5222:12:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5222:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30266, + "nodeType": "ExpressionStatement", + "src": "5222:14:25" + } + ] + }, + "documentation": { + "id": 30063, + "nodeType": "StructuredDocumentation", + "src": "3417:39:25", + "text": "@dev Verifies claim() state changes" + }, + "functionSelector": "b8dae58b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "test_mainDeploymentTest_claim", + "nameLocation": "3471:29:25", + "parameters": { + "id": 30064, + "nodeType": "ParameterList", + "parameters": [], + "src": "3500:2:25" + }, + "returnParameters": { + "id": 30065, + "nodeType": "ParameterList", + "parameters": [], + "src": "3510:0:25" + }, + "scope": 30865, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 30454, + "nodeType": "FunctionDefinition", + "src": "5294:1960:25", + "nodes": [], + "body": { + "id": 30453, + "nodeType": "Block", + "src": "5353:1901:25", + "nodes": [], + "statements": [ + { + "assignments": [ + 30273 + ], + "declarations": [ + { + "constant": false, + "id": 30273, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "5369:7:25", + "nodeType": "VariableDeclaration", + "scope": 30453, + "src": "5364:12:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30272, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5364:4:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 30275, + "initialValue": { + "hexValue": "355f3030305f303030", + "id": 30274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5379:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_5000000000000000000000000_by_1", + "typeString": "int_const 5000000000000000000000000" + }, + "value": "5_000_000" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5364:30:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 30281, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "5435:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5427:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30279, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5427:7:25", + "typeDescriptions": {} + } + }, + "id": 30282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5427:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 30283, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30273, + "src": "5445:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 30276, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "5407:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5418:8:25", + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28646, + "src": "5407:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 30284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5407:46:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 30285, + "nodeType": "ExpressionStatement", + "src": "5407:46:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30291, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "5529:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30290, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5521:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30289, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5521:7:25", + "typeDescriptions": {} + } + }, + "id": 30292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5521:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30287, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "5499:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5503:17:25", + "memberName": "try_enableVesting", + "nodeType": "MemberAccess", + "referencedDeclaration": 29622, + "src": "5499:21:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5499:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30286, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "5492:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5492:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30295, + "nodeType": "ExpressionStatement", + "src": "5492:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30301, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "5676:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5668:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30299, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5668:7:25", + "typeDescriptions": {} + } + }, + "id": 30302, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5668:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30305, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "5694:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5686:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30303, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5686:7:25", + "typeDescriptions": {} + } + }, + "id": 30306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5686:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "315f3030305f303030", + "id": 30307, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5700:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + } + ], + "expression": { + "id": 30297, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "5648:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5652:15:25", + "memberName": "try_addInvestor", + "nodeType": "MemberAccess", + "referencedDeclaration": 29684, + "src": "5648:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 30308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5648:68:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30296, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "5641:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30309, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5641:76:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30310, + "nodeType": "ExpressionStatement", + "src": "5641:76:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30316, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "5797:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5789:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30314, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5789:7:25", + "typeDescriptions": {} + } + }, + "id": 30317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5789:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30320, + "name": "joe", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30900, + "src": "5815:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30319, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5807:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30318, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5807:7:25", + "typeDescriptions": {} + } + }, + "id": 30321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5807:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "315f3030305f303030", + "id": 30322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5821:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + } + ], + "expression": { + "id": 30312, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "5769:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5773:15:25", + "memberName": "try_addInvestor", + "nodeType": "MemberAccess", + "referencedDeclaration": 29684, + "src": "5769:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 30323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5769:68:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30311, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "5762:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30324, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5762:76:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30325, + "nodeType": "ExpressionStatement", + "src": "5762:76:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30331, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "5918:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5910:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30329, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5910:7:25", + "typeDescriptions": {} + } + }, + "id": 30332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5910:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30335, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "5936:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5928:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30333, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5928:7:25", + "typeDescriptions": {} + } + }, + "id": 30336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5928:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "315f3030305f303030", + "id": 30337, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5942:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + } + ], + "expression": { + "id": 30327, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "5890:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5894:15:25", + "memberName": "try_addInvestor", + "nodeType": "MemberAccess", + "referencedDeclaration": 29684, + "src": "5890:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 30338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5890:68:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30326, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "5883:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5883:76:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30340, + "nodeType": "ExpressionStatement", + "src": "5883:76:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "32", + "id": 30342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6039:7:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_1209600_by_1", + "typeString": "int_const 1209600" + }, + "value": "2" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1209600_by_1", + "typeString": "int_const 1209600" + } + ], + "id": 30341, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "6034:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6034:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30344, + "nodeType": "ExpressionStatement", + "src": "6034:13:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30350, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "6087:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30349, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6079:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30348, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6079:7:25", + "typeDescriptions": {} + } + }, + "id": 30351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6079:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30346, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "6065:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6069:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "6065:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6065:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30345, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "6058:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6058:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30354, + "nodeType": "ExpressionStatement", + "src": "6058:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30360, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "6212:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30359, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6204:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30358, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6204:7:25", + "typeDescriptions": {} + } + }, + "id": 30361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6204:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30356, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "6183:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6194:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "6183:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6183:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "components": [ + { + "commonType": { + "typeIdentifier": "t_rational_120000000000000000000000_by_1", + "typeString": "int_const 120000000000000000000000" + }, + "id": 30367, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_rational_12000000000000000000000000_by_1", + "typeString": "int_const 12000000000000000000000000" + }, + "id": 30365, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "315f3030305f303030", + "id": 30363, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6220:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3132", + "id": 30364, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6238:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_12_by_1", + "typeString": "int_const 12" + }, + "value": "12" + }, + "src": "6220:20:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_12000000000000000000000000_by_1", + "typeString": "int_const 12000000000000000000000000" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30366, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6243:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "6220:26:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_120000000000000000000000_by_1", + "typeString": "int_const 120000000000000000000000" + } + } + ], + "id": 30368, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "6219:28:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_120000000000000000000000_by_1", + "typeString": "int_const 120000000000000000000000" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_120000000000000000000000_by_1", + "typeString": "int_const 120000000000000000000000" + } + ], + "id": 30355, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "6174:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30369, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6174:75:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30370, + "nodeType": "ExpressionStatement", + "src": "6174:75:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3232", + "id": 30372, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6319:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_13305600_by_1", + "typeString": "int_const 13305600" + }, + "value": "22" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_13305600_by_1", + "typeString": "int_const 13305600" + } + ], + "id": 30371, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "6314:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6314:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30374, + "nodeType": "ExpressionStatement", + "src": "6314:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30380, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "6422:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6414:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30378, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6414:7:25", + "typeDescriptions": {} + } + }, + "id": 30381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6414:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30376, + "name": "joe", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30900, + "src": "6400:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6404:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "6400:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6400:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30375, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "6393:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6393:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30384, + "nodeType": "ExpressionStatement", + "src": "6393:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30390, + "name": "joe", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30900, + "src": "6547:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30389, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6539:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30388, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6539:7:25", + "typeDescriptions": {} + } + }, + "id": 30391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6539:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30386, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "6518:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6529:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "6518:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30392, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6518:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "components": [ + { + "commonType": { + "typeIdentifier": "t_rational_600000000000000000000000_by_1", + "typeString": "int_const 600000000000000000000000" + }, + "id": 30397, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_rational_60000000000000000000000000_by_1", + "typeString": "int_const 60000000000000000000000000" + }, + "id": 30395, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "315f3030305f303030", + "id": 30393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6555:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3630", + "id": 30394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6573:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_60_by_1", + "typeString": "int_const 60" + }, + "value": "60" + }, + "src": "6555:20:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_60000000000000000000000000_by_1", + "typeString": "int_const 60000000000000000000000000" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30396, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6578:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "6555:26:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_600000000000000000000000_by_1", + "typeString": "int_const 600000000000000000000000" + } + } + ], + "id": 30398, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "6554:28:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_600000000000000000000000_by_1", + "typeString": "int_const 600000000000000000000000" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_600000000000000000000000_by_1", + "typeString": "int_const 600000000000000000000000" + } + ], + "id": 30385, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "6509:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30399, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6509:74:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30400, + "nodeType": "ExpressionStatement", + "src": "6509:74:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3230", + "id": 30402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6654:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_12096000_by_1", + "typeString": "int_const 12096000" + }, + "value": "20" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_12096000_by_1", + "typeString": "int_const 12096000" + } + ], + "id": 30401, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "6649:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6649:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30404, + "nodeType": "ExpressionStatement", + "src": "6649:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30410, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "6783:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30409, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6775:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30408, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6775:7:25", + "typeDescriptions": {} + } + }, + "id": 30411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6775:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30406, + "name": "joe", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30900, + "src": "6761:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6765:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "6761:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6761:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30405, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "6754:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6754:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30414, + "nodeType": "ExpressionStatement", + "src": "6754:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30420, + "name": "joe", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30900, + "src": "6897:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6889:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30418, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6889:7:25", + "typeDescriptions": {} + } + }, + "id": 30421, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6889:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30416, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "6868:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6879:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "6868:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6868:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "components": [ + { + "hexValue": "315f3030305f303030", + "id": 30423, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6905:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + } + ], + "id": 30424, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "6904:17:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + } + ], + "id": 30415, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "6859:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6859:63:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30426, + "nodeType": "ExpressionStatement", + "src": "6859:63:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3532", + "id": 30428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6972:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_31449600_by_1", + "typeString": "int_const 31449600" + }, + "value": "52" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_31449600_by_1", + "typeString": "int_const 31449600" + } + ], + "id": 30427, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "6967:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6967:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30430, + "nodeType": "ExpressionStatement", + "src": "6967:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30436, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "7097:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30435, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7089:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30434, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7089:7:25", + "typeDescriptions": {} + } + }, + "id": 30437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7089:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30432, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "7075:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7079:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "7075:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7075:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30431, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "7068:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7068:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30440, + "nodeType": "ExpressionStatement", + "src": "7068:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30446, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "7219:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30445, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7211:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30444, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7211:7:25", + "typeDescriptions": {} + } + }, + "id": 30447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7211:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30442, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "7190:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7201:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "7190:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7190:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "components": [ + { + "hexValue": "315f3030305f303030", + "id": 30449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7227:15:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + }, + "value": "1_000_000" + } + ], + "id": 30450, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "7226:17:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000000000_by_1", + "typeString": "int_const 1000000000000000000000000" + } + ], + "id": 30441, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "7181:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7181:63:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30452, + "nodeType": "ExpressionStatement", + "src": "7181:63:25" + } + ] + }, + "documentation": { + "id": 30269, + "nodeType": "StructuredDocumentation", + "src": "5252:36:25", + "text": "@dev Verifies claim() edge cases" + }, + "functionSelector": "04740900", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "test_mainDeploymentTest_claim_edge_cases", + "nameLocation": "5303:40:25", + "parameters": { + "id": 30270, + "nodeType": "ParameterList", + "parameters": [], + "src": "5343:2:25" + }, + "returnParameters": { + "id": 30271, + "nodeType": "ParameterList", + "parameters": [], + "src": "5353:0:25" + }, + "scope": 30865, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 30670, + "nodeType": "FunctionDefinition", + "src": "7321:1879:25", + "nodes": [], + "body": { + "id": 30669, + "nodeType": "Block", + "src": "7393:1807:25", + "nodes": [], + "statements": [ + { + "expression": { + "id": 30466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 30460, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "7404:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 30462, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "7420:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3130305f303030", + "id": 30463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7429:13:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000" + }, + "value": "100_000" + }, + { + "hexValue": "3130305f3030305f303030", + "id": 30464, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7444:17:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000000" + }, + "value": "100_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_100000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000" + }, + { + "typeIdentifier": "t_rational_100000000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000000" + } + ], + "id": 30461, + "name": "bound", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 7670, + 7800 + ], + "referencedDeclaration": 7670, + "src": "7414:5:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256,uint256) view returns (uint256)" + } + }, + "id": 30465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7414:48:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7404:58:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 30467, + "nodeType": "ExpressionStatement", + "src": "7404:58:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 30473, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "7561:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7553:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30471, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7553:7:25", + "typeDescriptions": {} + } + }, + "id": 30474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7553:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 30475, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "7571:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 30468, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "7533:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7544:8:25", + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28646, + "src": "7533:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 30476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7533:46:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 30477, + "nodeType": "ExpressionStatement", + "src": "7533:46:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 30483, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "7648:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7640:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30481, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7640:7:25", + "typeDescriptions": {} + } + }, + "id": 30484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7640:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30478, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "7626:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7629:10:25", + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 9043, + "src": "7626:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 30485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7626:27:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30486, + "nodeType": "ExpressionStatement", + "src": "7626:27:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30492, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "7732:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30491, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7724:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30490, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7724:7:25", + "typeDescriptions": {} + } + }, + "id": 30493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7724:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30496, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "7750:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7742:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7742:7:25", + "typeDescriptions": {} + } + }, + "id": 30497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7742:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 30498, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "7756:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 30488, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "7704:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7708:15:25", + "memberName": "try_addInvestor", + "nodeType": "MemberAccess", + "referencedDeclaration": 29684, + "src": "7704:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 30499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7704:60:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30487, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "7697:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7697:68:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30501, + "nodeType": "ExpressionStatement", + "src": "7697:68:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30507, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "7841:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7833:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30505, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7833:7:25", + "typeDescriptions": {} + } + }, + "id": 30508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7833:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30503, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "7811:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7815:17:25", + "memberName": "try_enableVesting", + "nodeType": "MemberAccess", + "referencedDeclaration": 29622, + "src": "7811:21:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7811:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30502, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "7804:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30510, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7804:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30511, + "nodeType": "ExpressionStatement", + "src": "7804:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30517, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "7930:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30516, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7922:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30515, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7922:7:25", + "typeDescriptions": {} + } + }, + "id": 30518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7922:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30513, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "7901:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7912:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "7901:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7901:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "30", + "id": 30520, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7937:1:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 30512, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "7892:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30521, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7892:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30522, + "nodeType": "ExpressionStatement", + "src": "7892:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30528, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "8020:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30527, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8012:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30526, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8012:7:25", + "typeDescriptions": {} + } + }, + "id": 30529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8012:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30524, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "7998:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8002:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "7998:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30530, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7998:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30523, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "7991:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30531, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7991:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30532, + "nodeType": "ExpressionStatement", + "src": "7991:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30538, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "8112:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30537, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8104:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30536, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8104:7:25", + "typeDescriptions": {} + } + }, + "id": 30539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8104:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30534, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "8083:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8094:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "8083:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8083:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30541, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "8119:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3132", + "id": 30542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8129:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_12_by_1", + "typeString": "int_const 12" + }, + "value": "12" + }, + "src": "8119:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30544, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8134:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "8119:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 30546, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8139:7:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + ], + "id": 30533, + "name": "withinDiff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 31357, + "src": "8072:10:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 30547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8072:75:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30548, + "nodeType": "ExpressionStatement", + "src": "8072:75:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "34", + "id": 30550, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8190:7:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + }, + "value": "4" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + } + ], + "id": 30549, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "8185:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8185:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30552, + "nodeType": "ExpressionStatement", + "src": "8185:13:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30558, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "8279:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8271:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30556, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8271:7:25", + "typeDescriptions": {} + } + }, + "id": 30559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8271:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30554, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "8257:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8261:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "8257:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8257:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30553, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "8250:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8250:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30562, + "nodeType": "ExpressionStatement", + "src": "8250:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30568, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "8371:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8363:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30566, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8363:7:25", + "typeDescriptions": {} + } + }, + "id": 30569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8363:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30564, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "8342:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30565, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8353:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "8342:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8342:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30571, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "8378:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3230", + "id": 30572, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8388:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + }, + "src": "8378:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8393:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "8378:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 30576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8398:7:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + ], + "id": 30563, + "name": "withinDiff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 31357, + "src": "8331:10:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 30577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8331:75:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30578, + "nodeType": "ExpressionStatement", + "src": "8331:75:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "34", + "id": 30580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8449:7:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + }, + "value": "4" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_2419200_by_1", + "typeString": "int_const 2419200" + } + ], + "id": 30579, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "8444:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8444:13:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30582, + "nodeType": "ExpressionStatement", + "src": "8444:13:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30588, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "8538:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30587, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8530:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30586, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8530:7:25", + "typeDescriptions": {} + } + }, + "id": 30589, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8530:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30584, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "8516:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8520:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "8516:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8516:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30583, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "8509:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8509:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30592, + "nodeType": "ExpressionStatement", + "src": "8509:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30598, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "8630:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30597, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8622:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30596, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8622:7:25", + "typeDescriptions": {} + } + }, + "id": 30599, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8622:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30594, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "8601:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8612:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "8601:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8601:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30601, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "8637:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3238", + "id": 30602, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8647:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_28_by_1", + "typeString": "int_const 28" + }, + "value": "28" + }, + "src": "8637:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30604, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8652:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "8637:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 30606, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8657:7:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + ], + "id": 30593, + "name": "withinDiff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 31357, + "src": "8590:10:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 30607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8590:75:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30608, + "nodeType": "ExpressionStatement", + "src": "8590:75:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3132", + "id": 30610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8709:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_7257600_by_1", + "typeString": "int_const 7257600" + }, + "value": "12" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_7257600_by_1", + "typeString": "int_const 7257600" + } + ], + "id": 30609, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "8704:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8704:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30612, + "nodeType": "ExpressionStatement", + "src": "8704:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30618, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "8799:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8791:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30616, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8791:7:25", + "typeDescriptions": {} + } + }, + "id": 30619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8791:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30614, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "8777:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8781:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "8777:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8777:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30613, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "8770:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8770:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30622, + "nodeType": "ExpressionStatement", + "src": "8770:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30628, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "8891:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30627, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "8883:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30626, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8883:7:25", + "typeDescriptions": {} + } + }, + "id": 30629, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8883:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30624, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "8862:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8873:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "8862:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30630, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8862:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30631, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "8898:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3532", + "id": 30632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8908:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_52_by_1", + "typeString": "int_const 52" + }, + "value": "52" + }, + "src": "8898:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8913:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "8898:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "31", + "id": 30636, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8918:7:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + ], + "id": 30623, + "name": "withinDiff", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 31357, + "src": "8851:10:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 30637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8851:75:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30638, + "nodeType": "ExpressionStatement", + "src": "8851:75:25" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "3234", + "id": 30640, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8970:8:25", + "subdenomination": "weeks", + "typeDescriptions": { + "typeIdentifier": "t_rational_14515200_by_1", + "typeString": "int_const 14515200" + }, + "value": "24" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_14515200_by_1", + "typeString": "int_const 14515200" + } + ], + "id": 30639, + "name": "skip", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "8965:4:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 30641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8965:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30642, + "nodeType": "ExpressionStatement", + "src": "8965:14:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30648, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "9060:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30647, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9052:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30646, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9052:7:25", + "typeDescriptions": {} + } + }, + "id": 30649, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9052:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30644, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "9038:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9042:9:25", + "memberName": "try_claim", + "nodeType": "MemberAccess", + "referencedDeclaration": 29768, + "src": "9038:13:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" + } + }, + "id": 30650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9038:31:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 30643, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "9031:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9031:39:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30652, + "nodeType": "ExpressionStatement", + "src": "9031:39:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30658, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "9150:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30657, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9142:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30656, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9142:7:25", + "typeDescriptions": {} + } + }, + "id": 30659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9142:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 30654, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "9121:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9132:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "9121:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9121:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 30661, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30457, + "src": "9157:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 30653, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1974, + 1999, + 2012, + 2028, + 2070, + 2112, + 2154, + 2191, + 2228, + 2265, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "9112:8:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 30662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9112:53:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30663, + "nodeType": "ExpressionStatement", + "src": "9112:53:25" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 30664, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "9178:2:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$9315", + "typeString": "contract Vm" + } + }, + "id": 30666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9181:9:25", + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 9060, + "src": "9178:12:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 30667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9178:14:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30668, + "nodeType": "ExpressionStatement", + "src": "9178:14:25" + } + ] + }, + "documentation": { + "id": 30455, + "nodeType": "StructuredDocumentation", + "src": "7262:53:25", + "text": "@dev Verifies claim() state changes using fuzzing" + }, + "functionSelector": "1afcfe22", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "test_mainDeploymentTest_claim_fuzzing1", + "nameLocation": "7330:38:25", + "parameters": { + "id": 30458, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30457, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "7377:7:25", + "nodeType": "VariableDeclaration", + "scope": 30670, + "src": "7369:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30456, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7369:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7368:17:25" + }, + "returnParameters": { + "id": 30459, + "nodeType": "ParameterList", + "parameters": [], + "src": "7393:0:25" + }, + "scope": 30865, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 30864, + "nodeType": "FunctionDefinition", + "src": "9264:2022:25", + "nodes": [], + "body": { + "id": 30863, + "nodeType": "Block", + "src": "9336:1950:25", + "nodes": [], + "statements": [ + { + "expression": { + "id": 30682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 30676, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "9347:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 30678, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "9363:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3130305f303030", + "id": 30679, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9372:13:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000" + }, + "value": "100_000" + }, + { + "hexValue": "3130305f3030305f303030", + "id": 30680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9387:17:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000000" + }, + "value": "100_000_000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_100000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000" + }, + { + "typeIdentifier": "t_rational_100000000000000000000000000_by_1", + "typeString": "int_const 100000000000000000000000000" + } + ], + "id": 30677, + "name": "bound", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 7670, + 7800 + ], + "referencedDeclaration": 7670, + "src": "9357:5:25", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256,uint256) view returns (uint256)" + } + }, + "id": 30681, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9357:48:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9347:58:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 30683, + "nodeType": "ExpressionStatement", + "src": "9347:58:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 30689, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "9504:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30688, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9496:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30687, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9496:7:25", + "typeDescriptions": {} + } + }, + "id": 30690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9496:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30691, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "9514:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "33", + "id": 30692, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9522:1:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "9514:9:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 30684, + "name": "proveToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29789, + "src": "9476:10:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TaxToken_$26950", + "typeString": "contract TaxToken" + } + }, + "id": 30686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9487:8:25", + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 28646, + "src": "9476:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 30694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9476:48:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 30695, + "nodeType": "ExpressionStatement", + "src": "9476:48:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30701, + "name": "vesting", + "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "2755:3:25", + "referencedDeclaration": 29786, + "src": "9600:7:25", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", - "typeString": "contract Actor" + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", - "typeString": "contract Actor" + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" } ], - "id": 30013, + "id": 30700, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2747:7:25", + "src": "9592:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30012, + "id": 30699, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2747:7:25", + "src": "9592:7:25", "typeDescriptions": {} } }, - "id": 30015, + "id": 30702, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2747:12:25", + "src": "9592:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4439,124 +15915,315 @@ } ], "expression": { - "id": 30010, - "name": "proveToken", + "id": 30697, + "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29789, - "src": "2726:10:25", + "referencedDeclaration": 30903, + "src": "9570:3:25", "typeDescriptions": { - "typeIdentifier": "t_contract$_TaxToken_$26950", - "typeString": "contract TaxToken" + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" } }, - "id": 30011, + "id": 30698, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "balanceOf", + "memberLocation": "9574:17:25", + "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 28625, - "src": "2726:20:25", + "referencedDeclaration": 29622, + "src": "9570:21:25", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", + "typeString": "function (address) external returns (bool)" } }, - "id": 30016, + "id": 30703, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2726:34:25", + "src": "9570:39:25", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } - }, - { - "hexValue": "30", - "id": 30017, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2762:1:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "typeIdentifier": "t_bool", + "typeString": "bool" } ], - "id": 30009, - "name": "assertEq", + "id": 30696, + "name": "assert", "nodeType": "Identifier", - "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, - 2191, - 2228, - 2265, - 320, - 345, - 375, - 400, - 459, - 484, - 514, - 539, - 1639, - 1674 + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "9563:6:25", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 30704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9563:47:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30705, + "nodeType": "ExpressionStatement", + "src": "9563:47:25" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 30711, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "9747:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30710, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9739:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30709, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9739:7:25", + "typeDescriptions": {} + } + }, + "id": 30712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9739:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30715, + "name": "jon", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30906, + "src": "9765:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30714, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9757:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30713, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9757:7:25", + "typeDescriptions": {} + } + }, + "id": 30716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9757:12:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 30717, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "9771:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 30707, + "name": "dev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30903, + "src": "9719:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + }, + "id": 30708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9723:15:25", + "memberName": "try_addInvestor", + "nodeType": "MemberAccess", + "referencedDeclaration": 29684, + "src": "9719:19:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 30718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9719:60:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } ], - "referencedDeclaration": 514, - "src": "2717:8:25", + "id": 30706, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "9712:6:25", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 30018, + "id": 30719, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2717:47:25", + "src": "9712:68:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30019, + "id": 30720, "nodeType": "ExpressionStatement", - "src": "2717:47:25" + "src": "9712:68:25" }, { "expression": { @@ -4566,12 +16233,12 @@ { "arguments": [ { - "id": 30025, + "id": 30726, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29786, - "src": "2845:7:25", + "src": "9860:7:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" @@ -4585,39 +16252,109 @@ "typeString": "contract Vesting" } ], - "id": 30024, + "id": 30725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9852:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30724, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9852:7:25", + "typeDescriptions": {} + } + }, + "id": 30727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9852:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30730, + "name": "joe", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30900, + "src": "9878:3:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" + } + ], + "id": 30729, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2837:7:25", + "src": "9870:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30023, + "id": 30728, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2837:7:25", + "src": "9870:7:25", "typeDescriptions": {} } }, - "id": 30026, + "id": 30731, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2837:16:25", + "src": "9870:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } + }, + { + "id": 30732, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "9884:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } } ], "expression": { @@ -4625,43 +16362,53 @@ { "typeIdentifier": "t_address", "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } ], "expression": { - "id": 30021, - "name": "jon", + "id": 30722, + "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "2823:3:25", + "referencedDeclaration": 30903, + "src": "9832:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30022, + "id": 30723, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "try_claim", + "memberLocation": "9836:15:25", + "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "2823:13:25", + "referencedDeclaration": 29684, + "src": "9832:19:25", "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", - "typeString": "function (address) external returns (bool)" + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 30027, + "id": 30733, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2823:31:25", + "src": "9832:60:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4676,35 +16423,36 @@ "typeString": "bool" } ], - "id": 30020, + "id": 30721, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2816:6:25", + "src": "9825:6:25", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30028, + "id": 30734, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2816:39:25", + "src": "9825:68:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30029, + "id": 30735, "nodeType": "ExpressionStatement", - "src": "2816:39:25" + "src": "9825:68:25" }, { "expression": { @@ -4714,12 +16462,69 @@ { "arguments": [ { - "id": 30035, - "name": "jon", + "id": 30741, + "name": "vesting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 29786, + "src": "9973:7:25", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Vesting_$28040", + "typeString": "contract Vesting" + } + ], + "id": 30740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "9965:7:25", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 30739, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9965:7:25", + "typeDescriptions": {} + } + }, + "id": 30742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9965:16:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 30745, + "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "2935:3:25", + "referencedDeclaration": 30903, + "src": "9991:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" @@ -4733,39 +16538,52 @@ "typeString": "contract Actor" } ], - "id": 30034, + "id": 30744, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2927:7:25", + "src": "9983:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30033, + "id": 30743, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2927:7:25", + "src": "9983:7:25", "typeDescriptions": {} } }, - "id": 30036, + "id": 30746, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2927:12:25", + "src": "9983:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } + }, + { + "id": 30747, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "9997:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } } ], "expression": { @@ -4773,249 +16591,156 @@ { "typeIdentifier": "t_address", "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } ], "expression": { - "id": 30031, - "name": "proveToken", + "id": 30737, + "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29789, - "src": "2906:10:25", + "referencedDeclaration": 30903, + "src": "9945:3:25", "typeDescriptions": { - "typeIdentifier": "t_contract$_TaxToken_$26950", - "typeString": "contract TaxToken" + "typeIdentifier": "t_contract$_Actor_$29769", + "typeString": "contract Actor" } }, - "id": 30032, + "id": 30738, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "balanceOf", + "memberLocation": "9949:15:25", + "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 28625, - "src": "2906:20:25", + "referencedDeclaration": 29684, + "src": "9945:19:25", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 30037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2906:34:25", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30042, + "id": 30748, "isConstant": false, "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30040, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 30038, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 29962, - "src": "2942:7:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "3132", - "id": 30039, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2952:2:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_12_by_1", - "typeString": "int_const 12" - }, - "value": "12" - }, - "src": "2942:12:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "313030", - "id": 30041, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2957:3:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "2942:18:25", + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9945:60:25", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } ], - "id": 30030, - "name": "assertEq", + "id": 30736, + "name": "assert", "nodeType": "Identifier", - "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, - 2191, - 2228, - 2265, - 320, - 345, - 375, - 400, - 459, - 484, - 514, - 539, - 1639, - 1674 - ], - "referencedDeclaration": 514, - "src": "2897:8:25", + "overloadedDeclarations": [], + "referencedDeclaration": -3, + "src": "9938:6:25", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 30043, + "id": 30749, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2897:64:25", + "src": "9938:68:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30044, + "id": 30750, "nodeType": "ExpressionStatement", - "src": "2897:64:25" + "src": "9938:68:25" }, { "expression": { "arguments": [ { - "hexValue": "34", - "id": 30046, + "hexValue": "32", + "id": 30752, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3004:7:25", + "src": "10086:7:25", "subdenomination": "weeks", "typeDescriptions": { - "typeIdentifier": "t_rational_2419200_by_1", - "typeString": "int_const 2419200" + "typeIdentifier": "t_rational_1209600_by_1", + "typeString": "int_const 1209600" }, - "value": "4" + "value": "2" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_rational_2419200_by_1", - "typeString": "int_const 2419200" + "typeIdentifier": "t_rational_1209600_by_1", + "typeString": "int_const 1209600" } ], - "id": 30045, + "id": 30751, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "2999:4:25", + "src": "10081:4:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 30047, + "id": 30753, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2999:13:25", + "src": "10081:13:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30048, + "id": 30754, "nodeType": "ExpressionStatement", - "src": "2999:13:25" + "src": "10081:13:25" }, { "expression": { @@ -5025,12 +16750,12 @@ { "arguments": [ { - "id": 30054, + "id": 30760, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29786, - "src": "3093:7:25", + "src": "10134:7:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" @@ -5044,34 +16769,35 @@ "typeString": "contract Vesting" } ], - "id": 30053, + "id": 30759, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3085:7:25", + "src": "10126:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30052, + "id": 30758, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3085:7:25", + "src": "10126:7:25", "typeDescriptions": {} } }, - "id": 30055, + "id": 30761, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3085:16:25", + "src": "10126:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5087,40 +16813,42 @@ } ], "expression": { - "id": 30050, + "id": 30756, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3071:3:25", + "referencedDeclaration": 30906, + "src": "10112:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30051, + "id": 30757, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10116:9:25", "memberName": "try_claim", "nodeType": "MemberAccess", "referencedDeclaration": 29768, - "src": "3071:13:25", + "src": "10112:13:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30056, + "id": 30762, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3071:31:25", + "src": "10112:31:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5135,35 +16863,36 @@ "typeString": "bool" } ], - "id": 30049, + "id": 30755, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3064:6:25", + "src": "10105:6:25", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30057, + "id": 30763, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3064:39:25", + "src": "10105:39:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30058, + "id": 30764, "nodeType": "ExpressionStatement", - "src": "3064:39:25" + "src": "10105:39:25" }, { "expression": { @@ -5173,12 +16902,12 @@ { "arguments": [ { - "id": 30064, + "id": 30770, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3183:3:25", + "referencedDeclaration": 30906, + "src": "10261:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" @@ -5192,34 +16921,35 @@ "typeString": "contract Actor" } ], - "id": 30063, + "id": 30769, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3175:7:25", + "src": "10253:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30062, + "id": 30768, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3175:7:25", + "src": "10253:7:25", "typeDescriptions": {} } }, - "id": 30065, + "id": 30771, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3175:12:25", + "src": "10253:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5235,40 +16965,42 @@ } ], "expression": { - "id": 30060, + "id": 30766, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29789, - "src": "3154:10:25", + "src": "10232:10:25", "typeDescriptions": { "typeIdentifier": "t_contract$_TaxToken_$26950", "typeString": "contract TaxToken" } }, - "id": 30061, + "id": 30767, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10243:9:25", "memberName": "balanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 28625, - "src": "3154:20:25", + "src": "10232:20:25", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30066, + "id": 30772, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3154:34:25", + "src": "10232:34:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5276,84 +17008,117 @@ } }, { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30071, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30069, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 30067, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 29962, - "src": "3190:7:25", - "typeDescriptions": { + "components": [ + { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "3230", - "id": 30068, + }, + "id": 30777, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "3200:2:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_20_by_1", - "typeString": "int_const 20" + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30773, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "10269:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3132", + "id": 30774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10279:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_12_by_1", + "typeString": "int_const 12" + }, + "value": "12" + }, + "src": "10269:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "value": "20" - }, - "src": "3190:12:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30776, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10284:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "10269:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "313030", - "id": 30070, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3205:3:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "3190:18:25", + ], + "id": 30778, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "10268:20:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } + }, + { + "hexValue": "31", + "id": 30779, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10290:7:25", + "subdenomination": "ether", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1" } ], "expression": { @@ -5365,116 +17130,101 @@ { "typeIdentifier": "t_uint256", "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" } ], - "id": 30059, - "name": "assertEq", + "id": 30765, + "name": "withinDiff", "nodeType": "Identifier", - "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, - 2191, - 2228, - 2265, - 320, - 345, - 375, - 400, - 459, - 484, - 514, - 539, - 1639, - 1674 - ], - "referencedDeclaration": 514, - "src": "3145:8:25", + "overloadedDeclarations": [], + "referencedDeclaration": 31357, + "src": "10221:10:25", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" } }, - "id": 30072, + "id": 30780, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3145:64:25", + "src": "10221:77:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30073, + "id": 30781, "nodeType": "ExpressionStatement", - "src": "3145:64:25" + "src": "10221:77:25" }, { "expression": { "arguments": [ { - "hexValue": "34", - "id": 30075, + "hexValue": "3232", + "id": 30783, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3252:7:25", + "src": "10368:8:25", "subdenomination": "weeks", "typeDescriptions": { - "typeIdentifier": "t_rational_2419200_by_1", - "typeString": "int_const 2419200" + "typeIdentifier": "t_rational_13305600_by_1", + "typeString": "int_const 13305600" }, - "value": "4" + "value": "22" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_rational_2419200_by_1", - "typeString": "int_const 2419200" + "typeIdentifier": "t_rational_13305600_by_1", + "typeString": "int_const 13305600" } ], - "id": 30074, + "id": 30782, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "3247:4:25", + "src": "10363:4:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 30076, + "id": 30784, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3247:13:25", + "src": "10363:14:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30077, + "id": 30785, "nodeType": "ExpressionStatement", - "src": "3247:13:25" + "src": "10363:14:25" }, { "expression": { @@ -5484,12 +17234,12 @@ { "arguments": [ { - "id": 30083, + "id": 30791, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29786, - "src": "3341:7:25", + "src": "10471:7:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" @@ -5503,34 +17253,35 @@ "typeString": "contract Vesting" } ], - "id": 30082, + "id": 30790, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3333:7:25", + "src": "10463:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30081, + "id": 30789, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3333:7:25", + "src": "10463:7:25", "typeDescriptions": {} } }, - "id": 30084, + "id": 30792, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3333:16:25", + "src": "10463:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5546,40 +17297,42 @@ } ], "expression": { - "id": 30079, - "name": "jon", + "id": 30787, + "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3319:3:25", + "referencedDeclaration": 30900, + "src": "10449:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30080, + "id": 30788, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10453:9:25", "memberName": "try_claim", "nodeType": "MemberAccess", "referencedDeclaration": 29768, - "src": "3319:13:25", + "src": "10449:13:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30085, + "id": 30793, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3319:31:25", + "src": "10449:31:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5594,35 +17347,36 @@ "typeString": "bool" } ], - "id": 30078, + "id": 30786, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3312:6:25", + "src": "10442:6:25", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30086, + "id": 30794, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3312:39:25", + "src": "10442:39:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30087, + "id": 30795, "nodeType": "ExpressionStatement", - "src": "3312:39:25" + "src": "10442:39:25" }, { "expression": { @@ -5632,12 +17386,12 @@ { "arguments": [ { - "id": 30093, - "name": "jon", + "id": 30801, + "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3431:3:25", + "referencedDeclaration": 30900, + "src": "10598:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" @@ -5651,34 +17405,35 @@ "typeString": "contract Actor" } ], - "id": 30092, + "id": 30800, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3423:7:25", + "src": "10590:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30091, + "id": 30799, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3423:7:25", + "src": "10590:7:25", "typeDescriptions": {} } }, - "id": 30094, + "id": 30802, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3423:12:25", + "src": "10590:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5694,125 +17449,160 @@ } ], "expression": { - "id": 30089, + "id": 30797, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29789, - "src": "3402:10:25", + "src": "10569:10:25", "typeDescriptions": { "typeIdentifier": "t_contract$_TaxToken_$26950", "typeString": "contract TaxToken" } - }, - "id": 30090, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 28625, - "src": "3402:20:25", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" + }, + "id": 30798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10580:9:25", + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 28625, + "src": "10569:20:25", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view external returns (uint256)" + } + }, + "id": 30803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10569:34:25", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30808, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 30806, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 30804, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "10606:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3630", + "id": 30805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10616:2:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_60_by_1", + "typeString": "int_const 60" + }, + "value": "60" + }, + "src": "10606:12:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "hexValue": "313030", + "id": 30807, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10621:3:25", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "10606:18:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } } - }, - "id": 30095, + ], + "id": 30809, "isConstant": false, + "isInlineArray": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3402:34:25", - "tryCall": false, + "nodeType": "TupleExpression", + "src": "10605:20:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30100, + "hexValue": "31", + "id": 30810, "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, + "kind": "number", "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30098, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 30096, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 29962, - "src": "3438:7:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "3238", - "id": 30097, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3448:2:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_28_by_1", - "typeString": "int_const 28" - }, - "value": "28" - }, - "src": "3438:12:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "313030", - "id": 30099, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3453:3:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "3438:18:25", + "nodeType": "Literal", + "src": "10627:7:25", + "subdenomination": "ether", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1" } ], "expression": { @@ -5824,116 +17614,101 @@ { "typeIdentifier": "t_uint256", "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" } ], - "id": 30088, - "name": "assertEq", + "id": 30796, + "name": "withinDiff", "nodeType": "Identifier", - "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, - 2191, - 2228, - 2265, - 320, - 345, - 375, - 400, - 459, - 484, - 514, - 539, - 1639, - 1674 - ], - "referencedDeclaration": 514, - "src": "3393:8:25", + "overloadedDeclarations": [], + "referencedDeclaration": 31357, + "src": "10558:10:25", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" } }, - "id": 30101, + "id": 30811, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3393:64:25", + "src": "10558:77:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30102, + "id": 30812, "nodeType": "ExpressionStatement", - "src": "3393:64:25" + "src": "10558:77:25" }, { "expression": { "arguments": [ { - "hexValue": "3132", - "id": 30104, + "hexValue": "3230", + "id": 30814, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3501:8:25", + "src": "10706:8:25", "subdenomination": "weeks", "typeDescriptions": { - "typeIdentifier": "t_rational_7257600_by_1", - "typeString": "int_const 7257600" + "typeIdentifier": "t_rational_12096000_by_1", + "typeString": "int_const 12096000" }, - "value": "12" + "value": "20" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_rational_7257600_by_1", - "typeString": "int_const 7257600" + "typeIdentifier": "t_rational_12096000_by_1", + "typeString": "int_const 12096000" } ], - "id": 30103, + "id": 30813, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "3496:4:25", + "src": "10701:4:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 30105, + "id": 30815, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3496:14:25", + "src": "10701:14:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30106, + "id": 30816, "nodeType": "ExpressionStatement", - "src": "3496:14:25" + "src": "10701:14:25" }, { "expression": { @@ -5943,12 +17718,12 @@ { "arguments": [ { - "id": 30112, + "id": 30822, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29786, - "src": "3591:7:25", + "src": "10835:7:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" @@ -5962,34 +17737,35 @@ "typeString": "contract Vesting" } ], - "id": 30111, + "id": 30821, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3583:7:25", + "src": "10827:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30110, + "id": 30820, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3583:7:25", + "src": "10827:7:25", "typeDescriptions": {} } }, - "id": 30113, + "id": 30823, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3583:16:25", + "src": "10827:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6005,40 +17781,42 @@ } ], "expression": { - "id": 30108, - "name": "jon", + "id": 30818, + "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3569:3:25", + "referencedDeclaration": 30900, + "src": "10813:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30109, + "id": 30819, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10817:9:25", "memberName": "try_claim", "nodeType": "MemberAccess", "referencedDeclaration": 29768, - "src": "3569:13:25", + "src": "10813:13:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30114, + "id": 30824, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3569:31:25", + "src": "10813:31:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6053,35 +17831,36 @@ "typeString": "bool" } ], - "id": 30107, + "id": 30817, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3562:6:25", + "src": "10806:6:25", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30115, + "id": 30825, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3562:39:25", + "src": "10806:39:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30116, + "id": 30826, "nodeType": "ExpressionStatement", - "src": "3562:39:25" + "src": "10806:39:25" }, { "expression": { @@ -6091,12 +17870,12 @@ { "arguments": [ { - "id": 30122, - "name": "jon", + "id": 30832, + "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3681:3:25", + "referencedDeclaration": 30900, + "src": "10949:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" @@ -6110,34 +17889,35 @@ "typeString": "contract Actor" } ], - "id": 30121, + "id": 30831, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3673:7:25", + "src": "10941:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30120, + "id": 30830, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3673:7:25", + "src": "10941:7:25", "typeDescriptions": {} } }, - "id": 30123, + "id": 30833, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3673:12:25", + "src": "10941:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6153,40 +17933,42 @@ } ], "expression": { - "id": 30118, + "id": 30828, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29789, - "src": "3652:10:25", + "src": "10920:10:25", "typeDescriptions": { "typeIdentifier": "t_contract$_TaxToken_$26950", "typeString": "contract TaxToken" } }, - "id": 30119, + "id": 30829, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10931:9:25", "memberName": "balanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 28625, - "src": "3652:20:25", + "src": "10920:20:25", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30124, + "id": 30834, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3652:34:25", + "src": "10920:34:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6194,80 +17976,12 @@ } }, { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30129, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 30127, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 30125, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 29962, - "src": "3688:7:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "3532", - "id": 30126, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3698:2:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_52_by_1", - "typeString": "int_const 52" - }, - "value": "52" - }, - "src": "3688:12:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "313030", - "id": 30128, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3703:3:25", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "3688:18:25", + "id": 30835, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30673, + "src": "10956:7:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6285,7 +17999,7 @@ "typeString": "uint256" } ], - "id": 30117, + "id": 30827, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6311,88 +18025,90 @@ 1674 ], "referencedDeclaration": 514, - "src": "3643:8:25", + "src": "10911:8:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30130, + "id": 30836, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3643:64:25", + "src": "10911:53:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30131, + "id": 30837, "nodeType": "ExpressionStatement", - "src": "3643:64:25" + "src": "10911:53:25" }, { "expression": { "arguments": [ { - "hexValue": "3234", - "id": 30133, + "hexValue": "3532", + "id": 30839, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3751:8:25", + "src": "11014:8:25", "subdenomination": "weeks", "typeDescriptions": { - "typeIdentifier": "t_rational_14515200_by_1", - "typeString": "int_const 14515200" + "typeIdentifier": "t_rational_31449600_by_1", + "typeString": "int_const 31449600" }, - "value": "24" + "value": "52" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_rational_14515200_by_1", - "typeString": "int_const 14515200" + "typeIdentifier": "t_rational_31449600_by_1", + "typeString": "int_const 31449600" } ], - "id": 30132, + "id": 30838, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, - "src": "3746:4:25", + "src": "11009:4:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 30134, + "id": 30840, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3746:14:25", + "src": "11009:14:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30135, + "id": 30841, "nodeType": "ExpressionStatement", - "src": "3746:14:25" + "src": "11009:14:25" }, { "expression": { @@ -6402,12 +18118,12 @@ { "arguments": [ { - "id": 30141, + "id": 30847, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29786, - "src": "3841:7:25", + "src": "11139:7:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Vesting_$28040", "typeString": "contract Vesting" @@ -6421,34 +18137,35 @@ "typeString": "contract Vesting" } ], - "id": 30140, + "id": 30846, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3833:7:25", + "src": "11131:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30139, + "id": 30845, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3833:7:25", + "src": "11131:7:25", "typeDescriptions": {} } }, - "id": 30142, + "id": 30848, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3833:16:25", + "src": "11131:16:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6464,40 +18181,42 @@ } ], "expression": { - "id": 30137, - "name": "jon", + "id": 30843, + "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3819:3:25", + "referencedDeclaration": 30903, + "src": "11117:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" } }, - "id": 30138, + "id": 30844, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11121:9:25", "memberName": "try_claim", "nodeType": "MemberAccess", "referencedDeclaration": 29768, - "src": "3819:13:25", + "src": "11117:13:25", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30143, + "id": 30849, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3819:31:25", + "src": "11117:31:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6512,35 +18231,36 @@ "typeString": "bool" } ], - "id": 30136, + "id": 30842, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3812:6:25", + "src": "11110:6:25", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30144, + "id": 30850, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3812:39:25", + "src": "11110:39:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30145, + "id": 30851, "nodeType": "ExpressionStatement", - "src": "3812:39:25" + "src": "11110:39:25" }, { "expression": { @@ -6550,12 +18270,12 @@ { "arguments": [ { - "id": 30151, - "name": "jon", + "id": 30857, + "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30205, - "src": "3931:3:25", + "referencedDeclaration": 30903, + "src": "11261:3:25", "typeDescriptions": { "typeIdentifier": "t_contract$_Actor_$29769", "typeString": "contract Actor" @@ -6569,34 +18289,35 @@ "typeString": "contract Actor" } ], - "id": 30150, + "id": 30856, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3923:7:25", + "src": "11253:7:25", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30149, + "id": 30855, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3923:7:25", + "src": "11253:7:25", "typeDescriptions": {} } }, - "id": 30152, + "id": 30858, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3923:12:25", + "src": "11253:12:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6612,40 +18333,42 @@ } ], "expression": { - "id": 30147, + "id": 30853, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 29789, - "src": "3902:10:25", + "src": "11232:10:25", "typeDescriptions": { "typeIdentifier": "t_contract$_TaxToken_$26950", "typeString": "contract TaxToken" } }, - "id": 30148, + "id": 30854, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11243:9:25", "memberName": "balanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 28625, - "src": "3902:20:25", + "src": "11232:20:25", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30153, + "id": 30859, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3902:34:25", + "src": "11232:34:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6653,12 +18376,12 @@ } }, { - "id": 30154, + "id": 30860, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29962, - "src": "3938:7:25", + "referencedDeclaration": 30673, + "src": "11268:7:25", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6676,7 +18399,7 @@ "typeString": "uint256" } ], - "id": 30146, + "id": 30852, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6702,108 +18425,87 @@ 1674 ], "referencedDeclaration": 514, - "src": "3893:8:25", + "src": "11223:8:25", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30155, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3893:53:25", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 30156, - "nodeType": "ExpressionStatement", - "src": "3893:53:25" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 30157, - "name": "vm", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1836, - "src": "3959:2:25", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", - "typeString": "contract Vm" - } - }, - "id": 30159, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "stopPrank", - "nodeType": "MemberAccess", - "referencedDeclaration": 9060, - "src": "3959:12:25", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", - "typeString": "function () external" - } - }, - "id": 30160, + "id": 30861, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3959:14:25", + "src": "11223:53:25", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30161, + "id": 30862, "nodeType": "ExpressionStatement", - "src": "3959:14:25" + "src": "11223:53:25" } ] }, "documentation": { - "id": 29958, + "id": 30671, "nodeType": "StructuredDocumentation", - "src": "2211:39:25", - "text": "@dev Verifies claim() state changes" + "src": "9208:50:25", + "text": "@dev Verifies claim() edge cases using fuzzing" }, - "functionSelector": "b8dae58b", + "functionSelector": "86ef399b", "implemented": true, "kind": "function", "modifiers": [], - "name": "test_mainDeploymentTest_claim", - "nameLocation": "2265:29:25", + "name": "test_mainDeploymentTest_claim_fuzzing2", + "nameLocation": "9273:38:25", "parameters": { - "id": 29959, + "id": 30674, "nodeType": "ParameterList", - "parameters": [], - "src": "2294:2:25" + "parameters": [ + { + "constant": false, + "id": 30673, + "mutability": "mutable", + "name": "_amount", + "nameLocation": "9320:7:25", + "nodeType": "VariableDeclaration", + "scope": 30864, + "src": "9312:15:25", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30672, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9312:7:25", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9311:17:25" }, "returnParameters": { - "id": 29960, + "id": 30675, "nodeType": "ParameterList", "parameters": [], - "src": "2304:0:25" + "src": "9336:0:25" }, - "scope": 30164, + "scope": 30865, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" @@ -6815,8 +18517,11 @@ "baseName": { "id": 29780, "name": "Utility", + "nameLocations": [ + "337:7:25" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30714, + "referencedDeclaration": 31415, "src": "337:7:25" }, "id": 29781, @@ -6827,6 +18532,9 @@ "baseName": { "id": 29782, "name": "Test", + "nameLocations": [ + "346:4:25" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8158, "src": "346:4:25" @@ -6845,7 +18553,7 @@ "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 30164, + 30865, 8158, 1843, 1840, @@ -6854,12 +18562,12 @@ 4755, 3207, 2671, - 30714, + 31415, 1786 ], "name": "MainDeploymentTest", "nameLocation": "315:18:25", - "scope": 30165, + "scope": 30866, "usedErrors": [] } ], diff --git a/out/Ownable.sol/Ownable.json b/out/Ownable.sol/Ownable.json index 79b8dfd..684009e 100644 --- a/out/Ownable.sol/Ownable.json +++ b/out/Ownable.sol/Ownable.json @@ -82,24 +82,157 @@ "renounceOwnership()": "715018a6", "transferOwnership(address)": "f2fde38b" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"lock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. By default, the owner account will be the one that deploys the contract. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/extensions/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "previousOwner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "newOwner", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "OwnershipTransferred", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "lock" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "renounceOwnership" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferOwnership" + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "constructor": { + "details": "Initializes the contract setting the deployer as the initial owner." + }, + "owner()": { + "details": "Returns the address of the current owner." + }, + "renounceOwnership()": { + "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + }, + "transferOwnership(address)": { + "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/extensions/Ownable.sol": "Ownable" + }, + "libraries": {} + }, + "sources": { + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/extensions/Ownable.sol": { + "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", + "urls": [ + "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", + "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/extensions/Ownable.sol", - "id": 28256, + "id": 28271, "exportedSymbols": { "Context": [ - 28107 + 28122 ], "Ownable": [ - 28255 + 28270 ] }, "nodeType": "SourceUnit", "src": "33:2640:20", "nodes": [ { - "id": 28109, + "id": 28124, "nodeType": "PragmaDirective", "src": "33:23:20", + "nodes": [], "literals": [ "solidity", "^", @@ -108,31 +241,33 @@ ] }, { - "id": 28110, + "id": 28125, "nodeType": "ImportDirective", "src": "60:23:20", + "nodes": [], "absolutePath": "src/extensions/Context.sol", "file": "./Context.sol", "nameLocation": "-1:-1:-1", - "scope": 28256, - "sourceUnit": 28108, + "scope": 28271, + "sourceUnit": 28123, "symbolAliases": [], "unitAlias": "" }, { - "id": 28255, + "id": 28270, "nodeType": "ContractDefinition", "src": "594:2079:20", "nodes": [ { - "id": 28115, + "id": 28130, "nodeType": "VariableDeclaration", "src": "638:22:20", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_owner", "nameLocation": "654:6:20", - "scope": 28255, + "scope": 28270, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -140,7 +275,7 @@ "typeString": "address" }, "typeName": { - "id": 28114, + "id": 28129, "name": "address", "nodeType": "ElementaryTypeName", "src": "638:7:20", @@ -153,14 +288,15 @@ "visibility": "private" }, { - "id": 28117, + "id": 28132, "nodeType": "VariableDeclaration", "src": "667:30:20", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_previousOwner", "nameLocation": "683:14:20", - "scope": 28255, + "scope": 28270, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -168,7 +304,7 @@ "typeString": "address" }, "typeName": { - "id": 28116, + "id": 28131, "name": "address", "nodeType": "ElementaryTypeName", "src": "667:7:20", @@ -181,14 +317,15 @@ "visibility": "private" }, { - "id": 28119, + "id": 28134, "nodeType": "VariableDeclaration", "src": "704:25:20", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_lockTime", "nameLocation": "720:9:20", - "scope": 28255, + "scope": 28270, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -196,7 +333,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28118, + "id": 28133, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "704:7:20", @@ -208,26 +345,27 @@ "visibility": "private" }, { - "id": 28125, + "id": 28140, "nodeType": "EventDefinition", "src": "738:84:20", + "nodes": [], "anonymous": false, "eventSelector": "8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", "name": "OwnershipTransferred", "nameLocation": "744:20:20", "parameters": { - "id": 28124, + "id": 28139, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28121, + "id": 28136, "indexed": true, "mutability": "mutable", "name": "previousOwner", "nameLocation": "781:13:20", "nodeType": "VariableDeclaration", - "scope": 28125, + "scope": 28140, "src": "765:29:20", "stateVariable": false, "storageLocation": "default", @@ -236,7 +374,7 @@ "typeString": "address" }, "typeName": { - "id": 28120, + "id": 28135, "name": "address", "nodeType": "ElementaryTypeName", "src": "765:7:20", @@ -250,13 +388,13 @@ }, { "constant": false, - "id": 28123, + "id": 28138, "indexed": true, "mutability": "mutable", "name": "newOwner", "nameLocation": "812:8:20", "nodeType": "VariableDeclaration", - "scope": 28125, + "scope": 28140, "src": "796:24:20", "stateVariable": false, "storageLocation": "default", @@ -265,7 +403,7 @@ "typeString": "address" }, "typeName": { - "id": 28122, + "id": 28137, "name": "address", "nodeType": "ElementaryTypeName", "src": "796:7:20", @@ -282,27 +420,29 @@ } }, { - "id": 28147, + "id": 28162, "nodeType": "FunctionDefinition", "src": "929:154:20", + "nodes": [], "body": { - "id": 28146, + "id": 28161, "nodeType": "Block", "src": "944:139:20", + "nodes": [], "statements": [ { "assignments": [ - 28130 + 28145 ], "declarations": [ { "constant": false, - "id": 28130, + "id": 28145, "mutability": "mutable", "name": "msgSender", "nameLocation": "963:9:20", "nodeType": "VariableDeclaration", - "scope": 28146, + "scope": 28161, "src": "955:17:20", "stateVariable": false, "storageLocation": "default", @@ -311,7 +451,7 @@ "typeString": "address" }, "typeName": { - "id": 28129, + "id": 28144, "name": "address", "nodeType": "ElementaryTypeName", "src": "955:7:20", @@ -324,28 +464,29 @@ "visibility": "internal" } ], - "id": 28133, + "id": 28148, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 28131, + "id": 28146, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "975:10:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28132, + "id": 28147, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "975:12:20", @@ -360,17 +501,17 @@ }, { "expression": { - "id": 28136, + "id": 28151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28134, + "id": 28149, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "998:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -380,11 +521,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28135, + "id": 28150, "name": "msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28130, + "referencedDeclaration": 28145, "src": "1007:9:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -397,7 +538,7 @@ "typeString": "address" } }, - "id": 28137, + "id": 28152, "nodeType": "ExpressionStatement", "src": "998:18:20" }, @@ -408,7 +549,7 @@ "arguments": [ { "hexValue": "30", - "id": 28141, + "id": 28156, "isConstant": false, "isLValue": false, "isPure": true, @@ -430,7 +571,7 @@ "typeString": "int_const 0" } ], - "id": 28140, + "id": 28155, "isConstant": false, "isLValue": false, "isPure": true, @@ -442,19 +583,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28139, + "id": 28154, "name": "address", "nodeType": "ElementaryTypeName", "src": "1053:7:20", "typeDescriptions": {} } }, - "id": 28142, + "id": 28157, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1053:10:20", @@ -465,11 +607,11 @@ } }, { - "id": 28143, + "id": 28158, "name": "msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28130, + "referencedDeclaration": 28145, "src": "1065:9:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -488,23 +630,24 @@ "typeString": "address" } ], - "id": 28138, + "id": 28153, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28125, + "referencedDeclaration": 28140, "src": "1032:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28144, + "id": 28159, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1032:43:20", @@ -514,14 +657,14 @@ "typeString": "tuple()" } }, - "id": 28145, + "id": 28160, "nodeType": "EmitStatement", "src": "1027:48:20" } ] }, "documentation": { - "id": 28126, + "id": 28141, "nodeType": "StructuredDocumentation", "src": "830:93:20", "text": " @dev Initializes the contract setting the deployer as the initial owner." @@ -532,53 +675,55 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 28127, + "id": 28142, "nodeType": "ParameterList", "parameters": [], "src": "941:2:20" }, "returnParameters": { - "id": 28128, + "id": 28143, "nodeType": "ParameterList", "parameters": [], "src": "944:0:20" }, - "scope": 28255, + "scope": 28270, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { - "id": 28156, + "id": 28171, "nodeType": "FunctionDefinition", "src": "1164:87:20", + "nodes": [], "body": { - "id": 28155, + "id": 28170, "nodeType": "Block", "src": "1219:32:20", + "nodes": [], "statements": [ { "expression": { - "id": 28153, + "id": 28168, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "1237:6:20", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 28152, - "id": 28154, + "functionReturnParameters": 28167, + "id": 28169, "nodeType": "Return", "src": "1230:13:20" } ] }, "documentation": { - "id": 28148, + "id": 28163, "nodeType": "StructuredDocumentation", "src": "1091:67:20", "text": " @dev Returns the address of the current owner." @@ -590,23 +735,23 @@ "name": "owner", "nameLocation": "1173:5:20", "parameters": { - "id": 28149, + "id": 28164, "nodeType": "ParameterList", "parameters": [], "src": "1178:2:20" }, "returnParameters": { - "id": 28152, + "id": 28167, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28151, + "id": 28166, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28156, + "scope": 28171, "src": "1210:7:20", "stateVariable": false, "storageLocation": "default", @@ -615,7 +760,7 @@ "typeString": "address" }, "typeName": { - "id": 28150, + "id": 28165, "name": "address", "nodeType": "ElementaryTypeName", "src": "1210:7:20", @@ -630,19 +775,21 @@ ], "src": "1209:9:20" }, - "scope": 28255, + "scope": 28270, "stateMutability": "view", "virtual": true, "visibility": "public" }, { - "id": 28170, + "id": 28185, "nodeType": "ModifierDefinition", "src": "1344:120:20", + "nodes": [], "body": { - "id": 28169, + "id": 28184, "nodeType": "Block", "src": "1365:99:20", + "nodes": [], "statements": [ { "expression": { @@ -652,7 +799,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28164, + "id": 28179, "isConstant": false, "isLValue": false, "isPure": false, @@ -661,23 +808,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28160, + "id": 28175, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28156, + "referencedDeclaration": 28171, "src": "1384:5:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 28161, + "id": 28176, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1384:7:20", @@ -693,23 +841,24 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 28162, + "id": 28177, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28095, + "referencedDeclaration": 28110, "src": "1395:10:20", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_payable_$", "typeString": "function () view returns (address payable)" } }, - "id": 28163, + "id": 28178, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1395:12:20", @@ -727,7 +876,7 @@ }, { "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "id": 28165, + "id": 28180, "isConstant": false, "isLValue": false, "isPure": true, @@ -753,7 +902,7 @@ "typeString": "literal_string \"Ownable: caller is not the owner\"" } ], - "id": 28159, + "id": 28174, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -767,12 +916,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28166, + "id": 28181, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1376:68:20", @@ -782,19 +932,19 @@ "typeString": "tuple()" } }, - "id": 28167, + "id": 28182, "nodeType": "ExpressionStatement", "src": "1376:68:20" }, { - "id": 28168, + "id": 28183, "nodeType": "PlaceholderStatement", "src": "1455:1:20" } ] }, "documentation": { - "id": 28157, + "id": 28172, "nodeType": "StructuredDocumentation", "src": "1259:79:20", "text": " @dev Throws if called by any account other than the owner." @@ -802,7 +952,7 @@ "name": "onlyOwner", "nameLocation": "1353:9:20", "parameters": { - "id": 28158, + "id": 28173, "nodeType": "ParameterList", "parameters": [], "src": "1362:2:20" @@ -811,23 +961,25 @@ "visibility": "internal" }, { - "id": 28192, + "id": 28207, "nodeType": "FunctionDefinition", "src": "1815:148:20", + "nodes": [], "body": { - "id": 28191, + "id": 28206, "nodeType": "Block", "src": "1869:94:20", + "nodes": [], "statements": [ { "eventCall": { "arguments": [ { - "id": 28177, + "id": 28192, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "1906:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -838,7 +990,7 @@ "arguments": [ { "hexValue": "30", - "id": 28180, + "id": 28195, "isConstant": false, "isLValue": false, "isPure": true, @@ -860,7 +1012,7 @@ "typeString": "int_const 0" } ], - "id": 28179, + "id": 28194, "isConstant": false, "isLValue": false, "isPure": true, @@ -872,19 +1024,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28178, + "id": 28193, "name": "address", "nodeType": "ElementaryTypeName", "src": "1914:7:20", "typeDescriptions": {} } }, - "id": 28181, + "id": 28196, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1914:10:20", @@ -906,23 +1059,24 @@ "typeString": "address" } ], - "id": 28176, + "id": 28191, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28125, + "referencedDeclaration": 28140, "src": "1885:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28182, + "id": 28197, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1885:40:20", @@ -932,23 +1086,23 @@ "typeString": "tuple()" } }, - "id": 28183, + "id": 28198, "nodeType": "EmitStatement", "src": "1880:45:20" }, { "expression": { - "id": 28189, + "id": 28204, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28184, + "id": 28199, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "1936:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -961,7 +1115,7 @@ "arguments": [ { "hexValue": "30", - "id": 28187, + "id": 28202, "isConstant": false, "isLValue": false, "isPure": true, @@ -983,7 +1137,7 @@ "typeString": "int_const 0" } ], - "id": 28186, + "id": 28201, "isConstant": false, "isLValue": false, "isPure": true, @@ -995,19 +1149,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28185, + "id": 28200, "name": "address", "nodeType": "ElementaryTypeName", "src": "1945:7:20", "typeDescriptions": {} } }, - "id": 28188, + "id": 28203, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1945:10:20", @@ -1023,14 +1178,14 @@ "typeString": "address" } }, - "id": 28190, + "id": 28205, "nodeType": "ExpressionStatement", "src": "1936:19:20" } ] }, "documentation": { - "id": 28171, + "id": 28186, "nodeType": "StructuredDocumentation", "src": "1472:337:20", "text": " @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions anymore. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby removing any functionality that is only available to the owner." @@ -1040,13 +1195,16 @@ "kind": "function", "modifiers": [ { - "id": 28174, + "id": 28189, "kind": "modifierInvocation", "modifierName": { - "id": 28173, + "id": 28188, "name": "onlyOwner", + "nameLocations": [ + "1859:9:20" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "1859:9:20" }, "nodeType": "ModifierInvocation", @@ -1056,30 +1214,32 @@ "name": "renounceOwnership", "nameLocation": "1824:17:20", "parameters": { - "id": 28172, + "id": 28187, "nodeType": "ParameterList", "parameters": [], "src": "1841:2:20" }, "returnParameters": { - "id": 28175, + "id": 28190, "nodeType": "ParameterList", "parameters": [], "src": "1869:0:20" }, - "scope": 28255, + "scope": 28270, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28220, + "id": 28235, "nodeType": "FunctionDefinition", "src": "2118:244:20", + "nodes": [], "body": { - "id": 28219, + "id": 28234, "nodeType": "Block", "src": "2188:174:20", + "nodes": [], "statements": [ { "expression": { @@ -1089,17 +1249,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28206, + "id": 28221, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28201, + "id": 28216, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28195, + "referencedDeclaration": 28210, "src": "2207:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1112,7 +1272,7 @@ "arguments": [ { "hexValue": "30", - "id": 28204, + "id": 28219, "isConstant": false, "isLValue": false, "isPure": true, @@ -1134,7 +1294,7 @@ "typeString": "int_const 0" } ], - "id": 28203, + "id": 28218, "isConstant": false, "isLValue": false, "isPure": true, @@ -1146,19 +1306,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28202, + "id": 28217, "name": "address", "nodeType": "ElementaryTypeName", "src": "2219:7:20", "typeDescriptions": {} } }, - "id": 28205, + "id": 28220, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2219:10:20", @@ -1176,7 +1337,7 @@ }, { "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", - "id": 28207, + "id": 28222, "isConstant": false, "isLValue": false, "isPure": true, @@ -1202,7 +1363,7 @@ "typeString": "literal_string \"Ownable: new owner is the zero address\"" } ], - "id": 28200, + "id": 28215, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1216,12 +1377,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 28208, + "id": 28223, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2199:73:20", @@ -1231,7 +1393,7 @@ "typeString": "tuple()" } }, - "id": 28209, + "id": 28224, "nodeType": "ExpressionStatement", "src": "2199:73:20" }, @@ -1239,11 +1401,11 @@ "eventCall": { "arguments": [ { - "id": 28211, + "id": 28226, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "2309:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1251,11 +1413,11 @@ } }, { - "id": 28212, + "id": 28227, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28195, + "referencedDeclaration": 28210, "src": "2317:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1274,23 +1436,24 @@ "typeString": "address" } ], - "id": 28210, + "id": 28225, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28125, + "referencedDeclaration": 28140, "src": "2288:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28213, + "id": 28228, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2288:38:20", @@ -1300,23 +1463,23 @@ "typeString": "tuple()" } }, - "id": 28214, + "id": 28229, "nodeType": "EmitStatement", "src": "2283:43:20" }, { "expression": { - "id": 28217, + "id": 28232, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28215, + "id": 28230, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "2337:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1326,11 +1489,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28216, + "id": 28231, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28195, + "referencedDeclaration": 28210, "src": "2346:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1343,14 +1506,14 @@ "typeString": "address" } }, - "id": 28218, + "id": 28233, "nodeType": "ExpressionStatement", "src": "2337:17:20" } ] }, "documentation": { - "id": 28193, + "id": 28208, "nodeType": "StructuredDocumentation", "src": "1971:141:20", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." @@ -1360,13 +1523,16 @@ "kind": "function", "modifiers": [ { - "id": 28198, + "id": 28213, "kind": "modifierInvocation", "modifierName": { - "id": 28197, + "id": 28212, "name": "onlyOwner", + "nameLocations": [ + "2178:9:20" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "2178:9:20" }, "nodeType": "ModifierInvocation", @@ -1376,17 +1542,17 @@ "name": "transferOwnership", "nameLocation": "2127:17:20", "parameters": { - "id": 28196, + "id": 28211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28195, + "id": 28210, "mutability": "mutable", "name": "newOwner", "nameLocation": "2153:8:20", "nodeType": "VariableDeclaration", - "scope": 28220, + "scope": 28235, "src": "2145:16:20", "stateVariable": false, "storageLocation": "default", @@ -1395,7 +1561,7 @@ "typeString": "address" }, "typeName": { - "id": 28194, + "id": 28209, "name": "address", "nodeType": "ElementaryTypeName", "src": "2145:7:20", @@ -1411,38 +1577,40 @@ "src": "2144:18:20" }, "returnParameters": { - "id": 28199, + "id": 28214, "nodeType": "ParameterList", "parameters": [], "src": "2188:0:20" }, - "scope": 28255, + "scope": 28270, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { - "id": 28254, + "id": 28269, "nodeType": "FunctionDefinition", "src": "2444:226:20", + "nodes": [], "body": { - "id": 28253, + "id": 28268, "nodeType": "Block", "src": "2497:173:20", + "nodes": [], "statements": [ { "expression": { - "id": 28229, + "id": 28244, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28227, + "id": 28242, "name": "_previousOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28117, + "referencedDeclaration": 28132, "src": "2508:14:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1452,11 +1620,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28228, + "id": 28243, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "2525:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1469,23 +1637,23 @@ "typeString": "address" } }, - "id": 28230, + "id": 28245, "nodeType": "ExpressionStatement", "src": "2508:23:20" }, { "expression": { - "id": 28236, + "id": 28251, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28231, + "id": 28246, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "2542:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1498,7 +1666,7 @@ "arguments": [ { "hexValue": "30", - "id": 28234, + "id": 28249, "isConstant": false, "isLValue": false, "isPure": true, @@ -1520,7 +1688,7 @@ "typeString": "int_const 0" } ], - "id": 28233, + "id": 28248, "isConstant": false, "isLValue": false, "isPure": true, @@ -1532,19 +1700,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28232, + "id": 28247, "name": "address", "nodeType": "ElementaryTypeName", "src": "2551:7:20", "typeDescriptions": {} } }, - "id": 28235, + "id": 28250, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2551:10:20", @@ -1560,23 +1729,23 @@ "typeString": "address" } }, - "id": 28237, + "id": 28252, "nodeType": "ExpressionStatement", "src": "2542:19:20" }, { "expression": { - "id": 28243, + "id": 28258, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28238, + "id": 28253, "name": "_lockTime", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28119, + "referencedDeclaration": 28134, "src": "2572:9:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1590,14 +1759,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28242, + "id": 28257, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 28239, + "id": 28254, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1608,11 +1777,12 @@ "typeString": "block" } }, - "id": 28240, + "id": 28255, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2590:9:20", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "2584:15:20", @@ -1624,11 +1794,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 28241, + "id": 28256, "name": "time", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28222, + "referencedDeclaration": 28237, "src": "2602:4:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1647,7 +1817,7 @@ "typeString": "uint256" } }, - "id": 28244, + "id": 28259, "nodeType": "ExpressionStatement", "src": "2572:34:20" }, @@ -1655,11 +1825,11 @@ "eventCall": { "arguments": [ { - "id": 28246, + "id": 28261, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, + "referencedDeclaration": 28130, "src": "2643:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1670,7 +1840,7 @@ "arguments": [ { "hexValue": "30", - "id": 28249, + "id": 28264, "isConstant": false, "isLValue": false, "isPure": true, @@ -1692,7 +1862,7 @@ "typeString": "int_const 0" } ], - "id": 28248, + "id": 28263, "isConstant": false, "isLValue": false, "isPure": true, @@ -1704,19 +1874,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 28247, + "id": 28262, "name": "address", "nodeType": "ElementaryTypeName", "src": "2651:7:20", "typeDescriptions": {} } }, - "id": 28250, + "id": 28265, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2651:10:20", @@ -1738,23 +1909,24 @@ "typeString": "address" } ], - "id": 28245, + "id": 28260, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28125, + "referencedDeclaration": 28140, "src": "2622:20:20", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 28251, + "id": 28266, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2622:40:20", @@ -1764,7 +1936,7 @@ "typeString": "tuple()" } }, - "id": 28252, + "id": 28267, "nodeType": "EmitStatement", "src": "2617:45:20" } @@ -1775,13 +1947,16 @@ "kind": "function", "modifiers": [ { - "id": 28225, + "id": 28240, "kind": "modifierInvocation", "modifierName": { - "id": 28224, + "id": 28239, "name": "onlyOwner", + "nameLocations": [ + "2487:9:20" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "2487:9:20" }, "nodeType": "ModifierInvocation", @@ -1791,17 +1966,17 @@ "name": "lock", "nameLocation": "2453:4:20", "parameters": { - "id": 28223, + "id": 28238, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28222, + "id": 28237, "mutability": "mutable", "name": "time", "nameLocation": "2466:4:20", "nodeType": "VariableDeclaration", - "scope": 28254, + "scope": 28269, "src": "2458:12:20", "stateVariable": false, "storageLocation": "default", @@ -1810,7 +1985,7 @@ "typeString": "uint256" }, "typeName": { - "id": 28221, + "id": 28236, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2458:7:20", @@ -1825,12 +2000,12 @@ "src": "2457:14:20" }, "returnParameters": { - "id": 28226, + "id": 28241, "nodeType": "ParameterList", "parameters": [], "src": "2497:0:20" }, - "scope": 28255, + "scope": 28270, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" @@ -1840,13 +2015,16 @@ "baseContracts": [ { "baseName": { - "id": 28112, + "id": 28127, "name": "Context", + "nameLocations": [ + "623:7:20" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28107, + "referencedDeclaration": 28122, "src": "623:7:20" }, - "id": 28113, + "id": 28128, "nodeType": "InheritanceSpecifier", "src": "623:7:20" } @@ -1855,19 +2033,19 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 28111, + "id": 28126, "nodeType": "StructuredDocumentation", "src": "87:505:20", "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, "linearizedBaseContracts": [ - 28255, - 28107 + 28270, + 28122 ], "name": "Ownable", "nameLocation": "612:7:20", - "scope": 28256, + "scope": 28271, "usedErrors": [] } ], diff --git a/out/SafeMath.sol/SafeMath.json b/out/SafeMath.sol/SafeMath.json index 653b054..5b5d4d4 100644 --- a/out/SafeMath.sol/SafeMath.json +++ b/out/SafeMath.sol/SafeMath.json @@ -1,31 +1,80 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220fe3253898dbf2eff9d8d80100d316dc3e709c5713a0d8b3d2d0b16b6dcfa074464736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d4f2e9bae731fe8a24f4195d21f96a61c68f522850660a672a211ba030174cbc64736f6c63430008110033", "sourceMap": "497:6409:27:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;497:6409:27;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220fe3253898dbf2eff9d8d80100d316dc3e709c5713a0d8b3d2d0b16b6dcfa074464736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d4f2e9bae731fe8a24f4195d21f96a61c68f522850660a672a211ba030174cbc64736f6c63430008110033", "sourceMap": "497:6409:27:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Wrappers over Solidity's arithmetic operations. NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler now has built in overflow checking.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/libraries/SafeMath.sol\":\"SafeMath\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/libraries/SafeMath.sol\":{\"keccak256\":\"0x9ea9ed8355940fc0c1cec0f9a75b1cb108d7092cbb888ab0a5974a3280022dfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://83e718c16af82ff4ff615290bcd767c2e39b744d394d50c535a786c7ae61bf83\",\"dweb:/ipfs/QmSu6XngtujDLWtwpxp9ev43d3yW7cDwYKBpJPeMvUvjQf\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/libraries/SafeMath.sol": "SafeMath" + }, + "libraries": {} + }, + "sources": { + "src/libraries/SafeMath.sol": { + "keccak256": "0x9ea9ed8355940fc0c1cec0f9a75b1cb108d7092cbb888ab0a5974a3280022dfc", + "urls": [ + "bzz-raw://83e718c16af82ff4ff615290bcd767c2e39b744d394d50c535a786c7ae61bf83", + "dweb:/ipfs/QmSu6XngtujDLWtwpxp9ev43d3yW7cDwYKBpJPeMvUvjQf" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/libraries/SafeMath.sol", - "id": 30186, + "id": 30201, "exportedSymbols": { "SafeMath": [ - 30185 + 30200 ] }, "nodeType": "SourceUnit", "src": "110:6796:27", "nodes": [ { - "id": 29875, + "id": 29890, "nodeType": "PragmaDirective", "src": "110:23:27", + "nodes": [], "literals": [ "solidity", "^", @@ -34,37 +83,39 @@ ] }, { - "id": 30185, + "id": 30200, "nodeType": "ContractDefinition", "src": "497:6409:27", "nodes": [ { - "id": 29908, + "id": 29923, "nodeType": "FunctionDefinition", "src": "662:222:27", + "nodes": [], "body": { - "id": 29907, + "id": 29922, "nodeType": "Block", "src": "738:146:27", + "nodes": [], "statements": [ { - "id": 29906, + "id": 29921, "nodeType": "UncheckedBlock", "src": "749:128:27", "statements": [ { "assignments": [ - 29889 + 29904 ], "declarations": [ { "constant": false, - "id": 29889, + "id": 29904, "mutability": "mutable", "name": "c", "nameLocation": "782:1:27", "nodeType": "VariableDeclaration", - "scope": 29906, + "scope": 29921, "src": "774:9:27", "stateVariable": false, "storageLocation": "default", @@ -73,7 +124,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29888, + "id": 29903, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "774:7:27", @@ -85,23 +136,23 @@ "visibility": "internal" } ], - "id": 29893, + "id": 29908, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29892, + "id": 29907, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29890, + "id": 29905, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29879, + "referencedDeclaration": 29894, "src": "786:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -111,11 +162,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 29891, + "id": 29906, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29881, + "referencedDeclaration": 29896, "src": "790:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -137,17 +188,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29896, + "id": 29911, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29894, + "id": 29909, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29889, + "referencedDeclaration": 29904, "src": "810:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -157,11 +208,11 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 29895, + "id": 29910, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29879, + "referencedDeclaration": 29894, "src": "814:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -174,7 +225,7 @@ "typeString": "bool" } }, - "id": 29901, + "id": 29916, "nodeType": "IfStatement", "src": "806:28:27", "trueBody": { @@ -182,7 +233,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 29897, + "id": 29912, "isConstant": false, "isLValue": false, "isPure": true, @@ -198,7 +249,7 @@ }, { "hexValue": "30", - "id": 29898, + "id": 29913, "isConstant": false, "isLValue": false, "isPure": true, @@ -213,7 +264,7 @@ "value": "0" } ], - "id": 29899, + "id": 29914, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -226,8 +277,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 29887, - "id": 29900, + "functionReturnParameters": 29902, + "id": 29915, "nodeType": "Return", "src": "817:17:27" } @@ -237,7 +288,7 @@ "components": [ { "hexValue": "74727565", - "id": 29902, + "id": 29917, "isConstant": false, "isLValue": false, "isPure": true, @@ -252,11 +303,11 @@ "value": "true" }, { - "id": 29903, + "id": 29918, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29889, + "referencedDeclaration": 29904, "src": "863:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -264,7 +315,7 @@ } } ], - "id": 29904, + "id": 29919, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -277,8 +328,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 29887, - "id": 29905, + "functionReturnParameters": 29902, + "id": 29920, "nodeType": "Return", "src": "849:16:27" } @@ -287,7 +338,7 @@ ] }, "documentation": { - "id": 29877, + "id": 29892, "nodeType": "StructuredDocumentation", "src": "521:135:27", "text": " @dev Returns the addition of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -298,17 +349,17 @@ "name": "tryAdd", "nameLocation": "671:6:27", "parameters": { - "id": 29882, + "id": 29897, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29879, + "id": 29894, "mutability": "mutable", "name": "a", "nameLocation": "686:1:27", "nodeType": "VariableDeclaration", - "scope": 29908, + "scope": 29923, "src": "678:9:27", "stateVariable": false, "storageLocation": "default", @@ -317,7 +368,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29878, + "id": 29893, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "678:7:27", @@ -330,12 +381,12 @@ }, { "constant": false, - "id": 29881, + "id": 29896, "mutability": "mutable", "name": "b", "nameLocation": "697:1:27", "nodeType": "VariableDeclaration", - "scope": 29908, + "scope": 29923, "src": "689:9:27", "stateVariable": false, "storageLocation": "default", @@ -344,7 +395,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29880, + "id": 29895, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "689:7:27", @@ -359,17 +410,17 @@ "src": "677:22:27" }, "returnParameters": { - "id": 29887, + "id": 29902, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29884, + "id": 29899, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29908, + "scope": 29923, "src": "723:4:27", "stateVariable": false, "storageLocation": "default", @@ -378,7 +429,7 @@ "typeString": "bool" }, "typeName": { - "id": 29883, + "id": 29898, "name": "bool", "nodeType": "ElementaryTypeName", "src": "723:4:27", @@ -391,12 +442,12 @@ }, { "constant": false, - "id": 29886, + "id": 29901, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29908, + "scope": 29923, "src": "729:7:27", "stateVariable": false, "storageLocation": "default", @@ -405,7 +456,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29885, + "id": 29900, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "729:7:27", @@ -419,22 +470,24 @@ ], "src": "722:15:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 29936, + "id": 29951, "nodeType": "FunctionDefinition", "src": "1036:194:27", + "nodes": [], "body": { - "id": 29935, + "id": 29950, "nodeType": "Block", "src": "1112:118:27", + "nodes": [], "statements": [ { - "id": 29934, + "id": 29949, "nodeType": "UncheckedBlock", "src": "1123:100:27", "statements": [ @@ -444,17 +497,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29922, + "id": 29937, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29920, + "id": 29935, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29913, + "referencedDeclaration": 29928, "src": "1152:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -464,11 +517,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 29921, + "id": 29936, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29911, + "referencedDeclaration": 29926, "src": "1156:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -481,7 +534,7 @@ "typeString": "bool" } }, - "id": 29927, + "id": 29942, "nodeType": "IfStatement", "src": "1148:28:27", "trueBody": { @@ -489,7 +542,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 29923, + "id": 29938, "isConstant": false, "isLValue": false, "isPure": true, @@ -505,7 +558,7 @@ }, { "hexValue": "30", - "id": 29924, + "id": 29939, "isConstant": false, "isLValue": false, "isPure": true, @@ -520,7 +573,7 @@ "value": "0" } ], - "id": 29925, + "id": 29940, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -533,8 +586,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 29919, - "id": 29926, + "functionReturnParameters": 29934, + "id": 29941, "nodeType": "Return", "src": "1159:17:27" } @@ -544,7 +597,7 @@ "components": [ { "hexValue": "74727565", - "id": 29928, + "id": 29943, "isConstant": false, "isLValue": false, "isPure": true, @@ -563,17 +616,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29931, + "id": 29946, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29929, + "id": 29944, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29911, + "referencedDeclaration": 29926, "src": "1205:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -583,11 +636,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 29930, + "id": 29945, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29913, + "referencedDeclaration": 29928, "src": "1209:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -601,7 +654,7 @@ } } ], - "id": 29932, + "id": 29947, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -614,8 +667,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 29919, - "id": 29933, + "functionReturnParameters": 29934, + "id": 29948, "nodeType": "Return", "src": "1191:20:27" } @@ -624,7 +677,7 @@ ] }, "documentation": { - "id": 29909, + "id": 29924, "nodeType": "StructuredDocumentation", "src": "892:138:27", "text": " @dev Returns the subtraction of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -635,17 +688,17 @@ "name": "trySub", "nameLocation": "1045:6:27", "parameters": { - "id": 29914, + "id": 29929, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29911, + "id": 29926, "mutability": "mutable", "name": "a", "nameLocation": "1060:1:27", "nodeType": "VariableDeclaration", - "scope": 29936, + "scope": 29951, "src": "1052:9:27", "stateVariable": false, "storageLocation": "default", @@ -654,7 +707,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29910, + "id": 29925, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1052:7:27", @@ -667,12 +720,12 @@ }, { "constant": false, - "id": 29913, + "id": 29928, "mutability": "mutable", "name": "b", "nameLocation": "1071:1:27", "nodeType": "VariableDeclaration", - "scope": 29936, + "scope": 29951, "src": "1063:9:27", "stateVariable": false, "storageLocation": "default", @@ -681,7 +734,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29912, + "id": 29927, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1063:7:27", @@ -696,17 +749,17 @@ "src": "1051:22:27" }, "returnParameters": { - "id": 29919, + "id": 29934, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29916, + "id": 29931, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29936, + "scope": 29951, "src": "1097:4:27", "stateVariable": false, "storageLocation": "default", @@ -715,7 +768,7 @@ "typeString": "bool" }, "typeName": { - "id": 29915, + "id": 29930, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1097:4:27", @@ -728,12 +781,12 @@ }, { "constant": false, - "id": 29918, + "id": 29933, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29936, + "scope": 29951, "src": "1103:7:27", "stateVariable": false, "storageLocation": "default", @@ -742,7 +795,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29917, + "id": 29932, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1103:7:27", @@ -756,22 +809,24 @@ ], "src": "1096:15:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 29978, + "id": 29993, "nodeType": "FunctionDefinition", "src": "1385:503:27", + "nodes": [], "body": { - "id": 29977, + "id": 29992, "nodeType": "Block", "src": "1461:427:27", + "nodes": [], "statements": [ { - "id": 29976, + "id": 29991, "nodeType": "UncheckedBlock", "src": "1472:409:27", "statements": [ @@ -781,17 +836,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29950, + "id": 29965, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29948, + "id": 29963, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29939, + "referencedDeclaration": 29954, "src": "1734:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -802,7 +857,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 29949, + "id": 29964, "isConstant": false, "isLValue": false, "isPure": true, @@ -822,7 +877,7 @@ "typeString": "bool" } }, - "id": 29955, + "id": 29970, "nodeType": "IfStatement", "src": "1730:28:27", "trueBody": { @@ -830,7 +885,7 @@ "components": [ { "hexValue": "74727565", - "id": 29951, + "id": 29966, "isConstant": false, "isLValue": false, "isPure": true, @@ -846,7 +901,7 @@ }, { "hexValue": "30", - "id": 29952, + "id": 29967, "isConstant": false, "isLValue": false, "isPure": true, @@ -861,7 +916,7 @@ "value": "0" } ], - "id": 29953, + "id": 29968, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -874,25 +929,25 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 29947, - "id": 29954, + "functionReturnParameters": 29962, + "id": 29969, "nodeType": "Return", "src": "1742:16:27" } }, { "assignments": [ - 29957 + 29972 ], "declarations": [ { "constant": false, - "id": 29957, + "id": 29972, "mutability": "mutable", "name": "c", "nameLocation": "1781:1:27", "nodeType": "VariableDeclaration", - "scope": 29976, + "scope": 29991, "src": "1773:9:27", "stateVariable": false, "storageLocation": "default", @@ -901,7 +956,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29956, + "id": 29971, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1773:7:27", @@ -913,23 +968,23 @@ "visibility": "internal" } ], - "id": 29961, + "id": 29976, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29960, + "id": 29975, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29958, + "id": 29973, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29939, + "referencedDeclaration": 29954, "src": "1785:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -939,11 +994,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 29959, + "id": 29974, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29941, + "referencedDeclaration": 29956, "src": "1789:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -965,7 +1020,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29966, + "id": 29981, "isConstant": false, "isLValue": false, "isPure": false, @@ -975,17 +1030,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29964, + "id": 29979, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29962, + "id": 29977, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29957, + "referencedDeclaration": 29972, "src": "1809:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -995,11 +1050,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 29963, + "id": 29978, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29939, + "referencedDeclaration": 29954, "src": "1813:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1015,11 +1070,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 29965, + "id": 29980, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29941, + "referencedDeclaration": 29956, "src": "1818:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1032,7 +1087,7 @@ "typeString": "bool" } }, - "id": 29971, + "id": 29986, "nodeType": "IfStatement", "src": "1805:33:27", "trueBody": { @@ -1040,7 +1095,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 29967, + "id": 29982, "isConstant": false, "isLValue": false, "isPure": true, @@ -1056,7 +1111,7 @@ }, { "hexValue": "30", - "id": 29968, + "id": 29983, "isConstant": false, "isLValue": false, "isPure": true, @@ -1071,7 +1126,7 @@ "value": "0" } ], - "id": 29969, + "id": 29984, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1084,8 +1139,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 29947, - "id": 29970, + "functionReturnParameters": 29962, + "id": 29985, "nodeType": "Return", "src": "1821:17:27" } @@ -1095,7 +1150,7 @@ "components": [ { "hexValue": "74727565", - "id": 29972, + "id": 29987, "isConstant": false, "isLValue": false, "isPure": true, @@ -1110,11 +1165,11 @@ "value": "true" }, { - "id": 29973, + "id": 29988, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29957, + "referencedDeclaration": 29972, "src": "1867:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1122,7 +1177,7 @@ } } ], - "id": 29974, + "id": 29989, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1135,8 +1190,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 29947, - "id": 29975, + "functionReturnParameters": 29962, + "id": 29990, "nodeType": "Return", "src": "1853:16:27" } @@ -1145,7 +1200,7 @@ ] }, "documentation": { - "id": 29937, + "id": 29952, "nodeType": "StructuredDocumentation", "src": "1238:141:27", "text": " @dev Returns the multiplication of two unsigned integers, with an overflow flag.\n _Available since v3.4._" @@ -1156,17 +1211,17 @@ "name": "tryMul", "nameLocation": "1394:6:27", "parameters": { - "id": 29942, + "id": 29957, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29939, + "id": 29954, "mutability": "mutable", "name": "a", "nameLocation": "1409:1:27", "nodeType": "VariableDeclaration", - "scope": 29978, + "scope": 29993, "src": "1401:9:27", "stateVariable": false, "storageLocation": "default", @@ -1175,7 +1230,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29938, + "id": 29953, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1401:7:27", @@ -1188,12 +1243,12 @@ }, { "constant": false, - "id": 29941, + "id": 29956, "mutability": "mutable", "name": "b", "nameLocation": "1420:1:27", "nodeType": "VariableDeclaration", - "scope": 29978, + "scope": 29993, "src": "1412:9:27", "stateVariable": false, "storageLocation": "default", @@ -1202,7 +1257,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29940, + "id": 29955, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1412:7:27", @@ -1217,17 +1272,17 @@ "src": "1400:22:27" }, "returnParameters": { - "id": 29947, + "id": 29962, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29944, + "id": 29959, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29978, + "scope": 29993, "src": "1446:4:27", "stateVariable": false, "storageLocation": "default", @@ -1236,7 +1291,7 @@ "typeString": "bool" }, "typeName": { - "id": 29943, + "id": 29958, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1446:4:27", @@ -1249,12 +1304,12 @@ }, { "constant": false, - "id": 29946, + "id": 29961, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 29978, + "scope": 29993, "src": "1452:7:27", "stateVariable": false, "storageLocation": "default", @@ -1263,7 +1318,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29945, + "id": 29960, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1452:7:27", @@ -1277,22 +1332,24 @@ ], "src": "1445:15:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30006, + "id": 30021, "nodeType": "FunctionDefinition", "src": "2044:195:27", + "nodes": [], "body": { - "id": 30005, + "id": 30020, "nodeType": "Block", "src": "2120:119:27", + "nodes": [], "statements": [ { - "id": 30004, + "id": 30019, "nodeType": "UncheckedBlock", "src": "2131:101:27", "statements": [ @@ -1302,17 +1359,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 29992, + "id": 30007, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29990, + "id": 30005, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29983, + "referencedDeclaration": 29998, "src": "2160:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1323,7 +1380,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 29991, + "id": 30006, "isConstant": false, "isLValue": false, "isPure": true, @@ -1343,7 +1400,7 @@ "typeString": "bool" } }, - "id": 29997, + "id": 30012, "nodeType": "IfStatement", "src": "2156:29:27", "trueBody": { @@ -1351,7 +1408,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 29993, + "id": 30008, "isConstant": false, "isLValue": false, "isPure": true, @@ -1367,7 +1424,7 @@ }, { "hexValue": "30", - "id": 29994, + "id": 30009, "isConstant": false, "isLValue": false, "isPure": true, @@ -1382,7 +1439,7 @@ "value": "0" } ], - "id": 29995, + "id": 30010, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1395,8 +1452,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 29989, - "id": 29996, + "functionReturnParameters": 30004, + "id": 30011, "nodeType": "Return", "src": "2168:17:27" } @@ -1406,7 +1463,7 @@ "components": [ { "hexValue": "74727565", - "id": 29998, + "id": 30013, "isConstant": false, "isLValue": false, "isPure": true, @@ -1425,17 +1482,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30001, + "id": 30016, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 29999, + "id": 30014, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29981, + "referencedDeclaration": 29996, "src": "2214:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1445,11 +1502,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 30000, + "id": 30015, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29983, + "referencedDeclaration": 29998, "src": "2218:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1463,7 +1520,7 @@ } } ], - "id": 30002, + "id": 30017, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1476,8 +1533,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 29989, - "id": 30003, + "functionReturnParameters": 30004, + "id": 30018, "nodeType": "Return", "src": "2200:20:27" } @@ -1486,7 +1543,7 @@ ] }, "documentation": { - "id": 29979, + "id": 29994, "nodeType": "StructuredDocumentation", "src": "1896:142:27", "text": " @dev Returns the division of two unsigned integers, with a division by zero flag.\n _Available since v3.4._" @@ -1497,17 +1554,17 @@ "name": "tryDiv", "nameLocation": "2053:6:27", "parameters": { - "id": 29984, + "id": 29999, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29981, + "id": 29996, "mutability": "mutable", "name": "a", "nameLocation": "2068:1:27", "nodeType": "VariableDeclaration", - "scope": 30006, + "scope": 30021, "src": "2060:9:27", "stateVariable": false, "storageLocation": "default", @@ -1516,7 +1573,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29980, + "id": 29995, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2060:7:27", @@ -1529,12 +1586,12 @@ }, { "constant": false, - "id": 29983, + "id": 29998, "mutability": "mutable", "name": "b", "nameLocation": "2079:1:27", "nodeType": "VariableDeclaration", - "scope": 30006, + "scope": 30021, "src": "2071:9:27", "stateVariable": false, "storageLocation": "default", @@ -1543,7 +1600,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29982, + "id": 29997, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2071:7:27", @@ -1558,17 +1615,17 @@ "src": "2059:22:27" }, "returnParameters": { - "id": 29989, + "id": 30004, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 29986, + "id": 30001, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30006, + "scope": 30021, "src": "2105:4:27", "stateVariable": false, "storageLocation": "default", @@ -1577,7 +1634,7 @@ "typeString": "bool" }, "typeName": { - "id": 29985, + "id": 30000, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2105:4:27", @@ -1590,12 +1647,12 @@ }, { "constant": false, - "id": 29988, + "id": 30003, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30006, + "scope": 30021, "src": "2111:7:27", "stateVariable": false, "storageLocation": "default", @@ -1604,7 +1661,7 @@ "typeString": "uint256" }, "typeName": { - "id": 29987, + "id": 30002, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2111:7:27", @@ -1618,22 +1675,24 @@ ], "src": "2104:15:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30034, + "id": 30049, "nodeType": "FunctionDefinition", "src": "2405:195:27", + "nodes": [], "body": { - "id": 30033, + "id": 30048, "nodeType": "Block", "src": "2481:119:27", + "nodes": [], "statements": [ { - "id": 30032, + "id": 30047, "nodeType": "UncheckedBlock", "src": "2492:101:27", "statements": [ @@ -1643,17 +1702,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30020, + "id": 30035, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30018, + "id": 30033, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30011, + "referencedDeclaration": 30026, "src": "2521:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1664,7 +1723,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 30019, + "id": 30034, "isConstant": false, "isLValue": false, "isPure": true, @@ -1684,7 +1743,7 @@ "typeString": "bool" } }, - "id": 30025, + "id": 30040, "nodeType": "IfStatement", "src": "2517:29:27", "trueBody": { @@ -1692,7 +1751,7 @@ "components": [ { "hexValue": "66616c7365", - "id": 30021, + "id": 30036, "isConstant": false, "isLValue": false, "isPure": true, @@ -1708,7 +1767,7 @@ }, { "hexValue": "30", - "id": 30022, + "id": 30037, "isConstant": false, "isLValue": false, "isPure": true, @@ -1723,7 +1782,7 @@ "value": "0" } ], - "id": 30023, + "id": 30038, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1736,8 +1795,8 @@ "typeString": "tuple(bool,int_const 0)" } }, - "functionReturnParameters": 30017, - "id": 30024, + "functionReturnParameters": 30032, + "id": 30039, "nodeType": "Return", "src": "2529:17:27" } @@ -1747,7 +1806,7 @@ "components": [ { "hexValue": "74727565", - "id": 30026, + "id": 30041, "isConstant": false, "isLValue": false, "isPure": true, @@ -1766,17 +1825,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30029, + "id": 30044, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30027, + "id": 30042, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30009, + "referencedDeclaration": 30024, "src": "2575:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1786,11 +1845,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 30028, + "id": 30043, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30011, + "referencedDeclaration": 30026, "src": "2579:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1804,7 +1863,7 @@ } } ], - "id": 30030, + "id": 30045, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1817,8 +1876,8 @@ "typeString": "tuple(bool,uint256)" } }, - "functionReturnParameters": 30017, - "id": 30031, + "functionReturnParameters": 30032, + "id": 30046, "nodeType": "Return", "src": "2561:20:27" } @@ -1827,7 +1886,7 @@ ] }, "documentation": { - "id": 30007, + "id": 30022, "nodeType": "StructuredDocumentation", "src": "2247:152:27", "text": " @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.\n _Available since v3.4._" @@ -1838,17 +1897,17 @@ "name": "tryMod", "nameLocation": "2414:6:27", "parameters": { - "id": 30012, + "id": 30027, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30009, + "id": 30024, "mutability": "mutable", "name": "a", "nameLocation": "2429:1:27", "nodeType": "VariableDeclaration", - "scope": 30034, + "scope": 30049, "src": "2421:9:27", "stateVariable": false, "storageLocation": "default", @@ -1857,7 +1916,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30008, + "id": 30023, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2421:7:27", @@ -1870,12 +1929,12 @@ }, { "constant": false, - "id": 30011, + "id": 30026, "mutability": "mutable", "name": "b", "nameLocation": "2440:1:27", "nodeType": "VariableDeclaration", - "scope": 30034, + "scope": 30049, "src": "2432:9:27", "stateVariable": false, "storageLocation": "default", @@ -1884,7 +1943,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30010, + "id": 30025, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2432:7:27", @@ -1899,17 +1958,17 @@ "src": "2420:22:27" }, "returnParameters": { - "id": 30017, + "id": 30032, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30014, + "id": 30029, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30034, + "scope": 30049, "src": "2466:4:27", "stateVariable": false, "storageLocation": "default", @@ -1918,7 +1977,7 @@ "typeString": "bool" }, "typeName": { - "id": 30013, + "id": 30028, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2466:4:27", @@ -1931,12 +1990,12 @@ }, { "constant": false, - "id": 30016, + "id": 30031, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30034, + "scope": 30049, "src": "2472:7:27", "stateVariable": false, "storageLocation": "default", @@ -1945,7 +2004,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30015, + "id": 30030, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2472:7:27", @@ -1959,19 +2018,21 @@ ], "src": "2465:15:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30049, + "id": 30064, "nodeType": "FunctionDefinition", "src": "2847:98:27", + "nodes": [], "body": { - "id": 30048, + "id": 30063, "nodeType": "Block", "src": "2914:31:27", + "nodes": [], "statements": [ { "expression": { @@ -1979,17 +2040,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30046, + "id": 30061, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30044, + "id": 30059, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30037, + "referencedDeclaration": 30052, "src": "2932:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1999,11 +2060,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 30045, + "id": 30060, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30039, + "referencedDeclaration": 30054, "src": "2936:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2016,15 +2077,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30043, - "id": 30047, + "functionReturnParameters": 30058, + "id": 30062, "nodeType": "Return", "src": "2925:12:27" } ] }, "documentation": { - "id": 30035, + "id": 30050, "nodeType": "StructuredDocumentation", "src": "2608:233:27", "text": " @dev Returns the addition of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `+` operator.\n Requirements:\n - Addition cannot overflow." @@ -2035,17 +2096,17 @@ "name": "add", "nameLocation": "2856:3:27", "parameters": { - "id": 30040, + "id": 30055, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30037, + "id": 30052, "mutability": "mutable", "name": "a", "nameLocation": "2868:1:27", "nodeType": "VariableDeclaration", - "scope": 30049, + "scope": 30064, "src": "2860:9:27", "stateVariable": false, "storageLocation": "default", @@ -2054,7 +2115,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30036, + "id": 30051, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2860:7:27", @@ -2067,12 +2128,12 @@ }, { "constant": false, - "id": 30039, + "id": 30054, "mutability": "mutable", "name": "b", "nameLocation": "2879:1:27", "nodeType": "VariableDeclaration", - "scope": 30049, + "scope": 30064, "src": "2871:9:27", "stateVariable": false, "storageLocation": "default", @@ -2081,7 +2142,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30038, + "id": 30053, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2871:7:27", @@ -2096,17 +2157,17 @@ "src": "2859:22:27" }, "returnParameters": { - "id": 30043, + "id": 30058, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30042, + "id": 30057, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30049, + "scope": 30064, "src": "2905:7:27", "stateVariable": false, "storageLocation": "default", @@ -2115,7 +2176,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30041, + "id": 30056, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2905:7:27", @@ -2129,19 +2190,21 @@ ], "src": "2904:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30064, + "id": 30079, "nodeType": "FunctionDefinition", "src": "3228:98:27", + "nodes": [], "body": { - "id": 30063, + "id": 30078, "nodeType": "Block", "src": "3295:31:27", + "nodes": [], "statements": [ { "expression": { @@ -2149,17 +2212,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30061, + "id": 30076, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30059, + "id": 30074, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30052, + "referencedDeclaration": 30067, "src": "3313:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2169,11 +2232,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30060, + "id": 30075, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30054, + "referencedDeclaration": 30069, "src": "3317:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2186,15 +2249,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30058, - "id": 30062, + "functionReturnParameters": 30073, + "id": 30077, "nodeType": "Return", "src": "3306:12:27" } ] }, "documentation": { - "id": 30050, + "id": 30065, "nodeType": "StructuredDocumentation", "src": "2953:269:27", "text": " @dev Returns the subtraction of two unsigned integers, reverting on\n overflow (when the result is negative).\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." @@ -2205,17 +2268,17 @@ "name": "sub", "nameLocation": "3237:3:27", "parameters": { - "id": 30055, + "id": 30070, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30052, + "id": 30067, "mutability": "mutable", "name": "a", "nameLocation": "3249:1:27", "nodeType": "VariableDeclaration", - "scope": 30064, + "scope": 30079, "src": "3241:9:27", "stateVariable": false, "storageLocation": "default", @@ -2224,7 +2287,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30051, + "id": 30066, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3241:7:27", @@ -2237,12 +2300,12 @@ }, { "constant": false, - "id": 30054, + "id": 30069, "mutability": "mutable", "name": "b", "nameLocation": "3260:1:27", "nodeType": "VariableDeclaration", - "scope": 30064, + "scope": 30079, "src": "3252:9:27", "stateVariable": false, "storageLocation": "default", @@ -2251,7 +2314,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30053, + "id": 30068, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3252:7:27", @@ -2266,17 +2329,17 @@ "src": "3240:22:27" }, "returnParameters": { - "id": 30058, + "id": 30073, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30057, + "id": 30072, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30064, + "scope": 30079, "src": "3286:7:27", "stateVariable": false, "storageLocation": "default", @@ -2285,7 +2348,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30056, + "id": 30071, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3286:7:27", @@ -2299,19 +2362,21 @@ ], "src": "3285:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30079, + "id": 30094, "nodeType": "FunctionDefinition", "src": "3585:98:27", + "nodes": [], "body": { - "id": 30078, + "id": 30093, "nodeType": "Block", "src": "3652:31:27", + "nodes": [], "statements": [ { "expression": { @@ -2319,17 +2384,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30076, + "id": 30091, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30074, + "id": 30089, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30067, + "referencedDeclaration": 30082, "src": "3670:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2339,11 +2404,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30075, + "id": 30090, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30069, + "referencedDeclaration": 30084, "src": "3674:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2356,15 +2421,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30073, - "id": 30077, + "functionReturnParameters": 30088, + "id": 30092, "nodeType": "Return", "src": "3663:12:27" } ] }, "documentation": { - "id": 30065, + "id": 30080, "nodeType": "StructuredDocumentation", "src": "3334:245:27", "text": " @dev Returns the multiplication of two unsigned integers, reverting on\n overflow.\n Counterpart to Solidity's `*` operator.\n Requirements:\n - Multiplication cannot overflow." @@ -2375,17 +2440,17 @@ "name": "mul", "nameLocation": "3594:3:27", "parameters": { - "id": 30070, + "id": 30085, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30067, + "id": 30082, "mutability": "mutable", "name": "a", "nameLocation": "3606:1:27", "nodeType": "VariableDeclaration", - "scope": 30079, + "scope": 30094, "src": "3598:9:27", "stateVariable": false, "storageLocation": "default", @@ -2394,7 +2459,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30066, + "id": 30081, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3598:7:27", @@ -2407,12 +2472,12 @@ }, { "constant": false, - "id": 30069, + "id": 30084, "mutability": "mutable", "name": "b", "nameLocation": "3617:1:27", "nodeType": "VariableDeclaration", - "scope": 30079, + "scope": 30094, "src": "3609:9:27", "stateVariable": false, "storageLocation": "default", @@ -2421,7 +2486,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30068, + "id": 30083, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3609:7:27", @@ -2436,17 +2501,17 @@ "src": "3597:22:27" }, "returnParameters": { - "id": 30073, + "id": 30088, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30072, + "id": 30087, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30079, + "scope": 30094, "src": "3643:7:27", "stateVariable": false, "storageLocation": "default", @@ -2455,7 +2520,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30071, + "id": 30086, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3643:7:27", @@ -2469,19 +2534,21 @@ ], "src": "3642:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30094, + "id": 30109, "nodeType": "FunctionDefinition", "src": "3984:98:27", + "nodes": [], "body": { - "id": 30093, + "id": 30108, "nodeType": "Block", "src": "4051:31:27", + "nodes": [], "statements": [ { "expression": { @@ -2489,17 +2556,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30091, + "id": 30106, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30089, + "id": 30104, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30082, + "referencedDeclaration": 30097, "src": "4069:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2509,11 +2576,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 30090, + "id": 30105, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30084, + "referencedDeclaration": 30099, "src": "4073:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2526,15 +2593,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30088, - "id": 30092, + "functionReturnParameters": 30103, + "id": 30107, "nodeType": "Return", "src": "4062:12:27" } ] }, "documentation": { - "id": 30080, + "id": 30095, "nodeType": "StructuredDocumentation", "src": "3691:287:27", "text": " @dev Returns the integer division of two unsigned integers, reverting on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator.\n Requirements:\n - The divisor cannot be zero." @@ -2545,17 +2612,17 @@ "name": "div", "nameLocation": "3993:3:27", "parameters": { - "id": 30085, + "id": 30100, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30082, + "id": 30097, "mutability": "mutable", "name": "a", "nameLocation": "4005:1:27", "nodeType": "VariableDeclaration", - "scope": 30094, + "scope": 30109, "src": "3997:9:27", "stateVariable": false, "storageLocation": "default", @@ -2564,7 +2631,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30081, + "id": 30096, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3997:7:27", @@ -2577,12 +2644,12 @@ }, { "constant": false, - "id": 30084, + "id": 30099, "mutability": "mutable", "name": "b", "nameLocation": "4016:1:27", "nodeType": "VariableDeclaration", - "scope": 30094, + "scope": 30109, "src": "4008:9:27", "stateVariable": false, "storageLocation": "default", @@ -2591,7 +2658,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30083, + "id": 30098, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4008:7:27", @@ -2606,17 +2673,17 @@ "src": "3996:22:27" }, "returnParameters": { - "id": 30088, + "id": 30103, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30087, + "id": 30102, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30094, + "scope": 30109, "src": "4042:7:27", "stateVariable": false, "storageLocation": "default", @@ -2625,7 +2692,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30086, + "id": 30101, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4042:7:27", @@ -2639,19 +2706,21 @@ ], "src": "4041:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30109, + "id": 30124, "nodeType": "FunctionDefinition", "src": "4549:98:27", + "nodes": [], "body": { - "id": 30108, + "id": 30123, "nodeType": "Block", "src": "4616:31:27", + "nodes": [], "statements": [ { "expression": { @@ -2659,17 +2728,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30106, + "id": 30121, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30104, + "id": 30119, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30097, + "referencedDeclaration": 30112, "src": "4634:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2679,11 +2748,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 30105, + "id": 30120, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30099, + "referencedDeclaration": 30114, "src": "4638:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2696,15 +2765,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30103, - "id": 30107, + "functionReturnParameters": 30118, + "id": 30122, "nodeType": "Return", "src": "4627:12:27" } ] }, "documentation": { - "id": 30095, + "id": 30110, "nodeType": "StructuredDocumentation", "src": "4090:453:27", "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting when dividing by zero.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -2715,17 +2784,17 @@ "name": "mod", "nameLocation": "4558:3:27", "parameters": { - "id": 30100, + "id": 30115, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30097, + "id": 30112, "mutability": "mutable", "name": "a", "nameLocation": "4570:1:27", "nodeType": "VariableDeclaration", - "scope": 30109, + "scope": 30124, "src": "4562:9:27", "stateVariable": false, "storageLocation": "default", @@ -2734,7 +2803,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30096, + "id": 30111, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4562:7:27", @@ -2747,12 +2816,12 @@ }, { "constant": false, - "id": 30099, + "id": 30114, "mutability": "mutable", "name": "b", "nameLocation": "4581:1:27", "nodeType": "VariableDeclaration", - "scope": 30109, + "scope": 30124, "src": "4573:9:27", "stateVariable": false, "storageLocation": "default", @@ -2761,7 +2830,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30098, + "id": 30113, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4573:7:27", @@ -2776,17 +2845,17 @@ "src": "4561:22:27" }, "returnParameters": { - "id": 30103, + "id": 30118, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30102, + "id": 30117, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30109, + "scope": 30124, "src": "4607:7:27", "stateVariable": false, "storageLocation": "default", @@ -2795,7 +2864,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30101, + "id": 30116, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4607:7:27", @@ -2809,22 +2878,24 @@ ], "src": "4606:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30134, + "id": 30149, "nodeType": "FunctionDefinition", "src": "5126:206:27", + "nodes": [], "body": { - "id": 30133, + "id": 30148, "nodeType": "Block", "src": "5221:111:27", + "nodes": [], "statements": [ { - "id": 30132, + "id": 30147, "nodeType": "UncheckedBlock", "src": "5232:93:27", "statements": [ @@ -2836,17 +2907,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30124, + "id": 30139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30122, + "id": 30137, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30114, + "referencedDeclaration": 30129, "src": "5265:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2856,11 +2927,11 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 30123, + "id": 30138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30112, + "referencedDeclaration": 30127, "src": "5270:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2874,11 +2945,11 @@ } }, { - "id": 30125, + "id": 30140, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30116, + "referencedDeclaration": 30131, "src": "5273:12:27", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2897,7 +2968,7 @@ "typeString": "string memory" } ], - "id": 30121, + "id": 30136, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2911,12 +2982,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 30126, + "id": 30141, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5257:29:27", @@ -2926,7 +2998,7 @@ "typeString": "tuple()" } }, - "id": 30127, + "id": 30142, "nodeType": "ExpressionStatement", "src": "5257:29:27" }, @@ -2936,17 +3008,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30130, + "id": 30145, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30128, + "id": 30143, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30112, + "referencedDeclaration": 30127, "src": "5308:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2956,11 +3028,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30129, + "id": 30144, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30114, + "referencedDeclaration": 30129, "src": "5312:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2973,8 +3045,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30120, - "id": 30131, + "functionReturnParameters": 30135, + "id": 30146, "nodeType": "Return", "src": "5301:12:27" } @@ -2983,7 +3055,7 @@ ] }, "documentation": { - "id": 30110, + "id": 30125, "nodeType": "StructuredDocumentation", "src": "4655:465:27", "text": " @dev Returns the subtraction of two unsigned integers, reverting with custom message on\n overflow (when the result is negative).\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {trySub}.\n Counterpart to Solidity's `-` operator.\n Requirements:\n - Subtraction cannot overflow." @@ -2994,17 +3066,17 @@ "name": "sub", "nameLocation": "5135:3:27", "parameters": { - "id": 30117, + "id": 30132, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30112, + "id": 30127, "mutability": "mutable", "name": "a", "nameLocation": "5147:1:27", "nodeType": "VariableDeclaration", - "scope": 30134, + "scope": 30149, "src": "5139:9:27", "stateVariable": false, "storageLocation": "default", @@ -3013,7 +3085,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30111, + "id": 30126, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5139:7:27", @@ -3026,12 +3098,12 @@ }, { "constant": false, - "id": 30114, + "id": 30129, "mutability": "mutable", "name": "b", "nameLocation": "5158:1:27", "nodeType": "VariableDeclaration", - "scope": 30134, + "scope": 30149, "src": "5150:9:27", "stateVariable": false, "storageLocation": "default", @@ -3040,7 +3112,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30113, + "id": 30128, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5150:7:27", @@ -3053,12 +3125,12 @@ }, { "constant": false, - "id": 30116, + "id": 30131, "mutability": "mutable", "name": "errorMessage", "nameLocation": "5175:12:27", "nodeType": "VariableDeclaration", - "scope": 30134, + "scope": 30149, "src": "5161:26:27", "stateVariable": false, "storageLocation": "memory", @@ -3067,7 +3139,7 @@ "typeString": "string" }, "typeName": { - "id": 30115, + "id": 30130, "name": "string", "nodeType": "ElementaryTypeName", "src": "5161:6:27", @@ -3082,17 +3154,17 @@ "src": "5138:50:27" }, "returnParameters": { - "id": 30120, + "id": 30135, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30119, + "id": 30134, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30134, + "scope": 30149, "src": "5212:7:27", "stateVariable": false, "storageLocation": "default", @@ -3101,7 +3173,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30118, + "id": 30133, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5212:7:27", @@ -3115,22 +3187,24 @@ ], "src": "5211:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30159, + "id": 30174, "nodeType": "FunctionDefinition", "src": "5830:205:27", + "nodes": [], "body": { - "id": 30158, + "id": 30173, "nodeType": "Block", "src": "5925:110:27", + "nodes": [], "statements": [ { - "id": 30157, + "id": 30172, "nodeType": "UncheckedBlock", "src": "5936:92:27", "statements": [ @@ -3142,17 +3216,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30149, + "id": 30164, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30147, + "id": 30162, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30139, + "referencedDeclaration": 30154, "src": "5969:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3163,7 +3237,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 30148, + "id": 30163, "isConstant": false, "isLValue": false, "isPure": true, @@ -3184,11 +3258,11 @@ } }, { - "id": 30150, + "id": 30165, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30141, + "referencedDeclaration": 30156, "src": "5976:12:27", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3207,7 +3281,7 @@ "typeString": "string memory" } ], - "id": 30146, + "id": 30161, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3221,12 +3295,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 30151, + "id": 30166, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5961:28:27", @@ -3236,7 +3311,7 @@ "typeString": "tuple()" } }, - "id": 30152, + "id": 30167, "nodeType": "ExpressionStatement", "src": "5961:28:27" }, @@ -3246,17 +3321,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30155, + "id": 30170, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30153, + "id": 30168, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30137, + "referencedDeclaration": 30152, "src": "6011:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3266,11 +3341,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 30154, + "id": 30169, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30139, + "referencedDeclaration": 30154, "src": "6015:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3283,8 +3358,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30145, - "id": 30156, + "functionReturnParameters": 30160, + "id": 30171, "nodeType": "Return", "src": "6004:12:27" } @@ -3293,7 +3368,7 @@ ] }, "documentation": { - "id": 30135, + "id": 30150, "nodeType": "StructuredDocumentation", "src": "5340:484:27", "text": " @dev Returns the integer division of two unsigned integers, reverting with custom message on\n division by zero. The result is rounded towards zero.\n Counterpart to Solidity's `/` operator. Note: this function uses a\n `revert` opcode (which leaves remaining gas untouched) while Solidity\n uses an invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -3304,17 +3379,17 @@ "name": "div", "nameLocation": "5839:3:27", "parameters": { - "id": 30142, + "id": 30157, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30137, + "id": 30152, "mutability": "mutable", "name": "a", "nameLocation": "5851:1:27", "nodeType": "VariableDeclaration", - "scope": 30159, + "scope": 30174, "src": "5843:9:27", "stateVariable": false, "storageLocation": "default", @@ -3323,7 +3398,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30136, + "id": 30151, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5843:7:27", @@ -3336,12 +3411,12 @@ }, { "constant": false, - "id": 30139, + "id": 30154, "mutability": "mutable", "name": "b", "nameLocation": "5862:1:27", "nodeType": "VariableDeclaration", - "scope": 30159, + "scope": 30174, "src": "5854:9:27", "stateVariable": false, "storageLocation": "default", @@ -3350,7 +3425,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30138, + "id": 30153, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5854:7:27", @@ -3363,12 +3438,12 @@ }, { "constant": false, - "id": 30141, + "id": 30156, "mutability": "mutable", "name": "errorMessage", "nameLocation": "5879:12:27", "nodeType": "VariableDeclaration", - "scope": 30159, + "scope": 30174, "src": "5865:26:27", "stateVariable": false, "storageLocation": "memory", @@ -3377,7 +3452,7 @@ "typeString": "string" }, "typeName": { - "id": 30140, + "id": 30155, "name": "string", "nodeType": "ElementaryTypeName", "src": "5865:6:27", @@ -3392,17 +3467,17 @@ "src": "5842:50:27" }, "returnParameters": { - "id": 30145, + "id": 30160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30144, + "id": 30159, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30159, + "scope": 30174, "src": "5916:7:27", "stateVariable": false, "storageLocation": "default", @@ -3411,7 +3486,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30143, + "id": 30158, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5916:7:27", @@ -3425,22 +3500,24 @@ ], "src": "5915:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { - "id": 30184, + "id": 30199, "nodeType": "FunctionDefinition", "src": "6698:205:27", + "nodes": [], "body": { - "id": 30183, + "id": 30198, "nodeType": "Block", "src": "6793:110:27", + "nodes": [], "statements": [ { - "id": 30182, + "id": 30197, "nodeType": "UncheckedBlock", "src": "6804:92:27", "statements": [ @@ -3452,17 +3529,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30174, + "id": 30189, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30172, + "id": 30187, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30164, + "referencedDeclaration": 30179, "src": "6837:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3473,7 +3550,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 30173, + "id": 30188, "isConstant": false, "isLValue": false, "isPure": true, @@ -3494,11 +3571,11 @@ } }, { - "id": 30175, + "id": 30190, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30166, + "referencedDeclaration": 30181, "src": "6844:12:27", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3517,7 +3594,7 @@ "typeString": "string memory" } ], - "id": 30171, + "id": 30186, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3531,12 +3608,13 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 30176, + "id": 30191, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6829:28:27", @@ -3546,7 +3624,7 @@ "typeString": "tuple()" } }, - "id": 30177, + "id": 30192, "nodeType": "ExpressionStatement", "src": "6829:28:27" }, @@ -3556,17 +3634,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30180, + "id": 30195, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30178, + "id": 30193, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30162, + "referencedDeclaration": 30177, "src": "6879:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3576,11 +3654,11 @@ "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { - "id": 30179, + "id": 30194, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30164, + "referencedDeclaration": 30179, "src": "6883:1:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3593,8 +3671,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30170, - "id": 30181, + "functionReturnParameters": 30185, + "id": 30196, "nodeType": "Return", "src": "6872:12:27" } @@ -3603,7 +3681,7 @@ ] }, "documentation": { - "id": 30160, + "id": 30175, "nodeType": "StructuredDocumentation", "src": "6043:649:27", "text": " @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\n reverting with custom message when dividing by zero.\n CAUTION: This function is deprecated because it requires allocating memory for the error\n message unnecessarily. For custom revert reasons use {tryMod}.\n Counterpart to Solidity's `%` operator. This function uses a `revert`\n opcode (which leaves remaining gas untouched) while Solidity uses an\n invalid opcode to revert (consuming all remaining gas).\n Requirements:\n - The divisor cannot be zero." @@ -3614,17 +3692,17 @@ "name": "mod", "nameLocation": "6707:3:27", "parameters": { - "id": 30167, + "id": 30182, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30162, + "id": 30177, "mutability": "mutable", "name": "a", "nameLocation": "6719:1:27", "nodeType": "VariableDeclaration", - "scope": 30184, + "scope": 30199, "src": "6711:9:27", "stateVariable": false, "storageLocation": "default", @@ -3633,7 +3711,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30161, + "id": 30176, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6711:7:27", @@ -3646,12 +3724,12 @@ }, { "constant": false, - "id": 30164, + "id": 30179, "mutability": "mutable", "name": "b", "nameLocation": "6730:1:27", "nodeType": "VariableDeclaration", - "scope": 30184, + "scope": 30199, "src": "6722:9:27", "stateVariable": false, "storageLocation": "default", @@ -3660,7 +3738,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30163, + "id": 30178, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6722:7:27", @@ -3673,12 +3751,12 @@ }, { "constant": false, - "id": 30166, + "id": 30181, "mutability": "mutable", "name": "errorMessage", "nameLocation": "6747:12:27", "nodeType": "VariableDeclaration", - "scope": 30184, + "scope": 30199, "src": "6733:26:27", "stateVariable": false, "storageLocation": "memory", @@ -3687,7 +3765,7 @@ "typeString": "string" }, "typeName": { - "id": 30165, + "id": 30180, "name": "string", "nodeType": "ElementaryTypeName", "src": "6733:6:27", @@ -3702,17 +3780,17 @@ "src": "6710:50:27" }, "returnParameters": { - "id": 30170, + "id": 30185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30169, + "id": 30184, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30184, + "scope": 30199, "src": "6784:7:27", "stateVariable": false, "storageLocation": "default", @@ -3721,7 +3799,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30168, + "id": 30183, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6784:7:27", @@ -3735,7 +3813,7 @@ ], "src": "6783:9:27" }, - "scope": 30185, + "scope": 30200, "stateMutability": "pure", "virtual": false, "visibility": "internal" @@ -3747,18 +3825,18 @@ "contractDependencies": [], "contractKind": "library", "documentation": { - "id": 29876, + "id": 29891, "nodeType": "StructuredDocumentation", "src": "294:201:27", "text": " @dev Wrappers over Solidity's arithmetic operations.\n NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler\n now has built in overflow checking." }, "fullyImplemented": true, "linearizedBaseContracts": [ - 30185 + 30200 ], "name": "SafeMath", "nameLocation": "505:8:27", - "scope": 30186, + "scope": 30201, "usedErrors": [] } ], diff --git a/out/Script.sol/Script.json b/out/Script.sol/Script.json index 2094364..1aff697 100644 --- a/out/Script.sol/Script.json +++ b/out/Script.sol/Script.json @@ -27,6 +27,148 @@ "methodIdentifiers": { "IS_SCRIPT()": "f8ccbf47" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"IS_SCRIPT\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Script.sol\":\"Script\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/Script.sol\":{\"keccak256\":\"0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693\",\"dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_SCRIPT", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/Script.sol": "Script" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/Script.sol": { + "keccak256": "0xd566affaba92598bcd059dcb3714a968aeedb365ec0d666815e8b38519e0f433", + "urls": [ + "bzz-raw://2fb5f7a97d2a7a06e10c198b60f05e64176eb4ef306b72800c168e7a7ec51693", + "dweb:/ipfs/Qmcep4r7YEU3BwFJNTTxZsdCVzBYdtcVp8oDtmwLoZGRzP" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/Script.sol", "id": 1893, @@ -75,6 +217,7 @@ "id": 1857, "nodeType": "PragmaDirective", "src": "32:31:2", + "nodes": [], "literals": [ "solidity", ">=", @@ -89,6 +232,7 @@ "id": 1859, "nodeType": "ImportDirective", "src": "134:38:2", + "nodes": [], "absolutePath": "lib/forge-std/src/Base.sol", "file": "./Base.sol", "nameLocation": "-1:-1:-1", @@ -114,6 +258,7 @@ "id": 1861, "nodeType": "ImportDirective", "src": "173:38:2", + "nodes": [], "absolutePath": "lib/forge-std/src/console.sol", "file": "./console.sol", "nameLocation": "-1:-1:-1", @@ -139,6 +284,7 @@ "id": 1863, "nodeType": "ImportDirective", "src": "212:40:2", + "nodes": [], "absolutePath": "lib/forge-std/src/console2.sol", "file": "./console2.sol", "nameLocation": "-1:-1:-1", @@ -164,6 +310,7 @@ "id": 1865, "nodeType": "ImportDirective", "src": "253:42:2", + "nodes": [], "absolutePath": "lib/forge-std/src/StdChains.sol", "file": "./StdChains.sol", "nameLocation": "-1:-1:-1", @@ -189,6 +336,7 @@ "id": 1867, "nodeType": "ImportDirective", "src": "296:46:2", + "nodes": [], "absolutePath": "lib/forge-std/src/StdCheats.sol", "file": "./StdCheats.sol", "nameLocation": "-1:-1:-1", @@ -214,6 +362,7 @@ "id": 1869, "nodeType": "ImportDirective", "src": "343:38:2", + "nodes": [], "absolutePath": "lib/forge-std/src/StdJson.sol", "file": "./StdJson.sol", "nameLocation": "-1:-1:-1", @@ -239,6 +388,7 @@ "id": 1871, "nodeType": "ImportDirective", "src": "382:38:2", + "nodes": [], "absolutePath": "lib/forge-std/src/StdMath.sol", "file": "./StdMath.sol", "nameLocation": "-1:-1:-1", @@ -264,6 +414,7 @@ "id": 1874, "nodeType": "ImportDirective", "src": "421:60:2", + "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -301,6 +452,7 @@ "id": 1876, "nodeType": "ImportDirective", "src": "482:40:2", + "nodes": [], "absolutePath": "lib/forge-std/src/StdUtils.sol", "file": "./StdUtils.sol", "nameLocation": "-1:-1:-1", @@ -326,6 +478,7 @@ "id": 1878, "nodeType": "ImportDirective", "src": "523:32:2", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -351,6 +504,7 @@ "id": 1880, "nodeType": "ImportDirective", "src": "577:38:2", + "nodes": [], "absolutePath": "lib/forge-std/src/Base.sol", "file": "./Base.sol", "nameLocation": "-1:-1:-1", @@ -381,6 +535,7 @@ "id": 1891, "nodeType": "VariableDeclaration", "src": "758:28:2", + "nodes": [], "constant": false, "functionSelector": "f8ccbf47", "mutability": "mutable", @@ -428,6 +583,9 @@ "baseName": { "id": 1881, "name": "StdChains", + "nameLocations": [ + "662:9:2" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3244, "src": "662:9:2" @@ -440,6 +598,9 @@ "baseName": { "id": 1883, "name": "StdCheatsSafe", + "nameLocations": [ + "673:13:2" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 4792, "src": "673:13:2" @@ -452,6 +613,9 @@ "baseName": { "id": 1885, "name": "StdUtils", + "nameLocations": [ + "688:8:2" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8153, "src": "688:8:2" @@ -464,6 +628,9 @@ "baseName": { "id": 1887, "name": "ScriptBase", + "nameLocations": [ + "698:10:2" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1855, "src": "698:10:2" diff --git a/out/StdAssertions.sol/StdAssertions.json b/out/StdAssertions.sol/StdAssertions.json index 2a47b96..85515ad 100644 --- a/out/StdAssertions.sol/StdAssertions.json +++ b/out/StdAssertions.sol/StdAssertions.json @@ -405,6 +405,461 @@ "IS_TEST()": "fa7626d4", "failed()": "ba414fa6" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdAssertions.sol\":\"StdAssertions\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "val", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_named_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes", + "name": "val", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "val", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "val", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_named_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "logs", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdAssertions.sol": "StdAssertions" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + }, + "lib/forge-std/src/StdAssertions.sol": { + "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", + "urls": [ + "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", + "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdAssertions.sol", "id": 2709, @@ -426,6 +881,7 @@ "id": 1894, "nodeType": "PragmaDirective", "src": "32:31:3", + "nodes": [], "literals": [ "solidity", ">=", @@ -440,6 +896,7 @@ "id": 1896, "nodeType": "ImportDirective", "src": "65:40:3", + "nodes": [], "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", "file": "ds-test/test.sol", "nameLocation": "-1:-1:-1", @@ -465,6 +922,7 @@ "id": 1898, "nodeType": "ImportDirective", "src": "106:38:3", + "nodes": [], "absolutePath": "lib/forge-std/src/StdMath.sol", "file": "./StdMath.sol", "nameLocation": "-1:-1:-1", @@ -495,6 +953,7 @@ "id": 1905, "nodeType": "EventDefinition", "src": "194:31:3", + "nodes": [], "anonymous": false, "eventSelector": "fb102865d50addddf69da9b5aa1bced66c80cf869a5c8d0471a467e18ce9cab1", "name": "log_array", @@ -548,6 +1007,7 @@ "id": 1910, "nodeType": "EventDefinition", "src": "230:30:3", + "nodes": [], "anonymous": false, "eventSelector": "890a82679b470f2bd82816ed9b161f97d8b967f37fa3647c21d5bf39749e2dd5", "name": "log_array", @@ -601,6 +1061,7 @@ "id": 1915, "nodeType": "EventDefinition", "src": "265:31:3", + "nodes": [], "anonymous": false, "eventSelector": "40e1840f5769073d61bd01372d9b75baa9842d5629a0c99ff103be1178a8e9e2", "name": "log_array", @@ -655,6 +1116,7 @@ "id": 1922, "nodeType": "EventDefinition", "src": "301:49:3", + "nodes": [], "anonymous": false, "eventSelector": "00aaa39c9ffb5f567a4534380c737075702e1f7f14107fc95328e3b56c0325fb", "name": "log_named_array", @@ -736,6 +1198,7 @@ "id": 1929, "nodeType": "EventDefinition", "src": "355:48:3", + "nodes": [], "anonymous": false, "eventSelector": "a73eda09662f46dde729be4611385ff34fe6c44fbbc6f7e17b042b59a3445b57", "name": "log_named_array", @@ -817,6 +1280,7 @@ "id": 1936, "nodeType": "EventDefinition", "src": "408:49:3", + "nodes": [], "anonymous": false, "eventSelector": "3bcfb2ae2e8d132dd1fce7cf278a9a19756a9fceabe470df3bdabb4bc577d1bd", "name": "log_named_array", @@ -899,10 +1363,12 @@ "id": 1950, "nodeType": "FunctionDefinition", "src": "463:118:3", + "nodes": [], "body": { "id": 1949, "nodeType": "Block", "src": "513:68:3", + "nodes": [], "statements": [ { "eventCall": { @@ -964,6 +1430,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "528:30:3", @@ -1002,6 +1469,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "568:6:3", @@ -1071,10 +1539,12 @@ "id": 1961, "nodeType": "FunctionDefinition", "src": "587:83:3", + "nodes": [], "body": { "id": 1960, "nodeType": "Block", "src": "636:34:3", + "nodes": [], "statements": [ { "expression": { @@ -1134,6 +1604,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "646:17:3", @@ -1203,10 +1674,12 @@ "id": 1975, "nodeType": "FunctionDefinition", "src": "676:107:3", + "nodes": [], "body": { "id": 1974, "nodeType": "Block", "src": "744:39:3", + "nodes": [], "statements": [ { "expression": { @@ -1282,6 +1755,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "754:22:3", @@ -1378,10 +1852,12 @@ "id": 2011, "nodeType": "FunctionDefinition", "src": "789:312:3", + "nodes": [], "body": { "id": 2010, "nodeType": "Block", "src": "840:261:3", + "nodes": [], "statements": [ { "condition": { @@ -1478,6 +1954,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "881:41:3", @@ -1596,6 +2073,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "941:52:3", @@ -1714,6 +2192,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1012:52:3", @@ -1752,6 +2231,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1078:6:3", @@ -1851,10 +2331,12 @@ "id": 2036, "nodeType": "FunctionDefinition", "src": "1107:186:3", + "nodes": [], "body": { "id": 2035, "nodeType": "Block", "src": "1177:116:3", + "nodes": [], "statements": [ { "condition": { @@ -1967,6 +2449,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1218:30:3", @@ -2057,6 +2540,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1262:14:3", @@ -2183,10 +2667,12 @@ "id": 2049, "nodeType": "FunctionDefinition", "src": "1299:99:3", + "nodes": [], "body": { "id": 2048, "nodeType": "Block", "src": "1366:32:3", + "nodes": [], "statements": [ { "expression": { @@ -2247,6 +2733,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1376:15:3", @@ -2343,10 +2830,12 @@ "id": 2065, "nodeType": "FunctionDefinition", "src": "1404:123:3", + "nodes": [], "body": { "id": 2064, "nodeType": "Block", "src": "1490:37:3", + "nodes": [], "statements": [ { "expression": { @@ -2423,6 +2912,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1500:20:3", @@ -2546,10 +3036,12 @@ "id": 2107, "nodeType": "FunctionDefinition", "src": "1533:344:3", + "nodes": [], "body": { "id": 2106, "nodeType": "Block", "src": "1608:269:3", + "nodes": [], "statements": [ { "condition": { @@ -2603,6 +3095,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1636:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "1632:10:3", @@ -2617,6 +3110,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1632:13:3", @@ -2651,6 +3145,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1622:24:3", @@ -2703,6 +3198,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1664:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "1660:10:3", @@ -2717,6 +3213,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1660:13:3", @@ -2751,6 +3248,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1650:24:3", @@ -2818,6 +3316,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1695:43:3", @@ -2895,6 +3394,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1757:32:3", @@ -2972,6 +3472,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1808:32:3", @@ -3010,6 +3511,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1854:6:3", @@ -3127,10 +3629,12 @@ "id": 2149, "nodeType": "FunctionDefinition", "src": "1883:341:3", + "nodes": [], "body": { "id": 2148, "nodeType": "Block", "src": "1956:268:3", + "nodes": [], "statements": [ { "condition": { @@ -3184,6 +3688,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1984:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "1980:10:3", @@ -3198,6 +3703,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1980:13:3", @@ -3232,6 +3738,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1970:24:3", @@ -3284,6 +3791,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2012:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2008:10:3", @@ -3298,6 +3806,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2008:13:3", @@ -3332,6 +3841,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1998:24:3", @@ -3399,6 +3909,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2043:42:3", @@ -3476,6 +3987,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2104:32:3", @@ -3553,6 +4065,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2155:32:3", @@ -3591,6 +4104,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2201:6:3", @@ -3708,10 +4222,12 @@ "id": 2191, "nodeType": "FunctionDefinition", "src": "2230:347:3", + "nodes": [], "body": { "id": 2190, "nodeType": "Block", "src": "2305:272:3", + "nodes": [], "statements": [ { "condition": { @@ -3765,6 +4281,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2333:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2329:10:3", @@ -3779,6 +4296,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2329:13:3", @@ -3813,6 +4331,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2319:24:3", @@ -3865,6 +4384,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2361:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2357:10:3", @@ -3879,6 +4399,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2357:13:3", @@ -3913,6 +4434,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2347:24:3", @@ -3980,6 +4502,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2392:46:3", @@ -4057,6 +4580,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2457:32:3", @@ -4134,6 +4658,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2508:32:3", @@ -4172,6 +4697,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2554:6:3", @@ -4291,10 +4817,12 @@ "id": 2228, "nodeType": "FunctionDefinition", "src": "2583:256:3", + "nodes": [], "body": { "id": 2227, "nodeType": "Block", "src": "2677:162:3", + "nodes": [], "statements": [ { "condition": { @@ -4348,6 +4876,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2705:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2701:10:3", @@ -4362,6 +4891,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2701:13:3", @@ -4396,6 +4926,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2691:24:3", @@ -4448,6 +4979,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2733:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2729:10:3", @@ -4462,6 +4994,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2729:13:3", @@ -4496,6 +5029,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2719:24:3", @@ -4579,6 +5113,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2764:30:3", @@ -4669,6 +5204,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2808:14:3", @@ -4813,10 +5349,12 @@ "id": 2265, "nodeType": "FunctionDefinition", "src": "2845:254:3", + "nodes": [], "body": { "id": 2264, "nodeType": "Block", "src": "2937:162:3", + "nodes": [], "statements": [ { "condition": { @@ -4870,6 +5408,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2965:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2961:10:3", @@ -4884,6 +5423,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2961:13:3", @@ -4918,6 +5458,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2951:24:3", @@ -4970,6 +5511,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2993:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "2989:10:3", @@ -4984,6 +5526,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2989:13:3", @@ -5018,6 +5561,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2979:24:3", @@ -5101,6 +5645,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3024:30:3", @@ -5191,6 +5736,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3068:14:3", @@ -5335,10 +5881,12 @@ "id": 2302, "nodeType": "FunctionDefinition", "src": "3105:256:3", + "nodes": [], "body": { "id": 2301, "nodeType": "Block", "src": "3199:162:3", + "nodes": [], "statements": [ { "condition": { @@ -5392,6 +5940,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3227:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "3223:10:3", @@ -5406,6 +5955,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3223:13:3", @@ -5440,6 +5990,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3213:24:3", @@ -5492,6 +6043,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3255:6:3", "memberName": "encode", "nodeType": "MemberAccess", "src": "3251:10:3", @@ -5506,6 +6058,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3251:13:3", @@ -5540,6 +6093,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3241:24:3", @@ -5623,6 +6177,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3286:30:3", @@ -5713,6 +6268,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3330:14:3", @@ -5859,10 +6415,12 @@ "id": 2321, "nodeType": "FunctionDefinition", "src": "3388:110:3", + "nodes": [], "body": { "id": 2320, "nodeType": "Block", "src": "3449:49:3", + "nodes": [], "statements": [ { "expression": { @@ -5914,6 +6472,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3468:10:3", @@ -5970,6 +6529,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3480:10:3", @@ -6029,6 +6589,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3459:32:3", @@ -6125,10 +6686,12 @@ "id": 2371, "nodeType": "FunctionDefinition", "src": "3504:470:3", + "nodes": [], "body": { "id": 2370, "nodeType": "Block", "src": "3588:386:3", + "nodes": [], "statements": [ { "assignments": [ @@ -6219,6 +6782,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3622:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 5967, @@ -6234,6 +6798,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3614:19:3", @@ -6341,6 +6906,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3685:41:3", @@ -6414,6 +6980,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3745:31:3", @@ -6487,6 +7054,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3795:31:3", @@ -6560,6 +7128,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3845:38:3", @@ -6633,6 +7202,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3902:35:3", @@ -6671,6 +7241,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3951:6:3", @@ -6797,10 +7368,12 @@ "id": 2407, "nodeType": "FunctionDefinition", "src": "3980:294:3", + "nodes": [], "body": { "id": 2406, "nodeType": "Block", "src": "4083:191:3", + "nodes": [], "statements": [ { "assignments": [ @@ -6891,6 +7464,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4117:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 5967, @@ -6906,6 +7480,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4109:19:3", @@ -7029,6 +7604,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4180:30:3", @@ -7119,6 +7695,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4224:33:3", @@ -7272,10 +7849,12 @@ "id": 2457, "nodeType": "FunctionDefinition", "src": "4280:465:3", + "nodes": [], "body": { "id": 2456, "nodeType": "Block", "src": "4362:383:3", + "nodes": [], "statements": [ { "assignments": [ @@ -7366,6 +7945,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4396:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 6003, @@ -7381,6 +7961,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4388:19:3", @@ -7488,6 +8069,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4459:40:3", @@ -7561,6 +8143,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4518:30:3", @@ -7634,6 +8217,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4567:30:3", @@ -7707,6 +8291,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4616:38:3", @@ -7780,6 +8365,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4673:35:3", @@ -7818,6 +8404,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4722:6:3", @@ -7944,10 +8531,12 @@ "id": 2493, "nodeType": "FunctionDefinition", "src": "4751:292:3", + "nodes": [], "body": { "id": 2492, "nodeType": "Block", "src": "4852:191:3", + "nodes": [], "statements": [ { "assignments": [ @@ -8038,6 +8627,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4886:5:3", "memberName": "delta", "nodeType": "MemberAccess", "referencedDeclaration": 6003, @@ -8053,6 +8643,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4878:19:3", @@ -8176,6 +8767,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4949:30:3", @@ -8266,6 +8858,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4993:33:3", @@ -8419,10 +9012,12 @@ "id": 2554, "nodeType": "FunctionDefinition", "src": "5049:726:3", + "nodes": [], "body": { "id": 2553, "nodeType": "Block", "src": "5226:549:3", + "nodes": [], "statements": [ { "condition": { @@ -8551,6 +9146,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5255:14:3", @@ -8655,6 +9251,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5356:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6026, @@ -8670,6 +9267,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5348:26:3", @@ -8777,6 +9375,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5440:41:3", @@ -8850,6 +9449,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5500:33:3", @@ -8923,6 +9523,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5552:33:3", @@ -9016,6 +9617,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5604:59:3", @@ -9109,6 +9711,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5682:56:3", @@ -9147,6 +9750,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5752:6:3", @@ -9273,10 +9877,12 @@ "id": 2600, "nodeType": "FunctionDefinition", "src": "5781:524:3", + "nodes": [], "body": { "id": 2599, "nodeType": "Block", "src": "5985:320:3", + "nodes": [], "statements": [ { "condition": { @@ -9421,6 +10027,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6014:19:3", @@ -9525,6 +10132,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6120:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6026, @@ -9540,6 +10148,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6112:26:3", @@ -9663,6 +10272,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6204:30:3", @@ -9753,6 +10363,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6248:40:3", @@ -9906,10 +10517,12 @@ "id": 2661, "nodeType": "FunctionDefinition", "src": "6311:635:3", + "nodes": [], "body": { "id": 2660, "nodeType": "Block", "src": "6400:546:3", + "nodes": [], "statements": [ { "condition": { @@ -10038,6 +10651,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6429:14:3", @@ -10142,6 +10756,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6530:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6055, @@ -10157,6 +10772,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6522:26:3", @@ -10264,6 +10880,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6614:40:3", @@ -10337,6 +10954,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6673:32:3", @@ -10410,6 +11028,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6724:32:3", @@ -10503,6 +11122,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6775:59:3", @@ -10596,6 +11216,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6853:56:3", @@ -10634,6 +11255,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6923:6:3", @@ -10760,10 +11382,12 @@ "id": 2707, "nodeType": "FunctionDefinition", "src": "6952:428:3", + "nodes": [], "body": { "id": 2706, "nodeType": "Block", "src": "7060:320:3", + "nodes": [], "statements": [ { "condition": { @@ -10908,6 +11532,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:19:3", @@ -11012,6 +11637,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7195:12:3", "memberName": "percentDelta", "nodeType": "MemberAccess", "referencedDeclaration": 6055, @@ -11027,6 +11653,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7187:26:3", @@ -11150,6 +11777,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7279:30:3", @@ -11240,6 +11868,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7323:40:3", @@ -11396,6 +12025,9 @@ "baseName": { "id": 1899, "name": "DSTest", + "nameLocations": [ + "181:6:3" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, "src": "181:6:3" diff --git a/out/StdChains.sol/StdChains.json b/out/StdChains.sol/StdChains.json index 2aad4d9..1549d4c 100644 --- a/out/StdChains.sol/StdChains.json +++ b/out/StdChains.sol/StdChains.json @@ -11,6 +11,62 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"StdChains provides information about EVM compatible chains that can be used in scripts/tests. For each chain, the chain's name, chain ID, and a default RPC URL are provided. Chains are identified by their alias, which is the same as the alias in the `[rpc_endpoints]` section of the `foundry.toml` file. For best UX, ensure the alias in the `foundry.toml` file match the alias used in this contract, which can be found as the first argument to the `setChainWithDefaultRpcUrl` call in the `initialize` function. There are two main ways to use this contract: 1. Set a chain with `setChain(string memory chainAlias, Chain memory chain)` 2. Get a chain with `getChain(string memory chainAlias)` or `getChain(uint256 chainId)`. The first time either of those are used, chains are initialized with the default set of RPC URLs. This is done in `initialize`, which uses `setChainWithDefaultRpcUrl`. Defaults are recorded in `defaultRpcUrls`. The `setChain` function is straightforward, and it simply saves off the given chain data. The `getChain` methods use `getChainWithUpdatedRpcUrl` to return a chain. For example, let's say we want to retrieve `mainnet`'s RPC URL: - If you haven't set any mainnet chain info with `setChain` and you haven't specified that chain in `foundry.toml`, the default data and RPC URL will be returned. - If you have set a mainnet RPC URL in `foundry.toml` it will return that, if valid (e.g. if a URL is given or if an environment variable is given and that environment variable exists). Otherwise, the default data is returned. - If you specified data with `setChain` it will return that. Summarizing the above, the prioritization hierarchy is `setChain` -> `foundry.toml` -> defaults.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdChains.sol\":\"StdChains\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdChains.sol": "StdChains" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdChains.sol", "id": 3245, @@ -29,6 +85,7 @@ "id": 2710, "nodeType": "PragmaDirective", "src": "32:31:4", + "nodes": [], "literals": [ "solidity", ">=", @@ -43,6 +100,7 @@ "id": 2711, "nodeType": "PragmaDirective", "src": "65:33:4", + "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -52,6 +110,7 @@ "id": 2713, "nodeType": "ImportDirective", "src": "100:32:4", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -82,6 +141,7 @@ "id": 2731, "nodeType": "VariableDeclaration", "src": "1989:92:4", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -99,6 +159,9 @@ "pathNode": { "id": 2715, "name": "VmSafe", + "nameLocations": [ + "1989:6:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "1989:6:4" @@ -161,6 +224,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2049:28:4", @@ -203,6 +267,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2041:37:4", @@ -245,6 +310,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2033:46:4", @@ -287,6 +353,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2025:55:4", @@ -321,6 +388,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2018:63:4", @@ -336,6 +404,7 @@ "id": 2733, "nodeType": "VariableDeclaration", "src": "2088:24:4", + "nodes": [], "constant": false, "mutability": "mutable", "name": "initialized", @@ -363,6 +432,7 @@ "id": 2740, "nodeType": "StructDefinition", "src": "2119:495:4", + "nodes": [], "canonicalName": "StdChains.Chain", "members": [ { @@ -456,6 +526,7 @@ "id": 2745, "nodeType": "VariableDeclaration", "src": "2718:39:4", + "nodes": [], "constant": false, "mutability": "mutable", "name": "chains", @@ -491,6 +562,9 @@ "pathNode": { "id": 2742, "name": "Chain", + "nameLocations": [ + "2736:5:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "2736:5:4" @@ -509,6 +583,7 @@ "id": 2749, "nodeType": "VariableDeclaration", "src": "2823:48:4", + "nodes": [], "constant": false, "mutability": "mutable", "name": "defaultRpcUrls", @@ -555,6 +630,7 @@ "id": 2753, "nodeType": "VariableDeclaration", "src": "2920:44:4", + "nodes": [], "constant": false, "mutability": "mutable", "name": "idToAlias", @@ -601,10 +677,12 @@ "id": 2805, "nodeType": "FunctionDefinition", "src": "3049:515:4", + "nodes": [], "body": { "id": 2804, "nodeType": "Block", "src": "3139:425:4", + "nodes": [], "statements": [ { "expression": { @@ -667,6 +745,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3157:17:4", @@ -681,6 +760,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3175:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "3157:24:4", @@ -761,6 +841,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3149:109:4", @@ -796,6 +877,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3269:12:4", @@ -908,6 +990,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "3354:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -1022,6 +1105,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3391:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3387:16:4", @@ -1036,6 +1120,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3387:96:4", @@ -1078,6 +1163,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3380:104:4", @@ -1119,6 +1205,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3327:167:4", @@ -1208,6 +1295,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3513:44:4", @@ -1293,6 +1381,9 @@ "pathNode": { "id": 2757, "name": "Chain", + "nameLocations": [ + "3119:5:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "3119:5:4" @@ -1318,10 +1409,12 @@ "id": 2862, "nodeType": "FunctionDefinition", "src": "3570:532:4", + "nodes": [], "body": { "id": 2861, "nodeType": "Block", "src": "3651:451:4", + "nodes": [], "statements": [ { "expression": { @@ -1420,6 +1513,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3661:75:4", @@ -1455,6 +1549,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3746:12:4", @@ -1641,6 +1736,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "3888:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -1733,6 +1829,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3988:8:4", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -1748,6 +1845,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3985:20:4", @@ -1806,6 +1904,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3925:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3921:16:4", @@ -1820,6 +1919,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3921:100:4", @@ -1862,6 +1962,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3914:108:4", @@ -1903,6 +2004,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3861:171:4", @@ -1992,6 +2094,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4051:44:4", @@ -2077,6 +2180,9 @@ "pathNode": { "id": 2809, "name": "Chain", + "nameLocations": [ + "3631:5:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "3631:5:4" @@ -2102,10 +2208,12 @@ "id": 2964, "nodeType": "FunctionDefinition", "src": "4173:1034:4", + "nodes": [], "body": { "id": 2963, "nodeType": "Block", "src": "4254:953:4", + "nodes": [], "statements": [ { "expression": { @@ -2168,6 +2276,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4285:17:4", @@ -2182,6 +2291,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4303:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "4285:24:4", @@ -2262,6 +2372,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4264:137:4", @@ -2306,6 +2417,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4426:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -2387,6 +2499,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4412:86:4", @@ -2422,6 +2535,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4509:12:4", @@ -2501,6 +2615,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4574:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -2595,6 +2710,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4614:17:4", @@ -2609,6 +2725,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4632:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "4614:24:4", @@ -2702,6 +2819,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4657:17:4", @@ -2736,6 +2854,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4647:28:4", @@ -2796,6 +2915,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4689:17:4", @@ -2830,6 +2950,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4679:28:4", @@ -2891,6 +3012,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4868:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -2925,6 +3047,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4853:8:4", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -2940,6 +3063,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4850:26:4", @@ -3034,6 +3158,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4749:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4745:16:4", @@ -3048,6 +3173,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4745:251:4", @@ -3090,6 +3216,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4721:289:4", @@ -3131,6 +3258,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4593:427:4", @@ -3221,6 +3349,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5071:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -3397,6 +3526,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5179:7:4", "memberName": "chainId", "nodeType": "MemberAccess", "referencedDeclaration": 2737, @@ -3500,6 +3630,9 @@ "pathNode": { "id": 2865, "name": "Chain", + "nameLocations": [ + "4217:5:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "4217:5:4" @@ -3531,10 +3664,12 @@ "id": 3051, "nodeType": "FunctionDefinition", "src": "5319:979:4", + "nodes": [], "body": { "id": 3050, "nodeType": "Block", "src": "5464:834:4", + "nodes": [], "statements": [ { "condition": { @@ -3568,6 +3703,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5490:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -3610,6 +3746,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5478:19:4", @@ -3624,6 +3761,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5498:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "5478:26:4", @@ -3697,6 +3835,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "5612:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -3802,6 +3941,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "5698:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -3973,6 +4113,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5915:12:4", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5911:16:4", @@ -3987,6 +4128,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5911:48:4", @@ -4029,6 +4171,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5904:56:4", @@ -4067,6 +4210,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5866:19:4", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5862:23:4", @@ -4081,6 +4225,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5862:99:4", @@ -4153,6 +4298,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5983:24:4", @@ -4203,6 +4349,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6011:14:4", @@ -4251,6 +4398,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "6041:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -4293,6 +4441,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6029:19:4", @@ -4307,6 +4456,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6049:6:4", "memberName": "length", "nodeType": "MemberAccess", "src": "6029:26:4", @@ -4520,6 +4670,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5532:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 9000, @@ -4535,6 +4686,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5529:21:4", @@ -4628,6 +4780,9 @@ "pathNode": { "id": 2967, "name": "Chain", + "nameLocations": [ + "5380:5:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "5380:5:4" @@ -4669,6 +4824,9 @@ "pathNode": { "id": 2971, "name": "Chain", + "nameLocations": [ + "5446:5:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "5446:5:4" @@ -4694,10 +4852,12 @@ "id": 3206, "nodeType": "FunctionDefinition", "src": "6304:2240:4", + "nodes": [], "body": { "id": 3205, "nodeType": "Block", "src": "6334:2210:4", + "nodes": [], "statements": [ { "condition": { @@ -4871,6 +5031,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6528:46:4", @@ -4909,6 +5070,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6493:82:4", @@ -5024,6 +5186,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6635:84:4", @@ -5062,6 +5225,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6585:144:4", @@ -5177,6 +5341,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6788:82:4", @@ -5215,6 +5380,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6739:141:4", @@ -5330,6 +5496,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6940:91:4", @@ -5368,6 +5535,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6890:151:4", @@ -5483,6 +5651,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:52:4", @@ -5521,6 +5690,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7051:91:4", @@ -5636,6 +5806,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7197:59:4", @@ -5674,6 +5845,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7152:105:4", @@ -5789,6 +5961,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7309:60:4", @@ -5827,6 +6000,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7267:103:4", @@ -5942,6 +6116,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7442:77:4", @@ -5980,6 +6155,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7380:149:4", @@ -6095,6 +6271,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7582:61:4", @@ -6133,6 +6310,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7539:105:4", @@ -6248,6 +6426,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7691:48:4", @@ -6286,6 +6465,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7654:86:4", @@ -6401,6 +6581,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7794:67:4", @@ -6439,6 +6620,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7750:112:4", @@ -6554,6 +6736,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7911:66:4", @@ -6592,6 +6775,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7872:106:4", @@ -6707,6 +6891,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8045:76:4", @@ -6745,6 +6930,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7988:143:4", @@ -6860,6 +7046,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8186:65:4", @@ -6898,6 +7085,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8141:111:4", @@ -7013,6 +7201,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8315:86:4", @@ -7051,6 +7240,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8262:140:4", @@ -7166,6 +7356,7 @@ "isPure": true, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8479:57:4", @@ -7204,6 +7395,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8437:100:4", @@ -7245,10 +7437,12 @@ "id": 3243, "nodeType": "FunctionDefinition", "src": "8626:301:4", + "nodes": [], "body": { "id": 3242, "nodeType": "Block", "src": "8715:212:4", + "nodes": [], "statements": [ { "assignments": [ @@ -7302,6 +7496,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8754:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -7407,6 +7602,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8821:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -7500,6 +7696,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8842:27:4", @@ -7538,6 +7735,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8885:6:4", "memberName": "rpcUrl", "nodeType": "MemberAccess", "referencedDeclaration": 2739, @@ -7630,6 +7828,9 @@ "pathNode": { "id": 3209, "name": "Chain", + "nameLocations": [ + "8687:5:4" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2740, "src": "8687:5:4" diff --git a/out/StdCheats.sol/StdCheats.json b/out/StdCheats.sol/StdCheats.json index bf99edd..a7c6cee 100644 --- a/out/StdCheats.sol/StdCheats.json +++ b/out/StdCheats.sol/StdCheats.json @@ -11,6 +11,70 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdCheats.sol\":\"StdCheats\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdCheats.sol": "StdCheats" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdCheats.sol", "id": 5182, @@ -38,6 +102,7 @@ "id": 3246, "nodeType": "PragmaDirective", "src": "32:31:5", + "nodes": [], "literals": [ "solidity", ">=", @@ -52,6 +117,7 @@ "id": 3247, "nodeType": "PragmaDirective", "src": "65:33:5", + "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -61,6 +127,7 @@ "id": 3250, "nodeType": "ImportDirective", "src": "100:56:5", + "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -98,6 +165,7 @@ "id": 3252, "nodeType": "ImportDirective", "src": "157:28:5", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -128,6 +196,7 @@ "id": 3269, "nodeType": "VariableDeclaration", "src": "225:84:5", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -145,6 +214,9 @@ "pathNode": { "id": 3253, "name": "Vm", + "nameLocations": [ + "225:2:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "225:2:5" @@ -207,6 +279,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "277:28:5", @@ -249,6 +322,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "269:37:5", @@ -291,6 +365,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "261:46:5", @@ -333,6 +408,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "253:55:5", @@ -367,6 +443,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "250:59:5", @@ -382,6 +459,7 @@ "id": 3271, "nodeType": "VariableDeclaration", "src": "316:27:5", + "nodes": [], "constant": false, "mutability": "mutable", "name": "gasMeteringOff", @@ -409,6 +487,7 @@ "id": 3288, "nodeType": "StructDefinition", "src": "588:325:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559", "members": [ { @@ -577,6 +656,9 @@ "pathNode": { "id": 3283, "name": "RawTx1559Detail", + "nameLocations": [ + "825:15:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "825:15:5" @@ -627,6 +709,7 @@ "id": 3307, "nodeType": "StructDefinition", "src": "919:208:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559Detail", "members": [ { @@ -651,6 +734,9 @@ "pathNode": { "id": 3289, "name": "AccessList", + "nameLocations": [ + "952:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "952:10:5" @@ -873,6 +959,7 @@ "id": 3324, "nodeType": "StructDefinition", "src": "1133:215:5", + "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559", "members": [ { @@ -1041,6 +1128,9 @@ "pathNode": { "id": 3319, "name": "Tx1559Detail", + "nameLocations": [ + "1297:12:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "1297:12:5" @@ -1091,6 +1181,7 @@ "id": 3343, "nodeType": "StructDefinition", "src": "1354:213:5", + "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559Detail", "members": [ { @@ -1115,6 +1206,9 @@ "pathNode": { "id": 3325, "name": "AccessList", + "nameLocations": [ + "1384:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "1384:10:5" @@ -1337,6 +1431,7 @@ "id": 3360, "nodeType": "StructDefinition", "src": "1818:221:5", + "nodes": [], "canonicalName": "StdCheatsSafe.TxLegacy", "members": [ { @@ -1532,6 +1627,9 @@ "pathNode": { "id": 3357, "name": "TxDetailLegacy", + "nameLocations": [ + "2006:14:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3393, "src": "2006:14:5" @@ -1555,6 +1653,7 @@ "id": 3393, "nodeType": "StructDefinition", "src": "2045:366:5", + "nodes": [], "canonicalName": "StdCheatsSafe.TxDetailLegacy", "members": [ { @@ -1579,6 +1678,9 @@ "pathNode": { "id": 3361, "name": "AccessList", + "nameLocations": [ + "2077:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "2077:10:5" @@ -1990,6 +2092,7 @@ "id": 3399, "nodeType": "StructDefinition", "src": "2417:87:5", + "nodes": [], "canonicalName": "StdCheatsSafe.AccessList", "members": [ { @@ -2066,6 +2169,7 @@ "id": 3428, "nodeType": "StructDefinition", "src": "2720:385:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawReceipt", "members": [ { @@ -2281,6 +2385,9 @@ "pathNode": { "id": 3414, "name": "RawReceiptLog", + "nameLocations": [ + "2946:13:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "2946:13:5" @@ -2448,6 +2555,7 @@ "id": 3457, "nodeType": "StructDefinition", "src": "3111:391:5", + "nodes": [], "canonicalName": "StdCheatsSafe.Receipt", "members": [ { @@ -2663,6 +2771,9 @@ "pathNode": { "id": 3443, "name": "ReceiptLog", + "nameLocations": [ + "3342:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "3342:10:5" @@ -2830,6 +2941,7 @@ "id": 3480, "nodeType": "StructDefinition", "src": "3625:227:5", + "nodes": [], "canonicalName": "StdCheatsSafe.EIP1559ScriptArtifact", "members": [ { @@ -2953,6 +3065,9 @@ "pathNode": { "id": 3466, "name": "Receipt", + "nameLocations": [ + "3739:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "3739:7:5" @@ -3023,6 +3138,9 @@ "pathNode": { "id": 3472, "name": "Tx1559", + "nameLocations": [ + "3794:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "3794:6:5" @@ -3066,6 +3184,9 @@ "pathNode": { "id": 3476, "name": "TxReturn", + "nameLocations": [ + "3825:8:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "3825:8:5" @@ -3097,6 +3218,7 @@ "id": 3503, "nodeType": "StructDefinition", "src": "3858:236:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawEIP1559ScriptArtifact", "members": [ { @@ -3220,6 +3342,9 @@ "pathNode": { "id": 3489, "name": "RawReceipt", + "nameLocations": [ + "3975:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "3975:10:5" @@ -3263,6 +3388,9 @@ "pathNode": { "id": 3493, "name": "TxReturn", + "nameLocations": [ + "4006:8:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "4006:8:5" @@ -3333,6 +3461,9 @@ "pathNode": { "id": 3499, "name": "RawTx1559", + "nameLocations": [ + "4063:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "4063:9:5" @@ -3364,6 +3495,7 @@ "id": 3525, "nodeType": "StructDefinition", "src": "4100:334:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawReceiptLog", "members": [ { @@ -3656,6 +3788,7 @@ "id": 3545, "nodeType": "StructDefinition", "src": "4440:306:5", + "nodes": [], "canonicalName": "StdCheatsSafe.ReceiptLog", "members": [ { @@ -3921,6 +4054,7 @@ "id": 3550, "nodeType": "StructDefinition", "src": "4752:74:5", + "nodes": [], "canonicalName": "StdCheatsSafe.TxReturn", "members": [ { @@ -3987,10 +4121,12 @@ "id": 3565, "nodeType": "FunctionDefinition", "src": "4832:274:5", + "nodes": [], "body": { "id": 3564, "nodeType": "Block", "src": "4892:214:5", + "nodes": [], "statements": [ { "assignments": [ @@ -4130,6 +4266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5065:34:5", @@ -4200,10 +4337,12 @@ "id": 3708, "nodeType": "FunctionDefinition", "src": "5112:1788:5", + "nodes": [], "body": { "id": 3707, "nodeType": "Block", "src": "5194:1706:5", + "nodes": [], "statements": [ { "expression": { @@ -4293,6 +4432,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5499:12:5", @@ -4385,6 +4525,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5522:12:5", @@ -4431,6 +4572,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5485:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -4446,6 +4588,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5482:53:5", @@ -4888,6 +5031,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6446:51:5", @@ -4980,6 +5124,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6508:51:5", @@ -5026,6 +5171,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6432:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5041,6 +5187,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6429:131:5", @@ -5142,6 +5289,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6591:51:5", @@ -5234,6 +5382,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6653:51:5", @@ -5280,6 +5429,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6577:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5295,6 +5445,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6574:131:5", @@ -5396,6 +5547,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6736:51:5", @@ -5488,6 +5640,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6798:51:5", @@ -5534,6 +5687,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6722:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5549,6 +5703,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6719:131:5", @@ -5661,6 +5816,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6113:51:5", @@ -5753,6 +5909,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6175:51:5", @@ -5799,6 +5956,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6099:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5814,6 +5972,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6096:131:5", @@ -5926,6 +6085,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5799:51:5", @@ -6018,6 +6178,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5861:51:5", @@ -6064,6 +6225,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5785:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -6079,6 +6241,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5782:131:5", @@ -6179,10 +6342,12 @@ "id": 3800, "nodeType": "FunctionDefinition", "src": "6906:843:5", + "nodes": [], "body": { "id": 3799, "nodeType": "Block", "src": "7058:691:5", + "nodes": [], "statements": [ { "assignments": [ @@ -6257,6 +6422,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7092:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -6272,6 +6438,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:17:5", @@ -6357,6 +6524,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7145:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8816, @@ -6372,6 +6540,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7142:18:5", @@ -6410,6 +6579,9 @@ "pathNode": { "id": 3730, "name": "RawEIP1559ScriptArtifact", + "nameLocations": [ + "7170:24:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3503, "src": "7170:24:5" @@ -6496,6 +6668,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7220:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "7216:10:5", @@ -6510,6 +6683,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7216:50:5", @@ -6548,6 +6722,9 @@ "pathNode": { "id": 3740, "name": "EIP1559ScriptArtifact", + "nameLocations": [ + "7276:21:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7276:21:5" @@ -6591,6 +6768,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7332:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3460, @@ -6620,6 +6798,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7356:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3483, @@ -6664,6 +6843,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7384:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3462, @@ -6693,6 +6873,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7403:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3485, @@ -6737,6 +6918,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7426:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3471, @@ -6766,6 +6948,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7450:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3498, @@ -6810,6 +6993,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7478:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3465, @@ -6839,6 +7023,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7500:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3488, @@ -6883,6 +7068,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7526:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3479, @@ -6912,6 +7098,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7550:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3496, @@ -6956,6 +7143,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7578:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3469, @@ -6987,6 +7175,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7624:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3492, @@ -7021,6 +7210,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7589:44:5", @@ -7065,6 +7255,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7652:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3475, @@ -7096,6 +7287,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7704:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3502, @@ -7130,6 +7322,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7667:50:5", @@ -7233,6 +7426,9 @@ "pathNode": { "id": 3712, "name": "EIP1559ScriptArtifact", + "nameLocations": [ + "7024:21:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7024:21:5" @@ -7258,10 +7454,12 @@ "id": 3849, "nodeType": "FunctionDefinition", "src": "7755:312:5", + "nodes": [], "body": { "id": 3848, "nodeType": "Block", "src": "7864:203:5", + "nodes": [], "statements": [ { "assignments": [ @@ -7290,6 +7488,9 @@ "pathNode": { "id": 3812, "name": "Tx1559", + "nameLocations": [ + "7874:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7874:6:5" @@ -7333,6 +7534,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7916:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7909:13:5", @@ -7367,6 +7569,9 @@ "pathNode": { "id": 3816, "name": "Tx1559", + "nameLocations": [ + "7900:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7900:6:5" @@ -7393,6 +7598,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7896:27:5", @@ -7521,6 +7727,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7996:34:5", @@ -7584,6 +7791,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7960:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7953:13:5", @@ -7722,6 +7930,9 @@ "pathNode": { "id": 3801, "name": "RawTx1559", + "nameLocations": [ + "7789:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "7789:9:5" @@ -7772,6 +7983,9 @@ "pathNode": { "id": 3806, "name": "Tx1559", + "nameLocations": [ + "7847:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7847:6:5" @@ -7805,10 +8019,12 @@ "id": 3909, "nodeType": "FunctionDefinition", "src": "8073:488:5", + "nodes": [], "body": { "id": 3908, "nodeType": "Block", "src": "8176:385:5", + "nodes": [], "statements": [ { "assignments": [ @@ -7836,6 +8052,9 @@ "pathNode": { "id": 3858, "name": "Tx1559", + "nameLocations": [ + "8186:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8186:6:5" @@ -7879,6 +8098,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8233:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3310, @@ -7908,6 +8128,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8251:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3274, @@ -7952,6 +8173,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8282:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3314, @@ -7981,6 +8203,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8303:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3278, @@ -8025,6 +8248,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8337:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3316, @@ -8054,6 +8278,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8357:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3280, @@ -8098,6 +8323,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8390:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3318, @@ -8127,6 +8353,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8403:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3282, @@ -8171,6 +8398,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8429:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3321, @@ -8202,6 +8430,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8474:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3285, @@ -8236,6 +8465,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8440:43:5", @@ -8280,6 +8510,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8505:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3323, @@ -8309,6 +8540,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8520:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3287, @@ -8378,6 +8610,9 @@ "pathNode": { "id": 3850, "name": "RawTx1559", + "nameLocations": [ + "8106:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "8106:9:5" @@ -8419,6 +8654,9 @@ "pathNode": { "id": 3854, "name": "Tx1559", + "nameLocations": [ + "8161:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8161:6:5" @@ -8444,10 +8682,12 @@ "id": 3989, "nodeType": "FunctionDefinition", "src": "8567:619:5", + "nodes": [], "body": { "id": 3988, "nodeType": "Block", "src": "8726:460:5", + "nodes": [], "statements": [ { "assignments": [ @@ -8475,6 +8715,9 @@ "pathNode": { "id": 3918, "name": "Tx1559Detail", + "nameLocations": [ + "8736:12:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8736:12:5" @@ -8518,6 +8761,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8783:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3330, @@ -8547,6 +8791,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8800:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3294, @@ -8591,6 +8836,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8823:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3332, @@ -8620,6 +8866,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8840:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3296, @@ -8664,6 +8911,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8863:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3338, @@ -8693,6 +8941,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8878:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3302, @@ -8737,6 +8986,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8899:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3336, @@ -8768,6 +9018,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8930:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3300, @@ -8802,6 +9053,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:29:5", @@ -8846,6 +9098,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8955:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3340, @@ -8877,6 +9130,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8987:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3304, @@ -8911,6 +9165,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8964:30:5", @@ -8955,6 +9210,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "9013:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3342, @@ -8986,6 +9242,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9044:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3306, @@ -9020,6 +9277,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9021:29:5", @@ -9064,6 +9322,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "9069:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3334, @@ -9095,6 +9354,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9098:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3298, @@ -9129,6 +9389,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9075:27:5", @@ -9173,6 +9434,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "9121:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3328, @@ -9202,6 +9464,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9144:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3292, @@ -9271,6 +9534,9 @@ "pathNode": { "id": 3910, "name": "RawTx1559Detail", + "nameLocations": [ + "8604:15:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "8604:15:5" @@ -9312,6 +9578,9 @@ "pathNode": { "id": 3914, "name": "Tx1559Detail", + "nameLocations": [ + "8701:12:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8701:12:5" @@ -9337,10 +9606,12 @@ "id": 4031, "nodeType": "FunctionDefinition", "src": "9192:363:5", + "nodes": [], "body": { "id": 4030, "nodeType": "Block", "src": "9281:274:5", + "nodes": [], "statements": [ { "assignments": [ @@ -9415,6 +9686,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9321:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -9430,6 +9702,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9318:17:5", @@ -9535,6 +9808,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9380:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -9550,6 +9824,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9377:41:5", @@ -9589,6 +9864,9 @@ "pathNode": { "id": 4014, "name": "RawTx1559", + "nameLocations": [ + "9428:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9428:9:5" @@ -9696,6 +9974,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9460:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9456:10:5", @@ -9710,6 +9989,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9456:43:5", @@ -9762,6 +10042,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9516:32:5", @@ -9843,6 +10124,9 @@ "pathNode": { "id": 3993, "name": "Tx1559", + "nameLocations": [ + "9264:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9264:6:5" @@ -9876,10 +10160,12 @@ "id": 4086, "nodeType": "FunctionDefinition", "src": "9561:453:5", + "nodes": [], "body": { "id": 4085, "nodeType": "Block", "src": "9662:352:5", + "nodes": [], "statements": [ { "assignments": [ @@ -9954,6 +10240,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9702:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -9969,6 +10256,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9699:17:5", @@ -10074,6 +10362,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9791:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -10089,6 +10378,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9788:18:5", @@ -10147,6 +10437,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9757:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9753:16:5", @@ -10161,6 +10452,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9753:59:5", @@ -10203,6 +10495,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9746:67:5", @@ -10304,6 +10597,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9858:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -10319,6 +10613,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9855:29:5", @@ -10357,6 +10652,9 @@ "pathNode": { "id": 4071, "name": "RawTx1559", + "nameLocations": [ + "9894:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9894:9:5" @@ -10443,6 +10741,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9923:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9919:10:5", @@ -10457,6 +10756,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9919:41:5", @@ -10509,6 +10809,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9977:30:5", @@ -10616,6 +10917,9 @@ "pathNode": { "id": 4037, "name": "Tx1559", + "nameLocations": [ + "9647:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9647:6:5" @@ -10641,10 +10945,12 @@ "id": 4128, "nodeType": "FunctionDefinition", "src": "10076:371:5", + "nodes": [], "body": { "id": 4127, "nodeType": "Block", "src": "10167:280:5", + "nodes": [], "statements": [ { "assignments": [ @@ -10719,6 +11025,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10207:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -10734,6 +11041,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10204:17:5", @@ -10839,6 +11147,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10266:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -10854,6 +11163,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10263:37:5", @@ -10893,6 +11203,9 @@ "pathNode": { "id": 4111, "name": "RawReceipt", + "nameLocations": [ + "10310:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10310:10:5" @@ -11000,6 +11313,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10348:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10344:10:5", @@ -11014,6 +11328,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10344:44:5", @@ -11066,6 +11381,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10405:35:5", @@ -11147,6 +11463,9 @@ "pathNode": { "id": 4090, "name": "Receipt", + "nameLocations": [ + "10149:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10149:7:5" @@ -11180,10 +11499,12 @@ "id": 4183, "nodeType": "FunctionDefinition", "src": "10453:461:5", + "nodes": [], "body": { "id": 4182, "nodeType": "Block", "src": "10556:358:5", + "nodes": [], "statements": [ { "assignments": [ @@ -11258,6 +11579,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10596:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -11273,6 +11595,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10593:17:5", @@ -11378,6 +11701,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10681:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -11393,6 +11717,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10678:18:5", @@ -11451,6 +11776,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10651:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "10647:16:5", @@ -11465,6 +11791,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10647:55:5", @@ -11507,6 +11834,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10640:63:5", @@ -11608,6 +11936,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10748:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -11623,6 +11952,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10745:29:5", @@ -11661,6 +11991,9 @@ "pathNode": { "id": 4168, "name": "RawReceipt", + "nameLocations": [ + "10784:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10784:10:5" @@ -11747,6 +12080,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10819:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10815:10:5", @@ -11761,6 +12095,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10815:42:5", @@ -11813,6 +12148,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10874:33:5", @@ -11920,6 +12256,9 @@ "pathNode": { "id": 4134, "name": "Receipt", + "nameLocations": [ + "10540:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10540:7:5" @@ -11945,10 +12284,12 @@ "id": 4232, "nodeType": "FunctionDefinition", "src": "10920:347:5", + "nodes": [], "body": { "id": 4231, "nodeType": "Block", "src": "11034:233:5", + "nodes": [], "statements": [ { "assignments": [ @@ -11977,6 +12318,9 @@ "pathNode": { "id": 4195, "name": "Receipt", + "nameLocations": [ + "11044:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11044:7:5" @@ -12020,6 +12364,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11098:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11086:18:5", @@ -12054,6 +12399,9 @@ "pathNode": { "id": 4199, "name": "Receipt", + "nameLocations": [ + "11076:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11076:7:5" @@ -12080,6 +12428,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11072:33:5", @@ -12208,6 +12557,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11188:37:5", @@ -12271,6 +12621,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11147:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11135:18:5", @@ -12409,6 +12760,9 @@ "pathNode": { "id": 4184, "name": "RawReceipt", + "nameLocations": [ + "10952:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10952:10:5" @@ -12459,6 +12813,9 @@ "pathNode": { "id": 4189, "name": "Receipt", + "nameLocations": [ + "11016:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11016:7:5" @@ -12492,10 +12849,12 @@ "id": 4353, "nodeType": "FunctionDefinition", "src": "11273:962:5", + "nodes": [], "body": { "id": 4352, "nodeType": "Block", "src": "11381:854:5", + "nodes": [], "statements": [ { "assignments": [ @@ -12523,6 +12882,9 @@ "pathNode": { "id": 4241, "name": "Receipt", + "nameLocations": [ + "11391:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11391:7:5" @@ -12566,6 +12928,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11431:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3430, @@ -12595,6 +12958,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11454:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3401, @@ -12639,6 +13003,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11481:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3452, @@ -12668,6 +13033,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11497:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3423, @@ -12712,6 +13078,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11517:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3440, @@ -12741,6 +13108,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11535:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3411, @@ -12785,6 +13153,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11557:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3434, @@ -12814,6 +13183,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11586:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3405, @@ -12858,6 +13228,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11619:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3438, @@ -12889,6 +13260,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11663:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3409, @@ -12923,6 +13295,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11639:42:5", @@ -12967,6 +13340,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11699:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3436, @@ -12998,6 +13372,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11743:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3407, @@ -13032,6 +13407,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11719:42:5", @@ -13076,6 +13452,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11779:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3442, @@ -13107,6 +13484,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11813:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3413, @@ -13141,6 +13519,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11789:32:5", @@ -13185,6 +13564,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11839:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3450, @@ -13216,6 +13596,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11872:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3421, @@ -13250,6 +13631,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11848:31:5", @@ -13294,6 +13676,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11897:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3456, @@ -13325,6 +13708,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11940:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3427, @@ -13359,6 +13743,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11916:41:5", @@ -13403,6 +13788,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11975:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3432, @@ -13434,6 +13820,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12013:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3403, @@ -13468,6 +13855,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11989:36:5", @@ -13512,6 +13900,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12043:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3446, @@ -13543,6 +13932,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12087:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3417, @@ -13577,6 +13967,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12050:42:5", @@ -13621,6 +14012,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12110:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3448, @@ -13650,6 +14042,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12133:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3419, @@ -13694,6 +14087,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12160:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3454, @@ -13723,6 +14117,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12189:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3425, @@ -13792,6 +14187,9 @@ "pathNode": { "id": 4233, "name": "RawReceipt", + "nameLocations": [ + "11304:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "11304:10:5" @@ -13833,6 +14231,9 @@ "pathNode": { "id": 4237, "name": "Receipt", + "nameLocations": [ + "11365:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11365:7:5" @@ -13858,10 +14259,12 @@ "id": 4490, "nodeType": "FunctionDefinition", "src": "12241:873:5", + "nodes": [], "body": { "id": 4489, "nodeType": "Block", "src": "12396:718:5", + "nodes": [], "statements": [ { "assignments": [ @@ -13890,6 +14293,9 @@ "pathNode": { "id": 4365, "name": "ReceiptLog", + "nameLocations": [ + "12406:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12406:10:5" @@ -13933,6 +14339,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12458:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12450:14:5", @@ -13967,6 +14374,9 @@ "pathNode": { "id": 4369, "name": "ReceiptLog", + "nameLocations": [ + "12437:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12437:10:5" @@ -13993,6 +14403,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12433:32:5", @@ -14061,6 +14472,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12538:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3527, @@ -14115,6 +14527,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12562:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3505, @@ -14184,6 +14597,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12594:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3529, @@ -14238,6 +14652,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12617:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3507, @@ -14307,6 +14722,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12648:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3531, @@ -14363,6 +14779,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12686:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3509, @@ -14397,6 +14814,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12662:36:5", @@ -14466,6 +14884,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12720:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3533, @@ -14520,6 +14939,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12738:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3511, @@ -14589,6 +15009,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12764:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3535, @@ -14645,6 +15066,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12799:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3513, @@ -14679,6 +15101,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12775:33:5", @@ -14748,6 +15171,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12830:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3538, @@ -14802,6 +15226,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12850:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3518, @@ -14871,6 +15296,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12878:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3540, @@ -14927,6 +15353,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12921:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3522, @@ -14961,6 +15388,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12897:41:5", @@ -15030,6 +15458,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12960:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3542, @@ -15086,6 +15515,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "13006:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3524, @@ -15120,6 +15550,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12982:44:5", @@ -15189,6 +15620,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "13048:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3544, @@ -15243,6 +15675,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "13069:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3515, @@ -15306,6 +15739,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12503:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12495:14:5", @@ -15444,6 +15878,9 @@ "pathNode": { "id": 4354, "name": "RawReceiptLog", + "nameLocations": [ + "12276:13:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "12276:13:5" @@ -15494,6 +15931,9 @@ "pathNode": { "id": 4359, "name": "ReceiptLog", + "nameLocations": [ + "12371:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12371:10:5" @@ -15527,10 +15967,12 @@ "id": 4522, "nodeType": "FunctionDefinition", "src": "13274:416:5", + "nodes": [], "body": { "id": 4521, "nodeType": "Block", "src": "13373:317:5", + "nodes": [], "statements": [ { "assignments": [ @@ -15607,6 +16049,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13427:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -15622,6 +16065,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13424:16:5", @@ -15672,6 +16116,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13411:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "13407:16:5", @@ -15686,6 +16131,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13407:40:5", @@ -15880,6 +16326,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13614:10:5", @@ -15943,6 +16390,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13598:85:5", @@ -16068,10 +16516,12 @@ "id": 4548, "nodeType": "FunctionDefinition", "src": "13696:367:5", + "nodes": [], "body": { "id": 4547, "nodeType": "Block", "src": "13776:287:5", + "nodes": [], "statements": [ { "assignments": [ @@ -16146,6 +16596,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13813:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16161,6 +16612,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13810:16:5", @@ -16355,6 +16807,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13993:10:5", @@ -16418,6 +16871,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13977:79:5", @@ -16516,10 +16970,12 @@ "id": 4583, "nodeType": "FunctionDefinition", "src": "14125:439:5", + "nodes": [], "body": { "id": 4582, "nodeType": "Block", "src": "14237:327:5", + "nodes": [], "statements": [ { "assignments": [ @@ -16596,6 +17052,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14291:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16611,6 +17068,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14288:16:5", @@ -16661,6 +17119,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14275:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14271:16:5", @@ -16675,6 +17134,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14271:40:5", @@ -16874,6 +17334,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14480:10:5", @@ -16937,6 +17398,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14464:93:5", @@ -17095,10 +17557,12 @@ "id": 4611, "nodeType": "FunctionDefinition", "src": "14570:390:5", + "nodes": [], "body": { "id": 4610, "nodeType": "Block", "src": "14663:297:5", + "nodes": [], "statements": [ { "assignments": [ @@ -17173,6 +17637,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14700:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -17188,6 +17653,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14697:16:5", @@ -17387,6 +17853,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14882:10:5", @@ -17450,6 +17917,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14866:87:5", @@ -17575,10 +18043,12 @@ "id": 4647, "nodeType": "FunctionDefinition", "src": "15033:242:5", + "nodes": [], "body": { "id": 4646, "nodeType": "Block", "src": "15137:138:5", + "nodes": [], "statements": [ { "expression": { @@ -17644,6 +18114,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15182:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15178:16:5", @@ -17658,6 +18129,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15178:22:5", @@ -17692,6 +18164,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15168:33:5", @@ -17734,6 +18207,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15160:42:5", @@ -17813,6 +18287,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15222:4:5", "memberName": "addr", "nodeType": "MemberAccess", "referencedDeclaration": 8255, @@ -17828,6 +18303,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15219:19:5", @@ -17903,6 +18379,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15251:5:5", "memberName": "label", "nodeType": "MemberAccess", "referencedDeclaration": 8585, @@ -17918,6 +18395,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15248:20:5", @@ -18043,10 +18521,12 @@ "id": 4662, "nodeType": "FunctionDefinition", "src": "15314:125:5", + "nodes": [], "body": { "id": 4661, "nodeType": "Block", "src": "15392:47:5", + "nodes": [], "statements": [ { "expression": { @@ -18125,6 +18605,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15412:20:5", @@ -18229,10 +18710,12 @@ "id": 4689, "nodeType": "FunctionDefinition", "src": "15445:253:5", + "nodes": [], "body": { "id": 4688, "nodeType": "Block", "src": "15597:101:5", + "nodes": [], "statements": [ { "expression": { @@ -18310,6 +18793,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15623:9:5", "memberName": "deriveKey", "nodeType": "MemberAccess", "referencedDeclaration": 8782, @@ -18325,6 +18809,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15620:29:5", @@ -18404,6 +18889,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15668:11:5", "memberName": "rememberKey", "nodeType": "MemberAccess", "referencedDeclaration": 8800, @@ -18419,6 +18905,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15665:26:5", @@ -18577,10 +19064,12 @@ "id": 4723, "nodeType": "FunctionDefinition", "src": "15704:253:5", + "nodes": [], "body": { "id": 4722, "nodeType": "Block", "src": "15773:184:5", + "nodes": [], "statements": [ { "expression": { @@ -18613,6 +19102,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15793:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15791:8:5", @@ -18693,6 +19183,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15783:82:5", @@ -18759,6 +19250,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15927:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15925:8:5", @@ -18809,6 +19301,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15910:24:5", @@ -18859,6 +19352,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15897:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15893:16:5", @@ -18873,6 +19367,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15893:45:5", @@ -18947,6 +19442,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15886:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "15882:10:5", @@ -18961,6 +19457,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15882:68:5", @@ -19059,10 +19556,12 @@ "id": 4744, "nodeType": "FunctionDefinition", "src": "15963:160:5", + "nodes": [], "body": { "id": 4743, "nodeType": "Block", "src": "16025:98:5", + "nodes": [], "statements": [ { "clauses": [ @@ -19194,6 +19693,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16042:10:5", "memberName": "activeFork", "nodeType": "MemberAccess", "referencedDeclaration": 9265, @@ -19209,6 +19709,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16039:15:5", @@ -19278,10 +19779,12 @@ "id": 4753, "nodeType": "ModifierDefinition", "src": "16129:84:5", + "nodes": [], "body": { "id": 4752, "nodeType": "Block", "src": "16156:57:5", + "nodes": [], "statements": [ { "condition": { @@ -19315,6 +19818,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16171:8:5", @@ -19362,10 +19866,12 @@ "id": 4761, "nodeType": "ModifierDefinition", "src": "16219:86:5", + "nodes": [], "body": { "id": 4760, "nodeType": "Block", "src": "16249:56:5", + "nodes": [], "statements": [ { "condition": { @@ -19389,6 +19895,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16263:8:5", @@ -19431,10 +19938,12 @@ "id": 4791, "nodeType": "ModifierDefinition", "src": "16311:884:5", + "nodes": [], "body": { "id": 4790, "nodeType": "Block", "src": "16336:859:5", + "nodes": [], "statements": [ { "expression": { @@ -19458,6 +19967,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16349:16:5", "memberName": "pauseGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9023, @@ -19473,6 +19983,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16346:21:5", @@ -19692,6 +20203,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17159:17:5", "memberName": "resumeGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9026, @@ -19707,6 +20219,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17156:22:5", @@ -19760,10 +20273,14 @@ "id": 4798, "nodeType": "UsingForDirective", "src": "17298:32:5", + "nodes": [], "global": false, "libraryName": { "id": 4795, "name": "stdStorage", + "nameLocations": [ + "17304:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 7522, "src": "17304:10:5" @@ -19774,6 +20291,9 @@ "pathNode": { "id": 4796, "name": "StdStorage", + "nameLocations": [ + "17319:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17319:10:5" @@ -19790,6 +20310,7 @@ "id": 4801, "nodeType": "VariableDeclaration", "src": "17336:27:5", + "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -19807,6 +20328,9 @@ "pathNode": { "id": 4799, "name": "StdStorage", + "nameLocations": [ + "17336:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17336:10:5" @@ -19824,6 +20348,7 @@ "id": 4818, "nodeType": "VariableDeclaration", "src": "17369:84:5", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -19841,6 +20366,9 @@ "pathNode": { "id": 4802, "name": "Vm", + "nameLocations": [ + "17369:2:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "17369:2:5" @@ -19903,6 +20431,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17421:28:5", @@ -19945,6 +20474,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17413:37:5", @@ -19987,6 +20517,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17405:46:5", @@ -20029,6 +20560,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17397:55:5", @@ -20063,6 +20595,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17394:59:5", @@ -20078,10 +20611,12 @@ "id": 4833, "nodeType": "FunctionDefinition", "src": "17530:93:5", + "nodes": [], "body": { "id": 4832, "nodeType": "Block", "src": "17575:48:5", + "nodes": [], "statements": [ { "expression": { @@ -20114,6 +20649,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17599:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17593:15:5", @@ -20167,6 +20703,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17588:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20182,6 +20719,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17585:31:5", @@ -20251,10 +20789,12 @@ "id": 4848, "nodeType": "FunctionDefinition", "src": "17629:95:5", + "nodes": [], "body": { "id": 4847, "nodeType": "Block", "src": "17676:48:5", + "nodes": [], "statements": [ { "expression": { @@ -20287,6 +20827,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17700:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17694:15:5", @@ -20340,6 +20881,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17689:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20355,6 +20897,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17686:31:5", @@ -20424,10 +20967,12 @@ "id": 4869, "nodeType": "FunctionDefinition", "src": "17787:106:5", + "nodes": [], "body": { "id": 4868, "nodeType": "Block", "src": "17831:62:5", + "nodes": [], "statements": [ { "expression": { @@ -20523,6 +21068,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17844:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -20538,6 +21084,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17841:22:5", @@ -20591,6 +21138,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17876:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -20606,6 +21154,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17873:13:5", @@ -20676,10 +21225,12 @@ "id": 4890, "nodeType": "FunctionDefinition", "src": "17899:116:5", + "nodes": [], "body": { "id": 4889, "nodeType": "Block", "src": "17957:58:5", + "nodes": [], "statements": [ { "expression": { @@ -20737,6 +21288,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17970:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -20752,6 +21304,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17967:18:5", @@ -20805,6 +21358,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17998:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -20820,6 +21374,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17995:13:5", @@ -20917,10 +21472,12 @@ "id": 4914, "nodeType": "FunctionDefinition", "src": "18021:130:5", + "nodes": [], "body": { "id": 4913, "nodeType": "Block", "src": "18081:70:5", + "nodes": [], "statements": [ { "expression": { @@ -21016,6 +21573,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18094:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21031,6 +21589,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18091:22:5", @@ -21100,6 +21659,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18126:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21115,6 +21675,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18123:21:5", @@ -21213,10 +21774,12 @@ "id": 4938, "nodeType": "FunctionDefinition", "src": "18157:140:5", + "nodes": [], "body": { "id": 4937, "nodeType": "Block", "src": "18231:66:5", + "nodes": [], "statements": [ { "expression": { @@ -21274,6 +21837,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18244:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21289,6 +21853,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18241:18:5", @@ -21358,6 +21923,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18272:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21373,6 +21939,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18269:21:5", @@ -21498,10 +22065,12 @@ "id": 4959, "nodeType": "FunctionDefinition", "src": "18368:116:5", + "nodes": [], "body": { "id": 4958, "nodeType": "Block", "src": "18417:67:5", + "nodes": [], "statements": [ { "expression": { @@ -21597,6 +22166,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18430:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21612,6 +22182,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18427:22:5", @@ -21665,6 +22236,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18462:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -21680,6 +22252,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18459:18:5", @@ -21750,10 +22323,12 @@ "id": 4980, "nodeType": "FunctionDefinition", "src": "18490:126:5", + "nodes": [], "body": { "id": 4979, "nodeType": "Block", "src": "18553:63:5", + "nodes": [], "statements": [ { "expression": { @@ -21811,6 +22386,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18566:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21826,6 +22402,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18563:18:5", @@ -21879,6 +22456,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18594:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -21894,6 +22472,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18591:18:5", @@ -21991,10 +22570,12 @@ "id": 5004, "nodeType": "FunctionDefinition", "src": "18735:140:5", + "nodes": [], "body": { "id": 5003, "nodeType": "Block", "src": "18800:75:5", + "nodes": [], "statements": [ { "expression": { @@ -22090,6 +22671,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18813:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22105,6 +22687,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18810:22:5", @@ -22174,6 +22757,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18845:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -22189,6 +22773,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18842:26:5", @@ -22287,10 +22872,12 @@ "id": 5028, "nodeType": "FunctionDefinition", "src": "18881:150:5", + "nodes": [], "body": { "id": 5027, "nodeType": "Block", "src": "18960:71:5", + "nodes": [], "statements": [ { "expression": { @@ -22348,6 +22935,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18973:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22363,6 +22951,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18970:18:5", @@ -22432,6 +23021,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19001:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -22447,6 +23037,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18998:26:5", @@ -22572,10 +23163,12 @@ "id": 5045, "nodeType": "FunctionDefinition", "src": "19037:110:5", + "nodes": [], "body": { "id": 5044, "nodeType": "Block", "src": "19088:59:5", + "nodes": [], "statements": [ { "expression": { @@ -22599,6 +23192,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19101:9:5", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9097, @@ -22614,6 +23208,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19098:14:5", @@ -22667,6 +23262,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19125:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -22682,6 +23278,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19122:18:5", @@ -22752,10 +23349,12 @@ "id": 5060, "nodeType": "FunctionDefinition", "src": "19238:91:5", + "nodes": [], "body": { "id": 5059, "nodeType": "Block", "src": "19295:34:5", + "nodes": [], "statements": [ { "expression": { @@ -22813,6 +23412,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19308:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22828,6 +23428,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19305:17:5", @@ -22925,10 +23526,12 @@ "id": 5077, "nodeType": "FunctionDefinition", "src": "19453:117:5", + "nodes": [], "body": { "id": 5076, "nodeType": "Block", "src": "19525:45:5", + "nodes": [], "statements": [ { "expression": { @@ -23026,6 +23629,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19535:28:5", @@ -23151,10 +23755,12 @@ "id": 5180, "nodeType": "FunctionDefinition", "src": "19576:825:5", + "nodes": [], "body": { "id": 5179, "nodeType": "Block", "src": "19661:740:5", + "nodes": [], "statements": [ { "assignments": [ @@ -23253,6 +23859,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19744:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "19740:22:5", @@ -23267,6 +23874,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19740:38:5", @@ -23301,6 +23909,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19735:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "19729:10:5", @@ -23315,6 +23924,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19729:50:5", @@ -23440,6 +24050,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19811:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "19807:10:5", @@ -23454,6 +24065,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19807:30:5", @@ -23576,6 +24188,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19883:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -23591,6 +24204,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:22:5", @@ -23605,6 +24219,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19897:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -23620,6 +24235,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:38:5", @@ -23634,6 +24250,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19913:8:5", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 7097, @@ -23649,6 +24266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:51:5", @@ -23663,6 +24281,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19926:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -23678,6 +24297,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:71:5", @@ -23793,6 +24413,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20058:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "20054:22:5", @@ -23807,6 +24428,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20054:34:5", @@ -23841,6 +24463,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20049:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "20043:10:5", @@ -23855,6 +24478,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20043:46:5", @@ -23980,6 +24604,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20124:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "20120:10:5", @@ -23994,6 +24619,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20120:33:5", @@ -24333,6 +24959,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "20333:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -24348,6 +24975,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:22:5", @@ -24362,6 +24990,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "20347:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -24377,6 +25006,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:38:5", @@ -24391,6 +25021,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "20363:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -24406,6 +25037,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:60:5", @@ -24564,6 +25196,9 @@ "baseName": { "id": 4793, "name": "StdCheatsSafe", + "nameLocations": [ + "17278:13:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 4792, "src": "17278:13:5" diff --git a/out/StdCheats.sol/StdCheatsSafe.json b/out/StdCheats.sol/StdCheatsSafe.json index bf99edd..8fd3a8f 100644 --- a/out/StdCheats.sol/StdCheatsSafe.json +++ b/out/StdCheats.sol/StdCheatsSafe.json @@ -11,6 +11,70 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdCheats.sol\":\"StdCheatsSafe\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdCheats.sol": "StdCheatsSafe" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdCheats.sol", "id": 5182, @@ -38,6 +102,7 @@ "id": 3246, "nodeType": "PragmaDirective", "src": "32:31:5", + "nodes": [], "literals": [ "solidity", ">=", @@ -52,6 +117,7 @@ "id": 3247, "nodeType": "PragmaDirective", "src": "65:33:5", + "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -61,6 +127,7 @@ "id": 3250, "nodeType": "ImportDirective", "src": "100:56:5", + "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -98,6 +165,7 @@ "id": 3252, "nodeType": "ImportDirective", "src": "157:28:5", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -128,6 +196,7 @@ "id": 3269, "nodeType": "VariableDeclaration", "src": "225:84:5", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -145,6 +214,9 @@ "pathNode": { "id": 3253, "name": "Vm", + "nameLocations": [ + "225:2:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "225:2:5" @@ -207,6 +279,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "277:28:5", @@ -249,6 +322,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "269:37:5", @@ -291,6 +365,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "261:46:5", @@ -333,6 +408,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "253:55:5", @@ -367,6 +443,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "250:59:5", @@ -382,6 +459,7 @@ "id": 3271, "nodeType": "VariableDeclaration", "src": "316:27:5", + "nodes": [], "constant": false, "mutability": "mutable", "name": "gasMeteringOff", @@ -409,6 +487,7 @@ "id": 3288, "nodeType": "StructDefinition", "src": "588:325:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559", "members": [ { @@ -577,6 +656,9 @@ "pathNode": { "id": 3283, "name": "RawTx1559Detail", + "nameLocations": [ + "825:15:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "825:15:5" @@ -627,6 +709,7 @@ "id": 3307, "nodeType": "StructDefinition", "src": "919:208:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawTx1559Detail", "members": [ { @@ -651,6 +734,9 @@ "pathNode": { "id": 3289, "name": "AccessList", + "nameLocations": [ + "952:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "952:10:5" @@ -873,6 +959,7 @@ "id": 3324, "nodeType": "StructDefinition", "src": "1133:215:5", + "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559", "members": [ { @@ -1041,6 +1128,9 @@ "pathNode": { "id": 3319, "name": "Tx1559Detail", + "nameLocations": [ + "1297:12:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "1297:12:5" @@ -1091,6 +1181,7 @@ "id": 3343, "nodeType": "StructDefinition", "src": "1354:213:5", + "nodes": [], "canonicalName": "StdCheatsSafe.Tx1559Detail", "members": [ { @@ -1115,6 +1206,9 @@ "pathNode": { "id": 3325, "name": "AccessList", + "nameLocations": [ + "1384:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "1384:10:5" @@ -1337,6 +1431,7 @@ "id": 3360, "nodeType": "StructDefinition", "src": "1818:221:5", + "nodes": [], "canonicalName": "StdCheatsSafe.TxLegacy", "members": [ { @@ -1532,6 +1627,9 @@ "pathNode": { "id": 3357, "name": "TxDetailLegacy", + "nameLocations": [ + "2006:14:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3393, "src": "2006:14:5" @@ -1555,6 +1653,7 @@ "id": 3393, "nodeType": "StructDefinition", "src": "2045:366:5", + "nodes": [], "canonicalName": "StdCheatsSafe.TxDetailLegacy", "members": [ { @@ -1579,6 +1678,9 @@ "pathNode": { "id": 3361, "name": "AccessList", + "nameLocations": [ + "2077:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3399, "src": "2077:10:5" @@ -1990,6 +2092,7 @@ "id": 3399, "nodeType": "StructDefinition", "src": "2417:87:5", + "nodes": [], "canonicalName": "StdCheatsSafe.AccessList", "members": [ { @@ -2066,6 +2169,7 @@ "id": 3428, "nodeType": "StructDefinition", "src": "2720:385:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawReceipt", "members": [ { @@ -2281,6 +2385,9 @@ "pathNode": { "id": 3414, "name": "RawReceiptLog", + "nameLocations": [ + "2946:13:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "2946:13:5" @@ -2448,6 +2555,7 @@ "id": 3457, "nodeType": "StructDefinition", "src": "3111:391:5", + "nodes": [], "canonicalName": "StdCheatsSafe.Receipt", "members": [ { @@ -2663,6 +2771,9 @@ "pathNode": { "id": 3443, "name": "ReceiptLog", + "nameLocations": [ + "3342:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "3342:10:5" @@ -2830,6 +2941,7 @@ "id": 3480, "nodeType": "StructDefinition", "src": "3625:227:5", + "nodes": [], "canonicalName": "StdCheatsSafe.EIP1559ScriptArtifact", "members": [ { @@ -2953,6 +3065,9 @@ "pathNode": { "id": 3466, "name": "Receipt", + "nameLocations": [ + "3739:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "3739:7:5" @@ -3023,6 +3138,9 @@ "pathNode": { "id": 3472, "name": "Tx1559", + "nameLocations": [ + "3794:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "3794:6:5" @@ -3066,6 +3184,9 @@ "pathNode": { "id": 3476, "name": "TxReturn", + "nameLocations": [ + "3825:8:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "3825:8:5" @@ -3097,6 +3218,7 @@ "id": 3503, "nodeType": "StructDefinition", "src": "3858:236:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawEIP1559ScriptArtifact", "members": [ { @@ -3220,6 +3342,9 @@ "pathNode": { "id": 3489, "name": "RawReceipt", + "nameLocations": [ + "3975:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "3975:10:5" @@ -3263,6 +3388,9 @@ "pathNode": { "id": 3493, "name": "TxReturn", + "nameLocations": [ + "4006:8:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3550, "src": "4006:8:5" @@ -3333,6 +3461,9 @@ "pathNode": { "id": 3499, "name": "RawTx1559", + "nameLocations": [ + "4063:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "4063:9:5" @@ -3364,6 +3495,7 @@ "id": 3525, "nodeType": "StructDefinition", "src": "4100:334:5", + "nodes": [], "canonicalName": "StdCheatsSafe.RawReceiptLog", "members": [ { @@ -3656,6 +3788,7 @@ "id": 3545, "nodeType": "StructDefinition", "src": "4440:306:5", + "nodes": [], "canonicalName": "StdCheatsSafe.ReceiptLog", "members": [ { @@ -3921,6 +4054,7 @@ "id": 3550, "nodeType": "StructDefinition", "src": "4752:74:5", + "nodes": [], "canonicalName": "StdCheatsSafe.TxReturn", "members": [ { @@ -3987,10 +4121,12 @@ "id": 3565, "nodeType": "FunctionDefinition", "src": "4832:274:5", + "nodes": [], "body": { "id": 3564, "nodeType": "Block", "src": "4892:214:5", + "nodes": [], "statements": [ { "assignments": [ @@ -4130,6 +4266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5065:34:5", @@ -4200,10 +4337,12 @@ "id": 3708, "nodeType": "FunctionDefinition", "src": "5112:1788:5", + "nodes": [], "body": { "id": 3707, "nodeType": "Block", "src": "5194:1706:5", + "nodes": [], "statements": [ { "expression": { @@ -4293,6 +4432,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5499:12:5", @@ -4385,6 +4525,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5522:12:5", @@ -4431,6 +4572,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5485:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -4446,6 +4588,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5482:53:5", @@ -4888,6 +5031,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6446:51:5", @@ -4980,6 +5124,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6508:51:5", @@ -5026,6 +5171,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6432:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5041,6 +5187,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6429:131:5", @@ -5142,6 +5289,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6591:51:5", @@ -5234,6 +5382,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6653:51:5", @@ -5280,6 +5429,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6577:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5295,6 +5445,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6574:131:5", @@ -5396,6 +5547,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6736:51:5", @@ -5488,6 +5640,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6798:51:5", @@ -5534,6 +5687,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6722:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5549,6 +5703,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6719:131:5", @@ -5661,6 +5816,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6113:51:5", @@ -5753,6 +5909,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6175:51:5", @@ -5799,6 +5956,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6099:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -5814,6 +5972,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6096:131:5", @@ -5926,6 +6085,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5799:51:5", @@ -6018,6 +6178,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5861:51:5", @@ -6064,6 +6225,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5785:6:5", "memberName": "assume", "nodeType": "MemberAccess", "referencedDeclaration": 9020, @@ -6079,6 +6241,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5782:131:5", @@ -6179,10 +6342,12 @@ "id": 3800, "nodeType": "FunctionDefinition", "src": "6906:843:5", + "nodes": [], "body": { "id": 3799, "nodeType": "Block", "src": "7058:691:5", + "nodes": [], "statements": [ { "assignments": [ @@ -6257,6 +6422,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7092:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -6272,6 +6438,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7089:17:5", @@ -6357,6 +6524,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7145:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8816, @@ -6372,6 +6540,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7142:18:5", @@ -6410,6 +6579,9 @@ "pathNode": { "id": 3730, "name": "RawEIP1559ScriptArtifact", + "nameLocations": [ + "7170:24:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3503, "src": "7170:24:5" @@ -6496,6 +6668,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7220:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "7216:10:5", @@ -6510,6 +6683,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7216:50:5", @@ -6548,6 +6722,9 @@ "pathNode": { "id": 3740, "name": "EIP1559ScriptArtifact", + "nameLocations": [ + "7276:21:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7276:21:5" @@ -6591,6 +6768,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7332:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3460, @@ -6620,6 +6798,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7356:9:5", "memberName": "libraries", "nodeType": "MemberAccess", "referencedDeclaration": 3483, @@ -6664,6 +6843,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7384:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3462, @@ -6693,6 +6873,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7403:4:5", "memberName": "path", "nodeType": "MemberAccess", "referencedDeclaration": 3485, @@ -6737,6 +6918,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7426:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3471, @@ -6766,6 +6948,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7450:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": 3498, @@ -6810,6 +6993,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7478:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3465, @@ -6839,6 +7023,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7500:7:5", "memberName": "pending", "nodeType": "MemberAccess", "referencedDeclaration": 3488, @@ -6883,6 +7068,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7526:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3479, @@ -6912,6 +7098,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7550:9:5", "memberName": "txReturns", "nodeType": "MemberAccess", "referencedDeclaration": 3496, @@ -6956,6 +7143,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7578:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3469, @@ -6987,6 +7175,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7624:8:5", "memberName": "receipts", "nodeType": "MemberAccess", "referencedDeclaration": 3492, @@ -7021,6 +7210,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7589:44:5", @@ -7065,6 +7255,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "7652:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3475, @@ -7096,6 +7287,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7704:12:5", "memberName": "transactions", "nodeType": "MemberAccess", "referencedDeclaration": 3502, @@ -7130,6 +7322,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7667:50:5", @@ -7233,6 +7426,9 @@ "pathNode": { "id": 3712, "name": "EIP1559ScriptArtifact", + "nameLocations": [ + "7024:21:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3480, "src": "7024:21:5" @@ -7258,10 +7454,12 @@ "id": 3849, "nodeType": "FunctionDefinition", "src": "7755:312:5", + "nodes": [], "body": { "id": 3848, "nodeType": "Block", "src": "7864:203:5", + "nodes": [], "statements": [ { "assignments": [ @@ -7290,6 +7488,9 @@ "pathNode": { "id": 3812, "name": "Tx1559", + "nameLocations": [ + "7874:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7874:6:5" @@ -7333,6 +7534,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7916:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7909:13:5", @@ -7367,6 +7569,9 @@ "pathNode": { "id": 3816, "name": "Tx1559", + "nameLocations": [ + "7900:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7900:6:5" @@ -7393,6 +7598,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7896:27:5", @@ -7521,6 +7727,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7996:34:5", @@ -7584,6 +7791,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7960:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "7953:13:5", @@ -7722,6 +7930,9 @@ "pathNode": { "id": 3801, "name": "RawTx1559", + "nameLocations": [ + "7789:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "7789:9:5" @@ -7772,6 +7983,9 @@ "pathNode": { "id": 3806, "name": "Tx1559", + "nameLocations": [ + "7847:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "7847:6:5" @@ -7805,10 +8019,12 @@ "id": 3909, "nodeType": "FunctionDefinition", "src": "8073:488:5", + "nodes": [], "body": { "id": 3908, "nodeType": "Block", "src": "8176:385:5", + "nodes": [], "statements": [ { "assignments": [ @@ -7836,6 +8052,9 @@ "pathNode": { "id": 3858, "name": "Tx1559", + "nameLocations": [ + "8186:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8186:6:5" @@ -7879,6 +8098,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8233:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3310, @@ -7908,6 +8128,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8251:9:5", "memberName": "arguments", "nodeType": "MemberAccess", "referencedDeclaration": 3274, @@ -7952,6 +8173,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8282:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3314, @@ -7981,6 +8203,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8303:12:5", "memberName": "contractName", "nodeType": "MemberAccess", "referencedDeclaration": 3278, @@ -8025,6 +8248,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8337:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3316, @@ -8054,6 +8278,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8357:11:5", "memberName": "functionSig", "nodeType": "MemberAccess", "referencedDeclaration": 3280, @@ -8098,6 +8323,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8390:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3318, @@ -8127,6 +8353,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8403:4:5", "memberName": "hash", "nodeType": "MemberAccess", "referencedDeclaration": 3282, @@ -8171,6 +8398,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8429:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3321, @@ -8202,6 +8430,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8474:8:5", "memberName": "txDetail", "nodeType": "MemberAccess", "referencedDeclaration": 3285, @@ -8236,6 +8465,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8440:43:5", @@ -8280,6 +8510,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8505:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3323, @@ -8309,6 +8540,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8520:6:5", "memberName": "opcode", "nodeType": "MemberAccess", "referencedDeclaration": 3287, @@ -8378,6 +8610,9 @@ "pathNode": { "id": 3850, "name": "RawTx1559", + "nameLocations": [ + "8106:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "8106:9:5" @@ -8419,6 +8654,9 @@ "pathNode": { "id": 3854, "name": "Tx1559", + "nameLocations": [ + "8161:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "8161:6:5" @@ -8444,10 +8682,12 @@ "id": 3989, "nodeType": "FunctionDefinition", "src": "8567:619:5", + "nodes": [], "body": { "id": 3988, "nodeType": "Block", "src": "8726:460:5", + "nodes": [], "statements": [ { "assignments": [ @@ -8475,6 +8715,9 @@ "pathNode": { "id": 3918, "name": "Tx1559Detail", + "nameLocations": [ + "8736:12:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8736:12:5" @@ -8518,6 +8761,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8783:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3330, @@ -8547,6 +8791,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8800:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3294, @@ -8591,6 +8836,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8823:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3332, @@ -8620,6 +8866,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8840:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3296, @@ -8664,6 +8911,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8863:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3338, @@ -8693,6 +8941,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8878:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3302, @@ -8737,6 +8986,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8899:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3336, @@ -8768,6 +9018,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8930:5:5", "memberName": "nonce", "nodeType": "MemberAccess", "referencedDeclaration": 3300, @@ -8802,6 +9053,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:29:5", @@ -8846,6 +9098,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "8955:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3340, @@ -8877,6 +9130,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8987:6:5", "memberName": "txType", "nodeType": "MemberAccess", "referencedDeclaration": 3304, @@ -8911,6 +9165,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8964:30:5", @@ -8955,6 +9210,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "9013:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3342, @@ -8986,6 +9242,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9044:5:5", "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": 3306, @@ -9020,6 +9277,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9021:29:5", @@ -9064,6 +9322,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "9069:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3334, @@ -9095,6 +9354,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9098:3:5", "memberName": "gas", "nodeType": "MemberAccess", "referencedDeclaration": 3298, @@ -9129,6 +9389,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9075:27:5", @@ -9173,6 +9434,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "9121:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3328, @@ -9202,6 +9464,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9144:10:5", "memberName": "accessList", "nodeType": "MemberAccess", "referencedDeclaration": 3292, @@ -9271,6 +9534,9 @@ "pathNode": { "id": 3910, "name": "RawTx1559Detail", + "nameLocations": [ + "8604:15:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3307, "src": "8604:15:5" @@ -9312,6 +9578,9 @@ "pathNode": { "id": 3914, "name": "Tx1559Detail", + "nameLocations": [ + "8701:12:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3343, "src": "8701:12:5" @@ -9337,10 +9606,12 @@ "id": 4031, "nodeType": "FunctionDefinition", "src": "9192:363:5", + "nodes": [], "body": { "id": 4030, "nodeType": "Block", "src": "9281:274:5", + "nodes": [], "statements": [ { "assignments": [ @@ -9415,6 +9686,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9321:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -9430,6 +9702,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9318:17:5", @@ -9535,6 +9808,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9380:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -9550,6 +9824,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9377:41:5", @@ -9589,6 +9864,9 @@ "pathNode": { "id": 4014, "name": "RawTx1559", + "nameLocations": [ + "9428:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9428:9:5" @@ -9696,6 +9974,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9460:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9456:10:5", @@ -9710,6 +9989,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9456:43:5", @@ -9762,6 +10042,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9516:32:5", @@ -9843,6 +10124,9 @@ "pathNode": { "id": 3993, "name": "Tx1559", + "nameLocations": [ + "9264:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9264:6:5" @@ -9876,10 +10160,12 @@ "id": 4086, "nodeType": "FunctionDefinition", "src": "9561:453:5", + "nodes": [], "body": { "id": 4085, "nodeType": "Block", "src": "9662:352:5", + "nodes": [], "statements": [ { "assignments": [ @@ -9954,6 +10240,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9702:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -9969,6 +10256,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9699:17:5", @@ -10074,6 +10362,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9791:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -10089,6 +10378,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9788:18:5", @@ -10147,6 +10437,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9757:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9753:16:5", @@ -10161,6 +10452,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9753:59:5", @@ -10203,6 +10495,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9746:67:5", @@ -10304,6 +10597,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9858:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -10319,6 +10613,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9855:29:5", @@ -10357,6 +10652,9 @@ "pathNode": { "id": 4071, "name": "RawTx1559", + "nameLocations": [ + "9894:9:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3288, "src": "9894:9:5" @@ -10443,6 +10741,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9923:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "9919:10:5", @@ -10457,6 +10756,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9919:41:5", @@ -10509,6 +10809,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9977:30:5", @@ -10616,6 +10917,9 @@ "pathNode": { "id": 4037, "name": "Tx1559", + "nameLocations": [ + "9647:6:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3324, "src": "9647:6:5" @@ -10641,10 +10945,12 @@ "id": 4128, "nodeType": "FunctionDefinition", "src": "10076:371:5", + "nodes": [], "body": { "id": 4127, "nodeType": "Block", "src": "10167:280:5", + "nodes": [], "statements": [ { "assignments": [ @@ -10719,6 +11025,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10207:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -10734,6 +11041,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10204:17:5", @@ -10839,6 +11147,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10266:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -10854,6 +11163,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10263:37:5", @@ -10893,6 +11203,9 @@ "pathNode": { "id": 4111, "name": "RawReceipt", + "nameLocations": [ + "10310:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10310:10:5" @@ -11000,6 +11313,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10348:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10344:10:5", @@ -11014,6 +11328,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10344:44:5", @@ -11066,6 +11381,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10405:35:5", @@ -11147,6 +11463,9 @@ "pathNode": { "id": 4090, "name": "Receipt", + "nameLocations": [ + "10149:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10149:7:5" @@ -11180,10 +11499,12 @@ "id": 4183, "nodeType": "FunctionDefinition", "src": "10453:461:5", + "nodes": [], "body": { "id": 4182, "nodeType": "Block", "src": "10556:358:5", + "nodes": [], "statements": [ { "assignments": [ @@ -11258,6 +11579,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10596:8:5", "memberName": "readFile", "nodeType": "MemberAccess", "referencedDeclaration": 8621, @@ -11273,6 +11595,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10593:17:5", @@ -11378,6 +11701,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10681:8:5", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8714, @@ -11393,6 +11717,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10678:18:5", @@ -11451,6 +11776,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10651:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "10647:16:5", @@ -11465,6 +11791,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10647:55:5", @@ -11507,6 +11834,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10640:63:5", @@ -11608,6 +11936,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10748:9:5", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -11623,6 +11952,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10745:29:5", @@ -11661,6 +11991,9 @@ "pathNode": { "id": 4168, "name": "RawReceipt", + "nameLocations": [ + "10784:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10784:10:5" @@ -11747,6 +12080,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10819:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "10815:10:5", @@ -11761,6 +12095,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10815:42:5", @@ -11813,6 +12148,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10874:33:5", @@ -11920,6 +12256,9 @@ "pathNode": { "id": 4134, "name": "Receipt", + "nameLocations": [ + "10540:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "10540:7:5" @@ -11945,10 +12284,12 @@ "id": 4232, "nodeType": "FunctionDefinition", "src": "10920:347:5", + "nodes": [], "body": { "id": 4231, "nodeType": "Block", "src": "11034:233:5", + "nodes": [], "statements": [ { "assignments": [ @@ -11977,6 +12318,9 @@ "pathNode": { "id": 4195, "name": "Receipt", + "nameLocations": [ + "11044:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11044:7:5" @@ -12020,6 +12364,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11098:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11086:18:5", @@ -12054,6 +12399,9 @@ "pathNode": { "id": 4199, "name": "Receipt", + "nameLocations": [ + "11076:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11076:7:5" @@ -12080,6 +12428,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11072:33:5", @@ -12208,6 +12557,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11188:37:5", @@ -12271,6 +12621,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11147:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "11135:18:5", @@ -12409,6 +12760,9 @@ "pathNode": { "id": 4184, "name": "RawReceipt", + "nameLocations": [ + "10952:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "10952:10:5" @@ -12459,6 +12813,9 @@ "pathNode": { "id": 4189, "name": "Receipt", + "nameLocations": [ + "11016:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11016:7:5" @@ -12492,10 +12849,12 @@ "id": 4353, "nodeType": "FunctionDefinition", "src": "11273:962:5", + "nodes": [], "body": { "id": 4352, "nodeType": "Block", "src": "11381:854:5", + "nodes": [], "statements": [ { "assignments": [ @@ -12523,6 +12882,9 @@ "pathNode": { "id": 4241, "name": "Receipt", + "nameLocations": [ + "11391:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11391:7:5" @@ -12566,6 +12928,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11431:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3430, @@ -12595,6 +12958,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11454:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3401, @@ -12639,6 +13003,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11481:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3452, @@ -12668,6 +13033,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11497:2:5", "memberName": "to", "nodeType": "MemberAccess", "referencedDeclaration": 3423, @@ -12712,6 +13078,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11517:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3440, @@ -12741,6 +13108,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11535:4:5", "memberName": "from", "nodeType": "MemberAccess", "referencedDeclaration": 3411, @@ -12785,6 +13153,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11557:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3434, @@ -12814,6 +13183,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11586:15:5", "memberName": "contractAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3405, @@ -12858,6 +13228,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11619:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3438, @@ -12889,6 +13260,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11663:17:5", "memberName": "effectiveGasPrice", "nodeType": "MemberAccess", "referencedDeclaration": 3409, @@ -12923,6 +13295,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11639:42:5", @@ -12967,6 +13340,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11699:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3436, @@ -12998,6 +13372,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11743:17:5", "memberName": "cumulativeGasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3407, @@ -13032,6 +13407,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11719:42:5", @@ -13076,6 +13452,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11779:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3442, @@ -13107,6 +13484,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11813:7:5", "memberName": "gasUsed", "nodeType": "MemberAccess", "referencedDeclaration": 3413, @@ -13141,6 +13519,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11789:32:5", @@ -13185,6 +13564,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11839:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3450, @@ -13216,6 +13596,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11872:6:5", "memberName": "status", "nodeType": "MemberAccess", "referencedDeclaration": 3421, @@ -13250,6 +13631,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11848:31:5", @@ -13294,6 +13676,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11897:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3456, @@ -13325,6 +13708,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "11940:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3427, @@ -13359,6 +13743,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11916:41:5", @@ -13403,6 +13788,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "11975:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3432, @@ -13434,6 +13820,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12013:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3403, @@ -13468,6 +13855,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11989:36:5", @@ -13512,6 +13900,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12043:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3446, @@ -13543,6 +13932,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12087:4:5", "memberName": "logs", "nodeType": "MemberAccess", "referencedDeclaration": 3417, @@ -13577,6 +13967,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12050:42:5", @@ -13621,6 +14012,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12110:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3448, @@ -13650,6 +14042,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12133:9:5", "memberName": "logsBloom", "nodeType": "MemberAccess", "referencedDeclaration": 3419, @@ -13694,6 +14087,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12160:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3454, @@ -13723,6 +14117,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12189:15:5", "memberName": "transactionHash", "nodeType": "MemberAccess", "referencedDeclaration": 3425, @@ -13792,6 +14187,9 @@ "pathNode": { "id": 4233, "name": "RawReceipt", + "nameLocations": [ + "11304:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3428, "src": "11304:10:5" @@ -13833,6 +14231,9 @@ "pathNode": { "id": 4237, "name": "Receipt", + "nameLocations": [ + "11365:7:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3457, "src": "11365:7:5" @@ -13858,10 +14259,12 @@ "id": 4490, "nodeType": "FunctionDefinition", "src": "12241:873:5", + "nodes": [], "body": { "id": 4489, "nodeType": "Block", "src": "12396:718:5", + "nodes": [], "statements": [ { "assignments": [ @@ -13890,6 +14293,9 @@ "pathNode": { "id": 4365, "name": "ReceiptLog", + "nameLocations": [ + "12406:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12406:10:5" @@ -13933,6 +14339,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12458:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12450:14:5", @@ -13967,6 +14374,9 @@ "pathNode": { "id": 4369, "name": "ReceiptLog", + "nameLocations": [ + "12437:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12437:10:5" @@ -13993,6 +14403,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12433:32:5", @@ -14061,6 +14472,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12538:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3527, @@ -14115,6 +14527,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12562:10:5", "memberName": "logAddress", "nodeType": "MemberAccess", "referencedDeclaration": 3505, @@ -14184,6 +14597,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12594:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3529, @@ -14238,6 +14652,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12617:9:5", "memberName": "blockHash", "nodeType": "MemberAccess", "referencedDeclaration": 3507, @@ -14307,6 +14722,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12648:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3531, @@ -14363,6 +14779,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12686:11:5", "memberName": "blockNumber", "nodeType": "MemberAccess", "referencedDeclaration": 3509, @@ -14397,6 +14814,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12662:36:5", @@ -14466,6 +14884,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12720:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3533, @@ -14520,6 +14939,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12738:4:5", "memberName": "data", "nodeType": "MemberAccess", "referencedDeclaration": 3511, @@ -14589,6 +15009,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12764:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3535, @@ -14645,6 +15066,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12799:8:5", "memberName": "logIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3513, @@ -14679,6 +15101,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12775:33:5", @@ -14748,6 +15171,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12830:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3538, @@ -14802,6 +15226,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12850:6:5", "memberName": "topics", "nodeType": "MemberAccess", "referencedDeclaration": 3518, @@ -14871,6 +15296,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12878:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3540, @@ -14927,6 +15353,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "12921:16:5", "memberName": "transactionIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3522, @@ -14961,6 +15388,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12897:41:5", @@ -15030,6 +15458,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "12960:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3542, @@ -15086,6 +15515,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "13006:19:5", "memberName": "transactionLogIndex", "nodeType": "MemberAccess", "referencedDeclaration": 3524, @@ -15120,6 +15550,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12982:44:5", @@ -15189,6 +15620,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "13048:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3544, @@ -15243,6 +15675,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "13069:7:5", "memberName": "removed", "nodeType": "MemberAccess", "referencedDeclaration": 3515, @@ -15306,6 +15739,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12503:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "12495:14:5", @@ -15444,6 +15878,9 @@ "pathNode": { "id": 4354, "name": "RawReceiptLog", + "nameLocations": [ + "12276:13:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3525, "src": "12276:13:5" @@ -15494,6 +15931,9 @@ "pathNode": { "id": 4359, "name": "ReceiptLog", + "nameLocations": [ + "12371:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3545, "src": "12371:10:5" @@ -15527,10 +15967,12 @@ "id": 4522, "nodeType": "FunctionDefinition", "src": "13274:416:5", + "nodes": [], "body": { "id": 4521, "nodeType": "Block", "src": "13373:317:5", + "nodes": [], "statements": [ { "assignments": [ @@ -15607,6 +16049,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13427:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -15622,6 +16065,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13424:16:5", @@ -15672,6 +16116,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13411:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "13407:16:5", @@ -15686,6 +16131,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13407:40:5", @@ -15880,6 +16326,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13614:10:5", @@ -15943,6 +16390,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13598:85:5", @@ -16068,10 +16516,12 @@ "id": 4548, "nodeType": "FunctionDefinition", "src": "13696:367:5", + "nodes": [], "body": { "id": 4547, "nodeType": "Block", "src": "13776:287:5", + "nodes": [], "statements": [ { "assignments": [ @@ -16146,6 +16596,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13813:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16161,6 +16612,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13810:16:5", @@ -16355,6 +16807,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13993:10:5", @@ -16418,6 +16871,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13977:79:5", @@ -16516,10 +16970,12 @@ "id": 4583, "nodeType": "FunctionDefinition", "src": "14125:439:5", + "nodes": [], "body": { "id": 4582, "nodeType": "Block", "src": "14237:327:5", + "nodes": [], "statements": [ { "assignments": [ @@ -16596,6 +17052,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14291:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -16611,6 +17068,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14288:16:5", @@ -16661,6 +17119,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14275:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14271:16:5", @@ -16675,6 +17134,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14271:40:5", @@ -16874,6 +17334,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14480:10:5", @@ -16937,6 +17398,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14464:93:5", @@ -17095,10 +17557,12 @@ "id": 4611, "nodeType": "FunctionDefinition", "src": "14570:390:5", + "nodes": [], "body": { "id": 4610, "nodeType": "Block", "src": "14663:297:5", + "nodes": [], "statements": [ { "assignments": [ @@ -17173,6 +17637,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14700:7:5", "memberName": "getCode", "nodeType": "MemberAccess", "referencedDeclaration": 8571, @@ -17188,6 +17653,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14697:16:5", @@ -17387,6 +17853,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14882:10:5", @@ -17450,6 +17917,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14866:87:5", @@ -17575,10 +18043,12 @@ "id": 4647, "nodeType": "FunctionDefinition", "src": "15033:242:5", + "nodes": [], "body": { "id": 4646, "nodeType": "Block", "src": "15137:138:5", + "nodes": [], "statements": [ { "expression": { @@ -17644,6 +18114,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15182:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15178:16:5", @@ -17658,6 +18129,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15178:22:5", @@ -17692,6 +18164,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15168:33:5", @@ -17734,6 +18207,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15160:42:5", @@ -17813,6 +18287,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15222:4:5", "memberName": "addr", "nodeType": "MemberAccess", "referencedDeclaration": 8255, @@ -17828,6 +18303,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15219:19:5", @@ -17903,6 +18379,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15251:5:5", "memberName": "label", "nodeType": "MemberAccess", "referencedDeclaration": 8585, @@ -17918,6 +18395,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15248:20:5", @@ -18043,10 +18521,12 @@ "id": 4662, "nodeType": "FunctionDefinition", "src": "15314:125:5", + "nodes": [], "body": { "id": 4661, "nodeType": "Block", "src": "15392:47:5", + "nodes": [], "statements": [ { "expression": { @@ -18125,6 +18605,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15412:20:5", @@ -18229,10 +18710,12 @@ "id": 4689, "nodeType": "FunctionDefinition", "src": "15445:253:5", + "nodes": [], "body": { "id": 4688, "nodeType": "Block", "src": "15597:101:5", + "nodes": [], "statements": [ { "expression": { @@ -18310,6 +18793,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15623:9:5", "memberName": "deriveKey", "nodeType": "MemberAccess", "referencedDeclaration": 8782, @@ -18325,6 +18809,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15620:29:5", @@ -18404,6 +18889,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15668:11:5", "memberName": "rememberKey", "nodeType": "MemberAccess", "referencedDeclaration": 8800, @@ -18419,6 +18905,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15665:26:5", @@ -18577,10 +19064,12 @@ "id": 4723, "nodeType": "FunctionDefinition", "src": "15704:253:5", + "nodes": [], "body": { "id": 4722, "nodeType": "Block", "src": "15773:184:5", + "nodes": [], "statements": [ { "expression": { @@ -18613,6 +19102,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15793:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15791:8:5", @@ -18693,6 +19183,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15783:82:5", @@ -18759,6 +19250,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15927:6:5", "memberName": "length", "nodeType": "MemberAccess", "src": "15925:8:5", @@ -18809,6 +19301,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15910:24:5", @@ -18859,6 +19352,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15897:12:5", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15893:16:5", @@ -18873,6 +19367,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15893:45:5", @@ -18947,6 +19442,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15886:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "15882:10:5", @@ -18961,6 +19457,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15882:68:5", @@ -19059,10 +19556,12 @@ "id": 4744, "nodeType": "FunctionDefinition", "src": "15963:160:5", + "nodes": [], "body": { "id": 4743, "nodeType": "Block", "src": "16025:98:5", + "nodes": [], "statements": [ { "clauses": [ @@ -19194,6 +19693,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16042:10:5", "memberName": "activeFork", "nodeType": "MemberAccess", "referencedDeclaration": 9265, @@ -19209,6 +19709,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16039:15:5", @@ -19278,10 +19779,12 @@ "id": 4753, "nodeType": "ModifierDefinition", "src": "16129:84:5", + "nodes": [], "body": { "id": 4752, "nodeType": "Block", "src": "16156:57:5", + "nodes": [], "statements": [ { "condition": { @@ -19315,6 +19818,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16171:8:5", @@ -19362,10 +19866,12 @@ "id": 4761, "nodeType": "ModifierDefinition", "src": "16219:86:5", + "nodes": [], "body": { "id": 4760, "nodeType": "Block", "src": "16249:56:5", + "nodes": [], "statements": [ { "condition": { @@ -19389,6 +19895,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16263:8:5", @@ -19431,10 +19938,12 @@ "id": 4791, "nodeType": "ModifierDefinition", "src": "16311:884:5", + "nodes": [], "body": { "id": 4790, "nodeType": "Block", "src": "16336:859:5", + "nodes": [], "statements": [ { "expression": { @@ -19458,6 +19967,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16349:16:5", "memberName": "pauseGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9023, @@ -19473,6 +19983,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16346:21:5", @@ -19692,6 +20203,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17159:17:5", "memberName": "resumeGasMetering", "nodeType": "MemberAccess", "referencedDeclaration": 9026, @@ -19707,6 +20219,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17156:22:5", @@ -19760,10 +20273,14 @@ "id": 4798, "nodeType": "UsingForDirective", "src": "17298:32:5", + "nodes": [], "global": false, "libraryName": { "id": 4795, "name": "stdStorage", + "nameLocations": [ + "17304:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 7522, "src": "17304:10:5" @@ -19774,6 +20291,9 @@ "pathNode": { "id": 4796, "name": "StdStorage", + "nameLocations": [ + "17319:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17319:10:5" @@ -19790,6 +20310,7 @@ "id": 4801, "nodeType": "VariableDeclaration", "src": "17336:27:5", + "nodes": [], "constant": false, "mutability": "mutable", "name": "stdstore", @@ -19807,6 +20328,9 @@ "pathNode": { "id": 4799, "name": "StdStorage", + "nameLocations": [ + "17336:10:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "17336:10:5" @@ -19824,6 +20348,7 @@ "id": 4818, "nodeType": "VariableDeclaration", "src": "17369:84:5", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -19841,6 +20366,9 @@ "pathNode": { "id": 4802, "name": "Vm", + "nameLocations": [ + "17369:2:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "17369:2:5" @@ -19903,6 +20431,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17421:28:5", @@ -19945,6 +20474,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17413:37:5", @@ -19987,6 +20517,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17405:46:5", @@ -20029,6 +20560,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17397:55:5", @@ -20063,6 +20595,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17394:59:5", @@ -20078,10 +20611,12 @@ "id": 4833, "nodeType": "FunctionDefinition", "src": "17530:93:5", + "nodes": [], "body": { "id": 4832, "nodeType": "Block", "src": "17575:48:5", + "nodes": [], "statements": [ { "expression": { @@ -20114,6 +20649,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17599:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17593:15:5", @@ -20167,6 +20703,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17588:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20182,6 +20719,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17585:31:5", @@ -20251,10 +20789,12 @@ "id": 4848, "nodeType": "FunctionDefinition", "src": "17629:95:5", + "nodes": [], "body": { "id": 4847, "nodeType": "Block", "src": "17676:48:5", + "nodes": [], "statements": [ { "expression": { @@ -20287,6 +20827,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17700:9:5", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "17694:15:5", @@ -20340,6 +20881,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17689:4:5", "memberName": "warp", "nodeType": "MemberAccess", "referencedDeclaration": 9034, @@ -20355,6 +20897,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17686:31:5", @@ -20424,10 +20967,12 @@ "id": 4869, "nodeType": "FunctionDefinition", "src": "17787:106:5", + "nodes": [], "body": { "id": 4868, "nodeType": "Block", "src": "17831:62:5", + "nodes": [], "statements": [ { "expression": { @@ -20523,6 +21068,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17844:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -20538,6 +21084,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17841:22:5", @@ -20591,6 +21138,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17876:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -20606,6 +21154,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17873:13:5", @@ -20676,10 +21225,12 @@ "id": 4890, "nodeType": "FunctionDefinition", "src": "17899:116:5", + "nodes": [], "body": { "id": 4889, "nodeType": "Block", "src": "17957:58:5", + "nodes": [], "statements": [ { "expression": { @@ -20737,6 +21288,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17970:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -20752,6 +21304,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17967:18:5", @@ -20805,6 +21358,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17998:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9075, @@ -20820,6 +21374,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17995:13:5", @@ -20917,10 +21472,12 @@ "id": 4914, "nodeType": "FunctionDefinition", "src": "18021:130:5", + "nodes": [], "body": { "id": 4913, "nodeType": "Block", "src": "18081:70:5", + "nodes": [], "statements": [ { "expression": { @@ -21016,6 +21573,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18094:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21031,6 +21589,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18091:22:5", @@ -21100,6 +21659,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18126:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21115,6 +21675,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18123:21:5", @@ -21213,10 +21774,12 @@ "id": 4938, "nodeType": "FunctionDefinition", "src": "18157:140:5", + "nodes": [], "body": { "id": 4937, "nodeType": "Block", "src": "18231:66:5", + "nodes": [], "statements": [ { "expression": { @@ -21274,6 +21837,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18244:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21289,6 +21853,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18241:18:5", @@ -21358,6 +21923,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18272:5:5", "memberName": "prank", "nodeType": "MemberAccess", "referencedDeclaration": 9087, @@ -21373,6 +21939,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18269:21:5", @@ -21498,10 +22065,12 @@ "id": 4959, "nodeType": "FunctionDefinition", "src": "18368:116:5", + "nodes": [], "body": { "id": 4958, "nodeType": "Block", "src": "18417:67:5", + "nodes": [], "statements": [ { "expression": { @@ -21597,6 +22166,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18430:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21612,6 +22182,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18427:22:5", @@ -21665,6 +22236,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18462:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -21680,6 +22252,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18459:18:5", @@ -21750,10 +22323,12 @@ "id": 4980, "nodeType": "FunctionDefinition", "src": "18490:126:5", + "nodes": [], "body": { "id": 4979, "nodeType": "Block", "src": "18553:63:5", + "nodes": [], "statements": [ { "expression": { @@ -21811,6 +22386,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18566:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -21826,6 +22402,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18563:18:5", @@ -21879,6 +22456,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18594:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -21894,6 +22472,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18591:18:5", @@ -21991,10 +22570,12 @@ "id": 5004, "nodeType": "FunctionDefinition", "src": "18735:140:5", + "nodes": [], "body": { "id": 5003, "nodeType": "Block", "src": "18800:75:5", + "nodes": [], "statements": [ { "expression": { @@ -22090,6 +22671,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18813:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22105,6 +22687,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18810:22:5", @@ -22174,6 +22757,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18845:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -22189,6 +22773,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18842:26:5", @@ -22287,10 +22872,12 @@ "id": 5028, "nodeType": "FunctionDefinition", "src": "18881:150:5", + "nodes": [], "body": { "id": 5027, "nodeType": "Block", "src": "18960:71:5", + "nodes": [], "statements": [ { "expression": { @@ -22348,6 +22935,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18973:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22363,6 +22951,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18970:18:5", @@ -22432,6 +23021,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19001:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9094, @@ -22447,6 +23037,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18998:26:5", @@ -22572,10 +23163,12 @@ "id": 5045, "nodeType": "FunctionDefinition", "src": "19037:110:5", + "nodes": [], "body": { "id": 5044, "nodeType": "Block", "src": "19088:59:5", + "nodes": [], "statements": [ { "expression": { @@ -22599,6 +23192,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19101:9:5", "memberName": "stopPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9097, @@ -22614,6 +23208,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19098:14:5", @@ -22667,6 +23262,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19125:10:5", "memberName": "startPrank", "nodeType": "MemberAccess", "referencedDeclaration": 9080, @@ -22682,6 +23278,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19122:18:5", @@ -22752,10 +23349,12 @@ "id": 5060, "nodeType": "FunctionDefinition", "src": "19238:91:5", + "nodes": [], "body": { "id": 5059, "nodeType": "Block", "src": "19295:34:5", + "nodes": [], "statements": [ { "expression": { @@ -22813,6 +23412,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19308:4:5", "memberName": "deal", "nodeType": "MemberAccess", "referencedDeclaration": 9104, @@ -22828,6 +23428,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19305:17:5", @@ -22925,10 +23526,12 @@ "id": 5077, "nodeType": "FunctionDefinition", "src": "19453:117:5", + "nodes": [], "body": { "id": 5076, "nodeType": "Block", "src": "19525:45:5", + "nodes": [], "statements": [ { "expression": { @@ -23026,6 +23629,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19535:28:5", @@ -23151,10 +23755,12 @@ "id": 5180, "nodeType": "FunctionDefinition", "src": "19576:825:5", + "nodes": [], "body": { "id": 5179, "nodeType": "Block", "src": "19661:740:5", + "nodes": [], "statements": [ { "assignments": [ @@ -23253,6 +23859,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19744:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "19740:22:5", @@ -23267,6 +23874,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19740:38:5", @@ -23301,6 +23909,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19735:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "19729:10:5", @@ -23315,6 +23924,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19729:50:5", @@ -23440,6 +24050,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19811:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "19807:10:5", @@ -23454,6 +24065,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19807:30:5", @@ -23576,6 +24188,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19883:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -23591,6 +24204,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:22:5", @@ -23605,6 +24219,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19897:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -23620,6 +24235,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:38:5", @@ -23634,6 +24250,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19913:8:5", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 7097, @@ -23649,6 +24266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:51:5", @@ -23663,6 +24281,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "19926:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -23678,6 +24297,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19874:71:5", @@ -23793,6 +24413,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20058:18:5", "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "20054:22:5", @@ -23807,6 +24428,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20054:34:5", @@ -23841,6 +24463,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20049:4:5", "memberName": "call", "nodeType": "MemberAccess", "src": "20043:10:5", @@ -23855,6 +24478,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20043:46:5", @@ -23980,6 +24604,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20124:6:5", "memberName": "decode", "nodeType": "MemberAccess", "src": "20120:10:5", @@ -23994,6 +24619,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20120:33:5", @@ -24333,6 +24959,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "20333:6:5", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 7043, @@ -24348,6 +24975,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:22:5", @@ -24362,6 +24990,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "20347:3:5", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 7061, @@ -24377,6 +25006,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:38:5", @@ -24391,6 +25021,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "20363:13:5", "memberName": "checked_write", "nodeType": "MemberAccess", "referencedDeclaration": 7191, @@ -24406,6 +25037,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20324:60:5", @@ -24564,6 +25196,9 @@ "baseName": { "id": 4793, "name": "StdCheatsSafe", + "nameLocations": [ + "17278:13:5" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 4792, "src": "17278:13:5" diff --git a/out/StdError.sol/stdError.json b/out/StdError.sol/stdError.json index 3a14ae2..92e4127 100644 --- a/out/StdError.sol/stdError.json +++ b/out/StdError.sol/stdError.json @@ -119,13 +119,13 @@ } ], "bytecode": { - "object": "0x61025661003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b8181111561020a576000604083870101525b50601f01601f191692909201604001939250505056fea26469706673582212201c7c3f64460b87cc6d6b60e4aa707c81770dcb950d6760b3c02198ffd29fbc1e64736f6c634300080f0033", + "object": "0x61024f61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b506000604082860101526040601f19601f830116850101925050509291505056fea264697066735822122035cba101b650f66ba50a55224c6366c3102f19728c9336b26b1995308dd6fbe264736f6c63430008110033", "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;162:850:6;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b8181111561020a576000604083870101525b50601f01601f191692909201604001939250505056fea26469706673582212201c7c3f64460b87cc6d6b60e4aa707c81770dcb950d6760b3c02198ffd29fbc1e64736f6c634300080f0033", - "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;185:86;;;:::i;461:91::-;;;:::i;277:87::-;;;:::i;831:88::-;;;:::i;654:80::-;;;:::i;925:84::-;;;:::i;558:90::-;;;:::i;370:85::-;;;:::i;740:::-;778:47;;820:4;778:47;;;775:36:32;748:18;;778:47:6;;;;-1:-1:-1;;778:47:6;;;;;;;;;;;;;;-1:-1:-1;;;;;778:47:6;-1:-1:-1;;;778:47:6;;;740:85;:::o;185:86::-;224:47;;266:4;224:47;;;775:36:32;748:18;;224:47:6;622:195:32;461:91:6;505:47;;547:4;505:47;;;775:36:32;748:18;;505:47:6;622:195:32;277:87:6;317:47;;359:4;317:47;;;775:36:32;748:18;;317:47:6;622:195:32;831:88:6;872:47;;914:4;872:47;;;775:36:32;748:18;;872:47:6;622:195:32;654:80:6;687:47;;729:4;687:47;;;775:36:32;748:18;;687:47:6;622:195:32;925:84:6;962:47;;1004:4;962:47;;;775:36:32;748:18;;962:47:6;622:195:32;558:90:6;601:47;;643:4;601:47;;;775:36:32;748:18;;601:47:6;622:195:32;370:85:6;408:47;;450:4;408:47;;;775:36:32;748:18;;408:47:6;622:195:32;14:603;132:4;161:2;190;179:9;172:21;222:6;216:13;265:6;260:2;249:9;245:18;238:34;290:1;300:140;314:6;311:1;308:13;300:140;;;409:14;;;405:23;;399:30;375:17;;;394:2;371:26;364:66;329:10;;300:140;;;458:6;455:1;452:13;449:91;;;528:1;523:2;514:6;503:9;499:22;495:31;488:42;449:91;-1:-1:-1;601:2:32;580:15;-1:-1:-1;;576:29:32;561:45;;;;608:2;557:54;;14:603;-1:-1:-1;;;14:603:32:o", + "object": "0x730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b506000604082860101526040601f19601f830116850101925050509291505056fea264697066735822122035cba101b650f66ba50a55224c6366c3102f19728c9336b26b1995308dd6fbe264736f6c63430008110033", + "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;185:86;;;:::i;461:91::-;;;:::i;277:87::-;;;:::i;831:88::-;;;:::i;654:80::-;;;:::i;925:84::-;;;:::i;558:90::-;;;:::i;370:85::-;;;:::i;740:::-;778:47;;820:4;778:47;;;726:36:32;699:18;;778:47:6;;;;-1:-1:-1;;778:47:6;;;;;;;;;;;;;;-1:-1:-1;;;;;778:47:6;-1:-1:-1;;;778:47:6;;;740:85;:::o;185:86::-;224:47;;266:4;224:47;;;726:36:32;699:18;;224:47:6;573:195:32;461:91:6;505:47;;547:4;505:47;;;726:36:32;699:18;;505:47:6;573:195:32;277:87:6;317:47;;359:4;317:47;;;726:36:32;699:18;;317:47:6;573:195:32;831:88:6;872:47;;914:4;872:47;;;726:36:32;699:18;;872:47:6;573:195:32;654:80:6;687:47;;729:4;687:47;;;726:36:32;699:18;;687:47:6;573:195:32;925:84:6;962:47;;1004:4;962:47;;;726:36:32;699:18;;962:47:6;573:195:32;558:90:6;601:47;;643:4;601:47;;;726:36:32;699:18;;601:47:6;573:195:32;370:85:6;408:47;;450:4;408:47;;;726:36:32;699:18;;408:47:6;573:195:32;14:554;132:4;161:2;190;179:9;172:21;222:6;216:13;265:6;260:2;249:9;245:18;238:34;290:1;300:140;314:6;311:1;308:13;300:140;;;409:14;;;405:23;;399:30;375:17;;;394:2;371:26;364:66;329:10;;300:140;;;304:3;489:1;484:2;475:6;464:9;460:22;456:31;449:42;559:2;552;548:7;543:2;535:6;531:15;527:29;516:9;512:45;508:54;500:62;;;;14:554;;;;:::o", "linkReferences": {} }, "methodIdentifiers": { @@ -139,6 +139,172 @@ "popError()": "b22dc54d", "zeroVarError()": "b67689da" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"arithmeticError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"assertionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"divisionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"encodeStorageError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enumConversionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"indexOOBError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"memOverflowError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"popError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"zeroVarError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdError.sol\":\"stdError\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "arithmeticError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "assertionError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "divisionError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "encodeStorageError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "enumConversionError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "indexOOBError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "memOverflowError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "popError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "zeroVarError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdError.sol": "stdError" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdError.sol": { + "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", + "urls": [ + "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", + "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdError.sol", "id": 5248, @@ -154,6 +320,7 @@ "id": 5183, "nodeType": "PragmaDirective", "src": "129:31:6", + "nodes": [], "literals": [ "solidity", ">=", @@ -173,6 +340,7 @@ "id": 5190, "nodeType": "VariableDeclaration", "src": "185:86:6", + "nodes": [], "constant": true, "functionSelector": "10332977", "mutability": "constant", @@ -258,6 +426,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "228:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "224:23:6", @@ -272,6 +441,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "224:47:6", @@ -287,6 +457,7 @@ "id": 5197, "nodeType": "VariableDeclaration", "src": "277:87:6", + "nodes": [], "constant": true, "functionSelector": "8995290f", "mutability": "constant", @@ -372,6 +543,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "321:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "317:23:6", @@ -386,6 +558,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "317:47:6", @@ -401,6 +574,7 @@ "id": 5204, "nodeType": "VariableDeclaration", "src": "370:85:6", + "nodes": [], "constant": true, "functionSelector": "fa784a44", "mutability": "constant", @@ -486,6 +660,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "412:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "408:23:6", @@ -500,6 +675,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "408:47:6", @@ -515,6 +691,7 @@ "id": 5211, "nodeType": "VariableDeclaration", "src": "461:91:6", + "nodes": [], "constant": true, "functionSelector": "1de45560", "mutability": "constant", @@ -600,6 +777,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "509:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "505:23:6", @@ -614,6 +792,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "505:47:6", @@ -629,6 +808,7 @@ "id": 5218, "nodeType": "VariableDeclaration", "src": "558:90:6", + "nodes": [], "constant": true, "functionSelector": "d160e4de", "mutability": "constant", @@ -714,6 +894,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "605:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "601:23:6", @@ -728,6 +909,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "601:47:6", @@ -743,6 +925,7 @@ "id": 5225, "nodeType": "VariableDeclaration", "src": "654:80:6", + "nodes": [], "constant": true, "functionSelector": "b22dc54d", "mutability": "constant", @@ -828,6 +1011,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "691:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "687:23:6", @@ -842,6 +1026,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "687:47:6", @@ -857,6 +1042,7 @@ "id": 5232, "nodeType": "VariableDeclaration", "src": "740:85:6", + "nodes": [], "constant": true, "functionSelector": "05ee8612", "mutability": "constant", @@ -942,6 +1128,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "782:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "778:23:6", @@ -956,6 +1143,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "778:47:6", @@ -971,6 +1159,7 @@ "id": 5239, "nodeType": "VariableDeclaration", "src": "831:88:6", + "nodes": [], "constant": true, "functionSelector": "986c5f68", "mutability": "constant", @@ -1056,6 +1245,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "876:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "872:23:6", @@ -1070,6 +1260,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "872:47:6", @@ -1085,6 +1276,7 @@ "id": 5246, "nodeType": "VariableDeclaration", "src": "925:84:6", + "nodes": [], "constant": true, "functionSelector": "b67689da", "mutability": "constant", @@ -1170,6 +1362,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "966:19:6", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "962:23:6", @@ -1184,6 +1377,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "962:47:6", diff --git a/out/StdJson.sol/stdJson.json b/out/StdJson.sol/stdJson.json index 4264a8d..500d4e7 100644 --- a/out/StdJson.sol/stdJson.json +++ b/out/StdJson.sol/stdJson.json @@ -1,16 +1,72 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ae5b3af905fd7b2a8f5937cfe25626212abdafb52b4b54e4dddce0d2038e717a64736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122023ba07c7ad2d9f98c832ff09a007f2b41e8b726752b5fd4a2f044ed58534930164736f6c63430008110033", "sourceMap": "830:5659:7:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;830:5659:7;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ae5b3af905fd7b2a8f5937cfe25626212abdafb52b4b54e4dddce0d2038e717a64736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122023ba07c7ad2d9f98c832ff09a007f2b41e8b726752b5fd4a2f044ed58534930164736f6c63430008110033", "sourceMap": "830:5659:7:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdJson.sol\":\"stdJson\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdJson.sol": "stdJson" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdJson.sol", "id": 5915, @@ -29,6 +85,7 @@ "id": 5249, "nodeType": "PragmaDirective", "src": "32:31:7", + "nodes": [], "literals": [ "solidity", ">=", @@ -43,6 +100,7 @@ "id": 5250, "nodeType": "PragmaDirective", "src": "65:33:7", + "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -52,6 +110,7 @@ "id": 5252, "nodeType": "ImportDirective", "src": "100:32:7", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -82,6 +141,7 @@ "id": 5269, "nodeType": "VariableDeclaration", "src": "852:92:7", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -99,6 +159,9 @@ "pathNode": { "id": 5253, "name": "VmSafe", + "nameLocations": [ + "852:6:7" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "852:6:7" @@ -161,6 +224,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "912:28:7", @@ -203,6 +267,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "904:37:7", @@ -245,6 +310,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "896:46:7", @@ -287,6 +353,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "888:55:7", @@ -321,6 +388,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "881:63:7", @@ -336,10 +404,12 @@ "id": 5285, "nodeType": "FunctionDefinition", "src": "951:141:7", + "nodes": [], "body": { "id": 5284, "nodeType": "Block", "src": "1045:47:7", + "nodes": [], "statements": [ { "expression": { @@ -397,6 +467,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1065:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -412,6 +483,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1062:23:7", @@ -537,10 +609,12 @@ "id": 5307, "nodeType": "FunctionDefinition", "src": "1098:159:7", + "nodes": [], "body": { "id": 5306, "nodeType": "Block", "src": "1187:70:7", + "nodes": [], "statements": [ { "expression": { @@ -600,6 +674,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1218:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -615,6 +690,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1215:23:7", @@ -689,6 +765,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1208:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1204:10:7", @@ -703,6 +780,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1204:46:7", @@ -828,10 +906,12 @@ "id": 5331, "nodeType": "FunctionDefinition", "src": "1263:175:7", + "nodes": [], "body": { "id": 5330, "nodeType": "Block", "src": "1366:72:7", + "nodes": [], "statements": [ { "expression": { @@ -891,6 +971,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1397:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -906,6 +987,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1394:23:7", @@ -993,6 +1075,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1387:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1383:10:7", @@ -1007,6 +1090,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1383:48:7", @@ -1141,10 +1225,12 @@ "id": 5353, "nodeType": "FunctionDefinition", "src": "1444:156:7", + "nodes": [], "body": { "id": 5352, "nodeType": "Block", "src": "1531:69:7", + "nodes": [], "statements": [ { "expression": { @@ -1204,6 +1290,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1562:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -1219,6 +1306,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1559:23:7", @@ -1293,6 +1381,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1552:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1548:10:7", @@ -1307,6 +1396,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1548:45:7", @@ -1432,10 +1522,12 @@ "id": 5377, "nodeType": "FunctionDefinition", "src": "1606:172:7", + "nodes": [], "body": { "id": 5376, "nodeType": "Block", "src": "1707:71:7", + "nodes": [], "statements": [ { "expression": { @@ -1495,6 +1587,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1738:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -1510,6 +1603,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:23:7", @@ -1597,6 +1691,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1728:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1724:10:7", @@ -1611,6 +1706,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1724:47:7", @@ -1745,10 +1841,12 @@ "id": 5399, "nodeType": "FunctionDefinition", "src": "1784:162:7", + "nodes": [], "body": { "id": 5398, "nodeType": "Block", "src": "1876:70:7", + "nodes": [], "statements": [ { "expression": { @@ -1808,6 +1906,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1907:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -1823,6 +1922,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1904:23:7", @@ -1897,6 +1997,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1897:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "1893:10:7", @@ -1911,6 +2012,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1893:46:7", @@ -2036,10 +2138,12 @@ "id": 5423, "nodeType": "FunctionDefinition", "src": "1952:178:7", + "nodes": [], "body": { "id": 5422, "nodeType": "Block", "src": "2058:72:7", + "nodes": [], "statements": [ { "expression": { @@ -2099,6 +2203,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2089:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -2114,6 +2219,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2086:23:7", @@ -2201,6 +2307,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2079:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2075:10:7", @@ -2215,6 +2322,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2075:48:7", @@ -2349,10 +2457,12 @@ "id": 5445, "nodeType": "FunctionDefinition", "src": "2136:166:7", + "nodes": [], "body": { "id": 5444, "nodeType": "Block", "src": "2233:69:7", + "nodes": [], "statements": [ { "expression": { @@ -2412,6 +2522,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2264:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -2427,6 +2538,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2261:23:7", @@ -2501,6 +2613,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2254:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2250:10:7", @@ -2515,6 +2628,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2250:45:7", @@ -2640,10 +2754,12 @@ "id": 5469, "nodeType": "FunctionDefinition", "src": "2308:175:7", + "nodes": [], "body": { "id": 5468, "nodeType": "Block", "src": "2412:71:7", + "nodes": [], "statements": [ { "expression": { @@ -2703,6 +2819,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2443:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -2718,6 +2835,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2440:23:7", @@ -2805,6 +2923,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2433:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2429:10:7", @@ -2819,6 +2938,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2429:47:7", @@ -2953,10 +3073,12 @@ "id": 5491, "nodeType": "FunctionDefinition", "src": "2489:162:7", + "nodes": [], "body": { "id": 5490, "nodeType": "Block", "src": "2581:70:7", + "nodes": [], "statements": [ { "expression": { @@ -3016,6 +3138,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2612:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -3031,6 +3154,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2609:23:7", @@ -3105,6 +3229,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2602:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2598:10:7", @@ -3119,6 +3244,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2598:46:7", @@ -3245,10 +3371,12 @@ "id": 5515, "nodeType": "FunctionDefinition", "src": "2657:178:7", + "nodes": [], "body": { "id": 5514, "nodeType": "Block", "src": "2763:72:7", + "nodes": [], "statements": [ { "expression": { @@ -3308,6 +3436,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2794:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -3323,6 +3452,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2791:23:7", @@ -3410,6 +3540,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2784:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2780:10:7", @@ -3424,6 +3555,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2780:48:7", @@ -3559,10 +3691,12 @@ "id": 5537, "nodeType": "FunctionDefinition", "src": "2841:153:7", + "nodes": [], "body": { "id": 5536, "nodeType": "Block", "src": "2927:67:7", + "nodes": [], "statements": [ { "expression": { @@ -3622,6 +3756,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2958:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -3637,6 +3772,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2955:23:7", @@ -3711,6 +3847,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2948:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "2944:10:7", @@ -3725,6 +3862,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2944:43:7", @@ -3850,10 +3988,12 @@ "id": 5561, "nodeType": "FunctionDefinition", "src": "3000:169:7", + "nodes": [], "body": { "id": 5560, "nodeType": "Block", "src": "3100:69:7", + "nodes": [], "statements": [ { "expression": { @@ -3913,6 +4053,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3131:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -3928,6 +4069,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3128:23:7", @@ -4015,6 +4157,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3121:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "3117:10:7", @@ -4029,6 +4172,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3117:45:7", @@ -4163,10 +4307,12 @@ "id": 5583, "nodeType": "FunctionDefinition", "src": "3175:163:7", + "nodes": [], "body": { "id": 5582, "nodeType": "Block", "src": "3270:68:7", + "nodes": [], "statements": [ { "expression": { @@ -4226,6 +4372,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3301:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -4241,6 +4388,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3298:23:7", @@ -4315,6 +4463,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3291:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "3287:10:7", @@ -4329,6 +4478,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3287:44:7", @@ -4454,10 +4604,12 @@ "id": 5607, "nodeType": "FunctionDefinition", "src": "3344:172:7", + "nodes": [], "body": { "id": 5606, "nodeType": "Block", "src": "3446:70:7", + "nodes": [], "statements": [ { "expression": { @@ -4517,6 +4669,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3477:9:7", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8809, @@ -4532,6 +4685,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3474:23:7", @@ -4619,6 +4773,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3467:6:7", "memberName": "decode", "nodeType": "MemberAccess", "src": "3463:10:7", @@ -4633,6 +4788,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3463:46:7", @@ -4767,10 +4923,12 @@ "id": 5626, "nodeType": "FunctionDefinition", "src": "3522:167:7", + "nodes": [], "body": { "id": 5625, "nodeType": "Block", "src": "3628:61:7", + "nodes": [], "statements": [ { "expression": { @@ -4844,6 +5002,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3648:13:7", "memberName": "serializeBool", "nodeType": "MemberAccess", "referencedDeclaration": 8827, @@ -4859,6 +5018,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3645:37:7", @@ -5011,10 +5171,12 @@ "id": 5646, "nodeType": "FunctionDefinition", "src": "3695:196:7", + "nodes": [], "body": { "id": 5645, "nodeType": "Block", "src": "3830:61:7", + "nodes": [], "statements": [ { "expression": { @@ -5088,6 +5250,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3850:13:7", "memberName": "serializeBool", "nodeType": "MemberAccess", "referencedDeclaration": 8905, @@ -5103,6 +5266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3847:37:7", @@ -5264,10 +5428,12 @@ "id": 5665, "nodeType": "FunctionDefinition", "src": "3897:170:7", + "nodes": [], "body": { "id": 5664, "nodeType": "Block", "src": "4006:61:7", + "nodes": [], "statements": [ { "expression": { @@ -5341,6 +5507,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4026:13:7", "memberName": "serializeUint", "nodeType": "MemberAccess", "referencedDeclaration": 8838, @@ -5356,6 +5523,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4023:37:7", @@ -5508,10 +5676,12 @@ "id": 5685, "nodeType": "FunctionDefinition", "src": "4073:199:7", + "nodes": [], "body": { "id": 5684, "nodeType": "Block", "src": "4211:61:7", + "nodes": [], "statements": [ { "expression": { @@ -5585,6 +5755,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4231:13:7", "memberName": "serializeUint", "nodeType": "MemberAccess", "referencedDeclaration": 8917, @@ -5600,6 +5771,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4228:37:7", @@ -5761,10 +5933,12 @@ "id": 5704, "nodeType": "FunctionDefinition", "src": "4278:168:7", + "nodes": [], "body": { "id": 5703, "nodeType": "Block", "src": "4386:60:7", + "nodes": [], "statements": [ { "expression": { @@ -5838,6 +6012,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4406:12:7", "memberName": "serializeInt", "nodeType": "MemberAccess", "referencedDeclaration": 8849, @@ -5853,6 +6028,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4403:36:7", @@ -6005,10 +6181,12 @@ "id": 5724, "nodeType": "FunctionDefinition", "src": "4452:197:7", + "nodes": [], "body": { "id": 5723, "nodeType": "Block", "src": "4589:60:7", + "nodes": [], "statements": [ { "expression": { @@ -6082,6 +6260,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4609:12:7", "memberName": "serializeInt", "nodeType": "MemberAccess", "referencedDeclaration": 8929, @@ -6097,6 +6276,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4606:36:7", @@ -6258,10 +6438,12 @@ "id": 5743, "nodeType": "FunctionDefinition", "src": "4655:173:7", + "nodes": [], "body": { "id": 5742, "nodeType": "Block", "src": "4764:64:7", + "nodes": [], "statements": [ { "expression": { @@ -6335,6 +6517,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4784:16:7", "memberName": "serializeAddress", "nodeType": "MemberAccess", "referencedDeclaration": 8860, @@ -6350,6 +6533,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4781:40:7", @@ -6503,10 +6687,12 @@ "id": 5763, "nodeType": "FunctionDefinition", "src": "4834:202:7", + "nodes": [], "body": { "id": 5762, "nodeType": "Block", "src": "4972:64:7", + "nodes": [], "statements": [ { "expression": { @@ -6580,6 +6766,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4992:16:7", "memberName": "serializeAddress", "nodeType": "MemberAccess", "referencedDeclaration": 8941, @@ -6595,6 +6782,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4989:40:7", @@ -6757,10 +6945,12 @@ "id": 5782, "nodeType": "FunctionDefinition", "src": "5042:173:7", + "nodes": [], "body": { "id": 5781, "nodeType": "Block", "src": "5151:64:7", + "nodes": [], "statements": [ { "expression": { @@ -6834,6 +7024,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5171:16:7", "memberName": "serializeBytes32", "nodeType": "MemberAccess", "referencedDeclaration": 8871, @@ -6849,6 +7040,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5168:40:7", @@ -7001,10 +7193,12 @@ "id": 5802, "nodeType": "FunctionDefinition", "src": "5221:202:7", + "nodes": [], "body": { "id": 5801, "nodeType": "Block", "src": "5359:64:7", + "nodes": [], "statements": [ { "expression": { @@ -7078,6 +7272,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5379:16:7", "memberName": "serializeBytes32", "nodeType": "MemberAccess", "referencedDeclaration": 8953, @@ -7093,6 +7288,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5376:40:7", @@ -7254,10 +7450,12 @@ "id": 5821, "nodeType": "FunctionDefinition", "src": "5429:176:7", + "nodes": [], "body": { "id": 5820, "nodeType": "Block", "src": "5543:62:7", + "nodes": [], "statements": [ { "expression": { @@ -7331,6 +7529,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5563:14:7", "memberName": "serializeBytes", "nodeType": "MemberAccess", "referencedDeclaration": 8893, @@ -7346,6 +7545,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5560:38:7", @@ -7498,10 +7698,12 @@ "id": 5841, "nodeType": "FunctionDefinition", "src": "5611:198:7", + "nodes": [], "body": { "id": 5840, "nodeType": "Block", "src": "5747:62:7", + "nodes": [], "statements": [ { "expression": { @@ -7575,6 +7777,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5767:14:7", "memberName": "serializeBytes", "nodeType": "MemberAccess", "referencedDeclaration": 8977, @@ -7590,6 +7793,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5764:38:7", @@ -7751,10 +7955,12 @@ "id": 5860, "nodeType": "FunctionDefinition", "src": "5815:198:7", + "nodes": [], "body": { "id": 5859, "nodeType": "Block", "src": "5950:63:7", + "nodes": [], "statements": [ { "expression": { @@ -7828,6 +8034,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5970:15:7", "memberName": "serializeString", "nodeType": "MemberAccess", "referencedDeclaration": 8882, @@ -7843,6 +8050,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5967:39:7", @@ -7995,10 +8203,12 @@ "id": 5880, "nodeType": "FunctionDefinition", "src": "6019:200:7", + "nodes": [], "body": { "id": 5879, "nodeType": "Block", "src": "6156:63:7", + "nodes": [], "statements": [ { "expression": { @@ -8072,6 +8282,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6176:15:7", "memberName": "serializeString", "nodeType": "MemberAccess", "referencedDeclaration": 8965, @@ -8087,6 +8298,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6173:39:7", @@ -8248,10 +8460,12 @@ "id": 5895, "nodeType": "FunctionDefinition", "src": "6225:111:7", + "nodes": [], "body": { "id": 5894, "nodeType": "Block", "src": "6292:44:7", + "nodes": [], "statements": [ { "expression": { @@ -8309,6 +8523,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6305:9:7", "memberName": "writeJson", "nodeType": "MemberAccess", "referencedDeclaration": 8984, @@ -8324,6 +8539,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6302:27:7", @@ -8420,10 +8636,12 @@ "id": 5913, "nodeType": "FunctionDefinition", "src": "6342:145:7", + "nodes": [], "body": { "id": 5912, "nodeType": "Block", "src": "6433:54:7", + "nodes": [], "statements": [ { "expression": { @@ -8497,6 +8715,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6446:9:7", "memberName": "writeJson", "nodeType": "MemberAccess", "referencedDeclaration": 8993, @@ -8512,6 +8731,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6443:37:7", diff --git a/out/StdMath.sol/stdMath.json b/out/StdMath.sol/stdMath.json index 6db23b2..e38c8b8 100644 --- a/out/StdMath.sol/stdMath.json +++ b/out/StdMath.sol/stdMath.json @@ -1,16 +1,64 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208f9c046a18e1b25f0b0f4123cb77217f1ec99e638aab49f3bf13c4a7922f6c3364736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220468f4fb5bb93331c84cf23e07ae9055464fca92e82893094a3e764f0c78de82264736f6c63430008110033", "sourceMap": "65:1294:8:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;65:1294:8;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208f9c046a18e1b25f0b0f4123cb77217f1ec99e638aab49f3bf13c4a7922f6c3364736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220468f4fb5bb93331c84cf23e07ae9055464fca92e82893094a3e764f0c78de82264736f6c63430008110033", "sourceMap": "65:1294:8:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdMath.sol\":\"stdMath\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdMath.sol": "stdMath" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdMath.sol", "id": 6057, @@ -26,6 +74,7 @@ "id": 5916, "nodeType": "PragmaDirective", "src": "32:31:8", + "nodes": [], "literals": [ "solidity", ">=", @@ -45,6 +94,7 @@ "id": 5920, "nodeType": "VariableDeclaration", "src": "87:115:8", + "nodes": [], "constant": true, "mutability": "constant", "name": "INT256_MIN", @@ -103,10 +153,12 @@ "id": 5946, "nodeType": "FunctionDefinition", "src": "209:306:8", + "nodes": [], "body": { "id": 5945, "nodeType": "Block", "src": "264:251:8", + "nodes": [], "statements": [ { "condition": { @@ -318,6 +370,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "485:23:8", @@ -416,10 +469,12 @@ "id": 5967, "nodeType": "FunctionDefinition", "src": "521:114:8", + "nodes": [], "body": { "id": 5966, "nodeType": "Block", "src": "590:45:8", + "nodes": [], "statements": [ { "expression": { @@ -677,10 +732,12 @@ "id": 6003, "nodeType": "FunctionDefinition", "src": "641:352:8", + "nodes": [], "body": { "id": 6002, "nodeType": "Block", "src": "708:285:8", + "nodes": [], "statements": [ { "condition": { @@ -840,6 +897,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "887:6:8", @@ -888,6 +946,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "895:6:8", @@ -929,6 +988,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "881:21:8", @@ -996,6 +1056,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "971:6:8", @@ -1046,6 +1107,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "980:6:8", @@ -1177,10 +1239,12 @@ "id": 6026, "nodeType": "FunctionDefinition", "src": "999:160:8", + "nodes": [], "body": { "id": 6025, "nodeType": "Block", "src": "1075:84:8", + "nodes": [], "statements": [ { "assignments": [ @@ -1274,6 +1338,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1104:11:8", @@ -1479,10 +1544,12 @@ "id": 6055, "nodeType": "FunctionDefinition", "src": "1165:192:8", + "nodes": [], "body": { "id": 6054, "nodeType": "Block", "src": "1239:118:8", + "nodes": [], "statements": [ { "assignments": [ @@ -1576,6 +1643,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1268:11:8", @@ -1661,6 +1729,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1304:6:8", diff --git a/out/StdStorage.sol/stdStorage.json b/out/StdStorage.sol/stdStorage.json index 398b9a7..9f2ca3d 100644 --- a/out/StdStorage.sol/stdStorage.json +++ b/out/StdStorage.sol/stdStorage.json @@ -1,16 +1,72 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c67d699f8530d2e784ab212a7d7d310a1de8210ac394a480740d7aa70ef7f83264736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208aa12bf39ed4cf97c04c3f9b623ca93ffd97a68ee8ec538219d93991644b120164736f6c63430008110033", "sourceMap": "7347:4527:9:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;7347:4527:9;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c67d699f8530d2e784ab212a7d7d310a1de8210ac394a480740d7aa70ef7f83264736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208aa12bf39ed4cf97c04c3f9b623ca93ffd97a68ee8ec538219d93991644b120164736f6c63430008110033", "sourceMap": "7347:4527:9:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdStorage.sol\":\"stdStorage\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdStorage.sol": "stdStorage" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdStorage.sol", "id": 7523, @@ -35,6 +91,7 @@ "id": 6058, "nodeType": "PragmaDirective", "src": "32:31:9", + "nodes": [], "literals": [ "solidity", ">=", @@ -49,6 +106,7 @@ "id": 6060, "nodeType": "ImportDirective", "src": "65:28:9", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -74,6 +132,7 @@ "id": 6088, "nodeType": "StructDefinition", "src": "95:271:9", + "nodes": [], "canonicalName": "StdStorage", "members": [ { @@ -404,6 +463,7 @@ "id": 6098, "nodeType": "EventDefinition", "src": "397:74:9", + "nodes": [], "anonymous": false, "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", "name": "SlotFound", @@ -533,6 +593,7 @@ "id": 6104, "nodeType": "EventDefinition", "src": "476:54:9", + "nodes": [], "anonymous": false, "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", "name": "WARNING_UninitedSlot", @@ -606,6 +667,7 @@ "id": 6121, "nodeType": "VariableDeclaration", "src": "536:84:9", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -623,6 +685,9 @@ "pathNode": { "id": 6105, "name": "Vm", + "nameLocations": [ + "536:2:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "536:2:9" @@ -685,6 +750,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "588:28:9", @@ -727,6 +793,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "580:37:9", @@ -769,6 +836,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "572:46:9", @@ -811,6 +879,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "564:55:9", @@ -845,6 +914,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "561:59:9", @@ -860,10 +930,12 @@ "id": 6139, "nodeType": "FunctionDefinition", "src": "627:123:9", + "nodes": [], "body": { "id": 6138, "nodeType": "Block", "src": "694:56:9", + "nodes": [], "statements": [ { "expression": { @@ -917,6 +989,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "728:13:9", @@ -951,6 +1024,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "718:24:9", @@ -993,6 +1067,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "711:32:9", @@ -1091,10 +1166,12 @@ "id": 6584, "nodeType": "FunctionDefinition", "src": "1264:3205:9", + "nodes": [], "body": { "id": 6583, "nodeType": "Block", "src": "1330:3139:9", + "nodes": [], "statements": [ { "assignments": [ @@ -1149,6 +1226,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1359:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -1213,6 +1291,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1395:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -1277,6 +1356,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1436:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -1350,6 +1430,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1480:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -1384,6 +1465,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1541:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -1499,6 +1581,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1572:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1568:16:9", @@ -1513,6 +1596,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1568:34:9", @@ -1547,6 +1631,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1558:45:9", @@ -1597,6 +1682,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -1712,6 +1798,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1659:16:9", @@ -1726,6 +1813,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1659:34:9", @@ -1760,6 +1848,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1649:45:9", @@ -1875,6 +1964,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1758:12:9", @@ -1913,6 +2003,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1739:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1735:16:9", @@ -1927,6 +2018,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:36:9", @@ -1961,6 +2053,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1784:6:9", "memberName": "record", "nodeType": "MemberAccess", "referencedDeclaration": 8553, @@ -1976,6 +2069,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1781:11:9", @@ -2106,6 +2200,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1866:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "1862:14:9", @@ -2120,6 +2215,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1862:20:9", @@ -2242,6 +2338,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1903:38:9", @@ -2357,6 +2454,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2002:12:9", @@ -2391,6 +2489,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1993:8:9", "memberName": "accesses", "nodeType": "MemberAccess", "referencedDeclaration": 8564, @@ -2406,6 +2505,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1990:25:9", @@ -2447,6 +2547,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2035:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2029:12:9", @@ -2508,6 +2609,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2792:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2786:12:9", @@ -2612,6 +2714,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4000:82:9", @@ -2755,6 +2858,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2897:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -2770,6 +2874,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2894:22:9", @@ -2858,6 +2963,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2946:10:9", @@ -2968,6 +3074,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3011:17:9", @@ -3006,6 +3113,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2985:44:9", @@ -3125,6 +3233,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3114:18:9", @@ -3167,6 +3276,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3093:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -3182,6 +3292,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3090:43:9", @@ -3362,6 +3473,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3260:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "3256:14:9", @@ -3376,6 +3488,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3256:20:9", @@ -3505,6 +3618,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3305:38:9", @@ -3626,6 +3740,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3403:18:9", @@ -3739,6 +3854,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3554:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3550:16:9", @@ -3753,6 +3869,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3550:34:9", @@ -3787,6 +3904,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3540:45:9", @@ -3868,6 +3986,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3587:17:9", @@ -3914,6 +4033,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3519:86:9", @@ -3955,6 +4075,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "3632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -4070,6 +4191,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3659:16:9", @@ -4084,6 +4206,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3659:34:9", @@ -4118,6 +4241,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3649:45:9", @@ -4212,6 +4336,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3698:17:9", @@ -4259,6 +4384,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "3742:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -4374,6 +4500,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3773:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3769:16:9", @@ -4388,6 +4515,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3769:34:9", @@ -4422,6 +4550,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3759:45:9", @@ -4567,6 +4696,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3837:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4582,6 +4712,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3834:29:9", @@ -4700,6 +4831,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3929:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4715,6 +4847,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3926:29:9", @@ -4772,6 +4905,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2848:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2842:12:9", @@ -5004,6 +5138,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2080:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -5019,6 +5154,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2077:22:9", @@ -5107,6 +5243,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2125:10:9", @@ -5221,6 +5358,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2186:17:9", @@ -5259,6 +5397,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2160:44:9", @@ -5393,6 +5532,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2268:187:9", @@ -5493,6 +5633,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2523:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2519:16:9", @@ -5507,6 +5648,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2519:34:9", @@ -5541,6 +5683,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2509:45:9", @@ -5626,6 +5769,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2556:17:9", @@ -5672,6 +5816,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2488:86:9", @@ -5713,6 +5858,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "2593:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -5828,6 +5974,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2624:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2620:16:9", @@ -5842,6 +5989,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2620:34:9", @@ -5876,6 +6024,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2610:45:9", @@ -5974,6 +6123,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2659:17:9", @@ -6021,6 +6171,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "2695:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6136,6 +6287,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2726:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2722:16:9", @@ -6150,6 +6302,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2722:34:9", @@ -6184,6 +6337,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2712:45:9", @@ -6259,6 +6413,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4129:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6374,6 +6529,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4160:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4156:16:9", @@ -6388,6 +6544,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4156:34:9", @@ -6422,6 +6579,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4146:45:9", @@ -6490,6 +6648,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4103:162:9", @@ -6532,6 +6691,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4288:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -6579,6 +6739,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4317:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -6626,6 +6787,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4343:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -6673,6 +6835,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4370:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -6713,6 +6876,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4399:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -6828,6 +6992,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4430:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4426:16:9", @@ -6842,6 +7007,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4426:34:9", @@ -6876,6 +7042,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4416:45:9", @@ -6939,6 +7106,9 @@ "pathNode": { "id": 6141, "name": "StdStorage", + "nameLocations": [ + "1278:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1278:10:9" @@ -6998,10 +7168,12 @@ "id": 6604, "nodeType": "FunctionDefinition", "src": "4475:156:9", + "nodes": [], "body": { "id": 6603, "nodeType": "Block", "src": "4571:60:9", + "nodes": [], "statements": [ { "expression": { @@ -7028,6 +7200,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4586:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -7111,6 +7284,9 @@ "pathNode": { "id": 6585, "name": "StdStorage", + "nameLocations": [ + "4491:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4491:10:9" @@ -7180,6 +7356,9 @@ "pathNode": { "id": 6591, "name": "StdStorage", + "nameLocations": [ + "4551:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4551:10:9" @@ -7205,10 +7384,12 @@ "id": 6624, "nodeType": "FunctionDefinition", "src": "4637:143:9", + "nodes": [], "body": { "id": 6623, "nodeType": "Block", "src": "4726:54:9", + "nodes": [], "statements": [ { "expression": { @@ -7235,6 +7416,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4741:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7318,6 +7500,9 @@ "pathNode": { "id": 6605, "name": "StdStorage", + "nameLocations": [ + "4650:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4650:10:9" @@ -7386,6 +7571,9 @@ "pathNode": { "id": 6611, "name": "StdStorage", + "nameLocations": [ + "4706:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4706:10:9" @@ -7411,10 +7599,12 @@ "id": 6646, "nodeType": "FunctionDefinition", "src": "4786:156:9", + "nodes": [], "body": { "id": 6645, "nodeType": "Block", "src": "4882:60:9", + "nodes": [], "statements": [ { "expression": { @@ -7441,6 +7631,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4897:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7491,6 +7682,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4904:10:9", @@ -7560,6 +7752,9 @@ "pathNode": { "id": 6625, "name": "StdStorage", + "nameLocations": [ + "4799:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4799:10:9" @@ -7628,6 +7823,9 @@ "pathNode": { "id": 6631, "name": "StdStorage", + "nameLocations": [ + "4862:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4862:10:9" @@ -7653,10 +7851,12 @@ "id": 6677, "nodeType": "FunctionDefinition", "src": "4948:179:9", + "nodes": [], "body": { "id": 6676, "nodeType": "Block", "src": "5042:85:9", + "nodes": [], "statements": [ { "expression": { @@ -7712,6 +7912,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5084:12:9", @@ -7754,6 +7955,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5076:21:9", @@ -7796,6 +7998,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5068:30:9", @@ -7831,6 +8034,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5057:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -7845,6 +8049,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5063:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5052:15:9", @@ -7859,6 +8064,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5052:47:9", @@ -7922,6 +8128,9 @@ "pathNode": { "id": 6647, "name": "StdStorage", + "nameLocations": [ + "4966:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4966:10:9" @@ -7991,6 +8200,9 @@ "pathNode": { "id": 6653, "name": "StdStorage", + "nameLocations": [ + "5022:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5022:10:9" @@ -8016,10 +8228,12 @@ "id": 6702, "nodeType": "FunctionDefinition", "src": "5133:161:9", + "nodes": [], "body": { "id": 6701, "nodeType": "Block", "src": "5227:67:9", + "nodes": [], "statements": [ { "expression": { @@ -8071,6 +8285,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5253:12:9", @@ -8106,6 +8321,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5242:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8120,6 +8336,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5248:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5237:15:9", @@ -8134,6 +8351,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5237:29:9", @@ -8197,6 +8415,9 @@ "pathNode": { "id": 6678, "name": "StdStorage", + "nameLocations": [ + "5151:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5151:10:9" @@ -8265,6 +8486,9 @@ "pathNode": { "id": 6684, "name": "StdStorage", + "nameLocations": [ + "5207:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5207:10:9" @@ -8290,10 +8514,12 @@ "id": 6724, "nodeType": "FunctionDefinition", "src": "5300:152:9", + "nodes": [], "body": { "id": 6723, "nodeType": "Block", "src": "5394:58:9", + "nodes": [], "statements": [ { "expression": { @@ -8336,6 +8562,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5409:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8350,6 +8577,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5415:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5404:15:9", @@ -8364,6 +8592,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5404:20:9", @@ -8427,6 +8656,9 @@ "pathNode": { "id": 6703, "name": "StdStorage", + "nameLocations": [ + "5318:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5318:10:9" @@ -8495,6 +8727,9 @@ "pathNode": { "id": 6709, "name": "StdStorage", + "nameLocations": [ + "5374:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5374:10:9" @@ -8520,10 +8755,12 @@ "id": 6744, "nodeType": "FunctionDefinition", "src": "5458:152:9", + "nodes": [], "body": { "id": 6743, "nodeType": "Block", "src": "5552:58:9", + "nodes": [], "statements": [ { "expression": { @@ -8550,6 +8787,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "5567:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -8633,6 +8871,9 @@ "pathNode": { "id": 6725, "name": "StdStorage", + "nameLocations": [ + "5473:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5473:10:9" @@ -8701,6 +8942,9 @@ "pathNode": { "id": 6731, "name": "StdStorage", + "nameLocations": [ + "5532:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5532:10:9" @@ -8726,10 +8970,12 @@ "id": 6776, "nodeType": "FunctionDefinition", "src": "5616:194:9", + "nodes": [], "body": { "id": 6775, "nodeType": "Block", "src": "5686:124:9", + "nodes": [], "statements": [ { "assignments": [ @@ -8784,6 +9030,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5713:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -8869,6 +9116,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5742:10:9", @@ -8945,6 +9193,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5791:10:9", @@ -8983,6 +9232,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5783:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -8998,6 +9248,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5780:22:9", @@ -9032,6 +9283,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5773:6:9", "memberName": "encode", "nodeType": "MemberAccess", "src": "5769:10:9", @@ -9046,6 +9298,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5769:34:9", @@ -9092,6 +9345,9 @@ "pathNode": { "id": 6745, "name": "StdStorage", + "nameLocations": [ + "5630:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5630:10:9" @@ -9151,10 +9407,12 @@ "id": 6795, "nodeType": "FunctionDefinition", "src": "5816:131:9", + "nodes": [], "body": { "id": 6794, "nodeType": "Block", "src": "5890:57:9", + "nodes": [], "statements": [ { "expression": { @@ -9198,6 +9456,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5918:10:9", @@ -9272,6 +9531,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5911:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "5907:10:9", @@ -9286,6 +9546,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5907:33:9", @@ -9332,6 +9593,9 @@ "pathNode": { "id": 6777, "name": "StdStorage", + "nameLocations": [ + "5838:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5838:10:9" @@ -9391,10 +9655,12 @@ "id": 6826, "nodeType": "FunctionDefinition", "src": "5953:279:9", + "nodes": [], "body": { "id": 6825, "nodeType": "Block", "src": "6021:211:9", + "nodes": [], "statements": [ { "assignments": [ @@ -9469,6 +9735,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6042:14:9", @@ -9674,6 +9941,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6133:92:9", @@ -9719,6 +9987,9 @@ "pathNode": { "id": 6796, "name": "StdStorage", + "nameLocations": [ + "5972:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5972:10:9" @@ -9778,10 +10049,12 @@ "id": 6845, "nodeType": "FunctionDefinition", "src": "6238:131:9", + "nodes": [], "body": { "id": 6844, "nodeType": "Block", "src": "6312:57:9", + "nodes": [], "statements": [ { "expression": { @@ -9825,6 +10098,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6340:10:9", @@ -9899,6 +10173,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6333:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6329:10:9", @@ -9913,6 +10188,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6329:33:9", @@ -9959,6 +10235,9 @@ "pathNode": { "id": 6827, "name": "StdStorage", + "nameLocations": [ + "6260:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6260:10:9" @@ -10019,10 +10298,12 @@ "id": 6864, "nodeType": "FunctionDefinition", "src": "6375:128:9", + "nodes": [], "body": { "id": 6863, "nodeType": "Block", "src": "6446:57:9", + "nodes": [], "statements": [ { "expression": { @@ -10066,6 +10347,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6474:10:9", @@ -10140,6 +10422,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6467:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6463:10:9", @@ -10154,6 +10437,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6463:33:9", @@ -10200,6 +10484,9 @@ "pathNode": { "id": 6846, "name": "StdStorage", + "nameLocations": [ + "6394:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6394:10:9" @@ -10259,10 +10546,12 @@ "id": 6883, "nodeType": "FunctionDefinition", "src": "6509:125:9", + "nodes": [], "body": { "id": 6882, "nodeType": "Block", "src": "6578:56:9", + "nodes": [], "statements": [ { "expression": { @@ -10306,6 +10595,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6606:10:9", @@ -10380,6 +10670,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6599:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6595:10:9", @@ -10394,6 +10685,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6595:32:9", @@ -10440,6 +10732,9 @@ "pathNode": { "id": 6865, "name": "StdStorage", + "nameLocations": [ + "6527:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6527:10:9" @@ -10499,10 +10794,12 @@ "id": 6939, "nodeType": "FunctionDefinition", "src": "6640:304:9", + "nodes": [], "body": { "id": 6938, "nodeType": "Block", "src": "6727:217:9", + "nodes": [], "statements": [ { "assignments": [ @@ -10604,6 +10901,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6775:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6773:8:9", @@ -10654,6 +10952,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6796:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6794:8:9", @@ -10866,6 +11165,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6867:29:9", @@ -11217,10 +11517,12 @@ "id": 6980, "nodeType": "FunctionDefinition", "src": "6950:393:9", + "nodes": [], "body": { "id": 6979, "nodeType": "Block", "src": "7023:320:9", + "nodes": [], "statements": [ { "assignments": [ @@ -11286,6 +11588,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7067:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7065:8:9", @@ -11354,6 +11657,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7055:24:9", @@ -11603,6 +11907,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7115:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7113:8:9", @@ -11837,6 +12142,7 @@ "id": 6998, "nodeType": "VariableDeclaration", "src": "7372:84:9", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -11854,6 +12160,9 @@ "pathNode": { "id": 6982, "name": "Vm", + "nameLocations": [ + "7372:2:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "7372:2:9" @@ -11916,6 +12225,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7424:28:9", @@ -11958,6 +12268,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7416:37:9", @@ -12000,6 +12311,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7408:46:9", @@ -12042,6 +12354,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7400:55:9", @@ -12076,6 +12389,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7397:59:9", @@ -12091,10 +12405,12 @@ "id": 7011, "nodeType": "FunctionDefinition", "src": "7463:118:9", + "nodes": [], "body": { "id": 7010, "nodeType": "Block", "src": "7530:51:9", + "nodes": [], "statements": [ { "expression": { @@ -12136,6 +12452,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7562:4:9", "memberName": "sigs", "nodeType": "MemberAccess", "referencedDeclaration": 6139, @@ -12151,6 +12468,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7547:27:9", @@ -12249,10 +12567,12 @@ "id": 7025, "nodeType": "FunctionDefinition", "src": "7587:115:9", + "nodes": [], "body": { "id": 7024, "nodeType": "Block", "src": "7653:49:9", + "nodes": [], "statements": [ { "expression": { @@ -12294,6 +12614,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7685:4:9", "memberName": "find", "nodeType": "MemberAccess", "referencedDeclaration": 6584, @@ -12309,6 +12630,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7670:25:9", @@ -12355,6 +12677,9 @@ "pathNode": { "id": 7012, "name": "StdStorage", + "nameLocations": [ + "7601:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7601:10:9" @@ -12414,10 +12739,12 @@ "id": 7043, "nodeType": "FunctionDefinition", "src": "7708:156:9", + "nodes": [], "body": { "id": 7042, "nodeType": "Block", "src": "7804:60:9", + "nodes": [], "statements": [ { "expression": { @@ -12475,6 +12802,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7836:6:9", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 6604, @@ -12490,6 +12818,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7821:36:9", @@ -12536,6 +12865,9 @@ "pathNode": { "id": 7026, "name": "StdStorage", + "nameLocations": [ + "7724:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7724:10:9" @@ -12605,6 +12937,9 @@ "pathNode": { "id": 7032, "name": "StdStorage", + "nameLocations": [ + "7784:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7784:10:9" @@ -12630,10 +12965,12 @@ "id": 7061, "nodeType": "FunctionDefinition", "src": "7870:143:9", + "nodes": [], "body": { "id": 7060, "nodeType": "Block", "src": "7959:54:9", + "nodes": [], "statements": [ { "expression": { @@ -12691,6 +13028,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7991:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6624, @@ -12706,6 +13044,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7976:30:9", @@ -12752,6 +13091,9 @@ "pathNode": { "id": 7044, "name": "StdStorage", + "nameLocations": [ + "7883:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7883:10:9" @@ -12820,6 +13162,9 @@ "pathNode": { "id": 7050, "name": "StdStorage", + "nameLocations": [ + "7939:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7939:10:9" @@ -12845,10 +13190,12 @@ "id": 7079, "nodeType": "FunctionDefinition", "src": "8019:150:9", + "nodes": [], "body": { "id": 7078, "nodeType": "Block", "src": "8115:54:9", + "nodes": [], "statements": [ { "expression": { @@ -12906,6 +13253,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8147:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6646, @@ -12921,6 +13269,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8132:30:9", @@ -12967,6 +13316,9 @@ "pathNode": { "id": 7062, "name": "StdStorage", + "nameLocations": [ + "8032:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8032:10:9" @@ -13035,6 +13387,9 @@ "pathNode": { "id": 7068, "name": "StdStorage", + "nameLocations": [ + "8095:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8095:10:9" @@ -13060,10 +13415,12 @@ "id": 7097, "nodeType": "FunctionDefinition", "src": "8175:152:9", + "nodes": [], "body": { "id": 7096, "nodeType": "Block", "src": "8269:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13121,6 +13478,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8301:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6677, @@ -13136,6 +13494,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8286:34:9", @@ -13182,6 +13541,9 @@ "pathNode": { "id": 7080, "name": "StdStorage", + "nameLocations": [ + "8193:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8193:10:9" @@ -13251,6 +13613,9 @@ "pathNode": { "id": 7086, "name": "StdStorage", + "nameLocations": [ + "8249:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8249:10:9" @@ -13276,10 +13641,12 @@ "id": 7115, "nodeType": "FunctionDefinition", "src": "8333:152:9", + "nodes": [], "body": { "id": 7114, "nodeType": "Block", "src": "8427:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13337,6 +13704,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8459:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6702, @@ -13352,6 +13720,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8444:34:9", @@ -13398,6 +13767,9 @@ "pathNode": { "id": 7098, "name": "StdStorage", + "nameLocations": [ + "8351:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8351:10:9" @@ -13466,6 +13838,9 @@ "pathNode": { "id": 7104, "name": "StdStorage", + "nameLocations": [ + "8407:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8407:10:9" @@ -13491,10 +13866,12 @@ "id": 7133, "nodeType": "FunctionDefinition", "src": "8491:152:9", + "nodes": [], "body": { "id": 7132, "nodeType": "Block", "src": "8585:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13552,6 +13929,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8617:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6724, @@ -13567,6 +13945,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8602:34:9", @@ -13613,6 +13992,9 @@ "pathNode": { "id": 7116, "name": "StdStorage", + "nameLocations": [ + "8509:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8509:10:9" @@ -13681,6 +14063,9 @@ "pathNode": { "id": 7122, "name": "StdStorage", + "nameLocations": [ + "8565:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8565:10:9" @@ -13706,10 +14091,12 @@ "id": 7151, "nodeType": "FunctionDefinition", "src": "8649:152:9", + "nodes": [], "body": { "id": 7150, "nodeType": "Block", "src": "8743:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13767,6 +14154,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8775:5:9", "memberName": "depth", "nodeType": "MemberAccess", "referencedDeclaration": 6744, @@ -13782,6 +14170,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8760:34:9", @@ -13828,6 +14217,9 @@ "pathNode": { "id": 7134, "name": "StdStorage", + "nameLocations": [ + "8664:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8664:10:9" @@ -13896,6 +14288,9 @@ "pathNode": { "id": 7140, "name": "StdStorage", + "nameLocations": [ + "8723:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8723:10:9" @@ -13921,10 +14316,12 @@ "id": 7174, "nodeType": "FunctionDefinition", "src": "8807:138:9", + "nodes": [], "body": { "id": 7173, "nodeType": "Block", "src": "8877:68:9", + "nodes": [], "statements": [ { "expression": { @@ -13992,6 +14389,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8923:12:9", @@ -14034,6 +14432,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8915:21:9", @@ -14076,6 +14475,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:30:9", @@ -14119,6 +14519,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8887:51:9", @@ -14164,6 +14565,9 @@ "pathNode": { "id": 7152, "name": "StdStorage", + "nameLocations": [ + "8830:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8830:10:9" @@ -14223,10 +14627,12 @@ "id": 7191, "nodeType": "FunctionDefinition", "src": "8951:120:9", + "nodes": [], "body": { "id": 7190, "nodeType": "Block", "src": "9021:50:9", + "nodes": [], "statements": [ { "expression": { @@ -14290,6 +14696,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9051:12:9", @@ -14333,6 +14740,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9031:33:9", @@ -14378,6 +14786,9 @@ "pathNode": { "id": 7175, "name": "StdStorage", + "nameLocations": [ + "8974:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8974:10:9" @@ -14436,10 +14847,12 @@ "id": 7209, "nodeType": "FunctionDefinition", "src": "9077:222:9", + "nodes": [], "body": { "id": 7208, "nodeType": "Block", "src": "9146:153:9", + "nodes": [], "statements": [ { "assignments": [ @@ -14584,6 +14997,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9270:22:9", @@ -14629,6 +15043,9 @@ "pathNode": { "id": 7192, "name": "StdStorage", + "nameLocations": [ + "9100:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9100:10:9" @@ -14687,10 +15104,12 @@ "id": 7354, "nodeType": "FunctionDefinition", "src": "9305:1095:9", + "nodes": [], "body": { "id": 7353, "nodeType": "Block", "src": "9375:1025:9", + "nodes": [], "statements": [ { "assignments": [ @@ -14745,6 +15164,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9404:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -14809,6 +15229,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9440:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -14873,6 +15294,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9481:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -14946,6 +15368,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9525:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -15045,6 +15468,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9584:12:9", @@ -15083,6 +15507,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9565:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9561:16:9", @@ -15097,6 +15522,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9561:36:9", @@ -15141,6 +15567,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9617:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -15256,6 +15683,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9648:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9644:16:9", @@ -15270,6 +15698,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9644:34:9", @@ -15304,6 +15733,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9634:45:9", @@ -15377,6 +15807,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9696:10:9", @@ -15450,6 +15881,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9754:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -15565,6 +15997,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9785:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9781:16:9", @@ -15579,6 +16012,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9781:34:9", @@ -15613,6 +16047,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9771:45:9", @@ -15666,6 +16101,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9741:77:9", @@ -15795,6 +16231,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9893:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "9889:14:9", @@ -15809,6 +16246,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9889:20:9", @@ -15931,6 +16369,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9930:38:9", @@ -16041,6 +16480,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10006:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -16056,6 +16496,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10003:18:9", @@ -16186,6 +16627,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10064:175:9", @@ -16274,6 +16716,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10262:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -16289,6 +16732,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10259:24:9", @@ -16331,6 +16775,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10305:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -16378,6 +16823,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10334:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -16425,6 +16871,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10360:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -16472,6 +16919,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10387:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -16522,6 +16970,9 @@ "pathNode": { "id": 7210, "name": "StdStorage", + "nameLocations": [ + "9328:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9328:10:9" @@ -16580,10 +17031,12 @@ "id": 7368, "nodeType": "FunctionDefinition", "src": "10406:131:9", + "nodes": [], "body": { "id": 7367, "nodeType": "Block", "src": "10480:57:9", + "nodes": [], "statements": [ { "expression": { @@ -16625,6 +17078,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10512:12:9", "memberName": "read_bytes32", "nodeType": "MemberAccess", "referencedDeclaration": 6795, @@ -16640,6 +17094,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10497:33:9", @@ -16686,6 +17141,9 @@ "pathNode": { "id": 7355, "name": "StdStorage", + "nameLocations": [ + "10428:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10428:10:9" @@ -16745,10 +17203,12 @@ "id": 7382, "nodeType": "FunctionDefinition", "src": "10543:122:9", + "nodes": [], "body": { "id": 7381, "nodeType": "Block", "src": "10611:54:9", + "nodes": [], "statements": [ { "expression": { @@ -16790,6 +17250,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10643:9:9", "memberName": "read_bool", "nodeType": "MemberAccess", "referencedDeclaration": 6826, @@ -16805,6 +17266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10628:30:9", @@ -16851,6 +17313,9 @@ "pathNode": { "id": 7369, "name": "StdStorage", + "nameLocations": [ + "10562:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10562:10:9" @@ -16910,10 +17375,12 @@ "id": 7396, "nodeType": "FunctionDefinition", "src": "10671:131:9", + "nodes": [], "body": { "id": 7395, "nodeType": "Block", "src": "10745:57:9", + "nodes": [], "statements": [ { "expression": { @@ -16955,6 +17422,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10777:12:9", "memberName": "read_address", "nodeType": "MemberAccess", "referencedDeclaration": 6845, @@ -16970,6 +17438,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10762:33:9", @@ -17016,6 +17485,9 @@ "pathNode": { "id": 7383, "name": "StdStorage", + "nameLocations": [ + "10693:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10693:10:9" @@ -17076,10 +17548,12 @@ "id": 7410, "nodeType": "FunctionDefinition", "src": "10808:125:9", + "nodes": [], "body": { "id": 7409, "nodeType": "Block", "src": "10879:54:9", + "nodes": [], "statements": [ { "expression": { @@ -17121,6 +17595,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10911:9:9", "memberName": "read_uint", "nodeType": "MemberAccess", "referencedDeclaration": 6864, @@ -17136,6 +17611,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10896:30:9", @@ -17182,6 +17658,9 @@ "pathNode": { "id": 7397, "name": "StdStorage", + "nameLocations": [ + "10827:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10827:10:9" @@ -17241,10 +17720,12 @@ "id": 7424, "nodeType": "FunctionDefinition", "src": "10939:122:9", + "nodes": [], "body": { "id": 7423, "nodeType": "Block", "src": "11008:53:9", + "nodes": [], "statements": [ { "expression": { @@ -17286,6 +17767,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11040:8:9", "memberName": "read_int", "nodeType": "MemberAccess", "referencedDeclaration": 6883, @@ -17301,6 +17783,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11025:29:9", @@ -17347,6 +17830,9 @@ "pathNode": { "id": 7411, "name": "StdStorage", + "nameLocations": [ + "10957:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10957:10:9" @@ -17406,10 +17892,12 @@ "id": 7480, "nodeType": "FunctionDefinition", "src": "11118:304:9", + "nodes": [], "body": { "id": 7479, "nodeType": "Block", "src": "11205:217:9", + "nodes": [], "statements": [ { "assignments": [ @@ -17511,6 +17999,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11253:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11251:8:9", @@ -17561,6 +18050,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11274:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11272:8:9", @@ -17773,6 +18263,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11345:29:9", @@ -18124,10 +18615,12 @@ "id": 7521, "nodeType": "FunctionDefinition", "src": "11479:393:9", + "nodes": [], "body": { "id": 7520, "nodeType": "Block", "src": "11552:320:9", + "nodes": [], "statements": [ { "assignments": [ @@ -18193,6 +18686,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11596:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11594:8:9", @@ -18261,6 +18755,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11584:24:9", @@ -18510,6 +19005,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11644:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11642:8:9", diff --git a/out/StdStorage.sol/stdStorageSafe.json b/out/StdStorage.sol/stdStorageSafe.json index c27680f..31a2566 100644 --- a/out/StdStorage.sol/stdStorageSafe.json +++ b/out/StdStorage.sol/stdStorageSafe.json @@ -52,16 +52,123 @@ } ], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e80866b3247ad5aa74c70fc2f628d5ec50563f92e5f120127fd15a0cf287d2db64736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220466e06831f252d0815d15ccf9db6ba3a74c566fe27f339645978313aee8ca2a164736f6c63430008110033", "sourceMap": "368:6977:9:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;368:6977:9;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e80866b3247ad5aa74c70fc2f628d5ec50563f92e5f120127fd15a0cf287d2db64736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220466e06831f252d0815d15ccf9db6ba3a74c566fe27f339645978313aee8ca2a164736f6c63430008110033", "sourceMap": "368:6977:9:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes4\",\"name\":\"fsig\",\"type\":\"bytes4\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"keysHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"slot\",\"type\":\"uint256\"}],\"name\":\"SlotFound\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"slot\",\"type\":\"uint256\"}],\"name\":\"WARNING_UninitedSlot\",\"type\":\"event\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdStorage.sol\":\"stdStorageSafe\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address", + "indexed": false + }, + { + "internalType": "bytes4", + "name": "fsig", + "type": "bytes4", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "keysHash", + "type": "bytes32", + "indexed": false + }, + { + "internalType": "uint256", + "name": "slot", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "SlotFound", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address", + "indexed": false + }, + { + "internalType": "uint256", + "name": "slot", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "WARNING_UninitedSlot", + "anonymous": false + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdStorage.sol": "stdStorageSafe" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdStorage.sol", "id": 7523, @@ -86,6 +193,7 @@ "id": 6058, "nodeType": "PragmaDirective", "src": "32:31:9", + "nodes": [], "literals": [ "solidity", ">=", @@ -100,6 +208,7 @@ "id": 6060, "nodeType": "ImportDirective", "src": "65:28:9", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -125,6 +234,7 @@ "id": 6088, "nodeType": "StructDefinition", "src": "95:271:9", + "nodes": [], "canonicalName": "StdStorage", "members": [ { @@ -455,6 +565,7 @@ "id": 6098, "nodeType": "EventDefinition", "src": "397:74:9", + "nodes": [], "anonymous": false, "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", "name": "SlotFound", @@ -584,6 +695,7 @@ "id": 6104, "nodeType": "EventDefinition", "src": "476:54:9", + "nodes": [], "anonymous": false, "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", "name": "WARNING_UninitedSlot", @@ -657,6 +769,7 @@ "id": 6121, "nodeType": "VariableDeclaration", "src": "536:84:9", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -674,6 +787,9 @@ "pathNode": { "id": 6105, "name": "Vm", + "nameLocations": [ + "536:2:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "536:2:9" @@ -736,6 +852,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "588:28:9", @@ -778,6 +895,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "580:37:9", @@ -820,6 +938,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "572:46:9", @@ -862,6 +981,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "564:55:9", @@ -896,6 +1016,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "561:59:9", @@ -911,10 +1032,12 @@ "id": 6139, "nodeType": "FunctionDefinition", "src": "627:123:9", + "nodes": [], "body": { "id": 6138, "nodeType": "Block", "src": "694:56:9", + "nodes": [], "statements": [ { "expression": { @@ -968,6 +1091,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "728:13:9", @@ -1002,6 +1126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "718:24:9", @@ -1044,6 +1169,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "711:32:9", @@ -1142,10 +1268,12 @@ "id": 6584, "nodeType": "FunctionDefinition", "src": "1264:3205:9", + "nodes": [], "body": { "id": 6583, "nodeType": "Block", "src": "1330:3139:9", + "nodes": [], "statements": [ { "assignments": [ @@ -1200,6 +1328,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1359:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -1264,6 +1393,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1395:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -1328,6 +1458,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1436:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -1401,6 +1532,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1480:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -1435,6 +1567,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1541:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -1550,6 +1683,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1572:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1568:16:9", @@ -1564,6 +1698,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1568:34:9", @@ -1598,6 +1733,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1558:45:9", @@ -1648,6 +1784,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "1632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -1763,6 +1900,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1659:16:9", @@ -1777,6 +1915,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1659:34:9", @@ -1811,6 +1950,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1649:45:9", @@ -1926,6 +2066,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1758:12:9", @@ -1964,6 +2105,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1739:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "1735:16:9", @@ -1978,6 +2120,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:36:9", @@ -2012,6 +2155,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1784:6:9", "memberName": "record", "nodeType": "MemberAccess", "referencedDeclaration": 8553, @@ -2027,6 +2171,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1781:11:9", @@ -2157,6 +2302,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1866:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "1862:14:9", @@ -2171,6 +2317,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1862:20:9", @@ -2293,6 +2440,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1903:38:9", @@ -2408,6 +2556,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2002:12:9", @@ -2442,6 +2591,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1993:8:9", "memberName": "accesses", "nodeType": "MemberAccess", "referencedDeclaration": 8564, @@ -2457,6 +2607,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1990:25:9", @@ -2498,6 +2649,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2035:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2029:12:9", @@ -2559,6 +2711,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2792:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2786:12:9", @@ -2663,6 +2816,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4000:82:9", @@ -2806,6 +2960,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2897:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -2821,6 +2976,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2894:22:9", @@ -2909,6 +3065,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2946:10:9", @@ -3019,6 +3176,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3011:17:9", @@ -3057,6 +3215,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2985:44:9", @@ -3176,6 +3335,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3114:18:9", @@ -3218,6 +3378,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3093:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -3233,6 +3394,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3090:43:9", @@ -3413,6 +3575,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3260:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "3256:14:9", @@ -3427,6 +3590,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3256:20:9", @@ -3556,6 +3720,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3305:38:9", @@ -3677,6 +3842,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3403:18:9", @@ -3790,6 +3956,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3554:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3550:16:9", @@ -3804,6 +3971,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3550:34:9", @@ -3838,6 +4006,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3540:45:9", @@ -3919,6 +4088,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3587:17:9", @@ -3965,6 +4135,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3519:86:9", @@ -4006,6 +4177,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "3632:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -4121,6 +4293,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3663:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3659:16:9", @@ -4135,6 +4308,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3659:34:9", @@ -4169,6 +4343,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3649:45:9", @@ -4263,6 +4438,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3698:17:9", @@ -4310,6 +4486,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "3742:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -4425,6 +4602,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3773:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "3769:16:9", @@ -4439,6 +4617,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3769:34:9", @@ -4473,6 +4652,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3759:45:9", @@ -4618,6 +4798,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3837:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4633,6 +4814,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3834:29:9", @@ -4751,6 +4933,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3929:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -4766,6 +4949,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3926:29:9", @@ -4823,6 +5007,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2848:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "2842:12:9", @@ -5055,6 +5240,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2080:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -5070,6 +5256,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2077:22:9", @@ -5158,6 +5345,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2125:10:9", @@ -5272,6 +5460,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2186:17:9", @@ -5310,6 +5499,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2160:44:9", @@ -5444,6 +5634,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2268:187:9", @@ -5544,6 +5735,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2523:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2519:16:9", @@ -5558,6 +5750,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2519:34:9", @@ -5592,6 +5785,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2509:45:9", @@ -5677,6 +5871,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2556:17:9", @@ -5723,6 +5918,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2488:86:9", @@ -5764,6 +5960,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "2593:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -5879,6 +6076,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2624:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2620:16:9", @@ -5893,6 +6091,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2620:34:9", @@ -5927,6 +6126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2610:45:9", @@ -6025,6 +6225,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2659:17:9", @@ -6072,6 +6273,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "2695:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6187,6 +6389,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2726:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2722:16:9", @@ -6201,6 +6404,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2722:34:9", @@ -6235,6 +6439,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2712:45:9", @@ -6310,6 +6515,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4129:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -6425,6 +6631,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4160:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4156:16:9", @@ -6439,6 +6646,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4156:34:9", @@ -6473,6 +6681,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4146:45:9", @@ -6541,6 +6750,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4103:162:9", @@ -6583,6 +6793,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4288:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -6630,6 +6841,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4317:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -6677,6 +6889,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4343:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -6724,6 +6937,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4370:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -6764,6 +6978,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4399:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -6879,6 +7094,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4430:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4426:16:9", @@ -6893,6 +7109,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4426:34:9", @@ -6927,6 +7144,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4416:45:9", @@ -6990,6 +7208,9 @@ "pathNode": { "id": 6141, "name": "StdStorage", + "nameLocations": [ + "1278:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "1278:10:9" @@ -7049,10 +7270,12 @@ "id": 6604, "nodeType": "FunctionDefinition", "src": "4475:156:9", + "nodes": [], "body": { "id": 6603, "nodeType": "Block", "src": "4571:60:9", + "nodes": [], "statements": [ { "expression": { @@ -7079,6 +7302,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4586:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -7162,6 +7386,9 @@ "pathNode": { "id": 6585, "name": "StdStorage", + "nameLocations": [ + "4491:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4491:10:9" @@ -7231,6 +7458,9 @@ "pathNode": { "id": 6591, "name": "StdStorage", + "nameLocations": [ + "4551:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4551:10:9" @@ -7256,10 +7486,12 @@ "id": 6624, "nodeType": "FunctionDefinition", "src": "4637:143:9", + "nodes": [], "body": { "id": 6623, "nodeType": "Block", "src": "4726:54:9", + "nodes": [], "statements": [ { "expression": { @@ -7286,6 +7518,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4741:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7369,6 +7602,9 @@ "pathNode": { "id": 6605, "name": "StdStorage", + "nameLocations": [ + "4650:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4650:10:9" @@ -7437,6 +7673,9 @@ "pathNode": { "id": 6611, "name": "StdStorage", + "nameLocations": [ + "4706:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4706:10:9" @@ -7462,10 +7701,12 @@ "id": 6646, "nodeType": "FunctionDefinition", "src": "4786:156:9", + "nodes": [], "body": { "id": 6645, "nodeType": "Block", "src": "4882:60:9", + "nodes": [], "statements": [ { "expression": { @@ -7492,6 +7733,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4897:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -7542,6 +7784,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4904:10:9", @@ -7611,6 +7854,9 @@ "pathNode": { "id": 6625, "name": "StdStorage", + "nameLocations": [ + "4799:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4799:10:9" @@ -7679,6 +7925,9 @@ "pathNode": { "id": 6631, "name": "StdStorage", + "nameLocations": [ + "4862:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4862:10:9" @@ -7704,10 +7953,12 @@ "id": 6677, "nodeType": "FunctionDefinition", "src": "4948:179:9", + "nodes": [], "body": { "id": 6676, "nodeType": "Block", "src": "5042:85:9", + "nodes": [], "statements": [ { "expression": { @@ -7763,6 +8014,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5084:12:9", @@ -7805,6 +8057,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5076:21:9", @@ -7847,6 +8100,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5068:30:9", @@ -7882,6 +8136,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5057:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -7896,6 +8151,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5063:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5052:15:9", @@ -7910,6 +8166,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5052:47:9", @@ -7973,6 +8230,9 @@ "pathNode": { "id": 6647, "name": "StdStorage", + "nameLocations": [ + "4966:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "4966:10:9" @@ -8042,6 +8302,9 @@ "pathNode": { "id": 6653, "name": "StdStorage", + "nameLocations": [ + "5022:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5022:10:9" @@ -8067,10 +8330,12 @@ "id": 6702, "nodeType": "FunctionDefinition", "src": "5133:161:9", + "nodes": [], "body": { "id": 6701, "nodeType": "Block", "src": "5227:67:9", + "nodes": [], "statements": [ { "expression": { @@ -8122,6 +8387,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5253:12:9", @@ -8157,6 +8423,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5242:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8171,6 +8438,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5248:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5237:15:9", @@ -8185,6 +8453,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5237:29:9", @@ -8248,6 +8517,9 @@ "pathNode": { "id": 6678, "name": "StdStorage", + "nameLocations": [ + "5151:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5151:10:9" @@ -8316,6 +8588,9 @@ "pathNode": { "id": 6684, "name": "StdStorage", + "nameLocations": [ + "5207:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5207:10:9" @@ -8341,10 +8616,12 @@ "id": 6724, "nodeType": "FunctionDefinition", "src": "5300:152:9", + "nodes": [], "body": { "id": 6723, "nodeType": "Block", "src": "5394:58:9", + "nodes": [], "statements": [ { "expression": { @@ -8387,6 +8664,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5409:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -8401,6 +8679,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5415:4:9", "memberName": "push", "nodeType": "MemberAccess", "src": "5404:15:9", @@ -8415,6 +8694,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5404:20:9", @@ -8478,6 +8758,9 @@ "pathNode": { "id": 6703, "name": "StdStorage", + "nameLocations": [ + "5318:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5318:10:9" @@ -8546,6 +8829,9 @@ "pathNode": { "id": 6709, "name": "StdStorage", + "nameLocations": [ + "5374:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5374:10:9" @@ -8571,10 +8857,12 @@ "id": 6744, "nodeType": "FunctionDefinition", "src": "5458:152:9", + "nodes": [], "body": { "id": 6743, "nodeType": "Block", "src": "5552:58:9", + "nodes": [], "statements": [ { "expression": { @@ -8601,6 +8889,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "5567:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -8684,6 +8973,9 @@ "pathNode": { "id": 6725, "name": "StdStorage", + "nameLocations": [ + "5473:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5473:10:9" @@ -8752,6 +9044,9 @@ "pathNode": { "id": 6731, "name": "StdStorage", + "nameLocations": [ + "5532:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5532:10:9" @@ -8777,10 +9072,12 @@ "id": 6776, "nodeType": "FunctionDefinition", "src": "5616:194:9", + "nodes": [], "body": { "id": 6775, "nodeType": "Block", "src": "5686:124:9", + "nodes": [], "statements": [ { "assignments": [ @@ -8835,6 +9132,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5713:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -8920,6 +9218,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5742:10:9", @@ -8996,6 +9295,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5791:10:9", @@ -9034,6 +9334,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5783:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -9049,6 +9350,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5780:22:9", @@ -9083,6 +9385,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5773:6:9", "memberName": "encode", "nodeType": "MemberAccess", "src": "5769:10:9", @@ -9097,6 +9400,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5769:34:9", @@ -9143,6 +9447,9 @@ "pathNode": { "id": 6745, "name": "StdStorage", + "nameLocations": [ + "5630:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5630:10:9" @@ -9202,10 +9509,12 @@ "id": 6795, "nodeType": "FunctionDefinition", "src": "5816:131:9", + "nodes": [], "body": { "id": 6794, "nodeType": "Block", "src": "5890:57:9", + "nodes": [], "statements": [ { "expression": { @@ -9249,6 +9558,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5918:10:9", @@ -9323,6 +9633,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5911:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "5907:10:9", @@ -9337,6 +9648,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5907:33:9", @@ -9383,6 +9695,9 @@ "pathNode": { "id": 6777, "name": "StdStorage", + "nameLocations": [ + "5838:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5838:10:9" @@ -9442,10 +9757,12 @@ "id": 6826, "nodeType": "FunctionDefinition", "src": "5953:279:9", + "nodes": [], "body": { "id": 6825, "nodeType": "Block", "src": "6021:211:9", + "nodes": [], "statements": [ { "assignments": [ @@ -9520,6 +9837,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6042:14:9", @@ -9725,6 +10043,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6133:92:9", @@ -9770,6 +10089,9 @@ "pathNode": { "id": 6796, "name": "StdStorage", + "nameLocations": [ + "5972:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "5972:10:9" @@ -9829,10 +10151,12 @@ "id": 6845, "nodeType": "FunctionDefinition", "src": "6238:131:9", + "nodes": [], "body": { "id": 6844, "nodeType": "Block", "src": "6312:57:9", + "nodes": [], "statements": [ { "expression": { @@ -9876,6 +10200,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6340:10:9", @@ -9950,6 +10275,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6333:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6329:10:9", @@ -9964,6 +10290,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6329:33:9", @@ -10010,6 +10337,9 @@ "pathNode": { "id": 6827, "name": "StdStorage", + "nameLocations": [ + "6260:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6260:10:9" @@ -10070,10 +10400,12 @@ "id": 6864, "nodeType": "FunctionDefinition", "src": "6375:128:9", + "nodes": [], "body": { "id": 6863, "nodeType": "Block", "src": "6446:57:9", + "nodes": [], "statements": [ { "expression": { @@ -10117,6 +10449,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6474:10:9", @@ -10191,6 +10524,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6467:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6463:10:9", @@ -10205,6 +10539,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6463:33:9", @@ -10251,6 +10586,9 @@ "pathNode": { "id": 6846, "name": "StdStorage", + "nameLocations": [ + "6394:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6394:10:9" @@ -10310,10 +10648,12 @@ "id": 6883, "nodeType": "FunctionDefinition", "src": "6509:125:9", + "nodes": [], "body": { "id": 6882, "nodeType": "Block", "src": "6578:56:9", + "nodes": [], "statements": [ { "expression": { @@ -10357,6 +10697,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6606:10:9", @@ -10431,6 +10772,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6599:6:9", "memberName": "decode", "nodeType": "MemberAccess", "src": "6595:10:9", @@ -10445,6 +10787,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6595:32:9", @@ -10491,6 +10834,9 @@ "pathNode": { "id": 6865, "name": "StdStorage", + "nameLocations": [ + "6527:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "6527:10:9" @@ -10550,10 +10896,12 @@ "id": 6939, "nodeType": "FunctionDefinition", "src": "6640:304:9", + "nodes": [], "body": { "id": 6938, "nodeType": "Block", "src": "6727:217:9", + "nodes": [], "statements": [ { "assignments": [ @@ -10655,6 +11003,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6775:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6773:8:9", @@ -10705,6 +11054,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6796:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "6794:8:9", @@ -10917,6 +11267,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6867:29:9", @@ -11268,10 +11619,12 @@ "id": 6980, "nodeType": "FunctionDefinition", "src": "6950:393:9", + "nodes": [], "body": { "id": 6979, "nodeType": "Block", "src": "7023:320:9", + "nodes": [], "statements": [ { "assignments": [ @@ -11337,6 +11690,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7067:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7065:8:9", @@ -11405,6 +11759,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7055:24:9", @@ -11654,6 +12009,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7115:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "7113:8:9", @@ -11888,6 +12244,7 @@ "id": 6998, "nodeType": "VariableDeclaration", "src": "7372:84:9", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -11905,6 +12262,9 @@ "pathNode": { "id": 6982, "name": "Vm", + "nameLocations": [ + "7372:2:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9352, "src": "7372:2:9" @@ -11967,6 +12327,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7424:28:9", @@ -12009,6 +12370,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7416:37:9", @@ -12051,6 +12413,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7408:46:9", @@ -12093,6 +12456,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7400:55:9", @@ -12127,6 +12491,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7397:59:9", @@ -12142,10 +12507,12 @@ "id": 7011, "nodeType": "FunctionDefinition", "src": "7463:118:9", + "nodes": [], "body": { "id": 7010, "nodeType": "Block", "src": "7530:51:9", + "nodes": [], "statements": [ { "expression": { @@ -12187,6 +12554,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7562:4:9", "memberName": "sigs", "nodeType": "MemberAccess", "referencedDeclaration": 6139, @@ -12202,6 +12570,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7547:27:9", @@ -12300,10 +12669,12 @@ "id": 7025, "nodeType": "FunctionDefinition", "src": "7587:115:9", + "nodes": [], "body": { "id": 7024, "nodeType": "Block", "src": "7653:49:9", + "nodes": [], "statements": [ { "expression": { @@ -12345,6 +12716,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7685:4:9", "memberName": "find", "nodeType": "MemberAccess", "referencedDeclaration": 6584, @@ -12360,6 +12732,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7670:25:9", @@ -12406,6 +12779,9 @@ "pathNode": { "id": 7012, "name": "StdStorage", + "nameLocations": [ + "7601:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7601:10:9" @@ -12465,10 +12841,12 @@ "id": 7043, "nodeType": "FunctionDefinition", "src": "7708:156:9", + "nodes": [], "body": { "id": 7042, "nodeType": "Block", "src": "7804:60:9", + "nodes": [], "statements": [ { "expression": { @@ -12526,6 +12904,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7836:6:9", "memberName": "target", "nodeType": "MemberAccess", "referencedDeclaration": 6604, @@ -12541,6 +12920,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7821:36:9", @@ -12587,6 +12967,9 @@ "pathNode": { "id": 7026, "name": "StdStorage", + "nameLocations": [ + "7724:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7724:10:9" @@ -12656,6 +13039,9 @@ "pathNode": { "id": 7032, "name": "StdStorage", + "nameLocations": [ + "7784:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7784:10:9" @@ -12681,10 +13067,12 @@ "id": 7061, "nodeType": "FunctionDefinition", "src": "7870:143:9", + "nodes": [], "body": { "id": 7060, "nodeType": "Block", "src": "7959:54:9", + "nodes": [], "statements": [ { "expression": { @@ -12742,6 +13130,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7991:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6624, @@ -12757,6 +13146,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7976:30:9", @@ -12803,6 +13193,9 @@ "pathNode": { "id": 7044, "name": "StdStorage", + "nameLocations": [ + "7883:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7883:10:9" @@ -12871,6 +13264,9 @@ "pathNode": { "id": 7050, "name": "StdStorage", + "nameLocations": [ + "7939:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "7939:10:9" @@ -12896,10 +13292,12 @@ "id": 7079, "nodeType": "FunctionDefinition", "src": "8019:150:9", + "nodes": [], "body": { "id": 7078, "nodeType": "Block", "src": "8115:54:9", + "nodes": [], "statements": [ { "expression": { @@ -12957,6 +13355,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8147:3:9", "memberName": "sig", "nodeType": "MemberAccess", "referencedDeclaration": 6646, @@ -12972,6 +13371,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8132:30:9", @@ -13018,6 +13418,9 @@ "pathNode": { "id": 7062, "name": "StdStorage", + "nameLocations": [ + "8032:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8032:10:9" @@ -13086,6 +13489,9 @@ "pathNode": { "id": 7068, "name": "StdStorage", + "nameLocations": [ + "8095:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8095:10:9" @@ -13111,10 +13517,12 @@ "id": 7097, "nodeType": "FunctionDefinition", "src": "8175:152:9", + "nodes": [], "body": { "id": 7096, "nodeType": "Block", "src": "8269:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13172,6 +13580,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8301:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6677, @@ -13187,6 +13596,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8286:34:9", @@ -13233,6 +13643,9 @@ "pathNode": { "id": 7080, "name": "StdStorage", + "nameLocations": [ + "8193:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8193:10:9" @@ -13302,6 +13715,9 @@ "pathNode": { "id": 7086, "name": "StdStorage", + "nameLocations": [ + "8249:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8249:10:9" @@ -13327,10 +13743,12 @@ "id": 7115, "nodeType": "FunctionDefinition", "src": "8333:152:9", + "nodes": [], "body": { "id": 7114, "nodeType": "Block", "src": "8427:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13388,6 +13806,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8459:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6702, @@ -13403,6 +13822,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8444:34:9", @@ -13449,6 +13869,9 @@ "pathNode": { "id": 7098, "name": "StdStorage", + "nameLocations": [ + "8351:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8351:10:9" @@ -13517,6 +13940,9 @@ "pathNode": { "id": 7104, "name": "StdStorage", + "nameLocations": [ + "8407:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8407:10:9" @@ -13542,10 +13968,12 @@ "id": 7133, "nodeType": "FunctionDefinition", "src": "8491:152:9", + "nodes": [], "body": { "id": 7132, "nodeType": "Block", "src": "8585:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13603,6 +14031,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8617:8:9", "memberName": "with_key", "nodeType": "MemberAccess", "referencedDeclaration": 6724, @@ -13618,6 +14047,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8602:34:9", @@ -13664,6 +14094,9 @@ "pathNode": { "id": 7116, "name": "StdStorage", + "nameLocations": [ + "8509:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8509:10:9" @@ -13732,6 +14165,9 @@ "pathNode": { "id": 7122, "name": "StdStorage", + "nameLocations": [ + "8565:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8565:10:9" @@ -13757,10 +14193,12 @@ "id": 7151, "nodeType": "FunctionDefinition", "src": "8649:152:9", + "nodes": [], "body": { "id": 7150, "nodeType": "Block", "src": "8743:58:9", + "nodes": [], "statements": [ { "expression": { @@ -13818,6 +14256,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8775:5:9", "memberName": "depth", "nodeType": "MemberAccess", "referencedDeclaration": 6744, @@ -13833,6 +14272,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8760:34:9", @@ -13879,6 +14319,9 @@ "pathNode": { "id": 7134, "name": "StdStorage", + "nameLocations": [ + "8664:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8664:10:9" @@ -13947,6 +14390,9 @@ "pathNode": { "id": 7140, "name": "StdStorage", + "nameLocations": [ + "8723:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8723:10:9" @@ -13972,10 +14418,12 @@ "id": 7174, "nodeType": "FunctionDefinition", "src": "8807:138:9", + "nodes": [], "body": { "id": 7173, "nodeType": "Block", "src": "8877:68:9", + "nodes": [], "statements": [ { "expression": { @@ -14043,6 +14491,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8923:12:9", @@ -14085,6 +14534,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8915:21:9", @@ -14127,6 +14577,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8907:30:9", @@ -14170,6 +14621,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8887:51:9", @@ -14215,6 +14667,9 @@ "pathNode": { "id": 7152, "name": "StdStorage", + "nameLocations": [ + "8830:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8830:10:9" @@ -14274,10 +14729,12 @@ "id": 7191, "nodeType": "FunctionDefinition", "src": "8951:120:9", + "nodes": [], "body": { "id": 7190, "nodeType": "Block", "src": "9021:50:9", + "nodes": [], "statements": [ { "expression": { @@ -14341,6 +14798,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9051:12:9", @@ -14384,6 +14842,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9031:33:9", @@ -14429,6 +14888,9 @@ "pathNode": { "id": 7175, "name": "StdStorage", + "nameLocations": [ + "8974:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "8974:10:9" @@ -14487,10 +14949,12 @@ "id": 7209, "nodeType": "FunctionDefinition", "src": "9077:222:9", + "nodes": [], "body": { "id": 7208, "nodeType": "Block", "src": "9146:153:9", + "nodes": [], "statements": [ { "assignments": [ @@ -14635,6 +15099,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9270:22:9", @@ -14680,6 +15145,9 @@ "pathNode": { "id": 7192, "name": "StdStorage", + "nameLocations": [ + "9100:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9100:10:9" @@ -14738,10 +15206,12 @@ "id": 7354, "nodeType": "FunctionDefinition", "src": "9305:1095:9", + "nodes": [], "body": { "id": 7353, "nodeType": "Block", "src": "9375:1025:9", + "nodes": [], "statements": [ { "assignments": [ @@ -14796,6 +15266,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9404:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -14860,6 +15331,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9440:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -14924,6 +15396,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9481:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -14997,6 +15470,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9525:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -15096,6 +15570,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9584:12:9", @@ -15134,6 +15609,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9565:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9561:16:9", @@ -15148,6 +15624,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9561:36:9", @@ -15192,6 +15669,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9617:5:9", "memberName": "finds", "nodeType": "MemberAccess", "referencedDeclaration": 6076, @@ -15307,6 +15785,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9648:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9644:16:9", @@ -15321,6 +15800,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9644:34:9", @@ -15355,6 +15835,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9634:45:9", @@ -15428,6 +15909,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9696:10:9", @@ -15501,6 +15983,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9754:5:9", "memberName": "slots", "nodeType": "MemberAccess", "referencedDeclaration": 6068, @@ -15616,6 +16099,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9785:12:9", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "9781:16:9", @@ -15630,6 +16114,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9781:34:9", @@ -15664,6 +16149,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9771:45:9", @@ -15717,6 +16203,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9741:77:9", @@ -15846,6 +16333,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9893:10:9", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "9889:14:9", @@ -15860,6 +16348,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9889:20:9", @@ -15982,6 +16471,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9930:38:9", @@ -16092,6 +16582,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10006:4:9", "memberName": "load", "nodeType": "MemberAccess", "referencedDeclaration": 8235, @@ -16107,6 +16598,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10003:18:9", @@ -16237,6 +16729,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10064:175:9", @@ -16325,6 +16818,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10262:5:9", "memberName": "store", "nodeType": "MemberAccess", "referencedDeclaration": 9063, @@ -16340,6 +16834,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10259:24:9", @@ -16382,6 +16877,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10305:7:9", "memberName": "_target", "nodeType": "MemberAccess", "referencedDeclaration": 6085, @@ -16429,6 +16925,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10334:4:9", "memberName": "_sig", "nodeType": "MemberAccess", "referencedDeclaration": 6081, @@ -16476,6 +16973,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10360:5:9", "memberName": "_keys", "nodeType": "MemberAccess", "referencedDeclaration": 6079, @@ -16523,6 +17021,7 @@ "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "10387:6:9", "memberName": "_depth", "nodeType": "MemberAccess", "referencedDeclaration": 6083, @@ -16573,6 +17072,9 @@ "pathNode": { "id": 7210, "name": "StdStorage", + "nameLocations": [ + "9328:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "9328:10:9" @@ -16631,10 +17133,12 @@ "id": 7368, "nodeType": "FunctionDefinition", "src": "10406:131:9", + "nodes": [], "body": { "id": 7367, "nodeType": "Block", "src": "10480:57:9", + "nodes": [], "statements": [ { "expression": { @@ -16676,6 +17180,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10512:12:9", "memberName": "read_bytes32", "nodeType": "MemberAccess", "referencedDeclaration": 6795, @@ -16691,6 +17196,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10497:33:9", @@ -16737,6 +17243,9 @@ "pathNode": { "id": 7355, "name": "StdStorage", + "nameLocations": [ + "10428:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10428:10:9" @@ -16796,10 +17305,12 @@ "id": 7382, "nodeType": "FunctionDefinition", "src": "10543:122:9", + "nodes": [], "body": { "id": 7381, "nodeType": "Block", "src": "10611:54:9", + "nodes": [], "statements": [ { "expression": { @@ -16841,6 +17352,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10643:9:9", "memberName": "read_bool", "nodeType": "MemberAccess", "referencedDeclaration": 6826, @@ -16856,6 +17368,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10628:30:9", @@ -16902,6 +17415,9 @@ "pathNode": { "id": 7369, "name": "StdStorage", + "nameLocations": [ + "10562:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10562:10:9" @@ -16961,10 +17477,12 @@ "id": 7396, "nodeType": "FunctionDefinition", "src": "10671:131:9", + "nodes": [], "body": { "id": 7395, "nodeType": "Block", "src": "10745:57:9", + "nodes": [], "statements": [ { "expression": { @@ -17006,6 +17524,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10777:12:9", "memberName": "read_address", "nodeType": "MemberAccess", "referencedDeclaration": 6845, @@ -17021,6 +17540,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10762:33:9", @@ -17067,6 +17587,9 @@ "pathNode": { "id": 7383, "name": "StdStorage", + "nameLocations": [ + "10693:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10693:10:9" @@ -17127,10 +17650,12 @@ "id": 7410, "nodeType": "FunctionDefinition", "src": "10808:125:9", + "nodes": [], "body": { "id": 7409, "nodeType": "Block", "src": "10879:54:9", + "nodes": [], "statements": [ { "expression": { @@ -17172,6 +17697,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10911:9:9", "memberName": "read_uint", "nodeType": "MemberAccess", "referencedDeclaration": 6864, @@ -17187,6 +17713,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10896:30:9", @@ -17233,6 +17760,9 @@ "pathNode": { "id": 7397, "name": "StdStorage", + "nameLocations": [ + "10827:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10827:10:9" @@ -17292,10 +17822,12 @@ "id": 7424, "nodeType": "FunctionDefinition", "src": "10939:122:9", + "nodes": [], "body": { "id": 7423, "nodeType": "Block", "src": "11008:53:9", + "nodes": [], "statements": [ { "expression": { @@ -17337,6 +17869,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11040:8:9", "memberName": "read_int", "nodeType": "MemberAccess", "referencedDeclaration": 6883, @@ -17352,6 +17885,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11025:29:9", @@ -17398,6 +17932,9 @@ "pathNode": { "id": 7411, "name": "StdStorage", + "nameLocations": [ + "10957:10:9" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 6088, "src": "10957:10:9" @@ -17457,10 +17994,12 @@ "id": 7480, "nodeType": "FunctionDefinition", "src": "11118:304:9", + "nodes": [], "body": { "id": 7479, "nodeType": "Block", "src": "11205:217:9", + "nodes": [], "statements": [ { "assignments": [ @@ -17562,6 +18101,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11253:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11251:8:9", @@ -17612,6 +18152,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11274:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11272:8:9", @@ -17824,6 +18365,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11345:29:9", @@ -18175,10 +18717,12 @@ "id": 7521, "nodeType": "FunctionDefinition", "src": "11479:393:9", + "nodes": [], "body": { "id": 7520, "nodeType": "Block", "src": "11552:320:9", + "nodes": [], "statements": [ { "assignments": [ @@ -18244,6 +18788,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11596:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11594:8:9", @@ -18312,6 +18857,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11584:24:9", @@ -18561,6 +19107,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11644:6:9", "memberName": "length", "nodeType": "MemberAccess", "src": "11642:8:9", diff --git a/out/StdUtils.sol/StdUtils.json b/out/StdUtils.sol/StdUtils.json index 269f3cf..04e5410 100644 --- a/out/StdUtils.sol/StdUtils.json +++ b/out/StdUtils.sol/StdUtils.json @@ -11,6 +11,62 @@ "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdUtils.sol\":\"StdUtils\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/StdUtils.sol": "StdUtils" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/StdUtils.sol", "id": 8154, @@ -29,6 +85,7 @@ "id": 7524, "nodeType": "PragmaDirective", "src": "32:31:10", + "nodes": [], "literals": [ "solidity", ">=", @@ -43,6 +100,7 @@ "id": 7526, "nodeType": "ImportDirective", "src": "88:32:10", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -73,6 +131,7 @@ "id": 7543, "nodeType": "VariableDeclaration", "src": "155:92:10", + "nodes": [], "constant": true, "mutability": "constant", "name": "vm", @@ -90,6 +149,9 @@ "pathNode": { "id": 7527, "name": "VmSafe", + "nameLocations": [ + "155:6:10" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "155:6:10" @@ -152,6 +214,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "215:28:10", @@ -194,6 +257,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "207:37:10", @@ -236,6 +300,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "199:46:10", @@ -278,6 +343,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "191:55:10", @@ -312,6 +378,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "184:63:10", @@ -327,6 +394,7 @@ "id": 7546, "nodeType": "VariableDeclaration", "src": "253:86:10", + "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE2_ADDRESS", @@ -371,6 +439,7 @@ "id": 7549, "nodeType": "VariableDeclaration", "src": "346:127:10", + "nodes": [], "constant": true, "mutability": "constant", "name": "INT256_MIN_ABS", @@ -414,6 +483,7 @@ "id": 7552, "nodeType": "VariableDeclaration", "src": "479:125:10", + "nodes": [], "constant": true, "mutability": "constant", "name": "UINT256_MAX", @@ -457,10 +527,12 @@ "id": 7682, "nodeType": "FunctionDefinition", "src": "611:1263:10", + "nodes": [], "body": { "id": 7681, "nodeType": "Block", "src": "711:1163:10", + "nodes": [], "statements": [ { "expression": { @@ -555,6 +627,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "721:85:10", @@ -2144,10 +2217,12 @@ "id": 7707, "nodeType": "FunctionDefinition", "src": "1880:190:10", + "nodes": [], "body": { "id": 7706, "nodeType": "Block", "src": "1979:91:10", + "nodes": [], "statements": [ { "expression": { @@ -2241,6 +2316,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1998:19:10", @@ -2323,6 +2399,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2027:36:10", @@ -2474,10 +2551,12 @@ "id": 7837, "nodeType": "FunctionDefinition", "src": "2076:1203:10", + "nodes": [], "body": { "id": 7836, "nodeType": "Block", "src": "2171:1108:10", + "nodes": [], "statements": [ { "expression": { @@ -2572,6 +2651,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2181:82:10", @@ -2725,6 +2805,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2750:10:10", @@ -2868,6 +2949,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2731:10:10", @@ -3074,6 +3156,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2853:12:10", @@ -3217,6 +3300,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2832:12:10", @@ -3423,6 +3507,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2958:12:10", @@ -3566,6 +3651,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2937:12:10", @@ -3737,6 +3823,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3011:22:10", @@ -3890,6 +3977,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3187:26:10", @@ -4048,6 +4136,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3151:33:10", @@ -4130,6 +4219,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3255:8:10", "memberName": "toString", "nodeType": "MemberAccess", "referencedDeclaration": 8721, @@ -4145,6 +4235,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3252:19:10", @@ -4186,6 +4277,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3223:49:10", @@ -4337,10 +4429,12 @@ "id": 8022, "nodeType": "FunctionDefinition", "src": "3514:1962:10", + "nodes": [], "body": { "id": 8021, "nodeType": "Block", "src": "3617:1859:10", + "nodes": [], "statements": [ { "condition": { @@ -4450,6 +4544,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4020:12:10", @@ -4510,6 +4605,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4034:12:10", @@ -4582,6 +4678,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4058:12:10", @@ -4628,6 +4725,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4007:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4003:16:10", @@ -4642,6 +4740,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4003:68:10", @@ -4676,6 +4775,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3993:79:10", @@ -4710,6 +4810,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3970:103:10", @@ -4833,6 +4934,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4164:12:10", @@ -4893,6 +4995,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4178:12:10", @@ -4961,6 +5064,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4202:12:10", @@ -5007,6 +5111,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4151:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4147:16:10", @@ -5021,6 +5126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4147:68:10", @@ -5055,6 +5161,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4137:79:10", @@ -5089,6 +5196,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4114:103:10", @@ -5280,6 +5388,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4447:12:10", @@ -5340,6 +5449,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4461:12:10", @@ -5412,6 +5522,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4485:12:10", @@ -5468,6 +5579,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4499:12:10", @@ -5518,6 +5630,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4434:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4430:16:10", @@ -5532,6 +5645,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4430:82:10", @@ -5566,6 +5680,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4420:93:10", @@ -5600,6 +5715,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4397:117:10", @@ -5791,6 +5907,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4605:12:10", @@ -5851,6 +5968,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4619:12:10", @@ -5923,6 +6041,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4643:12:10", @@ -5979,6 +6098,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4657:13:10", @@ -6029,6 +6149,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4592:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4588:16:10", @@ -6043,6 +6164,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4588:83:10", @@ -6077,6 +6199,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4578:94:10", @@ -6111,6 +6234,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4555:118:10", @@ -6302,6 +6426,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4764:12:10", @@ -6362,6 +6487,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4778:12:10", @@ -6434,6 +6560,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4802:12:10", @@ -6490,6 +6617,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4816:13:10", @@ -6540,6 +6668,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4751:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "4747:16:10", @@ -6554,6 +6683,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4747:83:10", @@ -6588,6 +6718,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4737:94:10", @@ -6622,6 +6753,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4714:118:10", @@ -6695,6 +6827,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5392:12:10", @@ -6755,6 +6888,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5406:12:10", @@ -6827,6 +6961,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5430:12:10", @@ -6883,6 +7018,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5444:13:10", @@ -6933,6 +7069,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5379:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5375:16:10", @@ -6947,6 +7084,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5375:83:10", @@ -6981,6 +7119,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5365:94:10", @@ -7015,6 +7154,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5329:140:10", @@ -7148,10 +7288,12 @@ "id": 8049, "nodeType": "FunctionDefinition", "src": "5482:280:10", + "nodes": [], "body": { "id": 8048, "nodeType": "Block", "src": "5643:119:10", + "nodes": [], "statements": [ { "expression": { @@ -7211,6 +7353,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5710:12:10", @@ -7293,6 +7436,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5697:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5693:16:10", @@ -7307,6 +7451,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5693:60:10", @@ -7341,6 +7486,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5683:71:10", @@ -7375,6 +7521,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5660:95:10", @@ -7529,10 +7676,12 @@ "id": 8083, "nodeType": "FunctionDefinition", "src": "5768:259:10", + "nodes": [], "body": { "id": 8082, "nodeType": "Block", "src": "5845:182:10", + "nodes": [], "statements": [ { "expression": { @@ -7565,6 +7714,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5865:6:10", "memberName": "length", "nodeType": "MemberAccess", "src": "5863:8:10", @@ -7645,6 +7795,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5855:80:10", @@ -7711,6 +7862,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5997:6:10", "memberName": "length", "nodeType": "MemberAccess", "src": "5995:8:10", @@ -7761,6 +7913,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5980:24:10", @@ -7811,6 +7964,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5967:12:10", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "5963:16:10", @@ -7825,6 +7979,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5963:45:10", @@ -7899,6 +8054,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5956:6:10", "memberName": "decode", "nodeType": "MemberAccess", "src": "5952:10:10", @@ -7913,6 +8069,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5952:68:10", @@ -8011,10 +8168,12 @@ "id": 8102, "nodeType": "FunctionDefinition", "src": "6033:144:10", + "nodes": [], "body": { "id": 8101, "nodeType": "Block", "src": "6116:61:10", + "nodes": [], "statements": [ { "expression": { @@ -8068,6 +8227,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6149:19:10", @@ -8110,6 +8270,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6141:28:10", @@ -8152,6 +8313,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6133:37:10", @@ -8251,10 +8413,12 @@ "id": 8127, "nodeType": "FunctionDefinition", "src": "6307:207:10", + "nodes": [], "body": { "id": 8126, "nodeType": "Block", "src": "6372:142:10", + "nodes": [], "statements": [ { "assignments": [ @@ -8369,6 +8533,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6440:19:10", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6436:23:10", @@ -8383,6 +8548,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6436:54:10", @@ -8447,6 +8613,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6399:25:10", @@ -8461,6 +8628,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6425:10:10", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "6399:36:10", @@ -8475,6 +8643,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6399:92:10", @@ -8587,10 +8756,12 @@ "id": 8152, "nodeType": "FunctionDefinition", "src": "6520:212:10", + "nodes": [], "body": { "id": 8151, "nodeType": "Block", "src": "6591:141:10", + "nodes": [], "statements": [ { "assignments": [ @@ -8705,6 +8876,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6659:19:10", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6655:23:10", @@ -8719,6 +8891,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6655:53:10", @@ -8783,6 +8956,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6618:25:10", @@ -8797,6 +8971,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6644:10:10", "memberName": "staticcall", "nodeType": "MemberAccess", "src": "6618:36:10", @@ -8811,6 +8986,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6618:91:10", diff --git a/out/TaxToken.sol/TaxToken.json b/out/TaxToken.sol/TaxToken.json index 175123b..8718e67 100644 --- a/out/TaxToken.sol/TaxToken.json +++ b/out/TaxToken.sol/TaxToken.json @@ -1166,13 +1166,13 @@ } ], "bytecode": { - "object": "0x60a06040526011805460ff191690553480156200001b57600080fd5b5060405162004499380380620044998339810160408190526200003e91620005fc565b848460036200004e83826200072c565b5060046200005d82826200072c565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a6200090b565b6200011190876200091c565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200093e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200093e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200093e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a6200090b565b620002f190836200091c565b600e5560055460ff166200030790600a6200090b565b6200031390826200091c565b600f5560055460ff166200032990600a6200090b565b620003369060016200091c565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a6200090b565b6200040290896200091c565b62000414565b5050505050506200098b565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000970565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b83821115620005f25760008385830101525b9695505050505050565b60008060008060008060c087890312156200061657600080fd5b865160208801519096506001600160401b03808211156200063657600080fd5b620006448a838b0162000545565b965060408901519150808211156200065b57600080fd5b506200066a89828a0162000545565b945050606087015160ff811681146200068257600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006b357607f821691505b602082108103620006d457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620007035750805b601f850160051c820191505b8181101562000724578281556001016200070f565b505050505050565b81516001600160401b038111156200074857620007486200052f565b62000760816200075984546200069e565b84620006da565b602080601f8311600181146200079857600084156200077f5750858301515b600019600386901b1c1916600185901b17855562000724565b600085815260208120601f198616915b82811015620007c957888601518255948401946001909101908401620007a8565b5085821015620007e85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200084f578160001904821115620008335762000833620007f8565b808516156200084157918102915b93841c939080029062000813565b509250929050565b600082620008685750600162000529565b81620008775750600062000529565b81600181146200089057600281146200089b57620008bb565b600191505062000529565b60ff841115620008af57620008af620007f8565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008e0575081810a62000529565b620008ec83836200080e565b8060001904821115620009035762000903620007f8565b029392505050565b60006200052660ff84168362000857565b6000816000190483118215151615620009395762000939620007f8565b500290565b6000602082840312156200095157600080fd5b81516001600160a01b03811681146200096957600080fd5b9392505050565b60008219821115620009865762000986620007f8565b500190565b608051613aeb620009ae600039600081816107e20152611c890152613aeb6000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f0033", - "sourceMap": "828:24476:16:-:0;;;1628:19;;;-1:-1:-1;;1628:19:16;;;3746:1101;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3978:9;3989:11;8463:5:21;:13;3978:9:16;8463:5:21;:13;:::i;:::-;-1:-1:-1;8487:7:21;:17;8497:7;8487;:17;:::i;:::-;-1:-1:-1;;8515:9:21;:14;;-1:-1:-1;;8515:14:21;8527:2;8515:14;;;-1:-1:-1;8515:9:21;975:12:20;699:10:19;;603:115;975:12:20;998:6;:18;;-1:-1:-1;;;;;;998:18:20;;-1:-1:-1;;;;;998:18:20;;;;;;;;;;;;1032:43;;998:18;;-1:-1:-1;998:18:20;-1:-1:-1;;1032:43:20;;-1:-1:-1;;1032:43:20;-1:-1:-1;4013:7:16::1;:15:::0;;-1:-1:-1;;4013:15:16::1;::::0;;4039:29:::1;4054:13:::0;16759:9:21;:21;;-1:-1:-1;;16759:21:21;;;;;;;;;;;;16690:98;4039:29:16::1;9624:9:21::0;;;;4114:16:16::1;::::0;:2:::1;:16;:::i;:::-;4094:37;::::0;:16;:37:::1;:::i;:::-;4079:12;:52;;;;1289:42;-1:-1:-1::0;;;;;4248:40:16::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4216:96:16::1;;4321:4;1289:42;-1:-1:-1::0;;;;;4328:37:16::1;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4216:152;::::0;-1:-1:-1;;;;;;4216:152:16::1;::::0;;;;;;-1:-1:-1;;;;;6741:15:32;;;4216:152:16::1;::::0;::::1;6723:34:32::0;6793:15;;6773:18;;;6766:43;6658:18;;4216:152:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4198:170:16::1;;::::0;;;4382:30:::1;::::0;;;:13:::1;:30;::::0;;;;;;;:34;;-1:-1:-1;;4382:34:16;;::::1;4415:1;4382:34;::::0;;;4427:15:::1;:32:::0;;;;;;:36;;;;::::1;4462:1;4427:36;::::0;;4520:10:::1;9624:9:21::0;;;;;9550:91;4520:10:16::1;4514:16;::::0;:2:::1;:16;:::i;:::-;4492:39;::::0;:18;:39:::1;:::i;:::-;4476:13;:55:::0;9624:9:21;;;;4576:16:16::1;::::0;:2:::1;:16;:::i;:::-;4556:37;::::0;:16;:37:::1;:::i;:::-;4542:11;:51:::0;9624:9:21;;;;4637:16:16::1;::::0;:2:::1;:16;:::i;:::-;4632:22;::::0;:1:::1;:22;:::i;:::-;4606:23;:48:::0;4685:4:::1;4667:24;::::0;;;:9:::1;:24;::::0;;;;;;:31;;4694:4:::1;-1:-1:-1::0;;4667:31:16;;::::1;::::0;::::1;::::0;;;4709:21;;;;:28;;;;::::1;::::0;::::1;::::0;;4694:4;4758:7:::1;1237:6:20::0;;;;;-1:-1:-1;;;;;1237:6:20;;1164:87;4758:7:16::1;-1:-1:-1::0;;;;;4748:18:16::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;4748:18:16;:25;;-1:-1:-1;;4748:25:16::1;::::0;::::1;;::::0;;;::::1;::::0;;4786:53:::1;4792:7;1237:6:20::0;;;;;-1:-1:-1;;;;;1237:6:20;;1164:87;4792:7:16::1;9624:9:21::0;;;;4821:16:16::1;::::0;:2:::1;:16;:::i;:::-;4801:37;::::0;:16;:37:::1;:::i;:::-;4786:5;:53::i;:::-;3746:1101:::0;;;;;;828:24476;;14445:378:21;-1:-1:-1;;;;;14529:21:21;;14521:65;;;;-1:-1:-1;;;14521:65:21;;7022:2:32;14521:65:21;;;7004:21:32;7061:2;7041:18;;;7034:30;7100:33;7080:18;;;7073:61;7151:18;;14521:65:21;;;;;;;;14676:24;14693:6;14676:12;;:16;;;;;;:24;;;;:::i;:::-;14661:12;:39;-1:-1:-1;;;;;14732:18:21;;:9;:18;;;;;;;;;;;;:30;;14755:6;;14732:22;;;;;:30;;:::i;:::-;-1:-1:-1;;;;;14711:18:21;;:9;:18;;;;;;;;;;;:51;;;;14778:37;;7326:25:32;;;14711:18:21;;:9;;14778:37;;7299:18:32;14778:37:21;;;;;;;14445:378;;:::o;17391:92::-;;;;:::o;2486:98::-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;;2486:98;;;;;:::o;14:127:32:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:885;200:5;253:3;246:4;238:6;234:17;230:27;220:55;;271:1;268;261:12;220:55;294:13;;-1:-1:-1;;;;;356:10:32;;;353:36;;;369:18;;:::i;:::-;444:2;438:9;412:2;498:13;;-1:-1:-1;;494:22:32;;;518:2;490:31;486:40;474:53;;;542:18;;;562:22;;;539:46;536:72;;;588:18;;:::i;:::-;628:10;624:2;617:22;663:2;655:6;648:18;685:4;675:14;;730:3;725:2;720;712:6;708:15;704:24;701:33;698:53;;;747:1;744;737:12;698:53;769:1;760:10;;779:133;793:2;790:1;787:9;779:133;;;881:14;;;877:23;;871:30;850:14;;;846:23;;839:63;804:10;;;;779:133;;;930:2;927:1;924:9;921:80;;;989:1;984:2;979;971:6;967:15;963:24;956:35;921:80;1019:6;146:885;-1:-1:-1;;;;;;146:885:32:o;1036:898::-;1169:6;1177;1185;1193;1201;1209;1262:3;1250:9;1241:7;1237:23;1233:33;1230:53;;;1279:1;1276;1269:12;1230:53;1302:16;;1362:2;1347:18;;1341:25;1302:16;;-1:-1:-1;;;;;;1415:14:32;;;1412:34;;;1442:1;1439;1432:12;1412:34;1465:61;1518:7;1509:6;1498:9;1494:22;1465:61;:::i;:::-;1455:71;;1572:2;1561:9;1557:18;1551:25;1535:41;;1601:2;1591:8;1588:16;1585:36;;;1617:1;1614;1607:12;1585:36;;1640:63;1695:7;1684:8;1673:9;1669:24;1640:63;:::i;:::-;1630:73;;;1746:2;1735:9;1731:18;1725:25;1790:4;1783:5;1779:16;1772:5;1769:27;1759:55;;1810:1;1807;1800:12;1759:55;1833:5;1823:15;;;1878:3;1867:9;1863:19;1857:26;1847:36;;1923:3;1912:9;1908:19;1902:26;1892:36;;1036:898;;;;;;;;:::o;1939:380::-;2018:1;2014:12;;;;2061;;;2082:61;;2136:4;2128:6;2124:17;2114:27;;2082:61;2189:2;2181:6;2178:14;2158:18;2155:38;2152:161;;2235:10;2230:3;2226:20;2223:1;2216:31;2270:4;2267:1;2260:15;2298:4;2295:1;2288:15;2152:161;;1939:380;;;:::o;2450:545::-;2552:2;2547:3;2544:11;2541:448;;;2588:1;2613:5;2609:2;2602:17;2658:4;2654:2;2644:19;2728:2;2716:10;2712:19;2709:1;2705:27;2699:4;2695:38;2764:4;2752:10;2749:20;2746:47;;;-1:-1:-1;2787:4:32;2746:47;2842:2;2837:3;2833:12;2830:1;2826:20;2820:4;2816:31;2806:41;;2897:82;2915:2;2908:5;2905:13;2897:82;;;2960:17;;;2941:1;2930:13;2897:82;;;2901:3;;;2450:545;;;:::o;3171:1352::-;3291:10;;-1:-1:-1;;;;;3313:30:32;;3310:56;;;3346:18;;:::i;:::-;3375:97;3465:6;3425:38;3457:4;3451:11;3425:38;:::i;:::-;3419:4;3375:97;:::i;:::-;3527:4;;3591:2;3580:14;;3608:1;3603:663;;;;4310:1;4327:6;4324:89;;;-1:-1:-1;4379:19:32;;;4373:26;4324:89;-1:-1:-1;;3128:1:32;3124:11;;;3120:24;3116:29;3106:40;3152:1;3148:11;;;3103:57;4426:81;;3573:944;;3603:663;2397:1;2390:14;;;2434:4;2421:18;;-1:-1:-1;;3639:20:32;;;3757:236;3771:7;3768:1;3765:14;3757:236;;;3860:19;;;3854:26;3839:42;;3952:27;;;;3920:1;3908:14;;;;3787:19;;3757:236;;;3761:3;4021:6;4012:7;4009:19;4006:201;;;4082:19;;;4076:26;-1:-1:-1;;4165:1:32;4161:14;;;4177:3;4157:24;4153:37;4149:42;4134:58;4119:74;;4006:201;-1:-1:-1;;;;;4253:1:32;4237:14;;;4233:22;4220:36;;-1:-1:-1;3171:1352:32:o;4528:127::-;4589:10;4584:3;4580:20;4577:1;4570:31;4620:4;4617:1;4610:15;4644:4;4641:1;4634:15;4660:422;4749:1;4792:5;4749:1;4806:270;4827:7;4817:8;4814:21;4806:270;;;4886:4;4882:1;4878:6;4874:17;4868:4;4865:27;4862:53;;;4895:18;;:::i;:::-;4945:7;4935:8;4931:22;4928:55;;;4965:16;;;;4928:55;5044:22;;;;5004:15;;;;4806:270;;;4810:3;4660:422;;;;;:::o;5087:806::-;5136:5;5166:8;5156:80;;-1:-1:-1;5207:1:32;5221:5;;5156:80;5255:4;5245:76;;-1:-1:-1;5292:1:32;5306:5;;5245:76;5337:4;5355:1;5350:59;;;;5423:1;5418:130;;;;5330:218;;5350:59;5380:1;5371:10;;5394:5;;;5418:130;5455:3;5445:8;5442:17;5439:43;;;5462:18;;:::i;:::-;-1:-1:-1;;5518:1:32;5504:16;;5533:5;;5330:218;;5632:2;5622:8;5619:16;5613:3;5607:4;5604:13;5600:36;5594:2;5584:8;5581:16;5576:2;5570:4;5567:12;5563:35;5560:77;5557:159;;;-1:-1:-1;5669:19:32;;;5701:5;;5557:159;5748:34;5773:8;5767:4;5748:34;:::i;:::-;5818:6;5814:1;5810:6;5806:19;5797:7;5794:32;5791:58;;;5829:18;;:::i;:::-;5867:20;;5087:806;-1:-1:-1;;;5087:806:32:o;5898:140::-;5956:5;5985:47;6026:4;6016:8;6012:19;6006:4;5985:47;:::i;6043:168::-;6083:7;6149:1;6145;6141:6;6137:14;6134:1;6131:21;6126:1;6119:9;6112:17;6108:45;6105:71;;;6156:18;;:::i;:::-;-1:-1:-1;6196:9:32;;6043:168::o;6216:290::-;6286:6;6339:2;6327:9;6318:7;6314:23;6310:32;6307:52;;;6355:1;6352;6345:12;6307:52;6381:16;;-1:-1:-1;;;;;6426:31:32;;6416:42;;6406:70;;6472:1;6469;6462:12;6406:70;6495:5;6216:290;-1:-1:-1;;;6216:290:32:o;7362:128::-;7402:3;7433:1;7429:6;7426:1;7423:13;7420:39;;;7439:18;;:::i;:::-;-1:-1:-1;7475:9:32;;7362:128::o;:::-;828:24476:16;;;;;;;;;;;;;;;;;", + "object": "0x60a06040526011805460ff191690553480156200001b57600080fd5b506040516200446c3803806200446c8339810160408190526200003e91620005f4565b848460036200004e838262000724565b5060046200005d828262000724565b50506005805460ff19166012179055506000620000773390565b60058054610100600160a81b0319166101006001600160a01b03841690810291909117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b805460ff19169055620000f2836005805460ff191660ff92909216919091179055565b60055460ff166200010590600a62000903565b62000111908762000914565b600881905550737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200092e565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021891906200092e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c91906200092e565b6001600160a01b031660808190526000908152601460209081526040808320805460ff19908116600117909155601590925290912080549091166002179055620002d860055460ff1690565b620002e590600a62000903565b620002f1908362000914565b600e5560055460ff166200030790600a62000903565b62000313908262000914565b600f5560055460ff166200032990600a62000903565b6200033690600162000914565b60105530600090815260136020819052604082208054600160ff1991821681179092558380527f8fa6efc3be94b5b348b21fea823fe8d100408cee9b7f90524494500445d8ff6c805490911682179055916200039f60055461010090046001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905562000408620003e360055461010090046001600160a01b031690565b60055460ff16620003f690600a62000903565b62000402908962000914565b62000414565b50505050505062000976565b6001600160a01b0382166200046f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b6200048b816002546200051860201b620024f01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620004be918390620024f062000518821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600062000526828462000960565b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200055757600080fd5b81516001600160401b03808211156200057457620005746200052f565b604051601f8301601f19908116603f011681019082821181831017156200059f576200059f6200052f565b81604052838152602092508683858801011115620005bc57600080fd5b600091505b83821015620005e05785820183015181830184015290820190620005c1565b600093810190920192909252949350505050565b60008060008060008060c087890312156200060e57600080fd5b865160208801519096506001600160401b03808211156200062e57600080fd5b6200063c8a838b0162000545565b965060408901519150808211156200065357600080fd5b506200066289828a0162000545565b945050606087015160ff811681146200067a57600080fd5b809350506080870151915060a087015190509295509295509295565b600181811c90821680620006ab57607f821691505b602082108103620006cc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200051357600081815260208120601f850160051c81016020861015620006fb5750805b601f850160051c820191505b818110156200071c5782815560010162000707565b505050505050565b81516001600160401b038111156200074057620007406200052f565b620007588162000751845462000696565b84620006d2565b602080601f831160018114620007905760008415620007775750858301515b600019600386901b1c1916600185901b1785556200071c565b600085815260208120601f198616915b82811015620007c157888601518255948401946001909101908401620007a0565b5085821015620007e05787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620008475781600019048211156200082b576200082b620007f0565b808516156200083957918102915b93841c93908002906200080b565b509250929050565b600082620008605750600162000529565b816200086f5750600062000529565b81600181146200088857600281146200089357620008b3565b600191505062000529565b60ff841115620008a757620008a7620007f0565b50506001821b62000529565b5060208310610133831016604e8410600b8410161715620008d8575081810a62000529565b620008e4838362000806565b8060001904821115620008fb57620008fb620007f0565b029392505050565b60006200052660ff8416836200084f565b8082028115828204841417620005295762000529620007f0565b6000602082840312156200094157600080fd5b81516001600160a01b03811681146200095957600080fd5b9392505050565b80820180821115620005295762000529620007f0565b608051613ad362000999600039600081816107e20152611c890152613ad36000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a0565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e2565b60186020526000908152604090205481565b6002546103b9565b6103da6104203660046134fd565b61099a565b61039061043336600461353e565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a0565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a0565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d5366004613557565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b36600461353e565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c366004613573565b6110bc565b61039061055f366004613590565b6112e7565b6103b9610572366004613573565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a0565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e2565b60166020526000908152604090205481565b61043f61060e366004613573565b60156020526000908152604090205460ff1681565b6103da610631366004613573565b60136020526000908152604090205460ff1681565b6103906106543660046134a0565b611624565b61043f610667366004613573565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a0565b61168e565b6103da61069d3660046134a0565b6116dd565b6103906106b036600461353e565b6116ea565b6106c86106c3366004613573565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f6366004613573565b60176020526000908152604090205460ff1681565b61039061071936600461353e565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b61039061075236600461353e565b611dbe565b6103b96107653660046135c5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e366004613573565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c5366004613573565b61201d565b6103906107d8366004613573565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a0565b612219565b610390610825366004613590565b612418565b6103b9610838366004613573565b60196020526000908152604090205481565b6103da610858366004613573565b60126020526000908152604090205460ff1681565b6103b961087b366004613573565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135f3565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b60606003805461090090613628565b80601f016020809104026020016040519081016040528092919081815260200182805461092c90613628565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a51602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135f3565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a61375c565b610ac4908261376b565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135f3565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135f3565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613782565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135f3565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135f3565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a61375c565b610ee6908261376b565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135f3565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137df565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135f3565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135f3565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613782565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df9084906137f8565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c9084906137f8565b90915550505050565b60606004805461090090613628565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613782565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a79602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135f3565b60055460ff1661172b90600a61375c565b611735908261376b565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137df565b6001600160a01b0387166000908152601960205260408120549192506117d4828461380b565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135f3565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135f3565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b815260206004820152604660248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b815260206004820152603960248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b8152602060048201526044602482018190526000805160206139e9833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b815260206004820152604260248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135f3565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e2881426137f8565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135f3565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135f3565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613782565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061380b565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc82846137f8565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a74908561376b565b612a7e919061381e565b90506000612a8c828561380b565b905083612a9982846137f8565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c91906137f8565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a09602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a2b602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d1613856565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613267919061386c565b8160018151811061327a5761327a613856565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138cd565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a91908101906138ee565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c6137f8565b6040518663ffffffff1660e01b815260040161339d9594939291906139ac565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e2613856565b602002602001015192505050919050565b60006124fc828461380b565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156134b357600080fd5b82356134be816133ff565b946020939093013593505050565b803560ff811681146134dd57600080fd5b919050565b6000602082840312156134f457600080fd5b6124fc826134cc565b60008060006060848603121561351257600080fd5b833561351d816133ff565b9250602084013561352d816133ff565b929592945050506040919091013590565b60006020828403121561355057600080fd5b5035919050565b6000806040838503121561356a57600080fd5b6134be836134cc565b60006020828403121561358557600080fd5b81356124fc816133ff565b600080604083850312156135a357600080fd5b82356135ae816133ff565b91506135bc602084016134cc565b90509250929050565b600080604083850312156135d857600080fd5b82356135e3816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061363c57607f821691505b60208210810361365c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136b357816000190482111561369957613699613662565b808516156136a657918102915b93841c939080029061367d565b509250929050565b6000826136ca57506001610994565b816136d757506000610994565b81600181146136ed57600281146136f757613713565b6001915050610994565b60ff84111561370857613708613662565b50506001821b610994565b5060208310610133831016604e8410600b8410161715613736575081810a610994565b6137408383613678565b806000190482111561375457613754613662565b029392505050565b60006124fc60ff8416836136bb565b808202811582820484141761099457610994613662565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b6000602082840312156137f157600080fd5b5051919050565b8082018082111561099457610994613662565b8181038181111561099457610994613662565b60008261383b57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561387e57600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138c25781516001600160a01b03168752958201959082019060010161389d565b509495945050505050565b8281526040602082015260006138e66040830184613889565b949350505050565b6000602080838503121561390157600080fd5b825167ffffffffffffffff8082111561391957600080fd5b818501915085601f83011261392d57600080fd5b81518181111561393f5761393f613840565b8060051b604051601f19603f8301168101818110858211171561396457613964613840565b60405291825284820192508381018501918883111561398257600080fd5b938501935b828510156139a057845184529385019392850192613987565b98975050505050505050565b85815284602082015260a0604082015260006139cb60a0830186613889565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f6afa79d2dd6dc16daa6196b4a596cb84785ca65de715a6382c40987a3939e4c64736f6c63430008110033", + "sourceMap": "828:24476:16:-:0;;;1628:19;;;-1:-1:-1;;1628:19:16;;;3746:1101;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3978:9;3989:11;8463:5:21;:13;3978:9:16;8463:5:21;:13;:::i;:::-;-1:-1:-1;8487:7:21;:17;8497:7;8487;:17;:::i;:::-;-1:-1:-1;;8515:9:21;:14;;-1:-1:-1;;8515:14:21;8527:2;8515:14;;;-1:-1:-1;8515:9:21;975:12:20;699:10:19;;603:115;975:12:20;998:6;:18;;-1:-1:-1;;;;;;998:18:20;;-1:-1:-1;;;;;998:18:20;;;;;;;;;;;;1032:43;;998:18;;-1:-1:-1;998:18:20;-1:-1:-1;;1032:43:20;;-1:-1:-1;;1032:43:20;-1:-1:-1;4013:7:16::1;:15:::0;;-1:-1:-1;;4013:15:16::1;::::0;;4039:29:::1;4054:13:::0;16759:9:21;:21;;-1:-1:-1;;16759:21:21;;;;;;;;;;;;16690:98;4039:29:16::1;9624:9:21::0;;;;4114:16:16::1;::::0;:2:::1;:16;:::i;:::-;4094:37;::::0;:16;:37:::1;:::i;:::-;4079:12;:52;;;;1289:42;-1:-1:-1::0;;;;;4248:40:16::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4216:96:16::1;;4321:4;1289:42;-1:-1:-1::0;;;;;4328:37:16::1;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4216:152;::::0;-1:-1:-1;;;;;;4216:152:16::1;::::0;;;;;;-1:-1:-1;;;;;6696:15:32;;;4216:152:16::1;::::0;::::1;6678:34:32::0;6748:15;;6728:18;;;6721:43;6613:18;;4216:152:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4198:170:16::1;;::::0;;;4382:30:::1;::::0;;;:13:::1;:30;::::0;;;;;;;:34;;-1:-1:-1;;4382:34:16;;::::1;4415:1;4382:34;::::0;;;4427:15:::1;:32:::0;;;;;;:36;;;;::::1;4462:1;4427:36;::::0;;4520:10:::1;9624:9:21::0;;;;;9550:91;4520:10:16::1;4514:16;::::0;:2:::1;:16;:::i;:::-;4492:39;::::0;:18;:39:::1;:::i;:::-;4476:13;:55:::0;9624:9:21;;;;4576:16:16::1;::::0;:2:::1;:16;:::i;:::-;4556:37;::::0;:16;:37:::1;:::i;:::-;4542:11;:51:::0;9624:9:21;;;;4637:16:16::1;::::0;:2:::1;:16;:::i;:::-;4632:22;::::0;:1:::1;:22;:::i;:::-;4606:23;:48:::0;4685:4:::1;4667:24;::::0;;;:9:::1;:24;::::0;;;;;;:31;;4694:4:::1;-1:-1:-1::0;;4667:31:16;;::::1;::::0;::::1;::::0;;;4709:21;;;;:28;;;;::::1;::::0;::::1;::::0;;4694:4;4758:7:::1;1237:6:20::0;;;;;-1:-1:-1;;;;;1237:6:20;;1164:87;4758:7:16::1;-1:-1:-1::0;;;;;4748:18:16::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;4748:18:16;:25;;-1:-1:-1;;4748:25:16::1;::::0;::::1;;::::0;;;::::1;::::0;;4786:53:::1;4792:7;1237:6:20::0;;;;;-1:-1:-1;;;;;1237:6:20;;1164:87;4792:7:16::1;9624:9:21::0;;;;4821:16:16::1;::::0;:2:::1;:16;:::i;:::-;4801:37;::::0;:16;:37:::1;:::i;:::-;4786:5;:53::i;:::-;3746:1101:::0;;;;;;828:24476;;14445:378:21;-1:-1:-1;;;;;14529:21:21;;14521:65;;;;-1:-1:-1;;;14521:65:21;;6977:2:32;14521:65:21;;;6959:21:32;7016:2;6996:18;;;6989:30;7055:33;7035:18;;;7028:61;7106:18;;14521:65:21;;;;;;;;14676:24;14693:6;14676:12;;:16;;;;;;:24;;;;:::i;:::-;14661:12;:39;-1:-1:-1;;;;;14732:18:21;;:9;:18;;;;;;;;;;;;:30;;14755:6;;14732:22;;;;;:30;;:::i;:::-;-1:-1:-1;;;;;14711:18:21;;:9;:18;;;;;;;;;;;:51;;;;14778:37;;7281:25:32;;;14711:18:21;;:9;;14778:37;;7254:18:32;14778:37:21;;;;;;;14445:378;;:::o;17391:92::-;;;;:::o;2486:98::-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;;2486:98;;;;;:::o;14:127:32:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:840;200:5;253:3;246:4;238:6;234:17;230:27;220:55;;271:1;268;261:12;220:55;294:13;;-1:-1:-1;;;;;356:10:32;;;353:36;;;369:18;;:::i;:::-;444:2;438:9;412:2;498:13;;-1:-1:-1;;494:22:32;;;518:2;490:31;486:40;474:53;;;542:18;;;562:22;;;539:46;536:72;;;588:18;;:::i;:::-;628:10;624:2;617:22;663:2;655:6;648:18;685:4;675:14;;730:3;725:2;720;712:6;708:15;704:24;701:33;698:53;;;747:1;744;737:12;698:53;769:1;760:10;;779:133;793:2;790:1;787:9;779:133;;;881:14;;;877:23;;871:30;850:14;;;846:23;;839:63;804:10;;;;779:133;;;954:1;932:15;;;928:24;;;921:35;;;;936:6;146:840;-1:-1:-1;;;;146:840:32:o;991:898::-;1124:6;1132;1140;1148;1156;1164;1217:3;1205:9;1196:7;1192:23;1188:33;1185:53;;;1234:1;1231;1224:12;1185:53;1257:16;;1317:2;1302:18;;1296:25;1257:16;;-1:-1:-1;;;;;;1370:14:32;;;1367:34;;;1397:1;1394;1387:12;1367:34;1420:61;1473:7;1464:6;1453:9;1449:22;1420:61;:::i;:::-;1410:71;;1527:2;1516:9;1512:18;1506:25;1490:41;;1556:2;1546:8;1543:16;1540:36;;;1572:1;1569;1562:12;1540:36;;1595:63;1650:7;1639:8;1628:9;1624:24;1595:63;:::i;:::-;1585:73;;;1701:2;1690:9;1686:18;1680:25;1745:4;1738:5;1734:16;1727:5;1724:27;1714:55;;1765:1;1762;1755:12;1714:55;1788:5;1778:15;;;1833:3;1822:9;1818:19;1812:26;1802:36;;1878:3;1867:9;1863:19;1857:26;1847:36;;991:898;;;;;;;;:::o;1894:380::-;1973:1;1969:12;;;;2016;;;2037:61;;2091:4;2083:6;2079:17;2069:27;;2037:61;2144:2;2136:6;2133:14;2113:18;2110:38;2107:161;;2190:10;2185:3;2181:20;2178:1;2171:31;2225:4;2222:1;2215:15;2253:4;2250:1;2243:15;2107:161;;1894:380;;;:::o;2405:545::-;2507:2;2502:3;2499:11;2496:448;;;2543:1;2568:5;2564:2;2557:17;2613:4;2609:2;2599:19;2683:2;2671:10;2667:19;2664:1;2660:27;2654:4;2650:38;2719:4;2707:10;2704:20;2701:47;;;-1:-1:-1;2742:4:32;2701:47;2797:2;2792:3;2788:12;2785:1;2781:20;2775:4;2771:31;2761:41;;2852:82;2870:2;2863:5;2860:13;2852:82;;;2915:17;;;2896:1;2885:13;2852:82;;;2856:3;;;2405:545;;;:::o;3126:1352::-;3246:10;;-1:-1:-1;;;;;3268:30:32;;3265:56;;;3301:18;;:::i;:::-;3330:97;3420:6;3380:38;3412:4;3406:11;3380:38;:::i;:::-;3374:4;3330:97;:::i;:::-;3482:4;;3546:2;3535:14;;3563:1;3558:663;;;;4265:1;4282:6;4279:89;;;-1:-1:-1;4334:19:32;;;4328:26;4279:89;-1:-1:-1;;3083:1:32;3079:11;;;3075:24;3071:29;3061:40;3107:1;3103:11;;;3058:57;4381:81;;3528:944;;3558:663;2352:1;2345:14;;;2389:4;2376:18;;-1:-1:-1;;3594:20:32;;;3712:236;3726:7;3723:1;3720:14;3712:236;;;3815:19;;;3809:26;3794:42;;3907:27;;;;3875:1;3863:14;;;;3742:19;;3712:236;;;3716:3;3976:6;3967:7;3964:19;3961:201;;;4037:19;;;4031:26;-1:-1:-1;;4120:1:32;4116:14;;;4132:3;4112:24;4108:37;4104:42;4089:58;4074:74;;3961:201;-1:-1:-1;;;;;4208:1:32;4192:14;;;4188:22;4175:36;;-1:-1:-1;3126:1352:32:o;4483:127::-;4544:10;4539:3;4535:20;4532:1;4525:31;4575:4;4572:1;4565:15;4599:4;4596:1;4589:15;4615:422;4704:1;4747:5;4704:1;4761:270;4782:7;4772:8;4769:21;4761:270;;;4841:4;4837:1;4833:6;4829:17;4823:4;4820:27;4817:53;;;4850:18;;:::i;:::-;4900:7;4890:8;4886:22;4883:55;;;4920:16;;;;4883:55;4999:22;;;;4959:15;;;;4761:270;;;4765:3;4615:422;;;;;:::o;5042:806::-;5091:5;5121:8;5111:80;;-1:-1:-1;5162:1:32;5176:5;;5111:80;5210:4;5200:76;;-1:-1:-1;5247:1:32;5261:5;;5200:76;5292:4;5310:1;5305:59;;;;5378:1;5373:130;;;;5285:218;;5305:59;5335:1;5326:10;;5349:5;;;5373:130;5410:3;5400:8;5397:17;5394:43;;;5417:18;;:::i;:::-;-1:-1:-1;;5473:1:32;5459:16;;5488:5;;5285:218;;5587:2;5577:8;5574:16;5568:3;5562:4;5559:13;5555:36;5549:2;5539:8;5536:16;5531:2;5525:4;5522:12;5518:35;5515:77;5512:159;;;-1:-1:-1;5624:19:32;;;5656:5;;5512:159;5703:34;5728:8;5722:4;5703:34;:::i;:::-;5773:6;5769:1;5765:6;5761:19;5752:7;5749:32;5746:58;;;5784:18;;:::i;:::-;5822:20;;5042:806;-1:-1:-1;;;5042:806:32:o;5853:140::-;5911:5;5940:47;5981:4;5971:8;5967:19;5961:4;5940:47;:::i;5998:168::-;6071:9;;;6102;;6119:15;;;6113:22;;6099:37;6089:71;;6140:18;;:::i;6171:290::-;6241:6;6294:2;6282:9;6273:7;6269:23;6265:32;6262:52;;;6310:1;6307;6300:12;6262:52;6336:16;;-1:-1:-1;;;;;6381:31:32;;6371:42;;6361:70;;6427:1;6424;6417:12;6361:70;6450:5;6171:290;-1:-1:-1;;;6171:290:32:o;7317:125::-;7382:9;;;7403:10;;;7400:36;;;7416:18;;:::i;7317:125::-;828:24476:16;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a7565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e9565b60186020526000908152604090205481565b6002546103b9565b6103da610420366004613504565b61099a565b610390610433366004613545565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a7565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a7565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d536600461355e565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b366004613545565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c36600461357a565b6110bc565b61039061055f366004613597565b6112e7565b6103b961057236600461357a565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a7565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e9565b60166020526000908152604090205481565b61043f61060e36600461357a565b60156020526000908152604090205460ff1681565b6103da61063136600461357a565b60136020526000908152604090205460ff1681565b6103906106543660046134a7565b611624565b61043f61066736600461357a565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a7565b61168e565b6103da61069d3660046134a7565b6116dd565b6103906106b0366004613545565b6116ea565b6106c86106c336600461357a565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f636600461357a565b60176020526000908152604090205460ff1681565b610390610719366004613545565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b610390610752366004613545565b611dbe565b6103b96107653660046135cc565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e36600461357a565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c536600461357a565b61201d565b6103906107d836600461357a565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a7565b612219565b610390610825366004613597565b612418565b6103b961083836600461357a565b60196020526000908152604090205481565b6103da61085836600461357a565b60126020526000908152604090205460ff1681565b6103b961087b36600461357a565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135fa565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b6060600380546109009061362f565b80601f016020809104026020016040519081016040528092919081815260200182805461092c9061362f565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a69602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135fa565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a613763565b610ac49082613772565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135fa565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135fa565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613791565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135fa565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135fa565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a613763565b610ee69082613772565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135fa565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137ee565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135fa565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135fa565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613791565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df908490613807565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c908490613807565b90915550505050565b6060600480546109009061362f565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613791565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a91602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135fa565b60055460ff1661172b90600a613763565b6117359082613772565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137ee565b6001600160a01b0387166000908152601960205260408120549192506117d4828461381f565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135fa565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135fa565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b81526020600482015260466024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b81526020600482015260396024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b815260206004820152604460248201819052600080516020613a01833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b81526020600482015260426024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f6024820152600080516020613a0183398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135fa565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e288142613807565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135fa565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135fa565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613791565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061381f565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135fa565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc8284613807565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a749085613772565b612a7e9190613836565b90506000612a8c828561381f565b905083612a998284613807565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c9190613807565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a21602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135fa565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a43602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d161386e565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132679190613884565b8160018151811061327a5761327a61386e565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138e5565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a9190810190613906565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c613807565b6040518663ffffffff1660e01b815260040161339d9594939291906139c4565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e261386e565b602002602001015192505050919050565b60006124fc828461381f565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b81811115613491576000604083870101525b50601f01601f1916929092016040019392505050565b600080604083850312156134ba57600080fd5b82356134c5816133ff565b946020939093013593505050565b803560ff811681146134e457600080fd5b919050565b6000602082840312156134fb57600080fd5b6124fc826134d3565b60008060006060848603121561351957600080fd5b8335613524816133ff565b92506020840135613534816133ff565b929592945050506040919091013590565b60006020828403121561355757600080fd5b5035919050565b6000806040838503121561357157600080fd5b6134c5836134d3565b60006020828403121561358c57600080fd5b81356124fc816133ff565b600080604083850312156135aa57600080fd5b82356135b5816133ff565b91506135c3602084016134d3565b90509250929050565b600080604083850312156135df57600080fd5b82356135ea816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061364357607f821691505b60208210810361366357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136ba5781600019048211156136a0576136a0613669565b808516156136ad57918102915b93841c9390800290613684565b509250929050565b6000826136d157506001610994565b816136de57506000610994565b81600181146136f457600281146136fe5761371a565b6001915050610994565b60ff84111561370f5761370f613669565b50506001821b610994565b5060208310610133831016604e8410600b841016171561373d575081810a610994565b613747838361367f565b806000190482111561375b5761375b613669565b029392505050565b60006124fc60ff8416836136c2565b600081600019048311821515161561378c5761378c613669565b500290565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b60006020828403121561380057600080fd5b5051919050565b6000821982111561381a5761381a613669565b500190565b60008282101561383157613831613669565b500390565b60008261385357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561389657600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138da5781516001600160a01b0316875295820195908201906001016138b5565b509495945050505050565b8281526040602082015260006138fe60408301846138a1565b949350505050565b6000602080838503121561391957600080fd5b825167ffffffffffffffff8082111561393157600080fd5b818501915085601f83011261394557600080fd5b81518181111561395757613957613858565b8060051b604051601f19603f8301168101818110858211171561397c5761397c613858565b60405291825284820192508381018501918883111561399a57600080fd5b938501935b828510156139b85784518452938501939285019261399f565b98975050505050505050565b85815284602082015260a0604082015260006139e360a08301866138a1565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207550000a111e503334c8b3db13a489114cd8d1b3849b7dab1d5be387a947d70464736f6c634300080f0033", - "sourceMap": "828:24476:16:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19574:130;;;;;;:::i;:::-;;:::i;:::-;;8607:91:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1583:38:16;;;;;;;;;1319:25:32;;;1307:2;1292:18;1583:38:16;1173:177:32;10753:169:21;;;;;;:::i;:::-;;:::i;:::-;;;1840:14:32;;1833:22;1815:41;;1803:2;1788:18;10753:169:21;1675:187:32;2496:45:16;;;;;;:::i;:::-;;;;;;;;;;;;;;9706:108:21;9794:12;;9706:108;;11404:321;;;;;;:::i;:::-;;:::i;18883:298:16:-;;;;;;:::i;:::-;;:::i;9550:91:21:-;9624:9;;;;9550:91;;;3033:4:32;3021:17;;;3003:36;;2991:2;2976:18;9550:91:21;2861:184:32;24030:115:16;24131:4;24086:7;9978:18:21;;;;;;;;;;;24030:115:16;;12134:218:21;;;;;;:::i;:::-;;:::i;14792:263:16:-;;;:::i;11590:119::-;;;:::i;21508:114::-;;;;;;:::i;:::-;;:::i;1188:22::-;;;;;-1:-1:-1;;;;;1188:22:16;;;;;;-1:-1:-1;;;;;3214:32:32;;;3196:51;;3184:2;3169:18;1188:22:16;3050:203:32;13577:319:16;;;;;;:::i;:::-;;:::i;11813:86::-;11884:7;;;;11813:86;;1158:23;;;;;;;;-1:-1:-1;;;;;1158:23:16;;;18347:278;;;;;;:::i;:::-;;:::i;1250:81::-;;1289:42;1250:81;;15366:408;;;;;;:::i;:::-;;:::i;16555:492::-;;;;;;:::i;:::-;;:::i;12344:231::-;;;;;;:::i;:::-;;:::i;9877:127:21:-;;;;;;:::i;:::-;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;1815:148:20;;;:::i;11332:132:16:-;;;:::i;1548:26::-;;;;;;1164:87:20;1237:6;;;;;-1:-1:-1;;;;;1237:6:20;1164:87;;22672:222:16;;;;;;:::i;:::-;;:::i;1513:28::-;;;;;;8817:95:21;;;:::i;2231:44:16:-;;;;;;:::i;:::-;;;;;;;;;;;;;;2109:48;;;;;;:::i;:::-;;;;;;;;;;;;;;;;1834:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;21935:114;;;;;;:::i;:::-;;:::i;1980:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;12855:269:21;;;;;;:::i;:::-;;:::i;10217:175::-;;;;;;:::i;:::-;;:::i;17916:148:16:-;;;;;;:::i;:::-;;:::i;24759:542::-;;;;;;:::i;:::-;;:::i;:::-;;;;4318:25:32;;;4374:2;4359:18;;4352:34;;;;4402:18;;;4395:34;4460:2;4445:18;;4438:34;4305:3;4290:19;24759:542:16;4087:391:32;2354:42:16;;;;;;:::i;:::-;;;;;;;;;;;;;;;;14165:429;;;;;;:::i;:::-;;:::i;1217:24::-;;;;;-1:-1:-1;;;;;1217:24:16;;;20148:952;;;;;;:::i;:::-;;:::i;2444:226:20:-;;;;;;:::i;:::-;;:::i;10455:151:21:-;;;;;;:::i;:::-;-1:-1:-1;;;;;10571:18:21;;;10544:7;10571:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10455:151;15965:404:16;;;;;;:::i;:::-;;:::i;1387:24::-;;;;;-1:-1:-1;;;1387:24:16;;;;;;17224:464;;;;;;:::i;:::-;;:::i;14624:160::-;;;;;;:::i;:::-;;:::i;1338:40::-;;;;;23211:562;;;;;;:::i;:::-;;:::i;12975:241::-;;;;;;:::i;:::-;;:::i;2550:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;1680:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2700:54;;;;;;:::i;:::-;;;;;;;;;;;;;;19574:130;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;19663:18:16;;;::::1;;::::0;;;:9:::1;:18;::::0;;;;:33;;-1:-1:-1;;19663:33:16::1;::::0;::::1;;::::0;;;::::1;::::0;;19574:130::o;8607:91:21:-;8652:13;8685:5;8678:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;:::o;10753:169::-;10836:4;10853:39;699:10:19;10876:7:21;10885:6;10853:8;:39::i;:::-;-1:-1:-1;10910:4:21;10753:169;;;;;:::o;11404:321::-;11510:4;11527:36;11537:6;11545:9;11556:6;11527:9;:36::i;:::-;11574:121;11583:6;699:10:19;11605:89:21;11643:6;11605:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11605:19:21;;;;;;:11;:19;;;;;;;;699:10:19;11605:33:21;;;;;;;;;;:37;:89::i;:::-;11574:8;:121::i;:::-;-1:-1:-1;11713:4:21;11404:321;;;;;:::o;18883:298:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;18991:1:16::1;18974:14;:18;18966:94;;;::::0;-1:-1:-1;;;18966:94:16;;5824:2:32;18966:94:16::1;::::0;::::1;5806:21:32::0;5863:2;5843:18;;;5836:30;5902:34;5882:18;;;5875:62;5973:33;5953:18;;;5946:61;6024:19;;18966:94:16::1;5622:427:32::0;18966:94:16::1;9624:9:21::0;;;;19107:16:16::1;::::0;:2:::1;:16;:::i;:::-;19090:33;::::0;:14;:33:::1;:::i;:::-;19073:13;:51:::0;;;19142:31:::1;::::0;1319:25:32;;;19142:31:16::1;::::0;1307:2:32;1292:18;19142:31:16::1;;;;;;;;18883:298:::0;:::o;12134:218:21:-;699:10:19;12222:4:21;12271:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12271:34:21;;;;;;;;;;12222:4;;12239:83;;12262:7;;12271:50;;12310:10;12271:38;:50::i;14792:263:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;14908:6:16::1;::::0;::::1;;14903:82;;14931:42;14947:25;24131:4:::0;24086:7;9978:18:21;;;;;;;;;;;;24030:115:16;14947:25:::1;14931:15;:42::i;:::-;14792:263::o:0;11590:119::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;11884:7:16;;;;5934:82:::1;;;::::0;-1:-1:-1;;;5934:82:16;;7944:2:32;5934:82:16::1;::::0;::::1;7926:21:32::0;7983:2;7963:18;;;7956:30;8022:34;8002:18;;;7995:62;8093:31;8073:18;;;8066:59;8142:19;;5934:82:16::1;7742:425:32::0;5934:82:16::1;11650:7:::2;:15:::0;;-1:-1:-1;;11650:15:16::2;::::0;;11681:20:::2;::::0;11690:10:::2;3196:51:32::0;;11681:20:16::2;::::0;3184:2:32;3169:18;11681:20:16::2;;;;;;;11590:119::o:0;21508:114::-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;21591:23:::1;21597:7;21606;21591:5;:23::i;:::-;21508:114:::0;;:::o;13577:319::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;13680:4:16::1;13672;:12;;13664:81;;;::::0;-1:-1:-1;;;13664:81:16;;8804:2:32;13664:81:16::1;::::0;::::1;8786:21:32::0;8843:2;8823:18;;;8816:30;8882:34;8862:18;;;8855:62;8953:26;8933:18;;;8926:54;8997:19;;13664:81:16::1;8602:420:32::0;13664:81:16::1;13765:12;::::0;-1:-1:-1;;;13765:12:16;::::1;;;13764:13;13756:90;;;::::0;;-1:-1:-1;;;13756:90:16;;9229:2:32;13756:90:16::1;::::0;::::1;9211:21:32::0;9248:18;;;9241:30;;;;9307:34;9287:18;;;9280:62;9378:34;9358:18;;;9351:62;9430:19;;13756:90:16::1;9027:428:32::0;13756:90:16::1;13857:24;::::0;;::::1;;::::0;;;:14:::1;:24;::::0;;;;:31;13577:319::o;18347:278::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;18449:1:16::1;18434:12;:16;18426:88;;;::::0;-1:-1:-1;;;18426:88:16;;9662:2:32;18426:88:16::1;::::0;::::1;9644:21:32::0;9701:2;9681:18;;;9674:30;9740:34;9720:18;;;9713:62;9811:29;9791:18;;;9784:57;9858:19;;18426:88:16::1;9460:423:32::0;18426:88:16::1;9624:9:21::0;;;;18557:16:16::1;::::0;:2:::1;:16;:::i;:::-;18542:31;::::0;:12;:31:::1;:::i;:::-;18527:11;:47:::0;;;18592:25:::1;::::0;1319::32;;;18592::16::1;::::0;1307:2:32;1292:18;18592:25:16::1;1173:177:32::0;15366:408:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;15465:22:16;::::1;15457:83;;;::::0;-1:-1:-1;;;15457:83:16;;10090:2:32;15457:83:16::1;::::0;::::1;10072:21:32::0;10129:2;10109:18;;;10102:30;10168:34;10148:18;;;10141:62;-1:-1:-1;;;10219:18:32;;;10212:46;10275:19;;15457:83:16::1;9888:412:32::0;15457:83:16::1;-1:-1:-1::0;;;;;15559:20:16;::::1;;::::0;;;:10:::1;:20;::::0;;;;;::::1;;:30;;::::0;::::1;;;15551:113;;;::::0;-1:-1:-1;;;15551:113:16;;10507:2:32;15551:113:16::1;::::0;::::1;10489:21:32::0;10546:2;10526:18;;;10519:30;10585:34;10565:18;;;10558:62;10656:34;10636:18;;;10629:62;-1:-1:-1;;;10707:19:32;;;10700:37;10754:19;;15551:113:16::1;10305:474:32::0;15551:113:16::1;-1:-1:-1::0;;;;;15677:20:16;::::1;;::::0;;;:10:::1;:20;::::0;;;;;;;;:29;;-1:-1:-1;;15677:29:16::1;::::0;::::1;;::::0;;::::1;::::0;;;15724:42;;1815:41:32;;;15724:42:16::1;::::0;1788:18:32;15724:42:16::1;;;;;;;15366:408:::0;;:::o;16555:492::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;16643:7:16::1;::::0;-1:-1:-1;;;;;16643:7:16;;::::1;16631:19:::0;;::::1;::::0;16623:90:::1;;;::::0;-1:-1:-1;;;16623:90:16;;10986:2:32;16623:90:16::1;::::0;::::1;10968:21:32::0;11025:2;11005:18;;;10998:30;11064:34;11044:18;;;11037:62;11135:28;11115:18;;;11108:56;11181:19;;16623:90:16::1;10784:422:32::0;16623:90:16::1;-1:-1:-1::0;;;;;16732:22:16;::::1;16724:91;;;::::0;-1:-1:-1;;;16724:91:16;;11413:2:32;16724:91:16::1;::::0;::::1;11395:21:32::0;11452:2;11432:18;;;11425:30;11491:34;11471:18;;;11464:62;11562:26;11542:18;;;11535:54;11606:19;;16724:91:16::1;11211:420:32::0;16724:91:16::1;16828:7;:18:::0;;-1:-1:-1;;;;;;16828:18:16::1;-1:-1:-1::0;;;;;16828:18:16;::::1;::::0;;::::1;::::0;;;16857:30:::1;::::0;-1:-1:-1;16857:15:16::1;:30::i;:::-;16926:7;::::0;16917:38:::1;::::0;;-1:-1:-1;;;16917:38:16;;;;16900:14:::1;::::0;-1:-1:-1;;;;;16926:7:16::1;::::0;16917:36:::1;::::0;:38:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;16926:7;16917:38:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16972:7;::::0;16900:55;;-1:-1:-1;16966:22:16::1;::::0;-1:-1:-1;;;;;16972:7:16::1;16900:55:::0;16966:5:::1;:22::i;:::-;17021:7;::::0;17006:33:::1;::::0;;-1:-1:-1;;;;;17021:7:16;;::::1;12037:34:32::0;;12107:15;;;12102:2;12087:18;;12080:43;17006:33:16::1;::::0;11972:18:32;17006:33:16::1;;;;;;;16612:435;16555:492:::0;:::o;12344:231::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;12455:1:16::1;12444:8;:12;;;12436:87;;;::::0;-1:-1:-1;;;12436:87:16;;12336:2:32;12436:87:16::1;::::0;::::1;12318:21:32::0;12375:2;12355:18;;;12348:30;12414:34;12394:18;;;12387:62;12485:32;12465:18;;;12458:60;12535:19;;12436:87:16::1;12134:426:32::0;12436:87:16::1;-1:-1:-1::0;;;;;12534:22:16;;;::::1;;::::0;;;:13:::1;:22;::::0;;;;:33;;-1:-1:-1;;12534:33:16::1;;::::0;;::::1;::::0;;;::::1;::::0;;12344:231::o;1815:148:20:-;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;1906:6:::1;::::0;1885:40:::1;::::0;1922:1:::1;::::0;1906:6:::1;::::0;::::1;-1:-1:-1::0;;;;;1906:6:20::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1936:6;:19:::0;;-1:-1:-1;;;;;;1936:19:20::1;::::0;;1815:148::o;11332:132:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;11385:10:16::1;5055:8;11884:7:::0;;;;;11813:86;5055:8:::1;5054:9;:25;;;-1:-1:-1::0;;;;;;5067:12:16;::::1;;::::0;;;:9:::1;:12;::::0;;;;;::::1;;5054:25;5046:101;;;::::0;-1:-1:-1;;;5046:101:16;;12767:2:32;5046:101:16::1;::::0;::::1;12749:21:32::0;12806:2;12786:18;;;12779:30;12845:34;12825:18;;;12818:62;12916:33;12896:18;;;12889:61;12967:19;;5046:101:16::1;12565:427:32::0;5046:101:16::1;11408:7:::2;:14:::0;;-1:-1:-1;;11408:14:16::2;11418:4;11408:14;::::0;;11438:18:::2;::::0;11445:10:::2;3196:51:32::0;;11438:18:16::2;::::0;3184:2:32;3169:18;11438::16::2;3050:203:32::0;22672:222:16;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;22763:23:::1;22769:7;22778;22763:5;:23::i;:::-;-1:-1:-1::0;;;;;22799:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;:34;;22826:7;;22799:23;:34:::1;::::0;22826:7;;22799:34:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;22844:31:16;::::1;;::::0;;;:22:::1;:31;::::0;;;;:42;;22879:7;;22844:31;:42:::1;::::0;22879:7;;22844:42:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;22672:222:16:o;8817:95:21:-;8864:13;8897:7;8890:14;;;;;:::i;21935:114:16:-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;22018:23:::1;22024:7;22033;22018:5;:23::i;12855:269:21:-:0;12948:4;12965:129;699:10:19;12988:7:21;12997:96;13036:15;12997:96;;;;;;;;;;;;;;;;;699:10:19;12997:25:21;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12997:34:21;;;;;;;;;;;;:38;:96::i;10217:175::-;10303:4;10320:42;699:10:19;10344:9:21;10355:6;10320:9;:42::i;17916:148:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;9624:9:21;;;;18039:16:16::1;::::0;:2:::1;:16;:::i;:::-;18029:26;::::0;:7;:26:::1;:::i;:::-;18002:23;:54:::0;-1:-1:-1;17916:148:16:o;24759:542::-;24931:40;;-1:-1:-1;;;24931:40:16;;-1:-1:-1;;;;;3214:32:32;;24931:40:16;;;3196:51:32;24826:14:16;;;;;;;;;;24946:4;;24931:31;;3169:18:32;;24931:40:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;25005:23:16;;24982:20;25005:23;;;:14;:23;;;;;;24912:59;;-1:-1:-1;25057:29:16;25005:23;24912:59;25057:29;:::i;:::-;-1:-1:-1;;;;;25261:31:16;;;;;;;;:22;:31;;;;;;25219:11;;25232:15;;;-1:-1:-1;25261:31:16;;-1:-1:-1;24759:542:16;-1:-1:-1;;;24759:542:16:o;14165:429::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;14246:4:16::1;14254:2;14246:10;14238:70;;;::::0;-1:-1:-1;;;14238:70:16;;13462:2:32;14238:70:16::1;::::0;::::1;13444:21:32::0;13501:2;13481:18;;;13474:30;13540:34;13520:18;;;13513:62;-1:-1:-1;;;13591:18:32;;;13584:45;13646:19;;14238:70:16::1;13260:411:32::0;14238:70:16::1;14328:12;::::0;-1:-1:-1;;;14328:12:16;::::1;;;14327:13;14319:98;;;::::0;-1:-1:-1;;;14319:98:16;;13878:2:32;14319:98:16::1;::::0;::::1;13860:21:32::0;13917:2;13897:18;;;13890:30;13956:34;13936:18;;;13929:62;14027:34;14007:18;;;14000:62;-1:-1:-1;;;14078:19:32;;;14071:39;14127:19;;14319:98:16::1;13676:476:32::0;14319:98:16::1;14428:14;:17;::::0;14448:1:::1;14428:17:::0;:21;;;14460:17;:21;;;14507:1:::1;14492:17:::0;;;:21;;;14524:12:::1;:19:::0;;-1:-1:-1;;;;14524:19:16::1;-1:-1:-1::0;;;14524:19:16::1;::::0;;14428:17;14561:25;::::1;::::0;14448:1;14561:25:::1;14165:429:::0;:::o;20148:952::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;20241:10:16::1;20237:814;;;-1:-1:-1::0;;;;;20277:18:16;::::1;;::::0;;;:9:::1;:18;::::0;;;;;::::1;;20276:19;20268:102;;;::::0;-1:-1:-1;;;20268:102:16;;14359:2:32;20268:102:16::1;::::0;::::1;14341:21:32::0;14398:2;14378:18;;;14371:30;-1:-1:-1;;;;;;;;;;;14417:18:32;;;14410:62;14508:34;14488:18;;;14481:62;-1:-1:-1;;;14559:19:32;;;14552:37;14606:19;;20268:102:16::1;14157:474:32::0;20268:102:16::1;20404:8;::::0;-1:-1:-1;;;;;20404:8:16::1;::::0;;::::1;::::0;::::1;20393:19:::0;;::::1;::::0;20385:90:::1;;;::::0;-1:-1:-1;;;20385:90:16;;14838:2:32;20385:90:16::1;::::0;::::1;14820:21:32::0;14877:2;14857:18;;;14850:30;-1:-1:-1;;;;;;;;;;;14896:18:32;;;14889:62;14987:28;14967:18;;;14960:56;15033:19;;20385:90:16::1;14636:422:32::0;20385:90:16::1;20509:9;::::0;-1:-1:-1;;;;;20509:9:16;;::::1;20498:20:::0;;::::1;::::0;20490:92:::1;;;::::0;-1:-1:-1;;;20490:92:16;;15265:2:32;20490:92:16::1;::::0;::::1;15247:21:32::0;15304:2;15284:18;;;15277:30;-1:-1:-1;;;;;;;;;;;15323:18:32;;;15316:62;15414:29;15394:18;;;15387:57;15461:19;;20490:92:16::1;15063:423:32::0;20490:92:16::1;20616:7;::::0;-1:-1:-1;;;;;20616:7:16;;::::1;20605:18:::0;;::::1;::::0;20597:88:::1;;;::::0;-1:-1:-1;;;20597:88:16;;15693:2:32;20597:88:16::1;::::0;::::1;15675:21:32::0;15732:2;15712:18;;;15705:30;-1:-1:-1;;;;;;;;;;;15751:18:32;;;15744:62;15842:27;15822:18;;;15815:55;15887:19;;20597:88:16::1;15491:421:32::0;20597:88:16::1;-1:-1:-1::0;;;;;;;20708:23:16;::::1;::::0;20700:104:::1;;;::::0;-1:-1:-1;;;20700:104:16;;16119:2:32;20700:104:16::1;::::0;::::1;16101:21:32::0;16158:2;16138:18;;;16131:30;;;-1:-1:-1;;;;;;;;;;;16177:18:32;;;16170:62;16268:34;16248:18;;;16241:62;-1:-1:-1;;;16319:19:32;;;16312:35;16364:19;;20700:104:16::1;15917:472:32::0;20700:104:16::1;20838:15;-1:-1:-1::0;;;;;20827:26:16::1;:7;-1:-1:-1::0;;;;;20827:26:16::1;::::0;20819:105:::1;;;::::0;-1:-1:-1;;;20819:105:16;;16596:2:32;20819:105:16::1;::::0;::::1;16578:21:32::0;16635:2;16615:18;;;16608:30;-1:-1:-1;;;;;;;;;;;16654:18:32;;;16647:62;16745:34;16725:18;;;16718:62;-1:-1:-1;;;16796:19:32;;;16789:33;16839:19;;20819:105:16::1;16394:470:32::0;20819:105:16::1;20966:4;-1:-1:-1::0;;;;;20947:24:16;::::1;::::0;20939:100:::1;;;::::0;-1:-1:-1;;;20939:100:16;;17071:2:32;20939:100:16::1;::::0;::::1;17053:21:32::0;17110:2;17090:18;;;17083:30;-1:-1:-1;;;;;;;;;;;17129:18:32;;;17122:62;17220:33;17200:18;;;17193:61;17271:19;;20939:100:16::1;16869:427:32::0;20939:100:16::1;-1:-1:-1::0;;;;;21061:18:16;;;::::1;;::::0;;;:9:::1;:18;::::0;;;;:31;;-1:-1:-1;;21061:31:16::1;::::0;::::1;;::::0;;;::::1;::::0;;20148:952::o;2444:226:20:-;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;2525:6:::1;::::0;;2508:14:::1;:23:::0;;-1:-1:-1;;;;;;2508:23:20::1;-1:-1:-1::0;;;;;2525:6:20::1;::::0;::::1;;2508:23;::::0;;-1:-1:-1;;;;;;2542:19:20::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2643:6:::1;::::0;2622:40:::1;::::0;2659:1:::1;::::0;2643:6:::1;::::0;::::1;-1:-1:-1::0;;;;;2643:6:20::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;15965:404:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;16056:8:16::1;::::0;-1:-1:-1;;;;;16056:8:16::1;::::0;;::::1;::::0;::::1;16043:21:::0;;::::1;::::0;16035:93:::1;;;::::0;-1:-1:-1;;;16035:93:16;;17503:2:32;16035:93:16::1;::::0;::::1;17485:21:32::0;17542:2;17522:18;;;17515:30;17581:34;17561:18;;;17554:62;17652:29;17632:18;;;17625:57;17699:19;;16035:93:16::1;17301:423:32::0;16035:93:16::1;-1:-1:-1::0;;;;;16147:23:16;::::1;16139:93;;;::::0;-1:-1:-1;;;16139:93:16;;17931:2:32;16139:93:16::1;::::0;::::1;17913:21:32::0;17970:2;17950:18;;;17943:30;18009:34;17989:18;;;17982:62;18080:27;18060:18;;;18053:55;18125:19;;16139:93:16::1;17729:421:32::0;16139:93:16::1;16245:8;:20:::0;;-1:-1:-1;;;;;;16245:20:16::1;;-1:-1:-1::0;;;;;16245:20:16;;::::1;::::0;::::1;::::0;;;::::1;::::0;;;;16276:31:::1;::::0;16292:8:::1;;-1:-1:-1::0;16276:15:16::1;:31::i;:::-;16341:8;::::0;16325:36:::1;::::0;;-1:-1:-1;;;;;16341:8:16::1;::::0;;::::1;::::0;::::1;12037:34:32::0;;12107:15;;;12102:2;12087:18;;12080:43;16325:36:16::1;::::0;11972:18:32;16325:36:16::1;11825:304:32::0;17224:464:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;17318:9:16::1;::::0;-1:-1:-1;;;;;17318:9:16;;::::1;17304:23:::0;;::::1;::::0;17296:96:::1;;;::::0;-1:-1:-1;;;17296:96:16;;18357:2:32;17296:96:16::1;::::0;::::1;18339:21:32::0;18396:2;18376:18;;;18369:30;18435:34;18415:18;;;18408:62;18506:30;18486:18;;;18479:58;18554:19;;17296:96:16::1;18155:424:32::0;17296:96:16::1;-1:-1:-1::0;;;;;17411:24:16;::::1;17403:95;;;::::0;-1:-1:-1;;;17403:95:16;;18786:2:32;17403:95:16::1;::::0;::::1;18768:21:32::0;18825:2;18805:18;;;18798:30;18864:34;18844:18;;;18837:62;18935:28;18915:18;;;18908:56;18981:19;;17403:95:16::1;18584:422:32::0;17403:95:16::1;17511:9;:22:::0;;-1:-1:-1;;;;;;17511:22:16::1;-1:-1:-1::0;;;;;17511:22:16;::::1;::::0;;::::1;::::0;;;17544:33:::1;::::0;-1:-1:-1;17544:15:16::1;:33::i;:::-;17658:9;::::0;17641:39:::1;::::0;;-1:-1:-1;;;;;17658:9:16;;::::1;12037:34:32::0;;12107:15;;;12102:2;12087:18;;12080:43;17641:39:16::1;::::0;11972:18:32;17641:39:16::1;11825:304:32::0;14624:160:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;14706:19:16;::::1;;::::0;;;:9:::1;:19;::::0;;;;:26;;-1:-1:-1;;14706:26:16::1;14728:4;14706:26;::::0;;14743:33:::1;14716:8:::0;14743:23:::1;:33::i;:::-;14624:160:::0;:::o;23211:562::-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;-1:-1:-1;;;;;23310:21:16;::::1;23302:92;;;::::0;-1:-1:-1;;;23302:92:16;;19213:2:32;23302:92:16::1;::::0;::::1;19195:21:32::0;19252:2;19232:18;;;19225:30;19291:34;19271:18;;;19264:62;19362:28;19342:18;;;19335:56;19408:19;;23302:92:16::1;19011:422:32::0;23302:92:16::1;23435:7;23413:18;23423:7;-1:-1:-1::0;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;23413:18:16::1;:29;;23405:111;;;::::0;-1:-1:-1;;;23405:111:16;;19640:2:32;23405:111:16::1;::::0;::::1;19622:21:32::0;19679:2;19659:18;;;19652:30;19718:34;19698:18;;;19691:62;19789:34;19769:18;;;19762:62;-1:-1:-1;;;19840:19:32;;;19833:36;19886:19;;23405:111:16::1;19438:473:32::0;23405:111:16::1;-1:-1:-1::0;;;;;23533:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;;:34;-1:-1:-1;23529:237:16::1;;23584:23;23590:7;23599;23584:5;:23::i;:::-;-1:-1:-1::0;;;;;23622:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;:34;;23649:7;;23622:23;:34:::1;::::0;23649:7;;23622:34:::1;:::i;:::-;::::0;;;-1:-1:-1;23529:237:16::1;::::0;-1:-1:-1;23529:237:16::1;;23689:23;23695:7;23704;23689:5;:23::i;:::-;-1:-1:-1::0;;;;;;23727:23:16::1;23753:1;23727:23:::0;;;:14:::1;:23;::::0;;;;:27;23211:562::o;12975:241::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;13090:1:16::1;13079:8;:12;;;13071:89;;;::::0;;-1:-1:-1;;;13071:89:16;;20118:2:32;13071:89:16::1;::::0;::::1;20100:21:32::0;20137:18;;;20130:30;;;;20196:34;20176:18;;;20169:62;20267:34;20247:18;;;20240:62;20319:19;;13071:89:16::1;19916:428:32::0;13071:89:16::1;-1:-1:-1::0;;;;;13171:26:16;;;::::1;;::::0;;;:15:::1;:26;::::0;;;;:37;;-1:-1:-1;;13171:37:16::1;;::::0;;::::1;::::0;;;::::1;::::0;;12975:241::o;2486:98:21:-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;2486:98;-1:-1:-1;;;2486:98:21:o;16012:346::-;-1:-1:-1;;;;;16114:19:21;;16106:68;;;;-1:-1:-1;;;16106:68:21;;20551:2:32;16106:68:21;;;20533:21:32;20590:2;20570:18;;;20563:30;20629:34;20609:18;;;20602:62;-1:-1:-1;;;20680:18:32;;;20673:34;20724:19;;16106:68:21;20349:400:32;16106:68:21;-1:-1:-1;;;;;16193:21:21;;16185:68;;;;-1:-1:-1;;;16185:68:21;;20956:2:32;16185:68:21;;;20938:21:32;20995:2;20975:18;;;20968:30;21034:34;21014:18;;;21007:62;-1:-1:-1;;;21085:18:32;;;21078:32;21127:19;;16185:68:21;20754:398:32;16185:68:21;-1:-1:-1;;;;;16266:18:21;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16318:32;;1319:25:32;;;16318:32:21;;1292:18:32;16318:32:21;;;;;;;;16012:346;;;:::o;7300:2624:16:-;7496:14;7532:8;11884:7;;;;;11813:86;7532:8;7531:9;:29;;;-1:-1:-1;;;;;;7544:16:16;;;;;;:9;:16;;;;;;;;7531:29;:47;;;-1:-1:-1;;;;;;7564:14:16;;;;;;:9;:14;;;;;;;;7531:47;:72;;;-1:-1:-1;7592:10:16;7582:21;;;;:9;:21;;;;;;;;7531:72;7523:140;;;;-1:-1:-1;;;7523:140:16;;21359:2:32;7523:140:16;;;21341:21:32;21398:2;21378:18;;;21371:30;21437:34;21417:18;;;21410:62;21508:25;21488:18;;;21481:53;21551:19;;7523:140:16;21157:419:32;7523:140:16;7702:7;7682:16;7692:5;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;7682:16:16;:27;;7674:82;;;;-1:-1:-1;;;7674:82:16;;21783:2:32;7674:82:16;;;21765:21:32;21822:2;21802:18;;;21795:30;21861:34;21841:18;;;21834:62;-1:-1:-1;;;21912:18:32;;;21905:40;21962:19;;7674:82:16;21581:406:32;7674:82:16;7785:1;7775:7;:11;7767:75;;;;-1:-1:-1;;;7767:75:16;;22194:2:32;7767:75:16;;;22176:21:32;22233:2;22213:18;;;22206:30;22272:34;22252:18;;;22245:62;-1:-1:-1;;;22323:18:32;;;22316:49;22382:19;;7767:75:16;21992:415:32;7767:75:16;-1:-1:-1;;;;;7926:14:16;;;;;;:9;:14;;;;;;;;7925:15;:36;;;;-1:-1:-1;;;;;;7945:16:16;;;;;;:9;:16;;;;;;;;7944:17;7925:36;:62;;;;-1:-1:-1;7976:10:16;7966:21;;;;:9;:21;;;;;;;;7965:22;7925:62;:88;;;;-1:-1:-1;;;;;;7991:22:16;;8008:4;7991:22;;7925:88;7921:1996;;;8056:7;8041:11;;:22;;8032:84;;;;-1:-1:-1;;;8032:84:16;;22614:2:32;8032:84:16;;;22596:21:32;22653:2;22633:18;;;22626:30;22692:34;22672:18;;;22665:62;-1:-1:-1;;;22743:18:32;;;22736:46;22799:19;;8032:84:16;22412:412:32;8032:84:16;-1:-1:-1;;;;;8141:16:16;;;;;;:9;:16;;;;;;;;8140:17;8131:74;;;;-1:-1:-1;;;8131:74:16;;23031:2:32;8131:74:16;;;23013:21:32;23070:2;23050:18;;;23043:30;23109:34;23089:18;;;23082:62;-1:-1:-1;;;23160:18:32;;;23153:41;23211:19;;8131:74:16;22829:407:32;8131:74:16;-1:-1:-1;;;;;8230:14:16;;;;;;:9;:14;;;;;;;;8229:15;8220:74;;;;-1:-1:-1;;;8220:74:16;;23443:2:32;8220:74:16;;;23425:21:32;23482:2;23462:18;;;23455:30;23521:34;23501:18;;;23494:62;-1:-1:-1;;;23572:18:32;;;23565:43;23625:19;;8220:74:16;23241:409:32;8220:74:16;-1:-1:-1;;;;;8386:20:16;;;;;;:13;:20;;;;;;;;:25;8382:109;;-1:-1:-1;;;;;;8443:20:16;;;;;;:13;:20;;;;;;;;8382:109;-1:-1:-1;;;;;8511:20:16;;;;;;:15;:20;;;;;;;;:25;8507:110;;-1:-1:-1;;;;;;8568:20:16;;;;;;:15;:20;;;;;;;;8507:110;8658:24;;;8633:12;8658:24;;;:14;:24;;;;;;8685:5;;8648:34;;:7;:34;:::i;:::-;:42;;;;:::i;:::-;8633:57;-1:-1:-1;8705:13:16;8721:17;8633:57;8721:7;:17;:::i;:::-;8705:33;-1:-1:-1;8785:7:16;8763:18;8705:33;8763:7;:18;:::i;:::-;:29;8755:83;;;;-1:-1:-1;;;8755:83:16;;24079:2:32;8755:83:16;;;24061:21:32;24118:2;24098:18;;;24091:30;24157:34;24137:18;;;24130:62;-1:-1:-1;;;24208:18:32;;;24201:39;24257:19;;8755:83:16;23877:405:32;8755:83:16;8985:8;:13;;8997:1;8985:13;;:33;;;;-1:-1:-1;9009:9:16;;-1:-1:-1;;;;;9002:16:16;;;9009:9;;9002:16;;8985:33;8981:181;;;9076:13;;9064:8;9047:14;9057:3;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;9047:14:16;:25;;;;:::i;:::-;:42;;9039:107;;;;-1:-1:-1;;;9039:107:16;;24489:2:32;9039:107:16;;;24471:21:32;24528:2;24508:18;;;24501:30;24567:34;24547:18;;;24540:62;-1:-1:-1;;;24618:18:32;;;24611:50;24678:19;;9039:107:16;24287:416:32;9039:107:16;9182:8;:13;;9194:1;9182:13;:24;;;;-1:-1:-1;9200:6:16;;;;9199:7;9182:24;9178:410;;;24131:4;9227:28;9978:18:21;;;;;;;;;;;9330:11:16;;9307:34;;9304:116;;;-1:-1:-1;9389:11:16;;9304:116;9468:23;;9444:20;:47;9440:133;;9516:37;9532:20;9516:15;:37::i;:::-;9208:380;9178:410;9604:37;9620:5;9627:3;9632:8;9604:15;:37::i;:::-;9708:46;9724:5;9739:4;9746:7;9708:15;:46::i;:::-;8015:1751;;7921:1996;;;9869:36;9885:5;9892:3;9897:7;9869:15;:36::i;:::-;7382:2542;7300:2624;;;:::o;4765:206:21:-;4851:7;4912:12;4904:6;;;;4896:29;;;;-1:-1:-1;;;4896:29:21;;;;;;;;:::i;:::-;-1:-1:-1;;;4947:5:21;;;4765:206::o;9932:362:16:-;6376:6;:13;;-1:-1:-1;;6376:13:16;6385:4;6376:13;;;:6;10041:40:::1;10059:21:::0;10041:17:::1;:40::i;:::-;10020:61:::0;-1:-1:-1;10098:14:16;;10094:193:::1;;10182:8;::::0;10172:50:::1;::::0;-1:-1:-1;;;10172:50:16;;::::1;::::0;::::1;1319:25:32::0;;;10182:8:16::1;::::0;;::::1;-1:-1:-1::0;;;;;10182:8:16::1;::::0;10172:38:::1;::::0;1292:18:32;;10172:50:16::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;10254:8:16::1;::::0;10242:33:::1;::::0;1319:25:32;;;10254:8:16::1;::::0;;::::1;-1:-1:-1::0;;;;;10254:8:16::1;::::0;-1:-1:-1;10242:33:16::1;::::0;-1:-1:-1;1307:2:32;1292:18;10242:33:16::1;;;;;;;10094:193;-1:-1:-1::0;;6412:6:16;:14;;-1:-1:-1;;6412:14:16;;;9932:362::o;14445:378:21:-;-1:-1:-1;;;;;14529:21:21;;14521:65;;;;-1:-1:-1;;;14521:65:21;;24910:2:32;14521:65:21;;;24892:21:32;24949:2;24929:18;;;24922:30;24988:33;24968:18;;;24961:61;25039:18;;14521:65:21;24708:355:32;14521:65:21;14676:12;;:24;;14693:6;14676:16;:24::i;:::-;14661:12;:39;-1:-1:-1;;;;;14732:18:21;;:9;:18;;;;;;;;;;;:30;;14755:6;14732:22;:30::i;:::-;-1:-1:-1;;;;;14711:18:21;;:9;:18;;;;;;;;;;;:51;;;;14778:37;;1319:25:32;;;14711:18:21;;:9;;14778:37;;1292:18:32;14778:37:21;;;;;;;;14445:378;;:::o;15156:418::-;-1:-1:-1;;;;;15240:21:21;;15232:67;;;;-1:-1:-1;;;15232:67:21;;25270:2:32;15232:67:21;;;25252:21:32;25309:2;25289:18;;;25282:30;25348:34;25328:18;;;25321:62;-1:-1:-1;;;25399:18:32;;;25392:31;25440:19;;15232:67:21;25068:397:32;15232:67:21;15395:68;15418:6;15395:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15395:18:21;;:9;:18;;;;;;;;;;;;:68;:22;:68::i;:::-;-1:-1:-1;;;;;15374:18:21;;:9;:18;;;;;;;;;;:89;15489:12;;:24;;15506:6;15489:16;:24::i;:::-;15474:12;:39;15529:37;;1319:25:32;;;15555:1:21;;-1:-1:-1;;;;;15529:37:21;;;;;1307:2:32;1292:18;15529:37:21;1173:177:32;2118:244:20;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;25672:2:32;2199:73:20::1;::::0;::::1;25654:21:32::0;25711:2;25691:18;;;25684:30;25750:34;25730:18;;;25723:62;-1:-1:-1;;;25801:18:32;;;25794:36;25847:19;;2199:73:20::1;25470:402:32::0;2199:73:20::1;2309:6;::::0;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6:::1;::::0;::::1;;::::0;2288:38:::1;::::0;;;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;2337:17:20;;::::1;;;-1:-1:-1::0;;;;;;2337:17:20;;::::1;::::0;;;::::1;::::0;;2118:244::o;13614:549:21:-;-1:-1:-1;;;;;13720:20:21;;13712:70;;;;-1:-1:-1;;;13712:70:21;;26079:2:32;13712:70:21;;;26061:21:32;26118:2;26098:18;;;26091:30;26157:34;26137:18;;;26130:62;-1:-1:-1;;;26208:18:32;;;26201:35;26253:19;;13712:70:21;25877:401:32;13712:70:21;-1:-1:-1;;;;;13801:23:21;;13793:71;;;;-1:-1:-1;;;13793:71:21;;26485:2:32;13793:71:21;;;26467:21:32;26524:2;26504:18;;;26497:30;26563:34;26543:18;;;26536:62;-1:-1:-1;;;26614:18:32;;;26607:33;26657:19;;13793:71:21;26283:399:32;13793:71:21;13967;13989:6;13967:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13967:17:21;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;13947:17:21;;;:9;:17;;;;;;;;;;;:91;;;;14072:20;;;;;;;:32;;14097:6;14072:24;:32::i;:::-;-1:-1:-1;;;;;14049:20:21;;;:9;:20;;;;;;;;;;;;:55;;;;14120:35;1319:25:32;;;14049:20:21;;14120:35;;;;;;1292:18:32;14120:35:21;1173:177:32;10302:833:16;10480:16;;;10494:1;10480:16;;;;;;;;10377:7;;;;10480:16;10494:1;10480:16;;;;;;;;;;-1:-1:-1;10480:16:16;10456:40;;10525:4;10507;10512:1;10507:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;10507:23:16;;;-1:-1:-1;;;;;10507:23:16;;;;;1289:42;-1:-1:-1;;;;;10551:37:16;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10541:4;10546:1;10541:7;;;;;;;;:::i;:::-;;;;;;:49;-1:-1:-1;;;;;10541:49:16;;;-1:-1:-1;;;;;10541:49:16;;;;;10603:68;10620:4;1289:42;10650:20;10603:8;:68::i;:::-;10711:112;;-1:-1:-1;;;10711:112:16;;10684:24;;1289:42;;10711:46;;:112;;10772:20;;10808:4;;10711:112;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10711:112:16;;;;;;;;;;;;:::i;:::-;11041:8;;10684:139;;-1:-1:-1;1289:42:16;;10862:86;;10963:20;;10998:1;;11014:4;;11041:8;;;-1:-1:-1;;;;;11041:8:16;11065:21;:15;11083:3;11065:21;:::i;:::-;10862:235;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11117:7;11125:1;11117:10;;;;;;;;:::i;:::-;;;;;;;11110:17;;;;10302:833;;;:::o;2867:98:21:-;2925:7;2952:5;2956:1;2952;:5;:::i;14:131:32:-;-1:-1:-1;;;;;89:31:32;;79:42;;69:70;;135:1;132;125:12;150:416;215:6;223;276:2;264:9;255:7;251:23;247:32;244:52;;;292:1;289;282:12;244:52;331:9;318:23;350:31;375:5;350:31;:::i;:::-;400:5;-1:-1:-1;457:2:32;442:18;;429:32;499:15;;492:23;480:36;;470:64;;530:1;527;520:12;470:64;553:7;543:17;;;150:416;;;;;:::o;571:597::-;683:4;712:2;741;730:9;723:21;773:6;767:13;816:6;811:2;800:9;796:18;789:34;841:1;851:140;865:6;862:1;859:13;851:140;;;960:14;;;956:23;;950:30;926:17;;;945:2;922:26;915:66;880:10;;851:140;;;1009:6;1006:1;1003:13;1000:91;;;1079:1;1074:2;1065:6;1054:9;1050:22;1046:31;1039:42;1000:91;-1:-1:-1;1152:2:32;1131:15;-1:-1:-1;;1127:29:32;1112:45;;;;1159:2;1108:54;;571:597;-1:-1:-1;;;571:597:32:o;1355:315::-;1423:6;1431;1484:2;1472:9;1463:7;1459:23;1455:32;1452:52;;;1500:1;1497;1490:12;1452:52;1539:9;1526:23;1558:31;1583:5;1558:31;:::i;:::-;1608:5;1660:2;1645:18;;;;1632:32;;-1:-1:-1;;;1355:315:32:o;1867:156::-;1933:20;;1993:4;1982:16;;1972:27;;1962:55;;2013:1;2010;2003:12;1962:55;1867:156;;;:::o;2028:182::-;2085:6;2138:2;2126:9;2117:7;2113:23;2109:32;2106:52;;;2154:1;2151;2144:12;2106:52;2177:27;2194:9;2177:27;:::i;2215:456::-;2292:6;2300;2308;2361:2;2349:9;2340:7;2336:23;2332:32;2329:52;;;2377:1;2374;2367:12;2329:52;2416:9;2403:23;2435:31;2460:5;2435:31;:::i;:::-;2485:5;-1:-1:-1;2542:2:32;2527:18;;2514:32;2555:33;2514:32;2555:33;:::i;:::-;2215:456;;2607:7;;-1:-1:-1;;;2661:2:32;2646:18;;;;2633:32;;2215:456::o;2676:180::-;2735:6;2788:2;2776:9;2767:7;2763:23;2759:32;2756:52;;;2804:1;2801;2794:12;2756:52;-1:-1:-1;2827:23:32;;2676:180;-1:-1:-1;2676:180:32:o;3258:250::-;3324:6;3332;3385:2;3373:9;3364:7;3360:23;3356:32;3353:52;;;3401:1;3398;3391:12;3353:52;3424:27;3441:9;3424:27;:::i;3513:247::-;3572:6;3625:2;3613:9;3604:7;3600:23;3596:32;3593:52;;;3641:1;3638;3631:12;3593:52;3680:9;3667:23;3699:31;3724:5;3699:31;:::i;3765:317::-;3831:6;3839;3892:2;3880:9;3871:7;3867:23;3863:32;3860:52;;;3908:1;3905;3898:12;3860:52;3947:9;3934:23;3966:31;3991:5;3966:31;:::i;:::-;4016:5;-1:-1:-1;4040:36:32;4072:2;4057:18;;4040:36;:::i;:::-;4030:46;;3765:317;;;;;:::o;4483:388::-;4551:6;4559;4612:2;4600:9;4591:7;4587:23;4583:32;4580:52;;;4628:1;4625;4618:12;4580:52;4667:9;4654:23;4686:31;4711:5;4686:31;:::i;:::-;4736:5;-1:-1:-1;4793:2:32;4778:18;;4765:32;4806:33;4765:32;4806:33;:::i;4876:356::-;5078:2;5060:21;;;5097:18;;;5090:30;5156:34;5151:2;5136:18;;5129:62;5223:2;5208:18;;4876:356::o;5237:380::-;5316:1;5312:12;;;;5359;;;5380:61;;5434:4;5426:6;5422:17;5412:27;;5380:61;5487:2;5479:6;5476:14;5456:18;5453:38;5450:161;;5533:10;5528:3;5524:20;5521:1;5514:31;5568:4;5565:1;5558:15;5596:4;5593:1;5586:15;5450:161;;5237:380;;;:::o;6054:127::-;6115:10;6110:3;6106:20;6103:1;6096:31;6146:4;6143:1;6136:15;6170:4;6167:1;6160:15;6186:422;6275:1;6318:5;6275:1;6332:270;6353:7;6343:8;6340:21;6332:270;;;6412:4;6408:1;6404:6;6400:17;6394:4;6391:27;6388:53;;;6421:18;;:::i;:::-;6471:7;6461:8;6457:22;6454:55;;;6491:16;;;;6454:55;6570:22;;;;6530:15;;;;6332:270;;;6336:3;6186:422;;;;;:::o;6613:806::-;6662:5;6692:8;6682:80;;-1:-1:-1;6733:1:32;6747:5;;6682:80;6781:4;6771:76;;-1:-1:-1;6818:1:32;6832:5;;6771:76;6863:4;6881:1;6876:59;;;;6949:1;6944:130;;;;6856:218;;6876:59;6906:1;6897:10;;6920:5;;;6944:130;6981:3;6971:8;6968:17;6965:43;;;6988:18;;:::i;:::-;-1:-1:-1;;7044:1:32;7030:16;;7059:5;;6856:218;;7158:2;7148:8;7145:16;7139:3;7133:4;7130:13;7126:36;7120:2;7110:8;7107:16;7102:2;7096:4;7093:12;7089:35;7086:77;7083:159;;;-1:-1:-1;7195:19:32;;;7227:5;;7083:159;7274:34;7299:8;7293:4;7274:34;:::i;:::-;7344:6;7340:1;7336:6;7332:19;7323:7;7320:32;7317:58;;;7355:18;;:::i;:::-;7393:20;;6613:806;-1:-1:-1;;;6613:806:32:o;7424:140::-;7482:5;7511:47;7552:4;7542:8;7538:19;7532:4;7511:47;:::i;7569:168::-;7609:7;7675:1;7671;7667:6;7663:14;7660:1;7657:21;7652:1;7645:9;7638:17;7634:45;7631:71;;;7682:18;;:::i;:::-;-1:-1:-1;7722:9:32;;7569:168::o;8172:425::-;8374:2;8356:21;;;8413:2;8393:18;;;8386:30;8452:34;8447:2;8432:18;;8425:62;8523:31;8518:2;8503:18;;8496:59;8587:3;8572:19;;8172:425::o;11636:184::-;11706:6;11759:2;11747:9;11738:7;11734:23;11730:32;11727:52;;;11775:1;11772;11765:12;11727:52;-1:-1:-1;11798:16:32;;11636:184;-1:-1:-1;11636:184:32:o;12997:128::-;13037:3;13068:1;13064:6;13061:1;13058:13;13055:39;;;13074:18;;:::i;:::-;-1:-1:-1;13110:9:32;;12997:128::o;13130:125::-;13170:4;13198:1;13195;13192:8;13189:34;;;13203:18;;:::i;:::-;-1:-1:-1;13240:9:32;;13130:125::o;23655:217::-;23695:1;23721;23711:132;;23765:10;23760:3;23756:20;23753:1;23746:31;23800:4;23797:1;23790:15;23828:4;23825:1;23818:15;23711:132;-1:-1:-1;23857:9:32;;23655:217::o;26687:127::-;26748:10;26743:3;26739:20;26736:1;26729:31;26779:4;26776:1;26769:15;26803:4;26800:1;26793:15;26819:127;26880:10;26875:3;26871:20;26868:1;26861:31;26911:4;26908:1;26901:15;26935:4;26932:1;26925:15;26951:251;27021:6;27074:2;27062:9;27053:7;27049:23;27045:32;27042:52;;;27090:1;27087;27080:12;27042:52;27122:9;27116:16;27141:31;27166:5;27141:31;:::i;27207:461::-;27260:3;27298:5;27292:12;27325:6;27320:3;27313:19;27351:4;27380:2;27375:3;27371:12;27364:19;;27417:2;27410:5;27406:14;27438:1;27448:195;27462:6;27459:1;27456:13;27448:195;;;27527:13;;-1:-1:-1;;;;;27523:39:32;27511:52;;27583:12;;;;27618:15;;;;27559:1;27477:9;27448:195;;;-1:-1:-1;27659:3:32;;27207:461;-1:-1:-1;;;;;27207:461:32:o;27673:332::-;27880:6;27869:9;27862:25;27923:2;27918;27907:9;27903:18;27896:30;27843:4;27943:56;27995:2;27984:9;27980:18;27972:6;27943:56;:::i;:::-;27935:64;27673:332;-1:-1:-1;;;;27673:332:32:o;28010:1105::-;28105:6;28136:2;28179;28167:9;28158:7;28154:23;28150:32;28147:52;;;28195:1;28192;28185:12;28147:52;28228:9;28222:16;28257:18;28298:2;28290:6;28287:14;28284:34;;;28314:1;28311;28304:12;28284:34;28352:6;28341:9;28337:22;28327:32;;28397:7;28390:4;28386:2;28382:13;28378:27;28368:55;;28419:1;28416;28409:12;28368:55;28448:2;28442:9;28470:2;28466;28463:10;28460:36;;;28476:18;;:::i;:::-;28522:2;28519:1;28515:10;28554:2;28548:9;28617:2;28613:7;28608:2;28604;28600:11;28596:25;28588:6;28584:38;28672:6;28660:10;28657:22;28652:2;28640:10;28637:18;28634:46;28631:72;;;28683:18;;:::i;:::-;28719:2;28712:22;28769:18;;;28803:15;;;;-1:-1:-1;28845:11:32;;;28841:20;;;28873:19;;;28870:39;;;28905:1;28902;28895:12;28870:39;28929:11;;;;28949:135;28965:6;28960:3;28957:15;28949:135;;;29031:10;;29019:23;;28982:12;;;;29062;;;;28949:135;;;29103:6;28010:1105;-1:-1:-1;;;;;;;;28010:1105:32:o;29120:582::-;29419:6;29408:9;29401:25;29462:6;29457:2;29446:9;29442:18;29435:34;29505:3;29500:2;29489:9;29485:18;29478:31;29382:4;29526:57;29578:3;29567:9;29563:19;29555:6;29526:57;:::i;:::-;-1:-1:-1;;;;;29619:32:32;;;;29614:2;29599:18;;29592:60;-1:-1:-1;29683:3:32;29668:19;29661:35;29518:65;29120:582;-1:-1:-1;;;29120:582:32:o", + "object": "0x608060405234801561001057600080fd5b50600436106103785760003560e01c80638f3f5254116101d3578063c7c4ff4611610104578063f2fde38b116100a2578063f78080601161007c578063f780806014610817578063f9079b731461082a578063f9f92be41461084a578063fb8f3cc81461086d57600080fd5b8063f2fde38b146107ca578063f40acc3d146107dd578063f5423c891461080457600080fd5b8063dd62ed3e116100de578063dd62ed3e14610757578063f0f4426014610790578063f2b6b501146107a3578063f2c098b7146107b757600080fd5b8063c7c4ff461461071e578063cc6df13814610731578063dd4670641461074457600080fd5b8063a3504e7c11610171578063a97ed4d21161014b578063a97ed4d2146106a2578063b5b44106146106b5578063b9181611146106e8578063c4bb8cbe1461070b57600080fd5b8063a3504e7c14610659578063a457c2d71461067c578063a9059cbb1461068f57600080fd5b806397a84f85116101ad57806397a84f85146105e05780639af98541146106005780639b19251a146106235780639dc29fac1461064657600080fd5b80638f3f5254146105bc5780638f3fa860146105cf57806395d89b41146105d857600080fd5b806344c63eec116102ad5780636f6ff3bc1161024b578063715018a611610225578063715018a61461058d5780638456cb59146105955780638c0b5e221461059d5780638da5cb5b146105a657600080fd5b80636f6ff3bc1461053e5780637097f7931461055157806370a082311461056457600080fd5b806361d027b31161028757806361d027b3146104e55780636256d181146104fd578063676d3563146105105780636ef8834a1461052b57600080fd5b806344c63eec1461049c5780635376b092146104c75780635c975abb146104da57600080fd5b806324887e801161031a57806339509351116102f457806339509351146104665780633b6c0334146104795780633f4ba83a1461048157806340c10f191461048957600080fd5b806324887e8014610425578063313ce56714610438578063317d94531461045157600080fd5b8063095ea7b311610356578063095ea7b3146103c7578063166cc492146103ea57806318160ddd1461040a57806323b872dd1461041257600080fd5b8063060d206e1461037d57806306fdde0314610392578063090f215c146103b0575b600080fd5b61039061038b366004613414565b61088d565b005b61039a6108f1565b6040516103a79190613452565b60405180910390f35b6103b960105481565b6040519081526020016103a7565b6103da6103d53660046134a0565b610983565b60405190151581526020016103a7565b6103b96103f83660046134e2565b60186020526000908152604090205481565b6002546103b9565b6103da6104203660046134fd565b61099a565b61039061043336600461353e565b610a03565b60055460ff165b60405160ff90911681526020016103a7565b306000908152602081905260409020546103b9565b6103da6104743660046134a0565b610b00565b610390610b36565b610390610b90565b6103906104973660046134a0565b610c77565b600c546104af906001600160a01b031681565b6040516001600160a01b0390911681526020016103a7565b6103906104d5366004613557565b610ce5565b600b5460ff166103da565b600b546104af9061010090046001600160a01b031681565b61039061050b36600461353e565b610e25565b6104af737a250d5630b4cf539739df2c5dacb4c659f2488d81565b610390610539366004613414565b610f1b565b61039061054c366004613573565b6110bc565b61039061055f366004613590565b6112e7565b6103b9610572366004613573565b6001600160a01b031660009081526020819052604090205490565b6103906113bd565b61039061143d565b6103b9600f5481565b60055461010090046001600160a01b03166104af565b6103906105ca3660046134a0565b61154d565b6103b9600e5481565b61039a611615565b6103b96105ee3660046134e2565b60166020526000908152604090205481565b61043f61060e366004613573565b60156020526000908152604090205460ff1681565b6103da610631366004613573565b60136020526000908152604090205460ff1681565b6103906106543660046134a0565b611624565b61043f610667366004613573565b60146020526000908152604090205460ff1681565b6103da61068a3660046134a0565b61168e565b6103da61069d3660046134a0565b6116dd565b6103906106b036600461353e565b6116ea565b6106c86106c3366004613573565b61173b565b6040805194855260208501939093529183015260608201526080016103a7565b6103da6106f6366004613573565b60176020526000908152604090205460ff1681565b61039061071936600461353e565b6117fe565b600d546104af906001600160a01b031681565b61039061073f366004613414565b6119db565b61039061075236600461353e565b611dbe565b6103b96107653660046135c5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61039061079e366004613573565b611e6b565b600d546103da90600160a01b900460ff1681565b6103906107c5366004613573565b61201d565b6103906107d8366004613573565b6121ba565b6104af7f000000000000000000000000000000000000000000000000000000000000000081565b6103906108123660046134a0565b612219565b610390610825366004613590565b612418565b6103b9610838366004613573565b60196020526000908152604090205481565b6103da610858366004613573565b60126020526000908152604090205460ff1681565b6103b961087b366004613573565b601a6020526000908152604090205481565b6005546001600160a01b036101009091041633146108c65760405162461bcd60e51b81526004016108bd906135f3565b60405180910390fd5b6001600160a01b03919091166000908152601360205260409020805460ff1916911515919091179055565b60606003805461090090613628565b80601f016020809104026020016040519081016040528092919081815260200182805461092c90613628565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050905090565b6000610990338484612503565b5060015b92915050565b60006109a7848484612628565b6109f984336109f485604051806060016040528060288152602001613a51602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612c33565b612503565b5060019392505050565b6005546001600160a01b03610100909104163314610a335760405162461bcd60e51b81526004016108bd906135f3565b60008111610aa95760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7570646174654d617857616c6c657453697a60448201527f652829205f6d617857616c6c657453697a65206d75737420626520677420300060648201526084016108bd565b60055460ff16610aba90600a61375c565b610ac4908261376b565b600e8190556040519081527f12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace906020015b60405180910390a150565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109909185906109f490866124f0565b6005546001600160a01b03610100909104163314610b665760405162461bcd60e51b81526004016108bd906135f3565b60115460ff16610b8e57610b8e610b893060009081526020819052604090205490565b612c5f565b565b6005546001600160a01b03610100909104163314610bc05760405162461bcd60e51b81526004016108bd906135f3565b600b5460ff16610c385760405162461bcd60e51b815260206004820152603d60248201527f546178546f6b656e2e736f6c3a3a7768656e50617573656428292c20436f6e7460448201527f72616374206973206e6f742063757272656e746c79207061757365642e00000060648201526084016108bd565b600b805460ff191690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9060200160405180910390a1565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610cbb57503360009081526017602052604090205460ff1615156001145b610cd75760405162461bcd60e51b81526004016108bd90613782565b610ce18282612d36565b5050565b6005546001600160a01b03610100909104163314610d155760405162461bcd60e51b81526004016108bd906135f3565b6107d0811115610d8d5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205f627074203e20323030302028323025292e000000000000000060648201526084016108bd565b600d54600160a01b900460ff1615610e0f576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e20686173206265656e2072656d6f7665642e60648201526084016108bd565b60ff909116600090815260166020526040902055565b6005546001600160a01b03610100909104163314610e555760405162461bcd60e51b81526004016108bd906135f3565b60008111610ecb5760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7570646174654d61785478416d6f756e742860448201527f29205f6d61785478416d6f756e74206d7573742062652067742030000000000060648201526084016108bd565b60055460ff16610edc90600a61375c565b610ee6908261376b565b600f8190556040519081527fff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a90602001610af5565b6005546001600160a01b03610100909104163314610f4b5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038216610fba5760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201526f073742829205f6f776e6572203d3d20360841b60648201526084016108bd565b6001600160a01b03821660009081526017602052604090205460ff1615158115151461105d5760405162461bcd60e51b815260206004820152604660248201527f546178546f6b656e2e736f6c3a3a757064617465417574686f72697a65644c6960448201527f73742829205f6163636f756e7420697320616c72656164792073657420746f206064820152655f737461746560d01b608482015260a4016108bd565b6001600160a01b038216600081815260176020908152604091829020805460ff191685151590811790915591519182527f351731b7072c47dd7498a1db554905beb804daf2833acfabd6e954d1fac65cfd910160405180910390a25050565b6005546001600160a01b036101009091041633146110ec5760405162461bcd60e51b81526004016108bd906135f3565b600c546001600160a01b03908116908216036111705760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920616c72656160448201527f64792073657420746f207472656173757279206164647265737300000000000060648201526084016108bd565b6001600160a01b0381166111ec5760405162461bcd60e51b815260206004820152603860248201527f546178546f6b656e2e736f6c3a3a73657456657374696e67282920747265617360448201527f7572792063616e6e6f742062652061646472657373283029000000000000000060648201526084016108bd565b600c80546001600160a01b0319166001600160a01b03831690811790915561121590600161088d565b600c546040805163022b1d8960e21b815290516000926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801561125f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128391906137df565b600c5490915061129c906001600160a01b031682612d36565b600c54604080516001600160a01b03928316815291841660208301527fa596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e910160405180910390a15050565b6005546001600160a01b036101009091041633146113175760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106113905760405162461bcd60e51b815260206004820152603e60248201527f546178546f6b656e3a3a75706461746553656e6465725461785479706528292c60448201527f205f74617854797065206d757374206265206c657373207468616e20332e000060648201526084016108bd565b6001600160a01b03919091166000908152601460205260409020805460ff191660ff909216919091179055565b6005546001600160a01b036101009091041633146113ed5760405162461bcd60e51b81526004016108bd906135f3565b60055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360058054610100600160a81b0319169055565b6005546001600160a01b0361010090910416331461146d5760405162461bcd60e51b81526004016108bd906135f3565b3361147a600b5460ff1690565b158061149e57506001600160a01b03811660009081526013602052604090205460ff165b6115105760405162461bcd60e51b815260206004820152603f60248201527f546178546f6b656e2e736f6c3a3a7768656e4e6f74506175736564556e69282960448201527f2c20436f6e74726163742069732063757272656e746c79207061757365642e0060648201526084016108bd565b600b805460ff191660011790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001610af5565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061159157503360009081526017602052604090205460ff1615156001145b6115ad5760405162461bcd60e51b81526004016108bd90613782565b6115b78282612d36565b6001600160a01b038216600090815260196020526040812080548392906115df9084906137f8565b90915550506001600160a01b0382166000908152601a60205260408120805483929061160c9084906137f8565b90915550505050565b60606004805461090090613628565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061166857503360009081526017602052604090205460ff1615156001145b6116845760405162461bcd60e51b81526004016108bd90613782565b610ce18282612e15565b600061099033846109f485604051806060016040528060258152602001613a79602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612c33565b6000610990338484612628565b6005546001600160a01b0361010090910416331461171a5760405162461bcd60e51b81526004016108bd906135f3565b60055460ff1661172b90600a61375c565b611735908261376b565b60105550565b6040516370a0823160e01b81526001600160a01b0382166004820152600090819081908190819030906370a0823190602401602060405180830381865afa15801561178a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ae91906137df565b6001600160a01b0387166000908152601960205260408120549192506117d4828461380b565b6001600160a01b03989098166000908152601a602052604090205492989197965091945092505050565b6005546001600160a01b0361010090910416331461182e5760405162461bcd60e51b81526004016108bd906135f3565b80602a146118965760405162461bcd60e51b815260206004820152602f60248201527f546178546f6b656e3a3a7065726d616e656e746c7952656d6f7665546178657360448201526e141496102fb5b2bc90109e901a191760891b60648201526084016108bd565b600d54600160a01b900460ff16156119275760405162461bcd60e51b815260206004820152604860248201527f546178546f6b656e2e736f6c3a3a61646a7573744261736973506f696e74735460448201527f617828292c205461786174696f6e2068617320616c7265616479206265656e206064820152673932b6b7bb32b21760c11b608482015260a4016108bd565b601660205260007f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8190557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf49819055600281527fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab2885648819055600d805460ff60a01b1916600160a01b1790556040517fc75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b99190a150565b6005546001600160a01b03610100909104163314611a0b5760405162461bcd60e51b81526004016108bd906135f3565b8015611d93576001600160a01b03821660009081526013602052604090205460ff1615611a9d5760405162461bcd60e51b815260206004820152604660248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420612077686974656c6973746564206064820152651dd85b1b195d60d21b608482015260a4016108bd565b600b546001600160a01b03610100909104811690831603611b145760405162461bcd60e51b815260206004820152603a60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c69737420747265617375727900000000000060648201526084016108bd565b600d546001600160a01b0390811690831603611b865760405162461bcd60e51b815260206004820152603b60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374206465706f7369746f72000000000060648201526084016108bd565b600c546001600160a01b0390811690831603611bf85760405162461bcd60e51b815260206004820152603960248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742076657374696e670000000000000060648201526084016108bd565b737a250d5630b4cf539739df2c5dacb4c659f2488c196001600160a01b03831601611c875760405162461bcd60e51b8152602060048201526044602482018190526000805160206139e9833981519152908201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020524f6064820152632aaa22a960e11b608482015260a4016108bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611d275760405162461bcd60e51b815260206004820152604260248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c6973742074686520556e697377617020504160648201526124a960f11b608482015260a4016108bd565b306001600160a01b03831603611d935760405162461bcd60e51b815260206004820152603f60248201526000805160206139e983398151915260448201527f2063616e6e6f7420626c61636b6c697374207468697320636f6e74726163740060648201526084016108bd565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6005546001600160a01b03610100909104163314611dee5760405162461bcd60e51b81526004016108bd906135f3565b60058054600680546001600160a01b0319166001600160a01b03610100840416179055610100600160a81b0319169055611e2881426137f8565b60075560055460405160009161010090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6005546001600160a01b03610100909104163314611e9b5760405162461bcd60e51b81526004016108bd906135f3565b600b546001600160a01b03610100909104811690821603611f245760405162461bcd60e51b815260206004820152603b60248201527f546178546f6b656e2e736f6c3a3a7365745472656173757279282920616c726560448201527f6164792073657420746f2074726561737572792061646472657373000000000060648201526084016108bd565b6001600160a01b038116611fa05760405162461bcd60e51b815260206004820152603960248201527f546178546f6b656e2e736f6c3a3a73657454726561737572792829207472656160448201527f737572792063616e6e6f7420626520616464726573732830290000000000000060648201526084016108bd565b600b8054610100600160a81b0319166101006001600160a01b0384811682029290921792839055611fd4920416600161088d565b600b54604080516001600160a01b036101009093048316815291831660208301527f4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a9101610af5565b6005546001600160a01b0361010090910416331461204d5760405162461bcd60e51b81526004016108bd906135f3565b600d546001600160a01b03908116908216036120d15760405162461bcd60e51b815260206004820152603c60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f72282920616c7260448201527f656164792073657420746f20747265617375727920616464726573730000000060648201526084016108bd565b6001600160a01b03811661214d5760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a7365746465706f7369746f7228292074726560448201527f61737572792063616e6e6f74206265206164647265737328302900000000000060648201526084016108bd565b600d80546001600160a01b0319166001600160a01b03831690811790915561217690600061088d565b600d54604080516001600160a01b03928316815291831660208301527f830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a349763449101610af5565b6005546001600160a01b036101009091041633146121ea5760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b0381166000908152601360205260409020805460ff1916600117905561221681612f19565b50565b60055461010090046001600160a01b03166001600160a01b0316336001600160a01b0316148061225d57503360009081526017602052604090205460ff1615156001145b6122795760405162461bcd60e51b81526004016108bd90613782565b6001600160a01b0382166122f55760405162461bcd60e51b815260206004820152603a60248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20436160448201527f6e6e6f74206275726e20746f207a65726f20616464726573732e00000000000060648201526084016108bd565b80612315836001600160a01b031660009081526020819052604090205490565b10156123975760405162461bcd60e51b815260206004820152604560248201527f546178546f6b656e2e736f6c3a3a696e6475737472794275726e28292c20496e60448201527f73756666696369656e742062616c616e6365206f66202450524f564520746f20606482015264313ab9371760d91b608482015260a4016108bd565b6001600160a01b03821660009081526019602052604090205481116123f3576123c08282612e15565b6001600160a01b038216600090815260196020526040812080548392906123e890849061380b565b90915550610ce19050565b6123fd8282612e15565b506001600160a01b0316600090815260196020526040812055565b6005546001600160a01b036101009091041633146124485760405162461bcd60e51b81526004016108bd906135f3565b60038160ff16106124c3576040805162461bcd60e51b81526020600482015260248101919091527f546178546f6b656e3a3a7570646174655265636569766572546178547970652860448201527f292c205f74617854797065206d757374206265206c657373207468616e20332e60648201526084016108bd565b6001600160a01b03919091166000908152601560205260409020805460ff191660ff909216919091179055565b60006124fc82846137f8565b9392505050565b6001600160a01b0383166125655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108bd565b6001600160a01b0382166125c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108bd565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000612636600b5460ff1690565b158061265a57506001600160a01b03841660009081526013602052604090205460ff165b8061267d57506001600160a01b03831660009081526013602052604090205460ff165b8061269757503360009081526013602052604090205460ff165b6127095760405162461bcd60e51b815260206004820152603760248201527f546178546f6b656e2e736f6c3a3a5f7472616e73666572282920636f6e74726160448201527f63742069732063757272656e746c79207061757365642e00000000000000000060648201526084016108bd565b81612729856001600160a01b031660009081526020819052604090205490565b101561278a5760405162461bcd60e51b815260206004820152602a60248201527f546178546f6b656e3a3a5f7472616e73666572282920696e73756666696369656044820152696e742062616c616e636560b01b60648201526084016108bd565b600082116127f65760405162461bcd60e51b815260206004820152603360248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206d75736044820152720742062652067726561746572207468616e203606c1b60648201526084016108bd565b6001600160a01b03831660009081526013602052604090205460ff1615801561283857506001600160a01b03841660009081526013602052604090205460ff16155b801561285457503360009081526013602052604090205460ff16155b801561286957506001600160a01b0384163014155b15612c225781600f5410156128d95760405162461bcd60e51b815260206004820152603060248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e742065786360448201526f1959591cc81b585e151e105b5bdd5b9d60821b60648201526084016108bd565b6001600160a01b03841660009081526012602052604090205460ff16156129565760405162461bcd60e51b815260206004820152602b60248201527f546178546f6b656e3a3a5f7472616e7366657228292073656e6465722069732060448201526a189b1858dadb1a5cdd195960aa1b60648201526084016108bd565b6001600160a01b03831660009081526012602052604090205460ff16156129d55760405162461bcd60e51b815260206004820152602d60248201527f546178546f6b656e3a3a5f7472616e736665722829207265636569766572206960448201526c1cc8189b1858dadb1a5cdd1959609a1b60648201526084016108bd565b6001600160a01b03841660009081526014602052604090205460ff1615612a1457506001600160a01b03831660009081526014602052604090205460ff165b6001600160a01b03831660009081526015602052604090205460ff1615612a5357506001600160a01b03821660009081526015602052604090205460ff165b60ff811660009081526016602052604081205461271090612a74908561376b565b612a7e919061381e565b90506000612a8c828561380b565b905083612a9982846137f8565b14612af85760405162461bcd60e51b815260206004820152602960248201527f546178546f6b656e3a3a5f7472616e73666572282920637269746963616c206d60448201526830ba341032b93937b960b91b60648201526084016108bd565b8260ff16600214158015612b1a5750600d546001600160a01b03868116911614155b15612bb757600e5481612b42876001600160a01b031660009081526020819052604090205490565b612b4c91906137f8565b1115612bb75760405162461bcd60e51b815260206004820152603460248201527f546178546f6b656e3a3a5f7472616e73666572282920616d6f756e74206578636044820152731959591cc81b585e15d85b1b195d105b5bdd5b9d60621b60648201526084016108bd565b8260ff166002148015612bcd575060115460ff16155b15612c055730600090815260208190526040902054600f54811115612bf15750600f545b6010548110612c0357612c0381612c5f565b505b612c10868683613015565b612c1b863084613015565b5050612c2d565b612c2d848484613015565b50505050565b60008184841115612c575760405162461bcd60e51b81526004016108bd9190613452565b505050900390565b6011805460ff191660011790556000612c7782613198565b90508015612d2857600b54604051630eab2cb760e31b8152600481018390526101009091046001600160a01b03169063755965b890602401600060405180830381600087803b158015612cc957600080fd5b505af1158015612cdd573d6000803e3d6000fd5b5050600b546040518481526101009091046001600160a01b031692507f831f3151ac4fe05e9e25607e80c8710ed1dbc868f9edf4c2852b87d14eec373b915060200160405180910390a25b50506011805460ff19169055565b6001600160a01b038216612d8c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016108bd565b600254612d9990826124f0565b6002556001600160a01b038216600090815260208190526040902054612dbf90826124f0565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216612e755760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016108bd565b612eb281604051806060016040528060228152602001613a09602291396001600160a01b0385166000908152602081905260409020549190612c33565b6001600160a01b038316600090815260208190526040902055600254612ed890826133f3565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001612e09565b6005546001600160a01b03610100909104163314612f495760405162461bcd60e51b81526004016108bd906135f3565b6001600160a01b038116612fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108bd565b6005546040516001600160a01b0380841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b0383166130795760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108bd565b6001600160a01b0382166130db5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108bd565b61311881604051806060016040528060268152602001613a2b602691396001600160a01b0386166000908152602081905260409020549190612c33565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461314790826124f0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161261b565b6040805160028082526060820183526000928392919060208301908036833701905050905030816000815181106131d1576131d1613856565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613243573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613267919061386c565b8160018151811061327a5761327a613856565b60200260200101906001600160a01b031690816001600160a01b0316815250506132b930737a250d5630b4cf539739df2c5dacb4c659f2488d85612503565b60405163d06ca61f60e01b8152600090737a250d5630b4cf539739df2c5dacb4c659f2488d9063d06ca61f906132f590879086906004016138cd565b600060405180830381865afa158015613312573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261333a91908101906138ee565b600b54909150737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d795908690600090869061010090046001600160a01b031661337d4261012c6137f8565b6040518663ffffffff1660e01b815260040161339d9594939291906139ac565b600060405180830381600087803b1580156133b757600080fd5b505af11580156133cb573d6000803e3d6000fd5b50505050806001815181106133e2576133e2613856565b602002602001015192505050919050565b60006124fc828461380b565b6001600160a01b038116811461221657600080fd5b6000806040838503121561342757600080fd5b8235613432816133ff565b91506020830135801515811461344757600080fd5b809150509250929050565b600060208083528351808285015260005b8181101561347f57858101830151858201604001528201613463565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156134b357600080fd5b82356134be816133ff565b946020939093013593505050565b803560ff811681146134dd57600080fd5b919050565b6000602082840312156134f457600080fd5b6124fc826134cc565b60008060006060848603121561351257600080fd5b833561351d816133ff565b9250602084013561352d816133ff565b929592945050506040919091013590565b60006020828403121561355057600080fd5b5035919050565b6000806040838503121561356a57600080fd5b6134be836134cc565b60006020828403121561358557600080fd5b81356124fc816133ff565b600080604083850312156135a357600080fd5b82356135ae816133ff565b91506135bc602084016134cc565b90509250929050565b600080604083850312156135d857600080fd5b82356135e3816133ff565b91506020830135613447816133ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061363c57607f821691505b60208210810361365c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156136b357816000190482111561369957613699613662565b808516156136a657918102915b93841c939080029061367d565b509250929050565b6000826136ca57506001610994565b816136d757506000610994565b81600181146136ed57600281146136f757613713565b6001915050610994565b60ff84111561370857613708613662565b50506001821b610994565b5060208310610133831016604e8410600b8410161715613736575081810a610994565b6137408383613678565b806000190482111561375457613754613662565b029392505050565b60006124fc60ff8416836136bb565b808202811582820484141761099457610994613662565b6020808252603d908201527f546178546f6b656e2e736f6c3a3a6f6e6c79417574686f72697a656428292c2060408201527f6d73672e73656e646572206973206e6f7420617574686f72697a65642e000000606082015260800190565b6000602082840312156137f157600080fd5b5051919050565b8082018082111561099457610994613662565b8181038181111561099457610994613662565b60008261383b57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561387e57600080fd5b81516124fc816133ff565b600081518084526020808501945080840160005b838110156138c25781516001600160a01b03168752958201959082019060010161389d565b509495945050505050565b8281526040602082015260006138e66040830184613889565b949350505050565b6000602080838503121561390157600080fd5b825167ffffffffffffffff8082111561391957600080fd5b818501915085601f83011261392d57600080fd5b81518181111561393f5761393f613840565b8060051b604051601f19603f8301168101818110858211171561396457613964613840565b60405291825284820192508381018501918883111561398257600080fd5b938501935b828510156139a057845184529385019392850192613987565b98975050505050505050565b85815284602082015260a0604082015260006139cb60a0830186613889565b6001600160a01b039490941660608301525060800152939250505056fe546178546f6b656e2e736f6c3a3a6d6f64696679426c61636b6c69737428292c45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f6afa79d2dd6dc16daa6196b4a596cb84785ca65de715a6382c40987a3939e4c64736f6c63430008110033", + "sourceMap": "828:24476:16:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19574:130;;;;;;:::i;:::-;;:::i;:::-;;8607:91:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1583:38:16;;;;;;;;;1270:25:32;;;1258:2;1243:18;1583:38:16;1124:177:32;10753:169:21;;;;;;:::i;:::-;;:::i;:::-;;;1791:14:32;;1784:22;1766:41;;1754:2;1739:18;10753:169:21;1626:187:32;2496:45:16;;;;;;:::i;:::-;;;;;;;;;;;;;;9706:108:21;9794:12;;9706:108;;11404:321;;;;;;:::i;:::-;;:::i;18883:298:16:-;;;;;;:::i;:::-;;:::i;9550:91:21:-;9624:9;;;;9550:91;;;2984:4:32;2972:17;;;2954:36;;2942:2;2927:18;9550:91:21;2812:184:32;24030:115:16;24131:4;24086:7;9978:18:21;;;;;;;;;;;24030:115:16;;12134:218:21;;;;;;:::i;:::-;;:::i;14792:263:16:-;;;:::i;11590:119::-;;;:::i;21508:114::-;;;;;;:::i;:::-;;:::i;1188:22::-;;;;;-1:-1:-1;;;;;1188:22:16;;;;;;-1:-1:-1;;;;;3165:32:32;;;3147:51;;3135:2;3120:18;1188:22:16;3001:203:32;13577:319:16;;;;;;:::i;:::-;;:::i;11813:86::-;11884:7;;;;11813:86;;1158:23;;;;;;;;-1:-1:-1;;;;;1158:23:16;;;18347:278;;;;;;:::i;:::-;;:::i;1250:81::-;;1289:42;1250:81;;15366:408;;;;;;:::i;:::-;;:::i;16555:492::-;;;;;;:::i;:::-;;:::i;12344:231::-;;;;;;:::i;:::-;;:::i;9877:127:21:-;;;;;;:::i;:::-;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;1815:148:20;;;:::i;11332:132:16:-;;;:::i;1548:26::-;;;;;;1164:87:20;1237:6;;;;;-1:-1:-1;;;;;1237:6:20;1164:87;;22672:222:16;;;;;;:::i;:::-;;:::i;1513:28::-;;;;;;8817:95:21;;;:::i;2231:44:16:-;;;;;;:::i;:::-;;;;;;;;;;;;;;2109:48;;;;;;:::i;:::-;;;;;;;;;;;;;;;;1834:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;21935:114;;;;;;:::i;:::-;;:::i;1980:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;12855:269:21;;;;;;:::i;:::-;;:::i;10217:175::-;;;;;;:::i;:::-;;:::i;17916:148:16:-;;;;;;:::i;:::-;;:::i;24759:542::-;;;;;;:::i;:::-;;:::i;:::-;;;;4269:25:32;;;4325:2;4310:18;;4303:34;;;;4353:18;;;4346:34;4411:2;4396:18;;4389:34;4256:3;4241:19;24759:542:16;4038:391:32;2354:42:16;;;;;;:::i;:::-;;;;;;;;;;;;;;;;14165:429;;;;;;:::i;:::-;;:::i;1217:24::-;;;;;-1:-1:-1;;;;;1217:24:16;;;20148:952;;;;;;:::i;:::-;;:::i;2444:226:20:-;;;;;;:::i;:::-;;:::i;10455:151:21:-;;;;;;:::i;:::-;-1:-1:-1;;;;;10571:18:21;;;10544:7;10571:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10455:151;15965:404:16;;;;;;:::i;:::-;;:::i;1387:24::-;;;;;-1:-1:-1;;;1387:24:16;;;;;;17224:464;;;;;;:::i;:::-;;:::i;14624:160::-;;;;;;:::i;:::-;;:::i;1338:40::-;;;;;23211:562;;;;;;:::i;:::-;;:::i;12975:241::-;;;;;;:::i;:::-;;:::i;2550:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;1680:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2700:54;;;;;;:::i;:::-;;;;;;;;;;;;;;19574:130;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;19663:18:16;;;::::1;;::::0;;;:9:::1;:18;::::0;;;;:33;;-1:-1:-1;;19663:33:16::1;::::0;::::1;;::::0;;;::::1;::::0;;19574:130::o;8607:91:21:-;8652:13;8685:5;8678:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8607:91;:::o;10753:169::-;10836:4;10853:39;699:10:19;10876:7:21;10885:6;10853:8;:39::i;:::-;-1:-1:-1;10910:4:21;10753:169;;;;;:::o;11404:321::-;11510:4;11527:36;11537:6;11545:9;11556:6;11527:9;:36::i;:::-;11574:121;11583:6;699:10:19;11605:89:21;11643:6;11605:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11605:19:21;;;;;;:11;:19;;;;;;;;699:10:19;11605:33:21;;;;;;;;;;:37;:89::i;:::-;11574:8;:121::i;:::-;-1:-1:-1;11713:4:21;11404:321;;;;;:::o;18883:298:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;18991:1:16::1;18974:14;:18;18966:94;;;::::0;-1:-1:-1;;;18966:94:16;;5775:2:32;18966:94:16::1;::::0;::::1;5757:21:32::0;5814:2;5794:18;;;5787:30;5853:34;5833:18;;;5826:62;5924:33;5904:18;;;5897:61;5975:19;;18966:94:16::1;5573:427:32::0;18966:94:16::1;9624:9:21::0;;;;19107:16:16::1;::::0;:2:::1;:16;:::i;:::-;19090:33;::::0;:14;:33:::1;:::i;:::-;19073:13;:51:::0;;;19142:31:::1;::::0;1270:25:32;;;19142:31:16::1;::::0;1258:2:32;1243:18;19142:31:16::1;;;;;;;;18883:298:::0;:::o;12134:218:21:-;699:10:19;12222:4:21;12271:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12271:34:21;;;;;;;;;;12222:4;;12239:83;;12262:7;;12271:50;;12310:10;12271:38;:50::i;14792:263:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;14908:6:16::1;::::0;::::1;;14903:82;;14931:42;14947:25;24131:4:::0;24086:7;9978:18:21;;;;;;;;;;;;24030:115:16;14947:25:::1;14931:15;:42::i;:::-;14792:263::o:0;11590:119::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;11884:7:16;;;;5934:82:::1;;;::::0;-1:-1:-1;;;5934:82:16;;7895:2:32;5934:82:16::1;::::0;::::1;7877:21:32::0;7934:2;7914:18;;;7907:30;7973:34;7953:18;;;7946:62;8044:31;8024:18;;;8017:59;8093:19;;5934:82:16::1;7693:425:32::0;5934:82:16::1;11650:7:::2;:15:::0;;-1:-1:-1;;11650:15:16::2;::::0;;11681:20:::2;::::0;11690:10:::2;3147:51:32::0;;11681:20:16::2;::::0;3135:2:32;3120:18;11681:20:16::2;;;;;;;11590:119::o:0;21508:114::-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;21591:23:::1;21597:7;21606;21591:5;:23::i;:::-;21508:114:::0;;:::o;13577:319::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;13680:4:16::1;13672;:12;;13664:81;;;::::0;-1:-1:-1;;;13664:81:16;;8755:2:32;13664:81:16::1;::::0;::::1;8737:21:32::0;8794:2;8774:18;;;8767:30;8833:34;8813:18;;;8806:62;8904:26;8884:18;;;8877:54;8948:19;;13664:81:16::1;8553:420:32::0;13664:81:16::1;13765:12;::::0;-1:-1:-1;;;13765:12:16;::::1;;;13764:13;13756:90;;;::::0;;-1:-1:-1;;;13756:90:16;;9180:2:32;13756:90:16::1;::::0;::::1;9162:21:32::0;9199:18;;;9192:30;;;;9258:34;9238:18;;;9231:62;9329:34;9309:18;;;9302:62;9381:19;;13756:90:16::1;8978:428:32::0;13756:90:16::1;13857:24;::::0;;::::1;;::::0;;;:14:::1;:24;::::0;;;;:31;13577:319::o;18347:278::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;18449:1:16::1;18434:12;:16;18426:88;;;::::0;-1:-1:-1;;;18426:88:16;;9613:2:32;18426:88:16::1;::::0;::::1;9595:21:32::0;9652:2;9632:18;;;9625:30;9691:34;9671:18;;;9664:62;9762:29;9742:18;;;9735:57;9809:19;;18426:88:16::1;9411:423:32::0;18426:88:16::1;9624:9:21::0;;;;18557:16:16::1;::::0;:2:::1;:16;:::i;:::-;18542:31;::::0;:12;:31:::1;:::i;:::-;18527:11;:47:::0;;;18592:25:::1;::::0;1270::32;;;18592::16::1;::::0;1258:2:32;1243:18;18592:25:16::1;1124:177:32::0;15366:408:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;15465:22:16;::::1;15457:83;;;::::0;-1:-1:-1;;;15457:83:16;;10041:2:32;15457:83:16::1;::::0;::::1;10023:21:32::0;10080:2;10060:18;;;10053:30;10119:34;10099:18;;;10092:62;-1:-1:-1;;;10170:18:32;;;10163:46;10226:19;;15457:83:16::1;9839:412:32::0;15457:83:16::1;-1:-1:-1::0;;;;;15559:20:16;::::1;;::::0;;;:10:::1;:20;::::0;;;;;::::1;;:30;;::::0;::::1;;;15551:113;;;::::0;-1:-1:-1;;;15551:113:16;;10458:2:32;15551:113:16::1;::::0;::::1;10440:21:32::0;10497:2;10477:18;;;10470:30;10536:34;10516:18;;;10509:62;10607:34;10587:18;;;10580:62;-1:-1:-1;;;10658:19:32;;;10651:37;10705:19;;15551:113:16::1;10256:474:32::0;15551:113:16::1;-1:-1:-1::0;;;;;15677:20:16;::::1;;::::0;;;:10:::1;:20;::::0;;;;;;;;:29;;-1:-1:-1;;15677:29:16::1;::::0;::::1;;::::0;;::::1;::::0;;;15724:42;;1766:41:32;;;15724:42:16::1;::::0;1739:18:32;15724:42:16::1;;;;;;;15366:408:::0;;:::o;16555:492::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;16643:7:16::1;::::0;-1:-1:-1;;;;;16643:7:16;;::::1;16631:19:::0;;::::1;::::0;16623:90:::1;;;::::0;-1:-1:-1;;;16623:90:16;;10937:2:32;16623:90:16::1;::::0;::::1;10919:21:32::0;10976:2;10956:18;;;10949:30;11015:34;10995:18;;;10988:62;11086:28;11066:18;;;11059:56;11132:19;;16623:90:16::1;10735:422:32::0;16623:90:16::1;-1:-1:-1::0;;;;;16732:22:16;::::1;16724:91;;;::::0;-1:-1:-1;;;16724:91:16;;11364:2:32;16724:91:16::1;::::0;::::1;11346:21:32::0;11403:2;11383:18;;;11376:30;11442:34;11422:18;;;11415:62;11513:26;11493:18;;;11486:54;11557:19;;16724:91:16::1;11162:420:32::0;16724:91:16::1;16828:7;:18:::0;;-1:-1:-1;;;;;;16828:18:16::1;-1:-1:-1::0;;;;;16828:18:16;::::1;::::0;;::::1;::::0;;;16857:30:::1;::::0;-1:-1:-1;16857:15:16::1;:30::i;:::-;16926:7;::::0;16917:38:::1;::::0;;-1:-1:-1;;;16917:38:16;;;;16900:14:::1;::::0;-1:-1:-1;;;;;16926:7:16::1;::::0;16917:36:::1;::::0;:38:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;16926:7;16917:38:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16972:7;::::0;16900:55;;-1:-1:-1;16966:22:16::1;::::0;-1:-1:-1;;;;;16972:7:16::1;16900:55:::0;16966:5:::1;:22::i;:::-;17021:7;::::0;17006:33:::1;::::0;;-1:-1:-1;;;;;17021:7:16;;::::1;11988:34:32::0;;12058:15;;;12053:2;12038:18;;12031:43;17006:33:16::1;::::0;11923:18:32;17006:33:16::1;;;;;;;16612:435;16555:492:::0;:::o;12344:231::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;12455:1:16::1;12444:8;:12;;;12436:87;;;::::0;-1:-1:-1;;;12436:87:16;;12287:2:32;12436:87:16::1;::::0;::::1;12269:21:32::0;12326:2;12306:18;;;12299:30;12365:34;12345:18;;;12338:62;12436:32;12416:18;;;12409:60;12486:19;;12436:87:16::1;12085:426:32::0;12436:87:16::1;-1:-1:-1::0;;;;;12534:22:16;;;::::1;;::::0;;;:13:::1;:22;::::0;;;;:33;;-1:-1:-1;;12534:33:16::1;;::::0;;::::1;::::0;;;::::1;::::0;;12344:231::o;1815:148:20:-;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;1906:6:::1;::::0;1885:40:::1;::::0;1922:1:::1;::::0;1906:6:::1;::::0;::::1;-1:-1:-1::0;;;;;1906:6:20::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1936:6;:19:::0;;-1:-1:-1;;;;;;1936:19:20::1;::::0;;1815:148::o;11332:132:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;11385:10:16::1;5055:8;11884:7:::0;;;;;11813:86;5055:8:::1;5054:9;:25;;;-1:-1:-1::0;;;;;;5067:12:16;::::1;;::::0;;;:9:::1;:12;::::0;;;;;::::1;;5054:25;5046:101;;;::::0;-1:-1:-1;;;5046:101:16;;12718:2:32;5046:101:16::1;::::0;::::1;12700:21:32::0;12757:2;12737:18;;;12730:30;12796:34;12776:18;;;12769:62;12867:33;12847:18;;;12840:61;12918:19;;5046:101:16::1;12516:427:32::0;5046:101:16::1;11408:7:::2;:14:::0;;-1:-1:-1;;11408:14:16::2;11418:4;11408:14;::::0;;11438:18:::2;::::0;11445:10:::2;3147:51:32::0;;11438:18:16::2;::::0;3135:2:32;3120:18;11438::16::2;3001:203:32::0;22672:222:16;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;22763:23:::1;22769:7;22778;22763:5;:23::i;:::-;-1:-1:-1::0;;;;;22799:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;:34;;22826:7;;22799:23;:34:::1;::::0;22826:7;;22799:34:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;22844:31:16;::::1;;::::0;;;:22:::1;:31;::::0;;;;:42;;22879:7;;22844:31;:42:::1;::::0;22879:7;;22844:42:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;22672:222:16:o;8817:95:21:-;8864:13;8897:7;8890:14;;;;;:::i;21935:114:16:-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;22018:23:::1;22024:7;22033;22018:5;:23::i;12855:269:21:-:0;12948:4;12965:129;699:10:19;12988:7:21;12997:96;13036:15;12997:96;;;;;;;;;;;;;;;;;699:10:19;12997:25:21;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12997:34:21;;;;;;;;;;;;:38;:96::i;10217:175::-;10303:4;10320:42;699:10:19;10344:9:21;10355:6;10320:9;:42::i;17916:148:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;9624:9:21;;;;18039:16:16::1;::::0;:2:::1;:16;:::i;:::-;18029:26;::::0;:7;:26:::1;:::i;:::-;18002:23;:54:::0;-1:-1:-1;17916:148:16:o;24759:542::-;24931:40;;-1:-1:-1;;;24931:40:16;;-1:-1:-1;;;;;3165:32:32;;24931:40:16;;;3147:51:32;24826:14:16;;;;;;;;;;24946:4;;24931:31;;3120:18:32;;24931:40:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;25005:23:16;;24982:20;25005:23;;;:14;:23;;;;;;24912:59;;-1:-1:-1;25057:29:16;25005:23;24912:59;25057:29;:::i;:::-;-1:-1:-1;;;;;25261:31:16;;;;;;;;:22;:31;;;;;;25219:11;;25232:15;;;-1:-1:-1;25261:31:16;;-1:-1:-1;24759:542:16;-1:-1:-1;;;24759:542:16:o;14165:429::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;14246:4:16::1;14254:2;14246:10;14238:70;;;::::0;-1:-1:-1;;;14238:70:16;;13413:2:32;14238:70:16::1;::::0;::::1;13395:21:32::0;13452:2;13432:18;;;13425:30;13491:34;13471:18;;;13464:62;-1:-1:-1;;;13542:18:32;;;13535:45;13597:19;;14238:70:16::1;13211:411:32::0;14238:70:16::1;14328:12;::::0;-1:-1:-1;;;14328:12:16;::::1;;;14327:13;14319:98;;;::::0;-1:-1:-1;;;14319:98:16;;13829:2:32;14319:98:16::1;::::0;::::1;13811:21:32::0;13868:2;13848:18;;;13841:30;13907:34;13887:18;;;13880:62;13978:34;13958:18;;;13951:62;-1:-1:-1;;;14029:19:32;;;14022:39;14078:19;;14319:98:16::1;13627:476:32::0;14319:98:16::1;14428:14;:17;::::0;14448:1:::1;14428:17:::0;:21;;;14460:17;:21;;;14507:1:::1;14492:17:::0;;;:21;;;14524:12:::1;:19:::0;;-1:-1:-1;;;;14524:19:16::1;-1:-1:-1::0;;;14524:19:16::1;::::0;;14428:17;14561:25;::::1;::::0;14448:1;14561:25:::1;14165:429:::0;:::o;20148:952::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;20241:10:16::1;20237:814;;;-1:-1:-1::0;;;;;20277:18:16;::::1;;::::0;;;:9:::1;:18;::::0;;;;;::::1;;20276:19;20268:102;;;::::0;-1:-1:-1;;;20268:102:16;;14310:2:32;20268:102:16::1;::::0;::::1;14292:21:32::0;14349:2;14329:18;;;14322:30;-1:-1:-1;;;;;;;;;;;14368:18:32;;;14361:62;14459:34;14439:18;;;14432:62;-1:-1:-1;;;14510:19:32;;;14503:37;14557:19;;20268:102:16::1;14108:474:32::0;20268:102:16::1;20404:8;::::0;-1:-1:-1;;;;;20404:8:16::1;::::0;;::::1;::::0;::::1;20393:19:::0;;::::1;::::0;20385:90:::1;;;::::0;-1:-1:-1;;;20385:90:16;;14789:2:32;20385:90:16::1;::::0;::::1;14771:21:32::0;14828:2;14808:18;;;14801:30;-1:-1:-1;;;;;;;;;;;14847:18:32;;;14840:62;14938:28;14918:18;;;14911:56;14984:19;;20385:90:16::1;14587:422:32::0;20385:90:16::1;20509:9;::::0;-1:-1:-1;;;;;20509:9:16;;::::1;20498:20:::0;;::::1;::::0;20490:92:::1;;;::::0;-1:-1:-1;;;20490:92:16;;15216:2:32;20490:92:16::1;::::0;::::1;15198:21:32::0;15255:2;15235:18;;;15228:30;-1:-1:-1;;;;;;;;;;;15274:18:32;;;15267:62;15365:29;15345:18;;;15338:57;15412:19;;20490:92:16::1;15014:423:32::0;20490:92:16::1;20616:7;::::0;-1:-1:-1;;;;;20616:7:16;;::::1;20605:18:::0;;::::1;::::0;20597:88:::1;;;::::0;-1:-1:-1;;;20597:88:16;;15644:2:32;20597:88:16::1;::::0;::::1;15626:21:32::0;15683:2;15663:18;;;15656:30;-1:-1:-1;;;;;;;;;;;15702:18:32;;;15695:62;15793:27;15773:18;;;15766:55;15838:19;;20597:88:16::1;15442:421:32::0;20597:88:16::1;-1:-1:-1::0;;;;;;;20708:23:16;::::1;::::0;20700:104:::1;;;::::0;-1:-1:-1;;;20700:104:16;;16070:2:32;20700:104:16::1;::::0;::::1;16052:21:32::0;16109:2;16089:18;;;16082:30;;;-1:-1:-1;;;;;;;;;;;16128:18:32;;;16121:62;16219:34;16199:18;;;16192:62;-1:-1:-1;;;16270:19:32;;;16263:35;16315:19;;20700:104:16::1;15868:472:32::0;20700:104:16::1;20838:15;-1:-1:-1::0;;;;;20827:26:16::1;:7;-1:-1:-1::0;;;;;20827:26:16::1;::::0;20819:105:::1;;;::::0;-1:-1:-1;;;20819:105:16;;16547:2:32;20819:105:16::1;::::0;::::1;16529:21:32::0;16586:2;16566:18;;;16559:30;-1:-1:-1;;;;;;;;;;;16605:18:32;;;16598:62;16696:34;16676:18;;;16669:62;-1:-1:-1;;;16747:19:32;;;16740:33;16790:19;;20819:105:16::1;16345:470:32::0;20819:105:16::1;20966:4;-1:-1:-1::0;;;;;20947:24:16;::::1;::::0;20939:100:::1;;;::::0;-1:-1:-1;;;20939:100:16;;17022:2:32;20939:100:16::1;::::0;::::1;17004:21:32::0;17061:2;17041:18;;;17034:30;-1:-1:-1;;;;;;;;;;;17080:18:32;;;17073:62;17171:33;17151:18;;;17144:61;17222:19;;20939:100:16::1;16820:427:32::0;20939:100:16::1;-1:-1:-1::0;;;;;21061:18:16;;;::::1;;::::0;;;:9:::1;:18;::::0;;;;:31;;-1:-1:-1;;21061:31:16::1;::::0;::::1;;::::0;;;::::1;::::0;;20148:952::o;2444:226:20:-;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;2525:6:::1;::::0;;2508:14:::1;:23:::0;;-1:-1:-1;;;;;;2508:23:20::1;-1:-1:-1::0;;;;;2525:6:20::1;::::0;::::1;;2508:23;::::0;;-1:-1:-1;;;;;;2542:19:20::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2643:6:::1;::::0;2622:40:::1;::::0;2659:1:::1;::::0;2643:6:::1;::::0;::::1;-1:-1:-1::0;;;;;2643:6:20::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;15965:404:16:-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;16056:8:16::1;::::0;-1:-1:-1;;;;;16056:8:16::1;::::0;;::::1;::::0;::::1;16043:21:::0;;::::1;::::0;16035:93:::1;;;::::0;-1:-1:-1;;;16035:93:16;;17454:2:32;16035:93:16::1;::::0;::::1;17436:21:32::0;17493:2;17473:18;;;17466:30;17532:34;17512:18;;;17505:62;17603:29;17583:18;;;17576:57;17650:19;;16035:93:16::1;17252:423:32::0;16035:93:16::1;-1:-1:-1::0;;;;;16147:23:16;::::1;16139:93;;;::::0;-1:-1:-1;;;16139:93:16;;17882:2:32;16139:93:16::1;::::0;::::1;17864:21:32::0;17921:2;17901:18;;;17894:30;17960:34;17940:18;;;17933:62;18031:27;18011:18;;;18004:55;18076:19;;16139:93:16::1;17680:421:32::0;16139:93:16::1;16245:8;:20:::0;;-1:-1:-1;;;;;;16245:20:16::1;;-1:-1:-1::0;;;;;16245:20:16;;::::1;::::0;::::1;::::0;;;::::1;::::0;;;;16276:31:::1;::::0;16292:8:::1;;-1:-1:-1::0;16276:15:16::1;:31::i;:::-;16341:8;::::0;16325:36:::1;::::0;;-1:-1:-1;;;;;16341:8:16::1;::::0;;::::1;::::0;::::1;11988:34:32::0;;12058:15;;;12053:2;12038:18;;12031:43;16325:36:16::1;::::0;11923:18:32;16325:36:16::1;11776:304:32::0;17224:464:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;17318:9:16::1;::::0;-1:-1:-1;;;;;17318:9:16;;::::1;17304:23:::0;;::::1;::::0;17296:96:::1;;;::::0;-1:-1:-1;;;17296:96:16;;18308:2:32;17296:96:16::1;::::0;::::1;18290:21:32::0;18347:2;18327:18;;;18320:30;18386:34;18366:18;;;18359:62;18457:30;18437:18;;;18430:58;18505:19;;17296:96:16::1;18106:424:32::0;17296:96:16::1;-1:-1:-1::0;;;;;17411:24:16;::::1;17403:95;;;::::0;-1:-1:-1;;;17403:95:16;;18737:2:32;17403:95:16::1;::::0;::::1;18719:21:32::0;18776:2;18756:18;;;18749:30;18815:34;18795:18;;;18788:62;18886:28;18866:18;;;18859:56;18932:19;;17403:95:16::1;18535:422:32::0;17403:95:16::1;17511:9;:22:::0;;-1:-1:-1;;;;;;17511:22:16::1;-1:-1:-1::0;;;;;17511:22:16;::::1;::::0;;::::1;::::0;;;17544:33:::1;::::0;-1:-1:-1;17544:15:16::1;:33::i;:::-;17658:9;::::0;17641:39:::1;::::0;;-1:-1:-1;;;;;17658:9:16;;::::1;11988:34:32::0;;12058:15;;;12053:2;12038:18;;12031:43;17641:39:16::1;::::0;11923:18:32;17641:39:16::1;11776:304:32::0;14624:160:16;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;14706:19:16;::::1;;::::0;;;:9:::1;:19;::::0;;;;:26;;-1:-1:-1;;14706:26:16::1;14728:4;14706:26;::::0;;14743:33:::1;14716:8:::0;14743:23:::1;:33::i;:::-;14624:160:::0;:::o;23211:562::-;1237:6:20;;;;;-1:-1:-1;;;;;1237:6:20;-1:-1:-1;;;;;6195:21:16;:10;-1:-1:-1;;;;;6195:21:16;;:55;;;-1:-1:-1;6231:10:16;6220:22;;;;:10;:22;;;;;;;;:30;;:22;:30;6195:55;6187:129;;;;-1:-1:-1;;;6187:129:16;;;;;;;:::i;:::-;-1:-1:-1;;;;;23310:21:16;::::1;23302:92;;;::::0;-1:-1:-1;;;23302:92:16;;19164:2:32;23302:92:16::1;::::0;::::1;19146:21:32::0;19203:2;19183:18;;;19176:30;19242:34;19222:18;;;19215:62;19313:28;19293:18;;;19286:56;19359:19;;23302:92:16::1;18962:422:32::0;23302:92:16::1;23435:7;23413:18;23423:7;-1:-1:-1::0;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;23413:18:16::1;:29;;23405:111;;;::::0;-1:-1:-1;;;23405:111:16;;19591:2:32;23405:111:16::1;::::0;::::1;19573:21:32::0;19630:2;19610:18;;;19603:30;19669:34;19649:18;;;19642:62;19740:34;19720:18;;;19713:62;-1:-1:-1;;;19791:19:32;;;19784:36;19837:19;;23405:111:16::1;19389:473:32::0;23405:111:16::1;-1:-1:-1::0;;;;;23533:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;;:34;-1:-1:-1;23529:237:16::1;;23584:23;23590:7;23599;23584:5;:23::i;:::-;-1:-1:-1::0;;;;;23622:23:16;::::1;;::::0;;;:14:::1;:23;::::0;;;;:34;;23649:7;;23622:23;:34:::1;::::0;23649:7;;23622:34:::1;:::i;:::-;::::0;;;-1:-1:-1;23529:237:16::1;::::0;-1:-1:-1;23529:237:16::1;;23689:23;23695:7;23704;23689:5;:23::i;:::-;-1:-1:-1::0;;;;;;23727:23:16::1;23753:1;23727:23:::0;;;:14:::1;:23;::::0;;;;:27;23211:562::o;12975:241::-;1237:6:20;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;13090:1:16::1;13079:8;:12;;;13071:89;;;::::0;;-1:-1:-1;;;13071:89:16;;20069:2:32;13071:89:16::1;::::0;::::1;20051:21:32::0;20088:18;;;20081:30;;;;20147:34;20127:18;;;20120:62;20218:34;20198:18;;;20191:62;20270:19;;13071:89:16::1;19867:428:32::0;13071:89:16::1;-1:-1:-1::0;;;;;13171:26:16;;;::::1;;::::0;;;:15:::1;:26;::::0;;;;:37;;-1:-1:-1;;13171:37:16::1;;::::0;;::::1;::::0;;;::::1;::::0;;12975:241::o;2486:98:21:-;2544:7;2571:5;2575:1;2571;:5;:::i;:::-;2564:12;2486:98;-1:-1:-1;;;2486:98:21:o;16012:346::-;-1:-1:-1;;;;;16114:19:21;;16106:68;;;;-1:-1:-1;;;16106:68:21;;20502:2:32;16106:68:21;;;20484:21:32;20541:2;20521:18;;;20514:30;20580:34;20560:18;;;20553:62;-1:-1:-1;;;20631:18:32;;;20624:34;20675:19;;16106:68:21;20300:400:32;16106:68:21;-1:-1:-1;;;;;16193:21:21;;16185:68;;;;-1:-1:-1;;;16185:68:21;;20907:2:32;16185:68:21;;;20889:21:32;20946:2;20926:18;;;20919:30;20985:34;20965:18;;;20958:62;-1:-1:-1;;;21036:18:32;;;21029:32;21078:19;;16185:68:21;20705:398:32;16185:68:21;-1:-1:-1;;;;;16266:18:21;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16318:32;;1270:25:32;;;16318:32:21;;1243:18:32;16318:32:21;;;;;;;;16012:346;;;:::o;7300:2624:16:-;7496:14;7532:8;11884:7;;;;;11813:86;7532:8;7531:9;:29;;;-1:-1:-1;;;;;;7544:16:16;;;;;;:9;:16;;;;;;;;7531:29;:47;;;-1:-1:-1;;;;;;7564:14:16;;;;;;:9;:14;;;;;;;;7531:47;:72;;;-1:-1:-1;7592:10:16;7582:21;;;;:9;:21;;;;;;;;7531:72;7523:140;;;;-1:-1:-1;;;7523:140:16;;21310:2:32;7523:140:16;;;21292:21:32;21349:2;21329:18;;;21322:30;21388:34;21368:18;;;21361:62;21459:25;21439:18;;;21432:53;21502:19;;7523:140:16;21108:419:32;7523:140:16;7702:7;7682:16;7692:5;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;7682:16:16;:27;;7674:82;;;;-1:-1:-1;;;7674:82:16;;21734:2:32;7674:82:16;;;21716:21:32;21773:2;21753:18;;;21746:30;21812:34;21792:18;;;21785:62;-1:-1:-1;;;21863:18:32;;;21856:40;21913:19;;7674:82:16;21532:406:32;7674:82:16;7785:1;7775:7;:11;7767:75;;;;-1:-1:-1;;;7767:75:16;;22145:2:32;7767:75:16;;;22127:21:32;22184:2;22164:18;;;22157:30;22223:34;22203:18;;;22196:62;-1:-1:-1;;;22274:18:32;;;22267:49;22333:19;;7767:75:16;21943:415:32;7767:75:16;-1:-1:-1;;;;;7926:14:16;;;;;;:9;:14;;;;;;;;7925:15;:36;;;;-1:-1:-1;;;;;;7945:16:16;;;;;;:9;:16;;;;;;;;7944:17;7925:36;:62;;;;-1:-1:-1;7976:10:16;7966:21;;;;:9;:21;;;;;;;;7965:22;7925:62;:88;;;;-1:-1:-1;;;;;;7991:22:16;;8008:4;7991:22;;7925:88;7921:1996;;;8056:7;8041:11;;:22;;8032:84;;;;-1:-1:-1;;;8032:84:16;;22565:2:32;8032:84:16;;;22547:21:32;22604:2;22584:18;;;22577:30;22643:34;22623:18;;;22616:62;-1:-1:-1;;;22694:18:32;;;22687:46;22750:19;;8032:84:16;22363:412:32;8032:84:16;-1:-1:-1;;;;;8141:16:16;;;;;;:9;:16;;;;;;;;8140:17;8131:74;;;;-1:-1:-1;;;8131:74:16;;22982:2:32;8131:74:16;;;22964:21:32;23021:2;23001:18;;;22994:30;23060:34;23040:18;;;23033:62;-1:-1:-1;;;23111:18:32;;;23104:41;23162:19;;8131:74:16;22780:407:32;8131:74:16;-1:-1:-1;;;;;8230:14:16;;;;;;:9;:14;;;;;;;;8229:15;8220:74;;;;-1:-1:-1;;;8220:74:16;;23394:2:32;8220:74:16;;;23376:21:32;23433:2;23413:18;;;23406:30;23472:34;23452:18;;;23445:62;-1:-1:-1;;;23523:18:32;;;23516:43;23576:19;;8220:74:16;23192:409:32;8220:74:16;-1:-1:-1;;;;;8386:20:16;;;;;;:13;:20;;;;;;;;:25;8382:109;;-1:-1:-1;;;;;;8443:20:16;;;;;;:13;:20;;;;;;;;8382:109;-1:-1:-1;;;;;8511:20:16;;;;;;:15;:20;;;;;;;;:25;8507:110;;-1:-1:-1;;;;;;8568:20:16;;;;;;:15;:20;;;;;;;;8507:110;8658:24;;;8633:12;8658:24;;;:14;:24;;;;;;8685:5;;8648:34;;:7;:34;:::i;:::-;:42;;;;:::i;:::-;8633:57;-1:-1:-1;8705:13:16;8721:17;8633:57;8721:7;:17;:::i;:::-;8705:33;-1:-1:-1;8785:7:16;8763:18;8705:33;8763:7;:18;:::i;:::-;:29;8755:83;;;;-1:-1:-1;;;8755:83:16;;24030:2:32;8755:83:16;;;24012:21:32;24069:2;24049:18;;;24042:30;24108:34;24088:18;;;24081:62;-1:-1:-1;;;24159:18:32;;;24152:39;24208:19;;8755:83:16;23828:405:32;8755:83:16;8985:8;:13;;8997:1;8985:13;;:33;;;;-1:-1:-1;9009:9:16;;-1:-1:-1;;;;;9002:16:16;;;9009:9;;9002:16;;8985:33;8981:181;;;9076:13;;9064:8;9047:14;9057:3;-1:-1:-1;;;;;9978:18:21;9951:7;9978:18;;;;;;;;;;;;9877:127;9047:14:16;:25;;;;:::i;:::-;:42;;9039:107;;;;-1:-1:-1;;;9039:107:16;;24440:2:32;9039:107:16;;;24422:21:32;24479:2;24459:18;;;24452:30;24518:34;24498:18;;;24491:62;-1:-1:-1;;;24569:18:32;;;24562:50;24629:19;;9039:107:16;24238:416:32;9039:107:16;9182:8;:13;;9194:1;9182:13;:24;;;;-1:-1:-1;9200:6:16;;;;9199:7;9182:24;9178:410;;;24131:4;9227:28;9978:18:21;;;;;;;;;;;9330:11:16;;9307:34;;9304:116;;;-1:-1:-1;9389:11:16;;9304:116;9468:23;;9444:20;:47;9440:133;;9516:37;9532:20;9516:15;:37::i;:::-;9208:380;9178:410;9604:37;9620:5;9627:3;9632:8;9604:15;:37::i;:::-;9708:46;9724:5;9739:4;9746:7;9708:15;:46::i;:::-;8015:1751;;7921:1996;;;9869:36;9885:5;9892:3;9897:7;9869:15;:36::i;:::-;7382:2542;7300:2624;;;:::o;4765:206:21:-;4851:7;4912:12;4904:6;;;;4896:29;;;;-1:-1:-1;;;4896:29:21;;;;;;;;:::i;:::-;-1:-1:-1;;;4947:5:21;;;4765:206::o;9932:362:16:-;6376:6;:13;;-1:-1:-1;;6376:13:16;6385:4;6376:13;;;:6;10041:40:::1;10059:21:::0;10041:17:::1;:40::i;:::-;10020:61:::0;-1:-1:-1;10098:14:16;;10094:193:::1;;10182:8;::::0;10172:50:::1;::::0;-1:-1:-1;;;10172:50:16;;::::1;::::0;::::1;1270:25:32::0;;;10182:8:16::1;::::0;;::::1;-1:-1:-1::0;;;;;10182:8:16::1;::::0;10172:38:::1;::::0;1243:18:32;;10172:50:16::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;10254:8:16::1;::::0;10242:33:::1;::::0;1270:25:32;;;10254:8:16::1;::::0;;::::1;-1:-1:-1::0;;;;;10254:8:16::1;::::0;-1:-1:-1;10242:33:16::1;::::0;-1:-1:-1;1258:2:32;1243:18;10242:33:16::1;;;;;;;10094:193;-1:-1:-1::0;;6412:6:16;:14;;-1:-1:-1;;6412:14:16;;;9932:362::o;14445:378:21:-;-1:-1:-1;;;;;14529:21:21;;14521:65;;;;-1:-1:-1;;;14521:65:21;;24861:2:32;14521:65:21;;;24843:21:32;24900:2;24880:18;;;24873:30;24939:33;24919:18;;;24912:61;24990:18;;14521:65:21;24659:355:32;14521:65:21;14676:12;;:24;;14693:6;14676:16;:24::i;:::-;14661:12;:39;-1:-1:-1;;;;;14732:18:21;;:9;:18;;;;;;;;;;;:30;;14755:6;14732:22;:30::i;:::-;-1:-1:-1;;;;;14711:18:21;;:9;:18;;;;;;;;;;;:51;;;;14778:37;;1270:25:32;;;14711:18:21;;:9;;14778:37;;1243:18:32;14778:37:21;;;;;;;;14445:378;;:::o;15156:418::-;-1:-1:-1;;;;;15240:21:21;;15232:67;;;;-1:-1:-1;;;15232:67:21;;25221:2:32;15232:67:21;;;25203:21:32;25260:2;25240:18;;;25233:30;25299:34;25279:18;;;25272:62;-1:-1:-1;;;25350:18:32;;;25343:31;25391:19;;15232:67:21;25019:397:32;15232:67:21;15395:68;15418:6;15395:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15395:18:21;;:9;:18;;;;;;;;;;;;:68;:22;:68::i;:::-;-1:-1:-1;;;;;15374:18:21;;:9;:18;;;;;;;;;;:89;15489:12;;:24;;15506:6;15489:16;:24::i;:::-;15474:12;:39;15529:37;;1270:25:32;;;15555:1:21;;-1:-1:-1;;;;;15529:37:21;;;;;1258:2:32;1243:18;15529:37:21;1124:177:32;2118:244:20;1237:6;;-1:-1:-1;;;;;1237:6:20;;;;;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;25623:2:32;2199:73:20::1;::::0;::::1;25605:21:32::0;25662:2;25642:18;;;25635:30;25701:34;25681:18;;;25674:62;-1:-1:-1;;;25752:18:32;;;25745:36;25798:19;;2199:73:20::1;25421:402:32::0;2199:73:20::1;2309:6;::::0;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6:::1;::::0;::::1;;::::0;2288:38:::1;::::0;;;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;2337:17:20;;::::1;;;-1:-1:-1::0;;;;;;2337:17:20;;::::1;::::0;;;::::1;::::0;;2118:244::o;13614:549:21:-;-1:-1:-1;;;;;13720:20:21;;13712:70;;;;-1:-1:-1;;;13712:70:21;;26030:2:32;13712:70:21;;;26012:21:32;26069:2;26049:18;;;26042:30;26108:34;26088:18;;;26081:62;-1:-1:-1;;;26159:18:32;;;26152:35;26204:19;;13712:70:21;25828:401:32;13712:70:21;-1:-1:-1;;;;;13801:23:21;;13793:71;;;;-1:-1:-1;;;13793:71:21;;26436:2:32;13793:71:21;;;26418:21:32;26475:2;26455:18;;;26448:30;26514:34;26494:18;;;26487:62;-1:-1:-1;;;26565:18:32;;;26558:33;26608:19;;13793:71:21;26234:399:32;13793:71:21;13967;13989:6;13967:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13967:17:21;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;13947:17:21;;;:9;:17;;;;;;;;;;;:91;;;;14072:20;;;;;;;:32;;14097:6;14072:24;:32::i;:::-;-1:-1:-1;;;;;14049:20:21;;;:9;:20;;;;;;;;;;;;:55;;;;14120:35;1270:25:32;;;14049:20:21;;14120:35;;;;;;1243:18:32;14120:35:21;1124:177:32;10302:833:16;10480:16;;;10494:1;10480:16;;;;;;;;10377:7;;;;10480:16;10494:1;10480:16;;;;;;;;;;-1:-1:-1;10480:16:16;10456:40;;10525:4;10507;10512:1;10507:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;10507:23:16;;;-1:-1:-1;;;;;10507:23:16;;;;;1289:42;-1:-1:-1;;;;;10551:37:16;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10541:4;10546:1;10541:7;;;;;;;;:::i;:::-;;;;;;:49;-1:-1:-1;;;;;10541:49:16;;;-1:-1:-1;;;;;10541:49:16;;;;;10603:68;10620:4;1289:42;10650:20;10603:8;:68::i;:::-;10711:112;;-1:-1:-1;;;10711:112:16;;10684:24;;1289:42;;10711:46;;:112;;10772:20;;10808:4;;10711:112;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10711:112:16;;;;;;;;;;;;:::i;:::-;11041:8;;10684:139;;-1:-1:-1;1289:42:16;;10862:86;;10963:20;;10998:1;;11014:4;;11041:8;;;-1:-1:-1;;;;;11041:8:16;11065:21;:15;11083:3;11065:21;:::i;:::-;10862:235;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11117:7;11125:1;11117:10;;;;;;;;:::i;:::-;;;;;;;11110:17;;;;10302:833;;;:::o;2867:98:21:-;2925:7;2952:5;2956:1;2952;:5;:::i;14:131:32:-;-1:-1:-1;;;;;89:31:32;;79:42;;69:70;;135:1;132;125:12;150:416;215:6;223;276:2;264:9;255:7;251:23;247:32;244:52;;;292:1;289;282:12;244:52;331:9;318:23;350:31;375:5;350:31;:::i;:::-;400:5;-1:-1:-1;457:2:32;442:18;;429:32;499:15;;492:23;480:36;;470:64;;530:1;527;520:12;470:64;553:7;543:17;;;150:416;;;;;:::o;571:548::-;683:4;712:2;741;730:9;723:21;773:6;767:13;816:6;811:2;800:9;796:18;789:34;841:1;851:140;865:6;862:1;859:13;851:140;;;960:14;;;956:23;;950:30;926:17;;;945:2;922:26;915:66;880:10;;851:140;;;855:3;1040:1;1035:2;1026:6;1015:9;1011:22;1007:31;1000:42;1110:2;1103;1099:7;1094:2;1086:6;1082:15;1078:29;1067:9;1063:45;1059:54;1051:62;;;;571:548;;;;:::o;1306:315::-;1374:6;1382;1435:2;1423:9;1414:7;1410:23;1406:32;1403:52;;;1451:1;1448;1441:12;1403:52;1490:9;1477:23;1509:31;1534:5;1509:31;:::i;:::-;1559:5;1611:2;1596:18;;;;1583:32;;-1:-1:-1;;;1306:315:32:o;1818:156::-;1884:20;;1944:4;1933:16;;1923:27;;1913:55;;1964:1;1961;1954:12;1913:55;1818:156;;;:::o;1979:182::-;2036:6;2089:2;2077:9;2068:7;2064:23;2060:32;2057:52;;;2105:1;2102;2095:12;2057:52;2128:27;2145:9;2128:27;:::i;2166:456::-;2243:6;2251;2259;2312:2;2300:9;2291:7;2287:23;2283:32;2280:52;;;2328:1;2325;2318:12;2280:52;2367:9;2354:23;2386:31;2411:5;2386:31;:::i;:::-;2436:5;-1:-1:-1;2493:2:32;2478:18;;2465:32;2506:33;2465:32;2506:33;:::i;:::-;2166:456;;2558:7;;-1:-1:-1;;;2612:2:32;2597:18;;;;2584:32;;2166:456::o;2627:180::-;2686:6;2739:2;2727:9;2718:7;2714:23;2710:32;2707:52;;;2755:1;2752;2745:12;2707:52;-1:-1:-1;2778:23:32;;2627:180;-1:-1:-1;2627:180:32:o;3209:250::-;3275:6;3283;3336:2;3324:9;3315:7;3311:23;3307:32;3304:52;;;3352:1;3349;3342:12;3304:52;3375:27;3392:9;3375:27;:::i;3464:247::-;3523:6;3576:2;3564:9;3555:7;3551:23;3547:32;3544:52;;;3592:1;3589;3582:12;3544:52;3631:9;3618:23;3650:31;3675:5;3650:31;:::i;3716:317::-;3782:6;3790;3843:2;3831:9;3822:7;3818:23;3814:32;3811:52;;;3859:1;3856;3849:12;3811:52;3898:9;3885:23;3917:31;3942:5;3917:31;:::i;:::-;3967:5;-1:-1:-1;3991:36:32;4023:2;4008:18;;3991:36;:::i;:::-;3981:46;;3716:317;;;;;:::o;4434:388::-;4502:6;4510;4563:2;4551:9;4542:7;4538:23;4534:32;4531:52;;;4579:1;4576;4569:12;4531:52;4618:9;4605:23;4637:31;4662:5;4637:31;:::i;:::-;4687:5;-1:-1:-1;4744:2:32;4729:18;;4716:32;4757:33;4716:32;4757:33;:::i;4827:356::-;5029:2;5011:21;;;5048:18;;;5041:30;5107:34;5102:2;5087:18;;5080:62;5174:2;5159:18;;4827:356::o;5188:380::-;5267:1;5263:12;;;;5310;;;5331:61;;5385:4;5377:6;5373:17;5363:27;;5331:61;5438:2;5430:6;5427:14;5407:18;5404:38;5401:161;;5484:10;5479:3;5475:20;5472:1;5465:31;5519:4;5516:1;5509:15;5547:4;5544:1;5537:15;5401:161;;5188:380;;;:::o;6005:127::-;6066:10;6061:3;6057:20;6054:1;6047:31;6097:4;6094:1;6087:15;6121:4;6118:1;6111:15;6137:422;6226:1;6269:5;6226:1;6283:270;6304:7;6294:8;6291:21;6283:270;;;6363:4;6359:1;6355:6;6351:17;6345:4;6342:27;6339:53;;;6372:18;;:::i;:::-;6422:7;6412:8;6408:22;6405:55;;;6442:16;;;;6405:55;6521:22;;;;6481:15;;;;6283:270;;;6287:3;6137:422;;;;;:::o;6564:806::-;6613:5;6643:8;6633:80;;-1:-1:-1;6684:1:32;6698:5;;6633:80;6732:4;6722:76;;-1:-1:-1;6769:1:32;6783:5;;6722:76;6814:4;6832:1;6827:59;;;;6900:1;6895:130;;;;6807:218;;6827:59;6857:1;6848:10;;6871:5;;;6895:130;6932:3;6922:8;6919:17;6916:43;;;6939:18;;:::i;:::-;-1:-1:-1;;6995:1:32;6981:16;;7010:5;;6807:218;;7109:2;7099:8;7096:16;7090:3;7084:4;7081:13;7077:36;7071:2;7061:8;7058:16;7053:2;7047:4;7044:12;7040:35;7037:77;7034:159;;;-1:-1:-1;7146:19:32;;;7178:5;;7034:159;7225:34;7250:8;7244:4;7225:34;:::i;:::-;7295:6;7291:1;7287:6;7283:19;7274:7;7271:32;7268:58;;;7306:18;;:::i;:::-;7344:20;;6564:806;-1:-1:-1;;;6564:806:32:o;7375:140::-;7433:5;7462:47;7503:4;7493:8;7489:19;7483:4;7462:47;:::i;7520:168::-;7593:9;;;7624;;7641:15;;;7635:22;;7621:37;7611:71;;7662:18;;:::i;8123:425::-;8325:2;8307:21;;;8364:2;8344:18;;;8337:30;8403:34;8398:2;8383:18;;8376:62;8474:31;8469:2;8454:18;;8447:59;8538:3;8523:19;;8123:425::o;11587:184::-;11657:6;11710:2;11698:9;11689:7;11685:23;11681:32;11678:52;;;11726:1;11723;11716:12;11678:52;-1:-1:-1;11749:16:32;;11587:184;-1:-1:-1;11587:184:32:o;12948:125::-;13013:9;;;13034:10;;;13031:36;;;13047:18;;:::i;13078:128::-;13145:9;;;13166:11;;;13163:37;;;13180:18;;:::i;23606:217::-;23646:1;23672;23662:132;;23716:10;23711:3;23707:20;23704:1;23697:31;23751:4;23748:1;23741:15;23779:4;23776:1;23769:15;23662:132;-1:-1:-1;23808:9:32;;23606:217::o;26638:127::-;26699:10;26694:3;26690:20;26687:1;26680:31;26730:4;26727:1;26720:15;26754:4;26751:1;26744:15;26770:127;26831:10;26826:3;26822:20;26819:1;26812:31;26862:4;26859:1;26852:15;26886:4;26883:1;26876:15;26902:251;26972:6;27025:2;27013:9;27004:7;27000:23;26996:32;26993:52;;;27041:1;27038;27031:12;26993:52;27073:9;27067:16;27092:31;27117:5;27092:31;:::i;27158:461::-;27211:3;27249:5;27243:12;27276:6;27271:3;27264:19;27302:4;27331:2;27326:3;27322:12;27315:19;;27368:2;27361:5;27357:14;27389:1;27399:195;27413:6;27410:1;27407:13;27399:195;;;27478:13;;-1:-1:-1;;;;;27474:39:32;27462:52;;27534:12;;;;27569:15;;;;27510:1;27428:9;27399:195;;;-1:-1:-1;27610:3:32;;27158:461;-1:-1:-1;;;;;27158:461:32:o;27624:332::-;27831:6;27820:9;27813:25;27874:2;27869;27858:9;27854:18;27847:30;27794:4;27894:56;27946:2;27935:9;27931:18;27923:6;27894:56;:::i;:::-;27886:64;27624:332;-1:-1:-1;;;;27624:332:32:o;27961:1105::-;28056:6;28087:2;28130;28118:9;28109:7;28105:23;28101:32;28098:52;;;28146:1;28143;28136:12;28098:52;28179:9;28173:16;28208:18;28249:2;28241:6;28238:14;28235:34;;;28265:1;28262;28255:12;28235:34;28303:6;28292:9;28288:22;28278:32;;28348:7;28341:4;28337:2;28333:13;28329:27;28319:55;;28370:1;28367;28360:12;28319:55;28399:2;28393:9;28421:2;28417;28414:10;28411:36;;;28427:18;;:::i;:::-;28473:2;28470:1;28466:10;28505:2;28499:9;28568:2;28564:7;28559:2;28555;28551:11;28547:25;28539:6;28535:38;28623:6;28611:10;28608:22;28603:2;28591:10;28588:18;28585:46;28582:72;;;28634:18;;:::i;:::-;28670:2;28663:22;28720:18;;;28754:15;;;;-1:-1:-1;28796:11:32;;;28792:20;;;28824:19;;;28821:39;;;28856:1;28853;28846:12;28821:39;28880:11;;;;28900:135;28916:6;28911:3;28908:15;28900:135;;;28982:10;;28970:23;;28933:12;;;;29013;;;;28900:135;;;29054:6;27961:1105;-1:-1:-1;;;;;;;;27961:1105:32:o;29071:582::-;29370:6;29359:9;29352:25;29413:6;29408:2;29397:9;29393:18;29386:34;29456:3;29451:2;29440:9;29436:18;29429:31;29333:4;29477:57;29529:3;29518:9;29514:19;29506:6;29477:57;:::i;:::-;-1:-1:-1;;;;;29570:32:32;;;;29565:2;29550:18;;29543:60;-1:-1:-1;29634:3:32;29619:19;29612:35;29469:65;29071:582;-1:-1:-1;;;29071:582:32:o", "linkReferences": {}, "immutableReferences": { "25569": [ @@ -1245,33 +1245,1532 @@ "vesting()": "44c63eec", "whitelist(address)": "9b19251a" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"totalSupplyInput\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"nameInput\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbolInput\",\"type\":\"string\"},{\"internalType\":\"uint8\",\"name\":\"decimalsInput\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"maxWalletSizeInput\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxTxAmountInput\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"DepositorUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"MaxTxUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"MaxWalletUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"TaxesPermanentlyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_treasury\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"TransferTax\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"TreasuryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_state\",\"type\":\"bool\"}],\"name\":\"UpdatedAuthorizedWallets\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"VestingUpdated\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"UNISWAP_V2_PAIR\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNIV2_ROUTER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_taxType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"_bpt\",\"type\":\"uint256\"}],\"name\":\"adjustBasisPointsTax\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"authorized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"basisPointsTax\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"blacklist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_wallet\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"depositor\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"distributeRoyaltiesToTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getContractTokenBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_wallet\",\"type\":\"address\"}],\"name\":\"getIndustryTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"numTokens\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"numIndustryTokens\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"numDifference\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lifetime\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_wallet\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"industryBurn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_wallet\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"industryMint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"industryTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"lifetimeIndustryTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"lock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxContractTokenBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxTxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxWalletSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_wallet\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_wallet\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_blacklist\",\"type\":\"bool\"}],\"name\":\"modifyBlacklist\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_wallet\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_whitelisted\",\"type\":\"bool\"}],\"name\":\"modifyWhitelist\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_key\",\"type\":\"uint256\"}],\"name\":\"permanentlyRemoveTaxes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"receiverTaxType\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"senderTaxType\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_depositor\",\"type\":\"address\"}],\"name\":\"setDepositor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_treasury\",\"type\":\"address\"}],\"name\":\"setTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_vesting\",\"type\":\"address\"}],\"name\":\"setVesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"taxesAccrued\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"taxesRemoved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"treasury\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_state\",\"type\":\"bool\"}],\"name\":\"updateAuthorizedList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"updateMaxContractTokenBalance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxTxAmount\",\"type\":\"uint256\"}],\"name\":\"updateMaxTxAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_maxWalletSize\",\"type\":\"uint256\"}],\"name\":\"updateMaxWalletSize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_receiver\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"_taxType\",\"type\":\"uint8\"}],\"name\":\"updateReceiverTaxType\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"_taxType\",\"type\":\"uint8\"}],\"name\":\"updateSenderTaxType\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"vesting\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"whitelist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"The TaxToken is responsible for supporting generic ERC20 functionality including ERC20Pausable functionality. The TaxToken will generate taxes on transfer() and transferFrom() calls for non-whitelisted addresses. The Admin can specify the tax fee in basis points for buys, sells, and transfers. The TaxToken will forward all taxes generated to a Treasury\",\"events\":{\"Paused(address)\":{\"details\":\"Emitted when the pause is triggered by `account`.\"},\"TransferTax(address,uint256)\":{\"details\":\"Emitted during transferFrom().\"},\"Unpaused(address)\":{\"details\":\"Emitted when the pause is lifted by `account`.\"},\"UpdatedAuthorizedWallets(address,bool)\":{\"details\":\"Emitted when updating authorized addresses (users or contracts).\"}},\"kind\":\"dev\",\"methods\":{\"adjustBasisPointsTax(uint8,uint256)\":{\"details\":\"Must be lower than 2000 which is equivalent to 20%.\",\"params\":{\"_bpt\":\"This is the corresponding percentage that is taken for royalties. 1200 = 12%.\",\"_taxType\":\"This value is the tax type. Has to be 0, 1, or 2.\"}},\"allowance(address,address)\":{\"details\":\"See {IERC20-allowance}.\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}. Requirements: - `spender` cannot be the zero address.\"},\"balanceOf(address)\":{\"details\":\"See {IERC20-balanceOf}.\"},\"burn(address,uint256)\":{\"details\":\"Does not truncate so amount needs to include the 18 decimal points.\",\"params\":{\"_amount\":\"the amount of tokens we're burning.\",\"_wallet\":\"the account we're burning tokens from.\"}},\"constructor\":{\"details\":\"_paused - ERC20 Pausable global state variable, initial state is not paused (\\\"unpaused\\\").The \\\"owner\\\" is the \\\"admin\\\" of this contract.Initial liquidity, allocated entirely to \\\"owner\\\".\",\"params\":{\"decimalsInput\":\"The decimal precision of this token.\",\"maxTxAmountInput\":\"The maximum tx size (this value is multipled by 10**decimals in constructor).\",\"maxWalletSizeInput\":\"The maximum wallet size (this value is multipled by 10**decimals in constructor).\",\"nameInput\":\"The name of this token.\",\"symbolInput\":\"The symbol of this token.\",\"totalSupplyInput\":\"The total supply of this token (this value is multipled by 10**decimals in constructor).\"}},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.\"},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.\"},\"getContractTokenBalance()\":{\"returns\":{\"_0\":\"uint256 the num of tokens stored in this contract.\"}},\"getIndustryTokens(address)\":{\"details\":\"This function is for the front end to pull industry data for a specific wallet.\",\"returns\":{\"lifetime\":\"the amount of industry tokens that have been minted to _wallet in total.\",\"numDifference\":\"the amount of tokens they have that are NOT industry tokens.\",\"numIndustryTokens\":\"the amount of tokens they hold that is industry tokens.\",\"numTokens\":\"the amount of taxTokens the _wallet holds.\"}},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.\"},\"industryBurn(address,uint256)\":{\"details\":\"Does not truncate so amount needs to include the 18 decimal points. \",\"params\":{\"_amount\":\"the amount of tokens we're burning.\",\"_wallet\":\"the account we're burning tokens from.\"}},\"industryMint(address,uint256)\":{\"details\":\"Any tokens minted through this process can only be used inside of the NFT marketplace to mint new NFTS (can only be burned).Users may still buy and sell new or prior existing non-minted tokens but these will be soulbound. Does not truncate so amount needs to include the 18 decimal points.\",\"params\":{\"_amount\":\"is the amount of tokens to be minted into _wallet.\",\"_wallet\":\"is the wallet address that will recieve these minted tokens.\"}},\"mint(address,uint256)\":{\"details\":\"Does not truncate so amount needs to include the 18 decimal points. Needed too add new tokens to supply if we want to get listed on multiple exchanges.\",\"params\":{\"_amount\":\"the amount of tokens we're minting.\",\"_wallet\":\"the account we're minting tokens to.\"}},\"modifyBlacklist(address,bool)\":{\"details\":\"Blacklisted wallets cannot perform transfer() or transferFrom(). unless it's to or from a whitelisted wallet.\",\"params\":{\"_blacklist\":\"use True to blacklist a wallet, otherwise use False to remove wallet from blacklist.\",\"_wallet\":\"is the wallet address that will have their blacklist status modified.\"}},\"modifyWhitelist(address,bool)\":{\"details\":\"Whitelisted wallets are not affected by maxWalletSize, maxTxAmount, or taxes.\",\"params\":{\"_wallet\":\"is the wallet address that will have their whitelist status modified.\",\"_whitelisted\":\"use True to whitelist a wallet, otherwise use False to remove wallet from whitelist.\"}},\"name()\":{\"details\":\"Returns the name of the token.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"pause()\":{\"details\":\"Contract MUST NOT be paused to call this, caller must be \\\"owner\\\".\"},\"paused()\":{\"returns\":{\"_0\":\"_paused Indicates whether the contract is paused (true) or not paused (false).\"}},\"permanentlyRemoveTaxes(uint256)\":{\"details\":\"An input is required here for sanity-check, given importance of this function call (and irreversible nature).\",\"params\":{\"_key\":\"This value MUST equal 42 for function to execute.\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"setDepositor(address)\":{\"params\":{\"_depositor\":\"is the contract address of the depositor contract.\"}},\"setTreasury(address)\":{\"params\":{\"_treasury\":\"is the contract address of the treasury.\"}},\"setVesting(address)\":{\"params\":{\"_vesting\":\"is the contract address of the vesting.\"}},\"symbol()\":{\"details\":\"Returns the symbol of the token, usually a shorter version of the name.\"},\"totalSupply()\":{\"details\":\"See {IERC20-totalSupply}.\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"unpause()\":{\"details\":\"Contract MUST be paused to call this, caller must be \\\"owner\\\".\"},\"updateAuthorizedList(address,bool)\":{\"params\":{\"_account\":\"is the address that will change from authorized or not.\",\"_state\":\"(True or False) If true, _account is authorized, if false, _account is not authorized.\"}},\"updateMaxContractTokenBalance(uint256)\":{\"params\":{\"_amount\":\"is the amount of tokens that need to be hit to distribute.\"}},\"updateMaxTxAmount(uint256)\":{\"details\":\"Does not affect whitelisted wallets.\",\"params\":{\"_maxTxAmount\":\"is the max amount of tokens that can be transacted at one time for a non-whitelisted wallet.\"}},\"updateMaxWalletSize(uint256)\":{\"details\":\"Does not affect whitelisted wallets.\",\"params\":{\"_maxWalletSize\":\"is the max amount of tokens that can be held on a non-whitelisted wallet.\"}},\"updateReceiverTaxType(address,uint8)\":{\"details\":\"_taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send.\",\"params\":{\"_receiver\":\"This value is the PAIR address.\",\"_taxType\":\"This value must be be 0, 1, or 2. Best to correspond value with the SELL tax type.\"}},\"updateSenderTaxType(address,uint8)\":{\"details\":\"_taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send.\",\"params\":{\"_sender\":\"This value is the PAIR address.\",\"_taxType\":\"This value must be be 0, 1, or 2. Best to correspond value with the BUY tax type.\"}}},\"stateVariables\":{\"authorized\":{\"details\":\"Mapping between taxType and basisPoints (taxed).\"},\"basisPointsTax\":{\"details\":\"Identifies tax type for _to of transfer() call.\"},\"lifetimeIndustryTokens\":{\"details\":\"Mapping of how many locked tokens exist in a wallet (In 18 decimal format).\"},\"maxWalletSize\":{\"details\":\"Once true, taxes are permanently set to 0 and CAN NOT be increased in the future.\"},\"receiverTaxType\":{\"details\":\"Identifies tax type for msg.sender of transfer() call.\"},\"senderTaxType\":{\"details\":\"Any transfer that involves a whitelisted address, will not incur a tax.\"},\"taxesAccrued\":{\"details\":\"Mapping of which wallets are authorized to call specific functions.\"},\"whitelist\":{\"details\":\"If an address is blacklisted, they cannot perform transfer() or transferFrom().\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"adjustBasisPointsTax(uint8,uint256)\":{\"notice\":\"Used to map the tax type 0, 1 or 2 with it's corresponding tax percentage.\"},\"burn(address,uint256)\":{\"notice\":\"This function will destroy existing tokens and deduct them from total supply.\"},\"constructor\":{\"notice\":\"Initializes the TaxToken.\"},\"getContractTokenBalance()\":{\"notice\":\"This functions returns the number of taxToken are inside the contract. NOTE: These tokens have most likely been accrued from taxes.\"},\"getIndustryTokens(address)\":{\"notice\":\"This function is a VIEW function that returns the amount of industry tokens, full balance, and normal tokens a wallet has.\"},\"industryBurn(address,uint256)\":{\"notice\":\"This function will destroy existing tokens and deduct them from total supply.\"},\"industryMint(address,uint256)\":{\"notice\":\"This function is used to mint tokens and log their creation to the industry wallet mappings.\"},\"mint(address,uint256)\":{\"notice\":\"This function will create new tokens and adding them to total supply.\"},\"modifyBlacklist(address,bool)\":{\"notice\":\"This function is used to add or remove wallets from the blacklist.\"},\"modifyWhitelist(address,bool)\":{\"notice\":\"This function is used to add wallets to the whitelist mapping.\"},\"pause()\":{\"notice\":\"Pause the contract, blocks transfer() and transferFrom().\"},\"permanentlyRemoveTaxes(uint256)\":{\"notice\":\"Permanently remove taxes from this contract.\"},\"setDepositor(address)\":{\"notice\":\"Set the depositor (contract) which is the backend contract for the dapp.\"},\"setTreasury(address)\":{\"notice\":\"Set the treasury (contract) which receives taxes generated through transfer() and transferFrom().\"},\"setVesting(address)\":{\"notice\":\"Set the vesting (contract) which is then whitelisted and minted the amount needed for vesting.\"},\"unpause()\":{\"notice\":\"Unpause the contract.\"},\"updateAuthorizedList(address,bool)\":{\"notice\":\"This is used to change the owner's wallet address. Used to give ownership to another wallet.\"},\"updateMaxContractTokenBalance(uint256)\":{\"notice\":\"Updates the maxContractTokebBalance var which is used to set the distribution threshhold of royalties to the Treasury.\"},\"updateMaxTxAmount(uint256)\":{\"notice\":\"Adjust maxTxAmount value (maximum amount transferrable in a single transaction).\"},\"updateMaxWalletSize(uint256)\":{\"notice\":\"This function is used to set the max amount of tokens a wallet can hold.\"},\"updateReceiverTaxType(address,uint8)\":{\"notice\":\"Used to store the LP Pair to differ type of transaction. Will be used to mark a SELL.\"},\"updateSenderTaxType(address,uint8)\":{\"notice\":\"Used to store the LP Pair to differ type of transaction. Will be used to mark a BUY.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/TaxToken.sol\":\"TaxToken\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/TaxToken.sol\":{\"keccak256\":\"0x8027c905e28f0b030a25b3c0fb16c9bd2e100ba07029be13c815977da0a8f014\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8934f9517322735c1bff0c0c5fc963460ee10fb61cc3482c77d2232a0104ebda\",\"dweb:/ipfs/Qmf6mrb3BE4dAnvLZpneafJbHRJkGTDrRQAc8gtfVjijx6\"]},\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]},\"src/interfaces/ERC20.sol\":{\"keccak256\":\"0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd\",\"dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/interfaces/IUniswapV2Factory.sol\":{\"keccak256\":\"0xc47e18780475626ac1da1437417e84442c2328eaa2726669bd4d84d46f64f275\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://d0b18cef7206904c41fff4113a98513828cb5e393de57a6b6330dd1010498606\",\"dweb:/ipfs/QmRCyXnd2bvUyK39TAX9ddm7Ra7hWdMB7b2tqZeytnDyFm\"]},\"src/interfaces/IUniswapV2Router.sol\":{\"keccak256\":\"0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee\",\"dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5\"]},\"src/interfaces/InterfacesAggregated.sol\":{\"keccak256\":\"0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128\",\"dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "totalSupplyInput", + "type": "uint256" + }, + { + "internalType": "string", + "name": "nameInput", + "type": "string" + }, + { + "internalType": "string", + "name": "symbolInput", + "type": "string" + }, + { + "internalType": "uint8", + "name": "decimalsInput", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "maxWalletSizeInput", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxTxAmountInput", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "spender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Approval", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + }, + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "DepositorUpdated", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "MaxTxUpdated", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "MaxWalletUpdated", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "previousOwner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "newOwner", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "OwnershipTransferred", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "Paused", + "anonymous": false + }, + { + "inputs": [], + "type": "event", + "name": "TaxesPermanentlyRemoved", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "to", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Transfer", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_treasury", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "TransferTax", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + }, + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "TreasuryUpdated", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "Unpaused", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address", + "indexed": true + }, + { + "internalType": "bool", + "name": "_state", + "type": "bool", + "indexed": false + } + ], + "type": "event", + "name": "UpdatedAuthorizedWallets", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + }, + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "VestingUpdated", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "UNISWAP_V2_PAIR", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "UNIV2_ROUTER", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "_taxType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "_bpt", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "adjustBasisPointsTax" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "authorized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function", + "name": "basisPointsTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "blacklist", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "burn" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "depositor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "distributeRoyaltiesToTreasury" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "getContractTokenBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getIndustryTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "numTokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numIndustryTokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numDifference", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lifetime", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "industryBurn" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "industryMint" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "industryTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "lifetimeIndustryTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "lock" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "maxContractTokenBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "maxTxAmount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "maxWalletSize", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "mint" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "bool", + "name": "_blacklist", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "modifyBlacklist" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "bool", + "name": "_whitelisted", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "modifyWhitelist" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "pause" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_key", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "permanentlyRemoveTaxes" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "receiverTaxType", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "renounceOwnership" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "senderTaxType", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_depositor", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setDepositor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_treasury", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setTreasury" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_vesting", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setVesting" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function", + "name": "taxesAccrued", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "taxesRemoved", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferOwnership" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "treasury", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "unpause" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "bool", + "name": "_state", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateAuthorizedList" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateMaxContractTokenBalance" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_maxTxAmount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateMaxTxAmount" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_maxWalletSize", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateMaxWalletSize" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "uint8", + "name": "_taxType", + "type": "uint8" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateReceiverTaxType" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "internalType": "uint8", + "name": "_taxType", + "type": "uint8" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateSenderTaxType" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "vesting", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "whitelist", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "adjustBasisPointsTax(uint8,uint256)": { + "details": "Must be lower than 2000 which is equivalent to 20%.", + "params": { + "_bpt": "This is the corresponding percentage that is taken for royalties. 1200 = 12%.", + "_taxType": "This value is the tax type. Has to be 0, 1, or 2." + } + }, + "allowance(address,address)": { + "details": "See {IERC20-allowance}." + }, + "approve(address,uint256)": { + "details": "See {IERC20-approve}. Requirements: - `spender` cannot be the zero address." + }, + "balanceOf(address)": { + "details": "See {IERC20-balanceOf}." + }, + "burn(address,uint256)": { + "details": "Does not truncate so amount needs to include the 18 decimal points.", + "params": { + "_amount": "the amount of tokens we're burning.", + "_wallet": "the account we're burning tokens from." + } + }, + "constructor": { + "details": "_paused - ERC20 Pausable global state variable, initial state is not paused (\"unpaused\").The \"owner\" is the \"admin\" of this contract.Initial liquidity, allocated entirely to \"owner\".", + "params": { + "decimalsInput": "The decimal precision of this token.", + "maxTxAmountInput": "The maximum tx size (this value is multipled by 10**decimals in constructor).", + "maxWalletSizeInput": "The maximum wallet size (this value is multipled by 10**decimals in constructor).", + "nameInput": "The name of this token.", + "symbolInput": "The symbol of this token.", + "totalSupplyInput": "The total supply of this token (this value is multipled by 10**decimals in constructor)." + } + }, + "decimals()": { + "details": "Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}." + }, + "decreaseAllowance(address,uint256)": { + "details": "Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`." + }, + "getContractTokenBalance()": { + "returns": { + "_0": "uint256 the num of tokens stored in this contract." + } + }, + "getIndustryTokens(address)": { + "details": "This function is for the front end to pull industry data for a specific wallet.", + "returns": { + "lifetime": "the amount of industry tokens that have been minted to _wallet in total.", + "numDifference": "the amount of tokens they have that are NOT industry tokens.", + "numIndustryTokens": "the amount of tokens they hold that is industry tokens.", + "numTokens": "the amount of taxTokens the _wallet holds." + } + }, + "increaseAllowance(address,uint256)": { + "details": "Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address." + }, + "industryBurn(address,uint256)": { + "details": "Does not truncate so amount needs to include the 18 decimal points. ", + "params": { + "_amount": "the amount of tokens we're burning.", + "_wallet": "the account we're burning tokens from." + } + }, + "industryMint(address,uint256)": { + "details": "Any tokens minted through this process can only be used inside of the NFT marketplace to mint new NFTS (can only be burned).Users may still buy and sell new or prior existing non-minted tokens but these will be soulbound. Does not truncate so amount needs to include the 18 decimal points.", + "params": { + "_amount": "is the amount of tokens to be minted into _wallet.", + "_wallet": "is the wallet address that will recieve these minted tokens." + } + }, + "mint(address,uint256)": { + "details": "Does not truncate so amount needs to include the 18 decimal points. Needed too add new tokens to supply if we want to get listed on multiple exchanges.", + "params": { + "_amount": "the amount of tokens we're minting.", + "_wallet": "the account we're minting tokens to." + } + }, + "modifyBlacklist(address,bool)": { + "details": "Blacklisted wallets cannot perform transfer() or transferFrom(). unless it's to or from a whitelisted wallet.", + "params": { + "_blacklist": "use True to blacklist a wallet, otherwise use False to remove wallet from blacklist.", + "_wallet": "is the wallet address that will have their blacklist status modified." + } + }, + "modifyWhitelist(address,bool)": { + "details": "Whitelisted wallets are not affected by maxWalletSize, maxTxAmount, or taxes.", + "params": { + "_wallet": "is the wallet address that will have their whitelist status modified.", + "_whitelisted": "use True to whitelist a wallet, otherwise use False to remove wallet from whitelist." + } + }, + "name()": { + "details": "Returns the name of the token." + }, + "owner()": { + "details": "Returns the address of the current owner." + }, + "pause()": { + "details": "Contract MUST NOT be paused to call this, caller must be \"owner\"." + }, + "paused()": { + "returns": { + "_0": "_paused Indicates whether the contract is paused (true) or not paused (false)." + } + }, + "permanentlyRemoveTaxes(uint256)": { + "details": "An input is required here for sanity-check, given importance of this function call (and irreversible nature).", + "params": { + "_key": "This value MUST equal 42 for function to execute." + } + }, + "renounceOwnership()": { + "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + }, + "setDepositor(address)": { + "params": { + "_depositor": "is the contract address of the depositor contract." + } + }, + "setTreasury(address)": { + "params": { + "_treasury": "is the contract address of the treasury." + } + }, + "setVesting(address)": { + "params": { + "_vesting": "is the contract address of the vesting." + } + }, + "symbol()": { + "details": "Returns the symbol of the token, usually a shorter version of the name." + }, + "totalSupply()": { + "details": "See {IERC20-totalSupply}." + }, + "transfer(address,uint256)": { + "details": "See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`." + }, + "transferFrom(address,address,uint256)": { + "details": "See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`." + }, + "transferOwnership(address)": { + "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." + }, + "unpause()": { + "details": "Contract MUST be paused to call this, caller must be \"owner\"." + }, + "updateAuthorizedList(address,bool)": { + "params": { + "_account": "is the address that will change from authorized or not.", + "_state": "(True or False) If true, _account is authorized, if false, _account is not authorized." + } + }, + "updateMaxContractTokenBalance(uint256)": { + "params": { + "_amount": "is the amount of tokens that need to be hit to distribute." + } + }, + "updateMaxTxAmount(uint256)": { + "details": "Does not affect whitelisted wallets.", + "params": { + "_maxTxAmount": "is the max amount of tokens that can be transacted at one time for a non-whitelisted wallet." + } + }, + "updateMaxWalletSize(uint256)": { + "details": "Does not affect whitelisted wallets.", + "params": { + "_maxWalletSize": "is the max amount of tokens that can be held on a non-whitelisted wallet." + } + }, + "updateReceiverTaxType(address,uint8)": { + "details": "_taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send.", + "params": { + "_receiver": "This value is the PAIR address.", + "_taxType": "This value must be be 0, 1, or 2. Best to correspond value with the SELL tax type." + } + }, + "updateSenderTaxType(address,uint8)": { + "details": "_taxType must be lower than 3 because there can only be 3 tax types; buy, sell, & send.", + "params": { + "_sender": "This value is the PAIR address.", + "_taxType": "This value must be be 0, 1, or 2. Best to correspond value with the BUY tax type." + } + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": { + "adjustBasisPointsTax(uint8,uint256)": { + "notice": "Used to map the tax type 0, 1 or 2 with it's corresponding tax percentage." + }, + "burn(address,uint256)": { + "notice": "This function will destroy existing tokens and deduct them from total supply." + }, + "constructor": { + "notice": "Initializes the TaxToken." + }, + "getContractTokenBalance()": { + "notice": "This functions returns the number of taxToken are inside the contract. NOTE: These tokens have most likely been accrued from taxes." + }, + "getIndustryTokens(address)": { + "notice": "This function is a VIEW function that returns the amount of industry tokens, full balance, and normal tokens a wallet has." + }, + "industryBurn(address,uint256)": { + "notice": "This function will destroy existing tokens and deduct them from total supply." + }, + "industryMint(address,uint256)": { + "notice": "This function is used to mint tokens and log their creation to the industry wallet mappings." + }, + "mint(address,uint256)": { + "notice": "This function will create new tokens and adding them to total supply." + }, + "modifyBlacklist(address,bool)": { + "notice": "This function is used to add or remove wallets from the blacklist." + }, + "modifyWhitelist(address,bool)": { + "notice": "This function is used to add wallets to the whitelist mapping." + }, + "pause()": { + "notice": "Pause the contract, blocks transfer() and transferFrom()." + }, + "permanentlyRemoveTaxes(uint256)": { + "notice": "Permanently remove taxes from this contract." + }, + "setDepositor(address)": { + "notice": "Set the depositor (contract) which is the backend contract for the dapp." + }, + "setTreasury(address)": { + "notice": "Set the treasury (contract) which receives taxes generated through transfer() and transferFrom()." + }, + "setVesting(address)": { + "notice": "Set the vesting (contract) which is then whitelisted and minted the amount needed for vesting." + }, + "unpause()": { + "notice": "Unpause the contract." + }, + "updateAuthorizedList(address,bool)": { + "notice": "This is used to change the owner's wallet address. Used to give ownership to another wallet." + }, + "updateMaxContractTokenBalance(uint256)": { + "notice": "Updates the maxContractTokebBalance var which is used to set the distribution threshhold of royalties to the Treasury." + }, + "updateMaxTxAmount(uint256)": { + "notice": "Adjust maxTxAmount value (maximum amount transferrable in a single transaction)." + }, + "updateMaxWalletSize(uint256)": { + "notice": "This function is used to set the max amount of tokens a wallet can hold." + }, + "updateReceiverTaxType(address,uint8)": { + "notice": "Used to store the LP Pair to differ type of transaction. Will be used to mark a SELL." + }, + "updateSenderTaxType(address,uint8)": { + "notice": "Used to store the LP Pair to differ type of transaction. Will be used to mark a BUY." + } + }, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/TaxToken.sol": "TaxToken" + }, + "libraries": {} + }, + "sources": { + "src/TaxToken.sol": { + "keccak256": "0x8027c905e28f0b030a25b3c0fb16c9bd2e100ba07029be13c815977da0a8f014", + "urls": [ + "bzz-raw://8934f9517322735c1bff0c0c5fc963460ee10fb61cc3482c77d2232a0104ebda", + "dweb:/ipfs/Qmf6mrb3BE4dAnvLZpneafJbHRJkGTDrRQAc8gtfVjijx6" + ], + "license": "MIT" + }, + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/extensions/Ownable.sol": { + "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", + "urls": [ + "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", + "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" + ], + "license": "MIT" + }, + "src/interfaces/ERC20.sol": { + "keccak256": "0x66faf9d1ffb72b9815ca0361cc51dcee221d71bf77d1fbc333764ec45ba4625d", + "urls": [ + "bzz-raw://7b8e9fa1d14f1f05c268ea595f8f17b6e7a600b050ca5b28b18cce98a18500bd", + "dweb:/ipfs/Qmdi66SsYxDycpGFRtJZ2eJy5znGp6JKwGsHd4BEkWswka" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IUniswapV2Factory.sol": { + "keccak256": "0xc47e18780475626ac1da1437417e84442c2328eaa2726669bd4d84d46f64f275", + "urls": [ + "bzz-raw://d0b18cef7206904c41fff4113a98513828cb5e393de57a6b6330dd1010498606", + "dweb:/ipfs/QmRCyXnd2bvUyK39TAX9ddm7Ra7hWdMB7b2tqZeytnDyFm" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IUniswapV2Router.sol": { + "keccak256": "0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4", + "urls": [ + "bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee", + "dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/InterfacesAggregated.sol": { + "keccak256": "0xd5e582438e596ce5ce33c207884e973a7b8717212aa9fd21909b8b2d9c467095", + "urls": [ + "bzz-raw://86a732fe5eb860bed3fc631feb767e2b3145f510c082e64dd062e9b2fca66128", + "dweb:/ipfs/QmcrieewKPRseM8yyGH529sYqb5A4RGDoZsg5F9tDnnnmr" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/TaxToken.sol", "id": 27007, "exportedSymbols": { "Context": [ - 28107 + 28122 ], "ERC20": [ - 29066 + 29081 ], "IERC20": [ - 29143 + 29158 ], "ITreasury": [ - 29867 + 29882 ], "IUniswapV2Factory": [ - 29214 + 29229 ], "IUniswapV2Router02": [ - 29849 + 29864 ], "IVesting": [ - 29873 + 29888 ], "Ownable": [ - 28255 + 28270 ], "TaxToken": [ 27006 @@ -1284,6 +2783,7 @@ "id": 25533, "nodeType": "PragmaDirective", "src": "32:23:16", + "nodes": [], "literals": [ "solidity", "^", @@ -1295,11 +2795,12 @@ "id": 25535, "nodeType": "ImportDirective", "src": "59:49:16", + "nodes": [], "absolutePath": "src/interfaces/IERC20.sol", "file": "./interfaces/IERC20.sol", "nameLocation": "-1:-1:-1", "scope": 27007, - "sourceUnit": 29152, + "sourceUnit": 29167, "symbolAliases": [ { "foreign": { @@ -1307,7 +2808,7 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "68:6:16", "typeDescriptions": {} }, @@ -1320,11 +2821,12 @@ "id": 25538, "nodeType": "ImportDirective", "src": "110:76:16", + "nodes": [], "absolutePath": "src/interfaces/InterfacesAggregated.sol", "file": "./interfaces/InterfacesAggregated.sol", "nameLocation": "-1:-1:-1", "scope": 27007, - "sourceUnit": 29874, + "sourceUnit": 29889, "symbolAliases": [ { "foreign": { @@ -1332,7 +2834,7 @@ "name": "ITreasury", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29867, + "referencedDeclaration": 29882, "src": "119:9:16", "typeDescriptions": {} }, @@ -1344,7 +2846,7 @@ "name": "IVesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29873, + "referencedDeclaration": 29888, "src": "130:8:16", "typeDescriptions": {} }, @@ -1357,11 +2859,12 @@ "id": 25540, "nodeType": "ImportDirective", "src": "188:71:16", + "nodes": [], "absolutePath": "src/interfaces/IUniswapV2Factory.sol", "file": "./interfaces/IUniswapV2Factory.sol", "nameLocation": "-1:-1:-1", "scope": 27007, - "sourceUnit": 29215, + "sourceUnit": 29230, "symbolAliases": [ { "foreign": { @@ -1369,7 +2872,7 @@ "name": "IUniswapV2Factory", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29214, + "referencedDeclaration": 29229, "src": "197:17:16", "typeDescriptions": {} }, @@ -1382,11 +2885,12 @@ "id": 25542, "nodeType": "ImportDirective", "src": "261:71:16", + "nodes": [], "absolutePath": "src/interfaces/IUniswapV2Router.sol", "file": "./interfaces/IUniswapV2Router.sol", "nameLocation": "-1:-1:-1", "scope": 27007, - "sourceUnit": 29850, + "sourceUnit": 29865, "symbolAliases": [ { "foreign": { @@ -1394,7 +2898,7 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "270:18:16", "typeDescriptions": {} }, @@ -1407,11 +2911,12 @@ "id": 25544, "nodeType": "ImportDirective", "src": "334:47:16", + "nodes": [], "absolutePath": "src/interfaces/ERC20.sol", "file": "./interfaces/ERC20.sol", "nameLocation": "-1:-1:-1", "scope": 27007, - "sourceUnit": 29067, + "sourceUnit": 29082, "symbolAliases": [ { "foreign": { @@ -1419,7 +2924,7 @@ "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29066, + "referencedDeclaration": 29081, "src": "343:5:16", "typeDescriptions": {} }, @@ -1432,11 +2937,12 @@ "id": 25545, "nodeType": "ImportDirective", "src": "383:34:16", + "nodes": [], "absolutePath": "src/extensions/Ownable.sol", "file": "./extensions/Ownable.sol", "nameLocation": "-1:-1:-1", "scope": 27007, - "sourceUnit": 28256, + "sourceUnit": 28271, "symbolAliases": [], "unitAlias": "" }, @@ -1449,6 +2955,7 @@ "id": 25552, "nodeType": "VariableDeclaration", "src": "968:20:16", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_totalSupply", @@ -1476,6 +2983,7 @@ "id": 25554, "nodeType": "VariableDeclaration", "src": "1027:20:16", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_name", @@ -1503,6 +3011,7 @@ "id": 25556, "nodeType": "VariableDeclaration", "src": "1054:22:16", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_symbol", @@ -1530,6 +3039,7 @@ "id": 25558, "nodeType": "VariableDeclaration", "src": "1114:20:16", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_paused", @@ -1557,6 +3067,7 @@ "id": 25560, "nodeType": "VariableDeclaration", "src": "1158:23:16", + "nodes": [], "constant": false, "functionSelector": "61d027b3", "mutability": "mutable", @@ -1586,6 +3097,7 @@ "id": 25562, "nodeType": "VariableDeclaration", "src": "1188:22:16", + "nodes": [], "constant": false, "functionSelector": "44c63eec", "mutability": "mutable", @@ -1615,6 +3127,7 @@ "id": 25564, "nodeType": "VariableDeclaration", "src": "1217:24:16", + "nodes": [], "constant": false, "functionSelector": "c7c4ff46", "mutability": "mutable", @@ -1644,6 +3157,7 @@ "id": 25567, "nodeType": "VariableDeclaration", "src": "1250:81:16", + "nodes": [], "constant": true, "functionSelector": "676d3563", "mutability": "constant", @@ -1689,6 +3203,7 @@ "id": 25569, "nodeType": "VariableDeclaration", "src": "1338:40:16", + "nodes": [], "constant": false, "functionSelector": "f40acc3d", "mutability": "immutable", @@ -1718,6 +3233,7 @@ "id": 25571, "nodeType": "VariableDeclaration", "src": "1387:24:16", + "nodes": [], "constant": false, "functionSelector": "f2b6b501", "mutability": "mutable", @@ -1746,6 +3262,7 @@ "id": 25574, "nodeType": "VariableDeclaration", "src": "1513:28:16", + "nodes": [], "constant": false, "documentation": { "id": 25572, @@ -1780,6 +3297,7 @@ "id": 25576, "nodeType": "VariableDeclaration", "src": "1548:26:16", + "nodes": [], "constant": false, "functionSelector": "8c0b5e22", "mutability": "mutable", @@ -1808,6 +3326,7 @@ "id": 25578, "nodeType": "VariableDeclaration", "src": "1583:38:16", + "nodes": [], "constant": false, "functionSelector": "090f215c", "mutability": "mutable", @@ -1836,6 +3355,7 @@ "id": 25581, "nodeType": "VariableDeclaration", "src": "1628:19:16", + "nodes": [], "constant": false, "mutability": "mutable", "name": "inSwap", @@ -1879,6 +3399,7 @@ "id": 25585, "nodeType": "VariableDeclaration", "src": "1680:41:16", + "nodes": [], "constant": false, "functionSelector": "f9f92be4", "mutability": "mutable", @@ -1926,6 +3447,7 @@ "id": 25590, "nodeType": "VariableDeclaration", "src": "1834:41:16", + "nodes": [], "constant": false, "documentation": { "id": 25586, @@ -1979,6 +3501,7 @@ "id": 25595, "nodeType": "VariableDeclaration", "src": "1980:46:16", + "nodes": [], "constant": false, "documentation": { "id": 25591, @@ -2032,6 +3555,7 @@ "id": 25600, "nodeType": "VariableDeclaration", "src": "2109:48:16", + "nodes": [], "constant": false, "documentation": { "id": 25596, @@ -2085,6 +3609,7 @@ "id": 25605, "nodeType": "VariableDeclaration", "src": "2231:44:16", + "nodes": [], "constant": false, "documentation": { "id": 25601, @@ -2138,6 +3663,7 @@ "id": 25610, "nodeType": "VariableDeclaration", "src": "2354:42:16", + "nodes": [], "constant": false, "documentation": { "id": 25606, @@ -2191,6 +3717,7 @@ "id": 25615, "nodeType": "VariableDeclaration", "src": "2496:45:16", + "nodes": [], "constant": false, "documentation": { "id": 25611, @@ -2244,6 +3771,7 @@ "id": 25619, "nodeType": "VariableDeclaration", "src": "2550:46:16", + "nodes": [], "constant": false, "functionSelector": "f9079b73", "mutability": "mutable", @@ -2291,6 +3819,7 @@ "id": 25624, "nodeType": "VariableDeclaration", "src": "2700:54:16", + "nodes": [], "constant": false, "documentation": { "id": 25620, @@ -2344,10 +3873,12 @@ "id": 25763, "nodeType": "FunctionDefinition", "src": "3746:1101:16", + "nodes": [], "body": { "id": 25762, "nodeType": "Block", "src": "4002:845:16", + "nodes": [], "statements": [ { "expression": { @@ -2423,7 +3954,7 @@ "name": "_setupDecimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29054, + "referencedDeclaration": 29069, "src": "4039:14:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint8_$returns$__$", @@ -2436,6 +3967,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4039:29:16", @@ -2532,7 +4064,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "4120:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -2545,6 +4077,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4120:10:16", @@ -2660,6 +4193,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4313:13:16", @@ -2699,10 +4233,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "4328:18:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -2712,12 +4246,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4328:32:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -2726,9 +4261,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4361:4:16", "memberName": "WETH", "nodeType": "MemberAccess", - "referencedDeclaration": 29468, + "referencedDeclaration": 29483, "src": "4328:37:16", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", @@ -2741,6 +4277,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4328:39:16", @@ -2794,10 +4331,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "4248:18:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -2807,12 +4344,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4248:32:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -2821,9 +4359,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4281:7:16", "memberName": "factory", "nodeType": "MemberAccess", - "referencedDeclaration": 29463, + "referencedDeclaration": 29478, "src": "4248:40:16", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", @@ -2836,6 +4375,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4248:42:16", @@ -2857,10 +4397,10 @@ "name": "IUniswapV2Factory", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29214, + "referencedDeclaration": 29229, "src": "4216:17:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Factory_$29214_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Factory_$29229_$", "typeString": "type(contract IUniswapV2Factory)" } }, @@ -2870,12 +4410,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4216:85:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Factory_$29214", + "typeIdentifier": "t_contract$_IUniswapV2Factory_$29229", "typeString": "contract IUniswapV2Factory" } }, @@ -2884,9 +4425,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4302:10:16", "memberName": "createPair", "nodeType": "MemberAccess", - "referencedDeclaration": 29203, + "referencedDeclaration": 29218, "src": "4216:96:16", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_address_$", @@ -2899,6 +4441,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4216:152:16", @@ -3145,7 +4688,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "4520:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -3158,6 +4701,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4520:10:16", @@ -3286,7 +4830,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "4582:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -3299,6 +4843,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4582:10:16", @@ -3431,7 +4976,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "4643:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -3444,6 +4989,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4643:10:16", @@ -3557,6 +5103,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4677:13:16", @@ -3677,6 +5224,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4719:10:16", @@ -3754,7 +5302,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28156, + "referencedDeclaration": 28171, "src": "4758:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", @@ -3767,6 +5315,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4758:7:16", @@ -3826,7 +5375,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28156, + "referencedDeclaration": 28171, "src": "4792:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", @@ -3839,6 +5388,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4792:7:16", @@ -3910,7 +5460,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "4827:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -3923,6 +5473,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4827:10:16", @@ -3974,7 +5525,7 @@ "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28942, + "referencedDeclaration": 28957, "src": "4786:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", @@ -3987,6 +5538,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4786:53:16", @@ -4043,8 +5595,11 @@ "modifierName": { "id": 25639, "name": "ERC20", + "nameLocations": [ + "3972:5:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29066, + "referencedDeclaration": 29081, "src": "3972:5:16" }, "nodeType": "ModifierInvocation", @@ -4237,10 +5792,12 @@ "id": 25781, "nodeType": "ModifierDefinition", "src": "4998:169:16", + "nodes": [], "body": { "id": 25780, "nodeType": "Block", "src": "5035:132:16", + "nodes": [], "statements": [ { "expression": { @@ -4286,6 +5843,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5055:8:16", @@ -4393,6 +5951,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5046:101:16", @@ -4463,10 +6022,12 @@ "id": 25805, "nodeType": "ModifierDefinition", "src": "5260:210:16", + "nodes": [], "body": { "id": 25804, "nodeType": "Block", "src": "5315:155:16", + "nodes": [], "statements": [ { "expression": { @@ -4522,6 +6083,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5335:8:16", @@ -4674,6 +6236,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5326:124:16", @@ -4772,10 +6335,12 @@ "id": 25835, "nodeType": "ModifierDefinition", "src": "5562:247:16", + "nodes": [], "body": { "id": 25834, "nodeType": "Block", "src": "5633:176:16", + "nodes": [], "statements": [ { "expression": { @@ -4841,6 +6406,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5653:8:16", @@ -5038,6 +6604,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5644:145:16", @@ -5164,10 +6731,12 @@ "id": 25846, "nodeType": "ModifierDefinition", "src": "5901:135:16", + "nodes": [], "body": { "id": 25845, "nodeType": "Block", "src": "5923:113:16", + "nodes": [], "statements": [ { "expression": { @@ -5193,6 +6762,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5942:8:16", @@ -5250,6 +6820,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5934:82:16", @@ -5291,10 +6862,12 @@ "id": 25867, "nodeType": "ModifierDefinition", "src": "6153:183:16", + "nodes": [], "body": { "id": 25866, "nodeType": "Block", "src": "6177:159:16", + "nodes": [], "statements": [ { "expression": { @@ -5337,6 +6910,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6199:6:16", "memberName": "sender", "nodeType": "MemberAccess", "src": "6195:10:16", @@ -5355,7 +6929,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28156, + "referencedDeclaration": 28171, "src": "6209:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", @@ -5368,6 +6942,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6209:7:16", @@ -5427,6 +7002,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6235:6:16", "memberName": "sender", "nodeType": "MemberAccess", "src": "6231:10:16", @@ -5524,6 +7100,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6187:129:16", @@ -5565,10 +7142,12 @@ "id": 25879, "nodeType": "ModifierDefinition", "src": "6344:90:16", + "nodes": [], "body": { "id": 25878, "nodeType": "Block", "src": "6365:69:16", + "nodes": [], "statements": [ { "expression": { @@ -5686,6 +7265,7 @@ "id": 25884, "nodeType": "EventDefinition", "src": "6555:22:16", + "nodes": [], "anonymous": false, "documentation": { "id": 25880, @@ -5737,6 +7317,7 @@ "id": 25889, "nodeType": "EventDefinition", "src": "6646:24:16", + "nodes": [], "anonymous": false, "documentation": { "id": 25885, @@ -5788,6 +7369,7 @@ "id": 25896, "nodeType": "EventDefinition", "src": "6723:61:16", + "nodes": [], "anonymous": false, "documentation": { "id": 25890, @@ -5867,6 +7449,7 @@ "id": 25903, "nodeType": "EventDefinition", "src": "6871:70:16", + "nodes": [], "anonymous": false, "documentation": { "id": 25897, @@ -5946,6 +7529,7 @@ "id": 25909, "nodeType": "EventDefinition", "src": "6949:40:16", + "nodes": [], "anonymous": false, "eventSelector": "4ab5be82436d353e61ca18726e984e561f5c1cc7c6d38b29d2553c790434705a", "name": "TreasuryUpdated", @@ -6020,6 +7604,7 @@ "id": 25915, "nodeType": "EventDefinition", "src": "6997:39:16", + "nodes": [], "anonymous": false, "eventSelector": "a596bfd2fd3f8533a574f9df13f553b4d5751c65c233b974b15fa91891857f3e", "name": "VestingUpdated", @@ -6094,6 +7679,7 @@ "id": 25921, "nodeType": "EventDefinition", "src": "7044:41:16", + "nodes": [], "anonymous": false, "eventSelector": "830becdc16911bd35301d7e36682bb0bf344b313f5406e9eb6d8632a34976344", "name": "DepositorUpdated", @@ -6168,6 +7754,7 @@ "id": 25923, "nodeType": "EventDefinition", "src": "7093:32:16", + "nodes": [], "anonymous": false, "eventSelector": "c75f57ef1bbf80f914dce2d672e5f9474567b8de900e1580de72874d08ff86b9", "name": "TaxesPermanentlyRemoved", @@ -6183,6 +7770,7 @@ "id": 25927, "nodeType": "EventDefinition", "src": "7133:28:16", + "nodes": [], "anonymous": false, "eventSelector": "ff3dd5e80294197918c284bbfc3dadd97d0b40ce92106110946329088f80068a", "name": "MaxTxUpdated", @@ -6227,6 +7815,7 @@ "id": 25931, "nodeType": "EventDefinition", "src": "7169:32:16", + "nodes": [], "anonymous": false, "eventSelector": "12528a3c61e0f3b2d6fc707a9fc58b1af86e252cad0d7f4c154ebeabb162dace", "name": "MaxWalletUpdated", @@ -6271,10 +7860,12 @@ "id": 26158, "nodeType": "FunctionDefinition", "src": "7300:2624:16", + "nodes": [], "body": { "id": 26157, "nodeType": "Block", "src": "7382:2542:16", + "nodes": [], "statements": [ { "assignments": [ @@ -6377,6 +7968,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7532:8:16", @@ -6515,6 +8107,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7596:6:16", "memberName": "sender", "nodeType": "MemberAccess", "src": "7592:10:16", @@ -6588,6 +8181,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7523:140:16", @@ -6640,7 +8234,7 @@ "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28666, + "referencedDeclaration": 28681, "src": "7682:9:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", @@ -6653,6 +8247,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7682:16:16", @@ -6730,6 +8325,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7674:82:16", @@ -6840,6 +8436,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7767:75:16", @@ -7040,6 +8637,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7980:6:16", "memberName": "sender", "nodeType": "MemberAccess", "src": "7976:10:16", @@ -7143,6 +8741,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8000:13:16", @@ -7241,9 +8840,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9875:9:16", "memberName": "_transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 28887, + "referencedDeclaration": 28902, "src": "9869:15:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", @@ -7256,6 +8856,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9869:36:16", @@ -7372,6 +8973,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8032:84:16", @@ -7488,6 +9090,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8131:74:16", @@ -7604,6 +9207,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8220:74:16", @@ -8259,6 +9863,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8755:83:16", @@ -8437,7 +10042,7 @@ "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28666, + "referencedDeclaration": 28681, "src": "9047:9:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", @@ -8450,6 +10055,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9047:14:16", @@ -8547,6 +10153,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9039:107:16", @@ -8718,6 +10325,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9258:25:16", @@ -8918,6 +10526,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9516:37:16", @@ -9009,9 +10618,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9610:9:16", "memberName": "_transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 28887, + "referencedDeclaration": 28902, "src": "9604:15:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", @@ -9024,6 +10634,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9604:37:16", @@ -9099,6 +10710,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9731:13:16", @@ -9153,9 +10765,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9714:9:16", "memberName": "_transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 28887, + "referencedDeclaration": 28902, "src": "9708:15:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", @@ -9168,6 +10781,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9708:46:16", @@ -9187,7 +10801,7 @@ ] }, "baseFunctions": [ - 28887 + 28902 ], "implemented": true, "kind": "function", @@ -9305,10 +10919,12 @@ "id": 26189, "nodeType": "FunctionDefinition", "src": "9932:362:16", + "nodes": [], "body": { "id": 26188, "nodeType": "Block", "src": "10009:285:16", + "nodes": [], "statements": [ { "assignments": [ @@ -9383,6 +10999,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10041:40:16", @@ -9499,10 +11116,10 @@ "name": "ITreasury", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29867, + "referencedDeclaration": 29882, "src": "10172:9:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITreasury_$29867_$", + "typeIdentifier": "t_type$_t_contract$_ITreasury_$29882_$", "typeString": "type(contract ITreasury)" } }, @@ -9512,12 +11129,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10172:19:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_ITreasury_$29867", + "typeIdentifier": "t_contract$_ITreasury_$29882", "typeString": "contract ITreasury" } }, @@ -9526,9 +11144,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10192:18:16", "memberName": "updateTaxesAccrued", "nodeType": "MemberAccess", - "referencedDeclaration": 29866, + "referencedDeclaration": 29881, "src": "10172:38:16", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", @@ -9541,6 +11160,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10172:50:16", @@ -9610,6 +11230,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10242:33:16", @@ -9637,6 +11258,9 @@ "modifierName": { "id": 26162, "name": "lockTheSwap", + "nameLocations": [ + "9997:11:16" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 25879, "src": "9997:11:16" @@ -9696,10 +11320,12 @@ "id": 26273, "nodeType": "FunctionDefinition", "src": "10302:833:16", + "nodes": [], "body": { "id": 26272, "nodeType": "Block", "src": "10385:750:16", + "nodes": [], "statements": [ { "assignments": [ @@ -9808,6 +11434,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10480:16:16", @@ -9917,6 +11544,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10517:13:16", @@ -10016,10 +11644,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "10551:18:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -10029,12 +11657,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10551:32:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -10043,9 +11672,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10584:4:16", "memberName": "WETH", "nodeType": "MemberAccess", - "referencedDeclaration": 29468, + "referencedDeclaration": 29483, "src": "10551:37:16", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", @@ -10058,6 +11688,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10551:39:16", @@ -10127,6 +11758,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10612:13:16", @@ -10183,6 +11815,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10627:21:16", @@ -10224,7 +11857,7 @@ "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29043, + "referencedDeclaration": 29058, "src": "10603:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", @@ -10237,6 +11870,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10603:68:16", @@ -10357,10 +11991,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "10711:18:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -10370,12 +12004,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10711:32:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -10384,9 +12019,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10744:13:16", "memberName": "getAmountsOut", "nodeType": "MemberAccess", - "referencedDeclaration": 29752, + "referencedDeclaration": 29767, "src": "10711:46:16", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", @@ -10399,6 +12035,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10711:112:16", @@ -10501,6 +12138,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11033:17:16", @@ -10538,6 +12176,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11071:9:16", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "11065:15:16", @@ -10620,10 +12259,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "10862:18:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -10633,12 +12272,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10862:32:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -10647,9 +12287,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10895:53:16", "memberName": "swapExactTokensForTokensSupportingFeeOnTransferTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 29822, + "referencedDeclaration": 29837, "src": "10862:86:16", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$__$", @@ -10662,6 +12303,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10862:235:16", @@ -10806,10 +12448,12 @@ "id": 26293, "nodeType": "FunctionDefinition", "src": "11332:132:16", + "nodes": [], "body": { "id": 26292, "nodeType": "Block", "src": "11397:67:16", + "nodes": [], "statements": [ { "expression": { @@ -10879,6 +12523,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11449:6:16", "memberName": "sender", "nodeType": "MemberAccess", "src": "11445:10:16", @@ -10912,6 +12557,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11438:18:16", @@ -10943,8 +12589,11 @@ "modifierName": { "id": 26276, "name": "onlyOwner", + "nameLocations": [ + "11358:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "11358:9:16" }, "nodeType": "ModifierInvocation", @@ -10970,6 +12619,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11389:6:16", "memberName": "sender", "nodeType": "MemberAccess", "src": "11385:10:16", @@ -10984,6 +12634,9 @@ "modifierName": { "id": 26278, "name": "whenNotPausedUni", + "nameLocations": [ + "11368:16:16" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 25781, "src": "11368:16:16" @@ -11015,10 +12668,12 @@ "id": 26311, "nodeType": "FunctionDefinition", "src": "11590:119:16", + "nodes": [], "body": { "id": 26310, "nodeType": "Block", "src": "11639:70:16", + "nodes": [], "statements": [ { "expression": { @@ -11088,6 +12743,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11694:6:16", "memberName": "sender", "nodeType": "MemberAccess", "src": "11690:10:16", @@ -11121,6 +12777,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11681:20:16", @@ -11152,8 +12809,11 @@ "modifierName": { "id": 26296, "name": "onlyOwner", + "nameLocations": [ + "11618:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "11618:9:16" }, "nodeType": "ModifierInvocation", @@ -11165,6 +12825,9 @@ "modifierName": { "id": 26298, "name": "whenPaused", + "nameLocations": [ + "11628:10:16" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 25846, "src": "11628:10:16" @@ -11196,10 +12859,12 @@ "id": 26320, "nodeType": "FunctionDefinition", "src": "11813:86:16", + "nodes": [], "body": { "id": 26319, "nodeType": "Block", "src": "11866:33:16", + "nodes": [], "statements": [ { "expression": { @@ -11282,10 +12947,12 @@ "id": 26344, "nodeType": "FunctionDefinition", "src": "12344:231:16", + "nodes": [], "body": { "id": 26343, "nodeType": "Block", "src": "12425:150:16", + "nodes": [], "statements": [ { "expression": { @@ -11384,6 +13051,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12436:87:16", @@ -11483,8 +13151,11 @@ "modifierName": { "id": 26327, "name": "onlyOwner", + "nameLocations": [ + "12415:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "12415:9:16" }, "nodeType": "ModifierInvocation", @@ -11570,10 +13241,12 @@ "id": 26368, "nodeType": "FunctionDefinition", "src": "12975:241:16", + "nodes": [], "body": { "id": 26367, "nodeType": "Block", "src": "13060:156:16", + "nodes": [], "statements": [ { "expression": { @@ -11672,6 +13345,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13071:89:16", @@ -11771,8 +13445,11 @@ "modifierName": { "id": 26351, "name": "onlyOwner", + "nameLocations": [ + "13050:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "13050:9:16" }, "nodeType": "ModifierInvocation", @@ -11858,10 +13535,12 @@ "id": 26398, "nodeType": "FunctionDefinition", "src": "13577:319:16", + "nodes": [], "body": { "id": 26397, "nodeType": "Block", "src": "13653:243:16", + "nodes": [], "statements": [ { "expression": { @@ -11960,6 +13639,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13664:81:16", @@ -12051,6 +13731,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13756:90:16", @@ -12150,8 +13831,11 @@ "modifierName": { "id": 26375, "name": "onlyOwner", + "nameLocations": [ + "13643:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "13643:9:16" }, "nodeType": "ModifierInvocation", @@ -12236,10 +13920,12 @@ "id": 26445, "nodeType": "FunctionDefinition", "src": "14165:429:16", + "nodes": [], "body": { "id": 26444, "nodeType": "Block", "src": "14227:367:16", + "nodes": [], "statements": [ { "expression": { @@ -12338,6 +14024,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14238:70:16", @@ -12429,6 +14116,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14319:98:16", @@ -12739,6 +14427,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14561:25:16", @@ -12770,8 +14459,11 @@ "modifierName": { "id": 26403, "name": "onlyOwner", + "nameLocations": [ + "14217:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "14217:9:16" }, "nodeType": "ModifierInvocation", @@ -12829,10 +14521,12 @@ "id": 26466, "nodeType": "FunctionDefinition", "src": "14624:160:16", + "nodes": [], "body": { "id": 26465, "nodeType": "Block", "src": "14695:89:16", + "nodes": [], "statements": [ { "expression": { @@ -12946,9 +14640,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14749:17:16", "memberName": "transferOwnership", "nodeType": "MemberAccess", - "referencedDeclaration": 28220, + "referencedDeclaration": 28235, "src": "14743:23:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", @@ -12961,6 +14656,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14743:33:16", @@ -12977,7 +14673,7 @@ ] }, "baseFunctions": [ - 28220 + 28235 ], "functionSelector": "f2fde38b", "implemented": true, @@ -12989,8 +14685,11 @@ "modifierName": { "id": 26450, "name": "onlyOwner", + "nameLocations": [ + "14685:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "14685:9:16" }, "nodeType": "ModifierInvocation", @@ -13055,10 +14754,12 @@ "id": 26481, "nodeType": "FunctionDefinition", "src": "14792:263:16", + "nodes": [], "body": { "id": 26480, "nodeType": "Block", "src": "14852:203:16", + "nodes": [], "statements": [ { "condition": { @@ -13120,6 +14821,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14947:25:16", @@ -13154,6 +14856,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14931:42:16", @@ -13182,8 +14885,11 @@ "modifierName": { "id": 26468, "name": "onlyOwner", + "nameLocations": [ + "14842:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "14842:9:16" }, "nodeType": "ModifierInvocation", @@ -13213,10 +14919,12 @@ "id": 26522, "nodeType": "FunctionDefinition", "src": "15366:408:16", + "nodes": [], "body": { "id": 26521, "nodeType": "Block", "src": "15446:328:16", + "nodes": [], "statements": [ { "expression": { @@ -13296,6 +15004,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15477:10:16", @@ -13359,6 +15068,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15457:83:16", @@ -13490,6 +15200,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15551:113:16", @@ -13627,6 +15338,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15724:42:16", @@ -13658,8 +15370,11 @@ "modifierName": { "id": 26488, "name": "onlyOwner", + "nameLocations": [ + "15436:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "15436:9:16" }, "nodeType": "ModifierInvocation", @@ -13745,10 +15460,12 @@ "id": 26562, "nodeType": "FunctionDefinition", "src": "15965:404:16", + "nodes": [], "body": { "id": 26561, "nodeType": "Block", "src": "16024:345:16", + "nodes": [], "statements": [ { "expression": { @@ -13843,6 +15560,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16035:93:16", @@ -13934,6 +15652,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16160:10:16", @@ -13997,6 +15716,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16139:93:16", @@ -14113,6 +15833,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16276:31:16", @@ -14182,6 +15903,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16325:36:16", @@ -14213,8 +15935,11 @@ "modifierName": { "id": 26527, "name": "onlyOwner", + "nameLocations": [ + "16014:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "16014:9:16" }, "nodeType": "ModifierInvocation", @@ -14273,10 +15998,12 @@ "id": 26615, "nodeType": "FunctionDefinition", "src": "16555:492:16", + "nodes": [], "body": { "id": 26614, "nodeType": "Block", "src": "16612:435:16", + "nodes": [], "statements": [ { "expression": { @@ -14371,6 +16098,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16623:90:16", @@ -14462,6 +16190,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16744:10:16", @@ -14525,6 +16254,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16724:91:16", @@ -14641,6 +16371,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16857:30:16", @@ -14718,10 +16449,10 @@ "name": "IVesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29873, + "referencedDeclaration": 29888, "src": "16917:8:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IVesting_$29873_$", + "typeIdentifier": "t_type$_t_contract$_IVesting_$29888_$", "typeString": "type(contract IVesting)" } }, @@ -14731,12 +16462,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16917:17:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IVesting_$29873", + "typeIdentifier": "t_contract$_IVesting_$29888", "typeString": "contract IVesting" } }, @@ -14745,9 +16477,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16935:18:16", "memberName": "getAllVestedTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 29872, + "referencedDeclaration": 29887, "src": "16917:36:16", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", @@ -14760,6 +16493,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16917:38:16", @@ -14815,7 +16549,7 @@ "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28942, + "referencedDeclaration": 28957, "src": "16966:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", @@ -14828,6 +16562,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16966:22:16", @@ -14897,6 +16632,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17006:33:16", @@ -14928,8 +16664,11 @@ "modifierName": { "id": 26567, "name": "onlyOwner", + "nameLocations": [ + "16602:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "16602:9:16" }, "nodeType": "ModifierInvocation", @@ -14988,10 +16727,12 @@ "id": 26655, "nodeType": "FunctionDefinition", "src": "17224:464:16", + "nodes": [], "body": { "id": 26654, "nodeType": "Block", "src": "17285:403:16", + "nodes": [], "statements": [ { "expression": { @@ -15086,6 +16827,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17296:96:16", @@ -15177,6 +16919,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17425:10:16", @@ -15240,6 +16983,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17403:95:16", @@ -15356,6 +17100,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17544:33:16", @@ -15426,6 +17171,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17641:39:16", @@ -15457,8 +17203,11 @@ "modifierName": { "id": 26620, "name": "onlyOwner", + "nameLocations": [ + "17275:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "17275:9:16" }, "nodeType": "ModifierInvocation", @@ -15517,10 +17266,12 @@ "id": 26674, "nodeType": "FunctionDefinition", "src": "17916:148:16", + "nodes": [], "body": { "id": 26673, "nodeType": "Block", "src": "17991:73:16", + "nodes": [], "statements": [ { "expression": { @@ -15605,7 +17356,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "18045:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -15618,6 +17369,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18045:10:16", @@ -15681,8 +17433,11 @@ "modifierName": { "id": 26660, "name": "onlyOwner", + "nameLocations": [ + "17981:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "17981:9:16" }, "nodeType": "ModifierInvocation", @@ -15740,10 +17495,12 @@ "id": 26704, "nodeType": "FunctionDefinition", "src": "18347:278:16", + "nodes": [], "body": { "id": 26703, "nodeType": "Block", "src": "18415:210:16", + "nodes": [], "statements": [ { "expression": { @@ -15842,6 +17599,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18426:88:16", @@ -15938,7 +17696,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "18563:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -15951,6 +17709,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18563:10:16", @@ -16036,6 +17795,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18592:25:16", @@ -16067,8 +17827,11 @@ "modifierName": { "id": 26679, "name": "onlyOwner", + "nameLocations": [ + "18405:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "18405:9:16" }, "nodeType": "ModifierInvocation", @@ -16126,10 +17889,12 @@ "id": 26734, "nodeType": "FunctionDefinition", "src": "18883:298:16", + "nodes": [], "body": { "id": 26733, "nodeType": "Block", "src": "18955:226:16", + "nodes": [], "statements": [ { "expression": { @@ -16228,6 +17993,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18966:94:16", @@ -16324,7 +18090,7 @@ "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28642, + "referencedDeclaration": 28657, "src": "19113:8:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint8_$", @@ -16337,6 +18103,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19113:10:16", @@ -16422,6 +18189,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19142:31:16", @@ -16453,8 +18221,11 @@ "modifierName": { "id": 26709, "name": "onlyOwner", + "nameLocations": [ + "18945:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "18945:9:16" }, "nodeType": "ModifierInvocation", @@ -16512,10 +18283,12 @@ "id": 26751, "nodeType": "FunctionDefinition", "src": "19574:130:16", + "nodes": [], "body": { "id": 26750, "nodeType": "Block", "src": "19652:52:16", + "nodes": [], "statements": [ { "expression": { @@ -16603,8 +18376,11 @@ "modifierName": { "id": 26741, "name": "onlyOwner", + "nameLocations": [ + "19642:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "19642:9:16" }, "nodeType": "ModifierInvocation", @@ -16690,10 +18466,12 @@ "id": 26824, "nodeType": "FunctionDefinition", "src": "20148:952:16", + "nodes": [], "body": { "id": 26823, "nodeType": "Block", "src": "20226:874:16", + "nodes": [], "statements": [ { "condition": { @@ -16819,6 +18597,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20268:102:16", @@ -16925,6 +18704,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20385:90:16", @@ -17031,6 +18811,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20490:92:16", @@ -17137,6 +18918,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20597:88:16", @@ -17243,6 +19025,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20700:104:16", @@ -17349,6 +19132,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20819:105:16", @@ -17436,6 +19220,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20958:13:16", @@ -17499,6 +19284,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20939:100:16", @@ -17601,8 +19387,11 @@ "modifierName": { "id": 26758, "name": "onlyOwner", + "nameLocations": [ + "20216:9:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "20216:9:16" }, "nodeType": "ModifierInvocation", @@ -17688,10 +19477,12 @@ "id": 26840, "nodeType": "FunctionDefinition", "src": "21508:114:16", + "nodes": [], "body": { "id": 26839, "nodeType": "Block", "src": "21580:42:16", + "nodes": [], "statements": [ { "expression": { @@ -17736,7 +19527,7 @@ "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28942, + "referencedDeclaration": 28957, "src": "21591:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", @@ -17749,6 +19540,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21591:23:16", @@ -17781,6 +19573,9 @@ "modifierName": { "id": 26831, "name": "onlyAuthorized", + "nameLocations": [ + "21563:14:16" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 25867, "src": "21563:14:16" @@ -17868,10 +19663,12 @@ "id": 26856, "nodeType": "FunctionDefinition", "src": "21935:114:16", + "nodes": [], "body": { "id": 26855, "nodeType": "Block", "src": "22007:42:16", + "nodes": [], "statements": [ { "expression": { @@ -17916,7 +19713,7 @@ "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28998, + "referencedDeclaration": 29013, "src": "22018:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", @@ -17929,6 +19726,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22018:23:16", @@ -17961,6 +19759,9 @@ "modifierName": { "id": 26847, "name": "onlyAuthorized", + "nameLocations": [ + "21990:14:16" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 25867, "src": "21990:14:16" @@ -18048,10 +19849,12 @@ "id": 26884, "nodeType": "FunctionDefinition", "src": "22672:222:16", + "nodes": [], "body": { "id": 26883, "nodeType": "Block", "src": "22752:142:16", + "nodes": [], "statements": [ { "expression": { @@ -18096,7 +19899,7 @@ "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28942, + "referencedDeclaration": 28957, "src": "22763:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", @@ -18109,6 +19912,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22763:23:16", @@ -18276,6 +20080,9 @@ "modifierName": { "id": 26863, "name": "onlyAuthorized", + "nameLocations": [ + "22737:14:16" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 25867, "src": "22737:14:16" @@ -18363,10 +20170,12 @@ "id": 26944, "nodeType": "FunctionDefinition", "src": "23211:562:16", + "nodes": [], "body": { "id": 26943, "nodeType": "Block", "src": "23291:482:16", + "nodes": [], "statements": [ { "expression": { @@ -18446,6 +20255,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23321:10:16", @@ -18509,6 +20319,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23302:92:16", @@ -18561,7 +20372,7 @@ "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28666, + "referencedDeclaration": 28681, "src": "23413:9:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", @@ -18574,6 +20385,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23413:18:16", @@ -18651,6 +20463,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23405:111:16", @@ -18780,7 +20593,7 @@ "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28998, + "referencedDeclaration": 29013, "src": "23689:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", @@ -18793,6 +20606,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23689:23:16", @@ -18931,7 +20745,7 @@ "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28998, + "referencedDeclaration": 29013, "src": "23584:5:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", @@ -18944,6 +20758,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23584:23:16", @@ -19046,6 +20861,9 @@ "modifierName": { "id": 26891, "name": "onlyAuthorized", + "nameLocations": [ + "23276:14:16" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 25867, "src": "23276:14:16" @@ -19133,10 +20951,12 @@ "id": 26958, "nodeType": "FunctionDefinition", "src": "24030:115:16", + "nodes": [], "body": { "id": 26957, "nodeType": "Block", "src": "24095:50:16", + "nodes": [], "statements": [ { "expression": { @@ -19188,6 +21008,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24123:13:16", @@ -19209,7 +21030,7 @@ "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28666, + "referencedDeclaration": 28681, "src": "24113:9:16", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", @@ -19222,6 +21043,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24113:24:16", @@ -19299,10 +21121,12 @@ "id": 27005, "nodeType": "FunctionDefinition", "src": "24759:542:16", + "nodes": [], "body": { "id": 27004, "nodeType": "Block", "src": "24901:400:16", + "nodes": [], "statements": [ { "assignments": [ @@ -19409,6 +21233,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24938:13:16", @@ -19430,10 +21255,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "24931:6:16", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, @@ -19443,12 +21268,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24931:21:16", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, @@ -19457,9 +21283,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "24953:9:16", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "24931:31:16", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", @@ -19472,6 +21299,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24931:40:16", @@ -19908,8 +21736,11 @@ "baseName": { "id": 25547, "name": "ERC20", + "nameLocations": [ + "849:5:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29066, + "referencedDeclaration": 29081, "src": "849:5:16" }, "id": 25548, @@ -19920,8 +21751,11 @@ "baseName": { "id": 25549, "name": "Ownable", + "nameLocations": [ + "856:7:16" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28255, + "referencedDeclaration": 28270, "src": "856:7:16" }, "id": 25550, @@ -19941,10 +21775,10 @@ "fullyImplemented": true, "linearizedBaseContracts": [ 27006, - 28255, - 29066, - 29143, - 28107 + 28270, + 29081, + 29158, + 28122 ], "name": "TaxToken", "nameLocation": "837:8:16", diff --git a/out/Treasury.sol/Treasury.json b/out/Treasury.sol/Treasury.json index 0a90292..931dedf 100644 --- a/out/Treasury.sol/Treasury.json +++ b/out/Treasury.sol/Treasury.json @@ -453,13 +453,13 @@ } ], "bytecode": { - "object": "0x60806040523480156200001157600080fd5b5060405162001a1f38038062001a1f833981016040819052620000349162000270565b600080546001600160a01b03191633908117825560405190918291600080516020620019ff833981519152908290a350600380546001600160a01b038085166001600160a01b03199283161790925560048054928416929091169190911790556200009f8362000142565b737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001189190620002ba565b600780546001600160a01b0319166001600160a01b039290921691909117905550620002df915050565b6000546001600160a01b03163314620001a25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b038116620002095760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000199565b600080546040516001600160a01b0380851693921691600080516020620019ff83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b03811681146200026b57600080fd5b919050565b6000806000606084860312156200028657600080fd5b620002918462000253565b9250620002a16020850162000253565b9150620002b16040850162000253565b90509250925092565b600060208284031215620002cd57600080fd5b620002d88262000253565b9392505050565b61171080620002ef6000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c8063838a4107116100c3578063cdb6ee381161007c578063cdb6ee38146102c3578063dd467064146102d6578063ed0ce006146102e9578063f2fde38b146102fc578063f66ed0141461030f578063f851a4401461032257600080fd5b8063838a4107146102435780638da5cb5b1461025657806395e4a6b314610267578063ad5c464814610287578063ba13f4c51461029a578063bf66dc6e146102a357600080fd5b8063676d356311610115578063676d3563146101db57806368a61804146101f6578063715018a6146101fe57806371fc737c14610208578063755965b814610210578063813db8f31461022357600080fd5b80631f72028d146101525780631fc928ae1461017257806322be3de11461019d57806331392fcb146101b057806331e912a8146101c8575b600080fd5b61015a610335565b604051610169939291906111e2565b60405180910390f35b600354610185906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b600454610185906001600160a01b031681565b600b546101ba9081565b604051908152602001610169565b6101ba6101d6366004611336565b610403565b610185737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6006546101ba565b6102066104b2565b005b6101ba61052f565b61020661021e366004611373565b610939565b6101ba610231366004611373565b60096020526000908152604090205481565b61020661025136600461138c565b6109a7565b6000546001600160a01b0316610185565b6101ba61027536600461138c565b600a6020526000908152604090205481565b600754610185906001600160a01b031681565b6101ba60065481565b6101ba6102b1366004611373565b60086020526000908152604090205481565b6102066102d136600461138c565b610add565b6102066102e4366004611373565b610be5565b6101ba6102f73660046113ae565b610c7c565b61020661030a36600461138c565b610d36565b61020661031d36600461143f565b610e20565b600554610185906001600160a01b031681565b6000606080600b60000154600b600101600b6002018180548060200260200160405190810160405280929190818152602001828054801561039f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610381575b50505050509150808054806020026020016040519081016040528092919081815260200182805480156103f157602002820191906000526020600020905b8154815260200190600101908083116103dd575b50505050509050925092509250909192565b60065460405163d06ca61f60e01b8152600091737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f916104409186906004016114b9565b600060405180830381865afa15801561045d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261048591908101906114d2565b600183516104939190611579565b815181106104a3576104a3611590565b60200260200101519050919050565b6000546001600160a01b031633146104e55760405162461bcd60e51b81526004016104dc906115a6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600654801561093657600060065560075460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d6004820152602481018390526001600160a01b039091169063095ea7b3906044016020604051808303816000875af11580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906115db565b6105d2576105d26115fd565b604080516002808252606082018352600092602083019080368337505060075482519293506001600160a01b03169183915060009061061357610613611590565b6001600160a01b03928316602091820292909201015260045482519116908290600190811061064457610644611590565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d6338ed1739836000843061068742617530611613565b6040518663ffffffff1660e01b81526004016106a795949392919061162b565b6000604051808303816000875af11580156106c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ee91908101906114d2565b50600480546040516370a0823160e01b815230928101929092526000916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107619190611667565b905060005b600c548110156109325760006064600b600201838154811061078a5761078a611590565b9060005260206000200154846107a09190611680565b6107aa919061169f565b600454600c80549293506001600160a01b039091169163a9059cbb9190859081106107d7576107d7611590565b60009182526020909120015460405160e083901b6001600160e01b03191681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085491906115db565b610860576108606115fd565b80600a6000600b600101858154811061087b5761087b611590565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906108af908490611613565b9091555050600c8054839081106108c8576108c8611590565b60009182526020918290200154600454604080518581526001600160a01b03928316948101949094529116917f9feb579bbc7ffef3037d91ecb8e45b70c8049afa8741cd4cb398926bd98f6922910160405180910390a2508061092a816116c1565b915050610766565b5050505b90565b6003546001600160a01b0316331461095057600080fd5b80600660008282546109629190611613565b90915550506006546040805183815260208101929092527fe8f58c2c4663d8d9bab1fcd91c3bef339c90e81754e2d0ec7e888c5c0b56b08d910160405180910390a150565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016104dc906115a6565b6007546001600160a01b03908116908216036109ed5760006006555b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610a3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5f9190611667565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906115db565b610ada57610ada6115fd565b50565b6000546001600160a01b03163314610b075760405162461bcd60e51b81526004016104dc906115a6565b6004546001600160a01b0390811690821603610b7c5760405162461bcd60e51b815260206004820152602e60248201527f54726561737572792e736f6c3a3a757064617465537461626c6528292076616c60448201526d1d5948185b1c9958591e481cd95d60921b60648201526084016104dc565b600454604080516001600160a01b03928316815291831660208301527fbe67eb17c76f052c9025267eaab09f6b7c384a42bb6830eb5f36665113cadf70910160405180910390a1600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c0f5760405162461bcd60e51b81526004016104dc906115a6565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c3e8142611613565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60008181526008602052604080822054905163d06ca61f60e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f91610cc3919087906004016114b9565b600060405180830381865afa158015610ce0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d0891908101906114d2565b60018451610d169190611579565b81518110610d2657610d26611590565b6020026020010151905092915050565b6000546001600160a01b03163314610d605760405162461bcd60e51b81526004016104dc906115a6565b6001600160a01b038116610dc55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104dc565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e4a5760405162461bcd60e51b81526004016104dc906115a6565b848314610ed05760405162461bcd60e51b815260206004820152604860248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2077616c6c65746064820152670e65cd8cadccee8d60c31b608482015260a4016104dc565b848114610f625760405162461bcd60e51b815260206004820152605460248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2070657263656e6064820152730e888d2e6e8e4d2c4eae8d2dedc5cd8cadccee8d60631b608482015260a4016104dc565b6000805b86811015610fa657838382818110610f8057610f80611590565b9050602002013582610f929190611613565b915080610f9e816116c1565b915050610f66565b50806064146110275760405162461bcd60e51b815260206004820152604160248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2073756d50657263656e74446973747269627574696f6e20213d2031306064820152600360fc1b608482015260a4016104dc565b6040518060600160405280878152602001868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505090825250604080516020868102828101820190935286825292830192909187918791829185019084908082843760009201919091525050509152508051600b90815560208083015180516110c292600c9201906110e9565b50604082015180516110de91600284019160209091019061114e565b505050505050505050565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611109565b5061114a929150611189565b5090565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182559160200191906001019061116e565b5b8082111561114a576000815560010161118a565b600081518084526020808501945080840160005b838110156111d75781516001600160a01b0316875295820195908201906001016111b2565b509495945050505050565b838152600060206060818401526111fc606084018661119e565b838103604085015284518082528286019183019060005b8181101561122f57835183529284019291840191600101611213565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561127c5761127c61123d565b604052919050565b600067ffffffffffffffff82111561129e5761129e61123d565b5060051b60200190565b80356001600160a01b03811681146112bf57600080fd5b919050565b600082601f8301126112d557600080fd5b813560206112ea6112e583611284565b611253565b82815260059290921b8401810191818101908684111561130957600080fd5b8286015b8481101561132b5761131e816112a8565b835291830191830161130d565b509695505050505050565b60006020828403121561134857600080fd5b813567ffffffffffffffff81111561135f57600080fd5b61136b848285016112c4565b949350505050565b60006020828403121561138557600080fd5b5035919050565b60006020828403121561139e57600080fd5b6113a7826112a8565b9392505050565b600080604083850312156113c157600080fd5b823567ffffffffffffffff8111156113d857600080fd5b6113e4858286016112c4565b95602094909401359450505050565b60008083601f84011261140557600080fd5b50813567ffffffffffffffff81111561141d57600080fd5b6020830191508360208260051b850101111561143857600080fd5b9250929050565b60008060008060006060868803121561145757600080fd5b85359450602086013567ffffffffffffffff8082111561147657600080fd5b61148289838a016113f3565b9096509450604088013591508082111561149b57600080fd5b506114a8888289016113f3565b969995985093965092949392505050565b82815260406020820152600061136b604083018461119e565b600060208083850312156114e557600080fd5b825167ffffffffffffffff8111156114fc57600080fd5b8301601f8101851361150d57600080fd5b805161151b6112e582611284565b81815260059190911b8201830190838101908783111561153a57600080fd5b928401925b828410156115585783518252928401929084019061153f565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561158b5761158b611563565b500390565b634e487b7160e01b600052603260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156115ed57600080fd5b815180151581146113a757600080fd5b634e487b7160e01b600052600160045260246000fd5b6000821982111561162657611626611563565b500190565b85815284602082015260a06040820152600061164a60a083018661119e565b6001600160a01b0394909416606083015250608001529392505050565b60006020828403121561167957600080fd5b5051919050565b600081600019048311821515161561169a5761169a611563565b500290565b6000826116bc57634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016116d3576116d3611563565b506001019056fea264697066735822122083afb4b6a1839860c5778cef5a7f10d1bb5def6021564255a58262f59ca3802464736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "object": "0x60806040523480156200001157600080fd5b5060405162001a0f38038062001a0f833981016040819052620000349162000270565b600080546001600160a01b03191633908117825560405190918291600080516020620019ef833981519152908290a350600380546001600160a01b038085166001600160a01b03199283161790925560048054928416929091169190911790556200009f8362000142565b737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001189190620002ba565b600780546001600160a01b0319166001600160a01b039290921691909117905550620002df915050565b6000546001600160a01b03163314620001a25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b038116620002095760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000199565b600080546040516001600160a01b0380851693921691600080516020620019ef83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b03811681146200026b57600080fd5b919050565b6000806000606084860312156200028657600080fd5b620002918462000253565b9250620002a16020850162000253565b9150620002b16040850162000253565b90509250925092565b600060208284031215620002cd57600080fd5b620002d88262000253565b9392505050565b61170080620002ef6000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c8063838a4107116100c3578063cdb6ee381161007c578063cdb6ee38146102c3578063dd467064146102d6578063ed0ce006146102e9578063f2fde38b146102fc578063f66ed0141461030f578063f851a4401461032257600080fd5b8063838a4107146102435780638da5cb5b1461025657806395e4a6b314610267578063ad5c464814610287578063ba13f4c51461029a578063bf66dc6e146102a357600080fd5b8063676d356311610115578063676d3563146101db57806368a61804146101f6578063715018a6146101fe57806371fc737c14610208578063755965b814610210578063813db8f31461022357600080fd5b80631f72028d146101525780631fc928ae1461017257806322be3de11461019d57806331392fcb146101b057806331e912a8146101c8575b600080fd5b61015a610335565b604051610169939291906111e3565b60405180910390f35b600354610185906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b600454610185906001600160a01b031681565b600b546101ba9081565b604051908152602001610169565b6101ba6101d6366004611337565b610403565b610185737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6006546101ba565b6102066104b2565b005b6101ba61052f565b61020661021e366004611374565b610939565b6101ba610231366004611374565b60096020526000908152604090205481565b61020661025136600461138d565b6109a7565b6000546001600160a01b0316610185565b6101ba61027536600461138d565b600a6020526000908152604090205481565b600754610185906001600160a01b031681565b6101ba60065481565b6101ba6102b1366004611374565b60086020526000908152604090205481565b6102066102d136600461138d565b610add565b6102066102e4366004611374565b610be5565b6101ba6102f73660046113af565b610c7c565b61020661030a36600461138d565b610d37565b61020661031d366004611440565b610e21565b600554610185906001600160a01b031681565b6000606080600b60000154600b600101600b6002018180548060200260200160405190810160405280929190818152602001828054801561039f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610381575b50505050509150808054806020026020016040519081016040528092919081815260200182805480156103f157602002820191906000526020600020905b8154815260200190600101908083116103dd575b50505050509050925092509250909192565b60065460405163d06ca61f60e01b8152600091737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f916104409186906004016114ba565b600060405180830381865afa15801561045d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261048591908101906114d3565b60018351610493919061157a565b815181106104a3576104a361158d565b60200260200101519050919050565b6000546001600160a01b031633146104e55760405162461bcd60e51b81526004016104dc906115a3565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600654801561093657600060065560075460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d6004820152602481018390526001600160a01b039091169063095ea7b3906044016020604051808303816000875af11580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906115d8565b6105d2576105d26115fa565b604080516002808252606082018352600092602083019080368337505060075482519293506001600160a01b0316918391506000906106135761061361158d565b6001600160a01b0392831660209182029290920101526004548251911690829060019081106106445761064461158d565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d6338ed1739836000843061068742617530611610565b6040518663ffffffff1660e01b81526004016106a7959493929190611623565b6000604051808303816000875af11580156106c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ee91908101906114d3565b50600480546040516370a0823160e01b815230928101929092526000916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610761919061165f565b905060005b600c548110156109325760006064600b600201838154811061078a5761078a61158d565b9060005260206000200154846107a09190611678565b6107aa919061168f565b600454600c80549293506001600160a01b039091169163a9059cbb9190859081106107d7576107d761158d565b60009182526020909120015460405160e083901b6001600160e01b03191681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085491906115d8565b610860576108606115fa565b80600a6000600b600101858154811061087b5761087b61158d565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906108af908490611610565b9091555050600c8054839081106108c8576108c861158d565b60009182526020918290200154600454604080518581526001600160a01b03928316948101949094529116917f9feb579bbc7ffef3037d91ecb8e45b70c8049afa8741cd4cb398926bd98f6922910160405180910390a2508061092a816116b1565b915050610766565b5050505b90565b6003546001600160a01b0316331461095057600080fd5b80600660008282546109629190611610565b90915550506006546040805183815260208101929092527fe8f58c2c4663d8d9bab1fcd91c3bef339c90e81754e2d0ec7e888c5c0b56b08d910160405180910390a150565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016104dc906115a3565b6007546001600160a01b03908116908216036109ed5760006006555b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610a3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5f919061165f565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906115d8565b610ada57610ada6115fa565b50565b6000546001600160a01b03163314610b075760405162461bcd60e51b81526004016104dc906115a3565b6004546001600160a01b0390811690821603610b7c5760405162461bcd60e51b815260206004820152602e60248201527f54726561737572792e736f6c3a3a757064617465537461626c6528292076616c60448201526d1d5948185b1c9958591e481cd95d60921b60648201526084016104dc565b600454604080516001600160a01b03928316815291831660208301527fbe67eb17c76f052c9025267eaab09f6b7c384a42bb6830eb5f36665113cadf70910160405180910390a1600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c0f5760405162461bcd60e51b81526004016104dc906115a3565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c3e8142611610565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60008181526008602052604080822054905163d06ca61f60e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f91610cc3919087906004016114ba565b600060405180830381865afa158015610ce0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d0891908101906114d3565b60018451610d16919061157a565b81518110610d2657610d2661158d565b602002602001015190505b92915050565b6000546001600160a01b03163314610d615760405162461bcd60e51b81526004016104dc906115a3565b6001600160a01b038116610dc65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104dc565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e4b5760405162461bcd60e51b81526004016104dc906115a3565b848314610ed15760405162461bcd60e51b815260206004820152604860248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2077616c6c65746064820152670e65cd8cadccee8d60c31b608482015260a4016104dc565b848114610f635760405162461bcd60e51b815260206004820152605460248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2070657263656e6064820152730e888d2e6e8e4d2c4eae8d2dedc5cd8cadccee8d60631b608482015260a4016104dc565b6000805b86811015610fa757838382818110610f8157610f8161158d565b9050602002013582610f939190611610565b915080610f9f816116b1565b915050610f67565b50806064146110285760405162461bcd60e51b815260206004820152604160248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2073756d50657263656e74446973747269627574696f6e20213d2031306064820152600360fc1b608482015260a4016104dc565b6040518060600160405280878152602001868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505090825250604080516020868102828101820190935286825292830192909187918791829185019084908082843760009201919091525050509152508051600b90815560208083015180516110c392600c9201906110ea565b50604082015180516110df91600284019160209091019061114f565b505050505050505050565b82805482825590600052602060002090810192821561113f579160200282015b8281111561113f57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019061110a565b5061114b92915061118a565b5090565b82805482825590600052602060002090810192821561113f579160200282015b8281111561113f57825182559160200191906001019061116f565b5b8082111561114b576000815560010161118b565b600081518084526020808501945080840160005b838110156111d85781516001600160a01b0316875295820195908201906001016111b3565b509495945050505050565b838152600060206060818401526111fd606084018661119f565b838103604085015284518082528286019183019060005b8181101561123057835183529284019291840191600101611214565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561127d5761127d61123e565b604052919050565b600067ffffffffffffffff82111561129f5761129f61123e565b5060051b60200190565b80356001600160a01b03811681146112c057600080fd5b919050565b600082601f8301126112d657600080fd5b813560206112eb6112e683611285565b611254565b82815260059290921b8401810191818101908684111561130a57600080fd5b8286015b8481101561132c5761131f816112a9565b835291830191830161130e565b509695505050505050565b60006020828403121561134957600080fd5b813567ffffffffffffffff81111561136057600080fd5b61136c848285016112c5565b949350505050565b60006020828403121561138657600080fd5b5035919050565b60006020828403121561139f57600080fd5b6113a8826112a9565b9392505050565b600080604083850312156113c257600080fd5b823567ffffffffffffffff8111156113d957600080fd5b6113e5858286016112c5565b95602094909401359450505050565b60008083601f84011261140657600080fd5b50813567ffffffffffffffff81111561141e57600080fd5b6020830191508360208260051b850101111561143957600080fd5b9250929050565b60008060008060006060868803121561145857600080fd5b85359450602086013567ffffffffffffffff8082111561147757600080fd5b61148389838a016113f4565b9096509450604088013591508082111561149c57600080fd5b506114a9888289016113f4565b969995985093965092949392505050565b82815260406020820152600061136c604083018461119f565b600060208083850312156114e657600080fd5b825167ffffffffffffffff8111156114fd57600080fd5b8301601f8101851361150e57600080fd5b805161151c6112e682611285565b81815260059190911b8201830190838101908783111561153b57600080fd5b928401925b8284101561155957835182529284019290840190611540565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610d3157610d31611564565b634e487b7160e01b600052603260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156115ea57600080fd5b815180151581146113a857600080fd5b634e487b7160e01b600052600160045260246000fd5b80820180821115610d3157610d31611564565b85815284602082015260a06040820152600061164260a083018661119f565b6001600160a01b0394909416606083015250608001529392505050565b60006020828403121561167157600080fd5b5051919050565b8082028115828204841417610d3157610d31611564565b6000826116ac57634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016116c3576116c3611564565b506001019056fea26469706673582212203c7ec3091ab8ec598f46705ce3a77ab2566c8b685e82486782c553c6d00f7d7564736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", "sourceMap": "560:8820:17:-:0;;;2805:227;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;955:17:20;998:18;;-1:-1:-1;;;;;;998:18:20;699:10:19;998:18:20;;;;;1032:43;;699:10:19;;;;-1:-1:-1;;;;;;;;;;;1032:43:20;955:17;;1032:43;-1:-1:-1;2880:8:17;:20;;-1:-1:-1;;;;;2880:20:17;;;-1:-1:-1;;;;;;2880:20:17;;;;;;;2911:6;:16;;;;;;;;;;;;;;;2940:25;2958:6;2940:17;:25::i;:::-;1070:42;-1:-1:-1;;;;;2985:37:17;;:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2978:4;:46;;-1:-1:-1;;;;;;2978:46:17;-1:-1:-1;;;;;2978:46:17;;;;;;;;;;-1:-1:-1;560:8820:17;;-1:-1:-1;;560:8820:17;2118:244:20;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;994:2:32;1376:68:20;;;976:21:32;;;1013:18;;;1006:30;1072:34;1052:18;;;1045:62;1124:18;;1376:68:20;;;;;;;;;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;1355:2:32;2199:73:20::1;::::0;::::1;1337:21:32::0;1394:2;1374:18;;;1367:30;1433:34;1413:18;;;1406:62;-1:-1:-1;;;1484:18:32;;;1477:36;1530:19;;2199:73:20::1;1153:402:32::0;2199:73:20::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;2288:38:20;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:20::1;-1:-1:-1::0;;;;;2337:17:20;;;::::1;::::0;;;::::1;::::0;;2118:244::o;14:177:32:-;93:13;;-1:-1:-1;;;;;135:31:32;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:378::-;284:6;292;300;353:2;341:9;332:7;328:23;324:32;321:52;;;369:1;366;359:12;321:52;392:40;422:9;392:40;:::i;:::-;382:50;;451:49;496:2;485:9;481:18;451:49;:::i;:::-;441:59;;519:49;564:2;553:9;549:18;519:49;:::i;:::-;509:59;;196:378;;;;;:::o;579:208::-;649:6;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;741:40;771:9;741:40;:::i;:::-;731:50;579:208;-1:-1:-1;;;579:208:32:o;1153:402::-;560:8820:17;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b506004361061014d5760003560e01c8063838a4107116100c3578063cdb6ee381161007c578063cdb6ee38146102c3578063dd467064146102d6578063ed0ce006146102e9578063f2fde38b146102fc578063f66ed0141461030f578063f851a4401461032257600080fd5b8063838a4107146102435780638da5cb5b1461025657806395e4a6b314610267578063ad5c464814610287578063ba13f4c51461029a578063bf66dc6e146102a357600080fd5b8063676d356311610115578063676d3563146101db57806368a61804146101f6578063715018a6146101fe57806371fc737c14610208578063755965b814610210578063813db8f31461022357600080fd5b80631f72028d146101525780631fc928ae1461017257806322be3de11461019d57806331392fcb146101b057806331e912a8146101c8575b600080fd5b61015a610335565b604051610169939291906111e2565b60405180910390f35b600354610185906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b600454610185906001600160a01b031681565b600b546101ba9081565b604051908152602001610169565b6101ba6101d6366004611336565b610403565b610185737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6006546101ba565b6102066104b2565b005b6101ba61052f565b61020661021e366004611373565b610939565b6101ba610231366004611373565b60096020526000908152604090205481565b61020661025136600461138c565b6109a7565b6000546001600160a01b0316610185565b6101ba61027536600461138c565b600a6020526000908152604090205481565b600754610185906001600160a01b031681565b6101ba60065481565b6101ba6102b1366004611373565b60086020526000908152604090205481565b6102066102d136600461138c565b610add565b6102066102e4366004611373565b610be5565b6101ba6102f73660046113ae565b610c7c565b61020661030a36600461138c565b610d36565b61020661031d36600461143f565b610e20565b600554610185906001600160a01b031681565b6000606080600b60000154600b600101600b6002018180548060200260200160405190810160405280929190818152602001828054801561039f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610381575b50505050509150808054806020026020016040519081016040528092919081815260200182805480156103f157602002820191906000526020600020905b8154815260200190600101908083116103dd575b50505050509050925092509250909192565b60065460405163d06ca61f60e01b8152600091737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f916104409186906004016114b9565b600060405180830381865afa15801561045d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261048591908101906114d2565b600183516104939190611579565b815181106104a3576104a3611590565b60200260200101519050919050565b6000546001600160a01b031633146104e55760405162461bcd60e51b81526004016104dc906115a6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600654801561093657600060065560075460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d6004820152602481018390526001600160a01b039091169063095ea7b3906044016020604051808303816000875af11580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906115db565b6105d2576105d26115fd565b604080516002808252606082018352600092602083019080368337505060075482519293506001600160a01b03169183915060009061061357610613611590565b6001600160a01b03928316602091820292909201015260045482519116908290600190811061064457610644611590565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d6338ed1739836000843061068742617530611613565b6040518663ffffffff1660e01b81526004016106a795949392919061162b565b6000604051808303816000875af11580156106c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ee91908101906114d2565b50600480546040516370a0823160e01b815230928101929092526000916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107619190611667565b905060005b600c548110156109325760006064600b600201838154811061078a5761078a611590565b9060005260206000200154846107a09190611680565b6107aa919061169f565b600454600c80549293506001600160a01b039091169163a9059cbb9190859081106107d7576107d7611590565b60009182526020909120015460405160e083901b6001600160e01b03191681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085491906115db565b610860576108606115fd565b80600a6000600b600101858154811061087b5761087b611590565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906108af908490611613565b9091555050600c8054839081106108c8576108c8611590565b60009182526020918290200154600454604080518581526001600160a01b03928316948101949094529116917f9feb579bbc7ffef3037d91ecb8e45b70c8049afa8741cd4cb398926bd98f6922910160405180910390a2508061092a816116c1565b915050610766565b5050505b90565b6003546001600160a01b0316331461095057600080fd5b80600660008282546109629190611613565b90915550506006546040805183815260208101929092527fe8f58c2c4663d8d9bab1fcd91c3bef339c90e81754e2d0ec7e888c5c0b56b08d910160405180910390a150565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016104dc906115a6565b6007546001600160a01b03908116908216036109ed5760006006555b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610a3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5f9190611667565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906115db565b610ada57610ada6115fd565b50565b6000546001600160a01b03163314610b075760405162461bcd60e51b81526004016104dc906115a6565b6004546001600160a01b0390811690821603610b7c5760405162461bcd60e51b815260206004820152602e60248201527f54726561737572792e736f6c3a3a757064617465537461626c6528292076616c60448201526d1d5948185b1c9958591e481cd95d60921b60648201526084016104dc565b600454604080516001600160a01b03928316815291831660208301527fbe67eb17c76f052c9025267eaab09f6b7c384a42bb6830eb5f36665113cadf70910160405180910390a1600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c0f5760405162461bcd60e51b81526004016104dc906115a6565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c3e8142611613565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60008181526008602052604080822054905163d06ca61f60e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f91610cc3919087906004016114b9565b600060405180830381865afa158015610ce0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d0891908101906114d2565b60018451610d169190611579565b81518110610d2657610d26611590565b6020026020010151905092915050565b6000546001600160a01b03163314610d605760405162461bcd60e51b81526004016104dc906115a6565b6001600160a01b038116610dc55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104dc565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e4a5760405162461bcd60e51b81526004016104dc906115a6565b848314610ed05760405162461bcd60e51b815260206004820152604860248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2077616c6c65746064820152670e65cd8cadccee8d60c31b608482015260a4016104dc565b848114610f625760405162461bcd60e51b815260206004820152605460248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2070657263656e6064820152730e888d2e6e8e4d2c4eae8d2dedc5cd8cadccee8d60631b608482015260a4016104dc565b6000805b86811015610fa657838382818110610f8057610f80611590565b9050602002013582610f929190611613565b915080610f9e816116c1565b915050610f66565b50806064146110275760405162461bcd60e51b815260206004820152604160248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2073756d50657263656e74446973747269627574696f6e20213d2031306064820152600360fc1b608482015260a4016104dc565b6040518060600160405280878152602001868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505090825250604080516020868102828101820190935286825292830192909187918791829185019084908082843760009201919091525050509152508051600b90815560208083015180516110c292600c9201906110e9565b50604082015180516110de91600284019160209091019061114e565b505050505050505050565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611109565b5061114a929150611189565b5090565b82805482825590600052602060002090810192821561113e579160200282015b8281111561113e57825182559160200191906001019061116e565b5b8082111561114a576000815560010161118a565b600081518084526020808501945080840160005b838110156111d75781516001600160a01b0316875295820195908201906001016111b2565b509495945050505050565b838152600060206060818401526111fc606084018661119e565b838103604085015284518082528286019183019060005b8181101561122f57835183529284019291840191600101611213565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561127c5761127c61123d565b604052919050565b600067ffffffffffffffff82111561129e5761129e61123d565b5060051b60200190565b80356001600160a01b03811681146112bf57600080fd5b919050565b600082601f8301126112d557600080fd5b813560206112ea6112e583611284565b611253565b82815260059290921b8401810191818101908684111561130957600080fd5b8286015b8481101561132b5761131e816112a8565b835291830191830161130d565b509695505050505050565b60006020828403121561134857600080fd5b813567ffffffffffffffff81111561135f57600080fd5b61136b848285016112c4565b949350505050565b60006020828403121561138557600080fd5b5035919050565b60006020828403121561139e57600080fd5b6113a7826112a8565b9392505050565b600080604083850312156113c157600080fd5b823567ffffffffffffffff8111156113d857600080fd5b6113e4858286016112c4565b95602094909401359450505050565b60008083601f84011261140557600080fd5b50813567ffffffffffffffff81111561141d57600080fd5b6020830191508360208260051b850101111561143857600080fd5b9250929050565b60008060008060006060868803121561145757600080fd5b85359450602086013567ffffffffffffffff8082111561147657600080fd5b61148289838a016113f3565b9096509450604088013591508082111561149b57600080fd5b506114a8888289016113f3565b969995985093965092949392505050565b82815260406020820152600061136b604083018461119e565b600060208083850312156114e557600080fd5b825167ffffffffffffffff8111156114fc57600080fd5b8301601f8101851361150d57600080fd5b805161151b6112e582611284565b81815260059190911b8201830190838101908783111561153a57600080fd5b928401925b828410156115585783518252928401929084019061153f565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561158b5761158b611563565b500390565b634e487b7160e01b600052603260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156115ed57600080fd5b815180151581146113a757600080fd5b634e487b7160e01b600052600160045260246000fd5b6000821982111561162657611626611563565b500190565b85815284602082015260a06040820152600061164a60a083018661119e565b6001600160a01b0394909416606083015250608001529392505050565b60006020828403121561167957600080fd5b5051919050565b600081600019048311821515161561169a5761169a611563565b500290565b6000826116bc57634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016116d3576116d3611563565b506001019056fea264697066735822122083afb4b6a1839860c5778cef5a7f10d1bb5def6021564255a58262f59ca3802464736f6c634300080f0033", - "sourceMap": "560:8820:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:246;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;756:23;;;;;-1:-1:-1;;;;;756:23:17;;;;;;-1:-1:-1;;;;;1524:32:32;;;1506:51;;1494:2;1479:18;756:23:17;1360:203:32;852:21:17;;;;;-1:-1:-1;;;;;852:21:17;;;1773:34;;;;;;;;;;1714:25:32;;;1702:2;1687:18;1773:34:17;1568:177:32;9129:248:17;;;;;;:::i;:::-;;:::i;1031:81::-;;1070:42;1031:81;;4196:117;4286:19;;4196:117;;1815:148:20;;;:::i;:::-;;5797:1248:17;;;:::i;3967:221::-;;;;;;:::i;:::-;;:::i;1552:50::-;;;;;;:::i;:::-;;;;;;;;;;;;;;7778:218;;;;;;:::i;:::-;;:::i;1164:87:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;1164:87;;1683:54:17;;;;;;:::i;:::-;;;;;;;;;;;;;;1121:19;;;;;-1:-1:-1;;;;;1121:19:17;;;984:34;;;;;;1486:54;;;;;;:::i;:::-;;;;;;;;;;;;;;8166:226;;;;;;:::i;:::-;;:::i;2444::20:-;;;;;;:::i;:::-;;:::i;8653:274:17:-;;;;;;:::i;:::-;;:::i;2118:244:20:-;;;;;;:::i;:::-;;:::i;4734:1001:17:-;;;;;;:::i;:::-;;:::i;955:20::-;;;;;-1:-1:-1;;;;;955:20:17;;;7311:246;7360:7;7369:16;7387:13;7435:11;:23;;;7473:11;:19;;7507:11;:31;;7413:136;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7413:136:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:246;;;:::o;9129:248::-;9300:19;;9239:112;;-1:-1:-1;;;9239:112:17;;9212:7;;1070:42;;9239:46;;:112;;9335:5;;9239:112;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9239:112:17;;;;;;;;;;;;:::i;:::-;9367:1;9352:5;:12;:16;;;;:::i;:::-;9239:130;;;;;;;;:::i;:::-;;;;;;;9232:137;;9129:248;;;:::o;1815:148:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;;;;;;;;;1922:1:::1;1906:6:::0;;1885:40:::1;::::0;-1:-1:-1;;;;;1906:6:20;;::::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1953:1;1936:19:::0;;-1:-1:-1;;;;;;1936:19:20::1;::::0;;1815:148::o;5797:1248:17:-;5905:19;;5949:23;;5945:1054;;6013:1;5991:19;:23;6045:4;;6038:64;;-1:-1:-1;;;6038:64:17;;1070:42;6038:64;;;7721:51:32;7788:18;;;7781:34;;;-1:-1:-1;;;;;6045:4:17;;;;6038:20;;7694:18:32;;6038:64:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6031:72;;;;:::i;:::-;6151:16;;;6165:1;6151:16;;;;;;;;6120:28;;6151:16;;;;;;;;-1:-1:-1;;6201:4:17;;6184:14;;;;-1:-1:-1;;;;;;6201:4:17;;6184:14;;-1:-1:-1;6201:4:17;;6184:14;;;;:::i;:::-;-1:-1:-1;;;;;6184:21:17;;;:14;;;;;;;;;:21;6237:6;;6220:14;;6237:6;;;6220:11;;6237:6;;6220:14;;;;;;:::i;:::-;-1:-1:-1;;;;;6220:23:17;;;:14;;;;;;;;;;;:23;1070:42;6260:57;6336:19;6385:1;6405:11;6443:4;6467:23;:15;6485:5;6467:23;:::i;:::-;6260:245;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6260:245:17;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6550:6:17;;;6543:39;;-1:-1:-1;;;6543:39:17;;6576:4;6543:39;;;1506:51:32;;;;6522:18:17;;-1:-1:-1;;;;;6550:6:17;;;;6543:24;;1479:18:32;;6543:39:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6522:60;;6604:6;6599:389;6620:19;:26;6616:30;;6599:389;;;6672:8;6736:3;6699:11;:31;;6731:1;6699:34;;;;;;;;:::i;:::-;;;;;;;;;6683:13;:50;;;;:::i;:::-;:56;;;;:::i;:::-;6774:6;;6791:19;:22;;6672:67;;-1:-1:-1;;;;;;6774:6:17;;;;6767:23;;6791:19;6811:1;;6791:22;;;;;;:::i;:::-;;;;;;;;;;;6767:52;;;;;;-1:-1:-1;;;;;;6767:52:17;;;-1:-1:-1;;;;;6791:22:17;;;6767:52;;;7721:51:32;7788:18;;;7781:34;;;7694:18;;6767:52:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6760:60;;;;:::i;:::-;6888:3;6841:19;:43;6861:11;:19;;6881:1;6861:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;6861:22:17;6841:43;;;;;;;;;;;;:50;;:43;;6861:22;6841:50;;;;;:::i;:::-;;;;-1:-1:-1;;6936:19:17;:22;;6956:1;;6936:22;;;;;;:::i;:::-;;;;;;;;;;;;6965:6;;6915:57;;;9718:25:32;;;-1:-1:-1;;;;;6965:6:17;;;9759:18:32;;;9752:60;;;;6936:22:17;;;6915:57;;9691:18:32;6915:57:17;;;;;;;-1:-1:-1;6648:3:17;;;;:::i;:::-;;;;6599:389;;;;5974:1025;;5945:1054;5797:1248;:::o;3967:221::-;3198:8;;-1:-1:-1;;;;;3198:8:17;3184:10;:22;3176:31;;;;;;4060:4:::1;4037:19;;:27;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4104:19:17::1;::::0;4080:44:::1;::::0;;10137:25:32;;;10193:2;10178:18;;10171:34;;;;4080:44:17::1;::::0;10110:18:32;4080:44:17::1;;;;;;;3967:221:::0;:::o;7778:218::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;7860:4:17::1;::::0;-1:-1:-1;;;;;7860:4:17;;::::1;7850:14:::0;;::::1;::::0;7846:48:::1;;7890:1;7868:19;:23:::0;7846:48:::1;7947:39;::::0;-1:-1:-1;;;7947:39:17;;7980:4:::1;7947:39;::::0;::::1;1506:51:32::0;-1:-1:-1;;;;;7911:23:17;::::1;::::0;::::1;::::0;7935:10:::1;::::0;7911:23;;7947:24:::1;::::0;1479:18:32;;7947:39:17::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7911:76;::::0;-1:-1:-1;;;;;;7911:76:17::1;::::0;;;;;;-1:-1:-1;;;;;7739:32:32;;;7911:76:17::1;::::0;::::1;7721:51:32::0;7788:18;;;7781:34;7694:18;;7911:76:17::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7904:84;;;;:::i;:::-;7778:218:::0;:::o;8166:226::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;8254:6:17::1;::::0;-1:-1:-1;;;;;8254:6:17;;::::1;8243:17:::0;;::::1;::::0;8235:76:::1;;;::::0;-1:-1:-1;;;8235:76:17;;10418:2:32;8235:76:17::1;::::0;::::1;10400:21:32::0;10457:2;10437:18;;;10430:30;10496:34;10476:18;;;10469:62;-1:-1:-1;;;10547:18:32;;;10540:44;10601:19;;8235:76:17::1;10216:410:32::0;8235:76:17::1;8341:6;::::0;8327:30:::1;::::0;;-1:-1:-1;;;;;8341:6:17;;::::1;10843:34:32::0;;10913:15;;;10908:2;10893:18;;10886:43;8327:30:17::1;::::0;10778:18:32;8327:30:17::1;;;;;;;8368:6;:16:::0;;-1:-1:-1;;;;;;8368:16:17::1;-1:-1:-1::0;;;;;8368:16:17;;;::::1;::::0;;;::::1;::::0;;8166:226::o;2444::20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;2525:6:::1;::::0;;;2508:23;;-1:-1:-1;;;;;;2508:23:20;;::::1;-1:-1:-1::0;;;;;2525:6:20;::::1;2508:23;::::0;;;2542:19:::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2659:1:::1;2643:6:::0;;2622:40:::1;::::0;-1:-1:-1;;;;;2643:6:20;;::::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;8653:274:17:-;8746:7;8834:35;;;:25;:35;;;;;;;8773:128;;-1:-1:-1;;;8773:128:17;;1070:42;;8773:46;;:128;;8834:35;8885:5;;8773:128;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8773:128:17;;;;;;;;;;;;:::i;:::-;8917:1;8902:5;:12;:16;;;;:::i;:::-;8773:146;;;;;;;;:::i;:::-;;;;;;;8766:153;;8653:274;;;;:::o;2118:244:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;11142:2:32;2199:73:20::1;::::0;::::1;11124:21:32::0;11181:2;11161:18;;;11154:30;11220:34;11200:18;;;11193:62;-1:-1:-1;;;11271:18:32;;;11264:36;11317:19;;2199:73:20::1;10940:402:32::0;2199:73:20::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6;::::1;::::0;2288:38:::1;::::0;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:20::1;-1:-1:-1::0;;;;;2337:17:20;;;::::1;::::0;;;::::1;::::0;;2118:244::o;4734:1001:17:-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;4951:31:17;;::::1;4943:116;;;::::0;-1:-1:-1;;;4943:116:17;;11549:2:32;4943:116:17::1;::::0;::::1;11531:21:32::0;11588:2;11568:18;;;11561:30;11627:34;11607:18;;;11600:62;11698:34;11678:18;;;11671:62;-1:-1:-1;;;11749:19:32;;;11742:39;11798:19;;4943:116:17::1;11347:476:32::0;4943:116:17::1;5078:43:::0;;::::1;5070:140;;;::::0;-1:-1:-1;;;5070:140:17;;12030:2:32;5070:140:17::1;::::0;::::1;12012:21:32::0;12069:2;12049:18;;;12042:30;12108:34;12088:18;;;12081:62;12179:34;12159:18;;;12152:62;-1:-1:-1;;;12230:19:32;;;12223:51;12291:19;;5070:140:17::1;11828:488:32::0;5070:140:17::1;5275:27;::::0;5313:115:::1;5333:12;5329:1;:16;5313:115;;;5393:20;;5414:1;5393:23;;;;;;;:::i;:::-;;;;;;;5367:49;;;;;:::i;:::-;::::0;-1:-1:-1;5347:3:17;::::1;::::0;::::1;:::i;:::-;;;;5313:115;;;;5446:22;5472:3;5446:29;5438:107;;;::::0;-1:-1:-1;;;5438:107:17;;12523:2:32;5438:107:17::1;::::0;::::1;12505:21:32::0;12562:2;12542:18;;;12535:30;12601:34;12581:18;;;12574:62;12672:34;12652:18;;;12645:62;-1:-1:-1;;;12723:19:32;;;12716:32;12765:19;;5438:107:17::1;12321:469:32::0;5438:107:17::1;5616:111;;;;;;;;5646:12;5616:111;;;;5673:8;;5616:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;;5616:111:17;;;-1:-1:-1;5616:111:17::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;;;;;;::::1;::::0;;;5696:20;;;;;;5616:111;::::1;::::0;5696:20;;5616:111;5696:20;5616:111;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;;;5616:111:17;;-1:-1:-1;5602:125:17;;:11:::1;:125:::0;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;5602:125:17::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;;;;;4734:1001:17:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:461:32;67:3;105:5;99:12;132:6;127:3;120:19;158:4;187:2;182:3;178:12;171:19;;224:2;217:5;213:14;245:1;255:195;269:6;266:1;263:13;255:195;;;334:13;;-1:-1:-1;;;;;330:39:32;318:52;;390:12;;;;425:15;;;;366:1;284:9;255:195;;;-1:-1:-1;466:3:32;;14:461;-1:-1:-1;;;;;14:461:32:o;480:875::-;765:6;754:9;747:25;728:4;791:2;829;824;813:9;809:18;802:30;855:56;907:2;896:9;892:18;884:6;855:56;:::i;:::-;947:22;;;942:2;927:18;;920:50;1019:13;;1041:22;;;1117:15;;;;1079;;;1150:1;1160:169;1174:6;1171:1;1168:13;1160:169;;;1235:13;;1223:26;;1304:15;;;;1269:12;;;;1196:1;1189:9;1160:169;;;-1:-1:-1;1346:3:32;;480:875;-1:-1:-1;;;;;;;;480:875:32:o;1750:127::-;1811:10;1806:3;1802:20;1799:1;1792:31;1842:4;1839:1;1832:15;1866:4;1863:1;1856:15;1882:275;1953:2;1947:9;2018:2;1999:13;;-1:-1:-1;;1995:27:32;1983:40;;2053:18;2038:34;;2074:22;;;2035:62;2032:88;;;2100:18;;:::i;:::-;2136:2;2129:22;1882:275;;-1:-1:-1;1882:275:32:o;2162:183::-;2222:4;2255:18;2247:6;2244:30;2241:56;;;2277:18;;:::i;:::-;-1:-1:-1;2322:1:32;2318:14;2334:4;2314:25;;2162:183::o;2350:173::-;2418:20;;-1:-1:-1;;;;;2467:31:32;;2457:42;;2447:70;;2513:1;2510;2503:12;2447:70;2350:173;;;:::o;2528:668::-;2582:5;2635:3;2628:4;2620:6;2616:17;2612:27;2602:55;;2653:1;2650;2643:12;2602:55;2689:6;2676:20;2715:4;2739:60;2755:43;2795:2;2755:43;:::i;:::-;2739:60;:::i;:::-;2833:15;;;2919:1;2915:10;;;;2903:23;;2899:32;;;2864:12;;;;2943:15;;;2940:35;;;2971:1;2968;2961:12;2940:35;3007:2;2999:6;2995:15;3019:148;3035:6;3030:3;3027:15;3019:148;;;3101:23;3120:3;3101:23;:::i;:::-;3089:36;;3145:12;;;;3052;;3019:148;;;-1:-1:-1;3185:5:32;2528:668;-1:-1:-1;;;;;;2528:668:32:o;3201:348::-;3285:6;3338:2;3326:9;3317:7;3313:23;3309:32;3306:52;;;3354:1;3351;3344:12;3306:52;3394:9;3381:23;3427:18;3419:6;3416:30;3413:50;;;3459:1;3456;3449:12;3413:50;3482:61;3535:7;3526:6;3515:9;3511:22;3482:61;:::i;:::-;3472:71;3201:348;-1:-1:-1;;;;3201:348:32:o;3554:180::-;3613:6;3666:2;3654:9;3645:7;3641:23;3637:32;3634:52;;;3682:1;3679;3672:12;3634:52;-1:-1:-1;3705:23:32;;3554:180;-1:-1:-1;3554:180:32:o;3739:186::-;3798:6;3851:2;3839:9;3830:7;3826:23;3822:32;3819:52;;;3867:1;3864;3857:12;3819:52;3890:29;3909:9;3890:29;:::i;:::-;3880:39;3739:186;-1:-1:-1;;;3739:186:32:o;3930:416::-;4023:6;4031;4084:2;4072:9;4063:7;4059:23;4055:32;4052:52;;;4100:1;4097;4090:12;4052:52;4140:9;4127:23;4173:18;4165:6;4162:30;4159:50;;;4205:1;4202;4195:12;4159:50;4228:61;4281:7;4272:6;4261:9;4257:22;4228:61;:::i;:::-;4218:71;4336:2;4321:18;;;;4308:32;;-1:-1:-1;;;;3930:416:32:o;4351:367::-;4414:8;4424:6;4478:3;4471:4;4463:6;4459:17;4455:27;4445:55;;4496:1;4493;4486:12;4445:55;-1:-1:-1;4519:20:32;;4562:18;4551:30;;4548:50;;;4594:1;4591;4584:12;4548:50;4631:4;4623:6;4619:17;4607:29;;4691:3;4684:4;4674:6;4671:1;4667:14;4659:6;4655:27;4651:38;4648:47;4645:67;;;4708:1;4705;4698:12;4645:67;4351:367;;;;;:::o;4723:841::-;4854:6;4862;4870;4878;4886;4939:2;4927:9;4918:7;4914:23;4910:32;4907:52;;;4955:1;4952;4945:12;4907:52;4991:9;4978:23;4968:33;;5052:2;5041:9;5037:18;5024:32;5075:18;5116:2;5108:6;5105:14;5102:34;;;5132:1;5129;5122:12;5102:34;5171:70;5233:7;5224:6;5213:9;5209:22;5171:70;:::i;:::-;5260:8;;-1:-1:-1;5145:96:32;-1:-1:-1;5348:2:32;5333:18;;5320:32;;-1:-1:-1;5364:16:32;;;5361:36;;;5393:1;5390;5383:12;5361:36;;5432:72;5496:7;5485:8;5474:9;5470:24;5432:72;:::i;:::-;4723:841;;;;-1:-1:-1;4723:841:32;;-1:-1:-1;5523:8:32;;5406:98;4723:841;-1:-1:-1;;;4723:841:32:o;5569:332::-;5776:6;5765:9;5758:25;5819:2;5814;5803:9;5799:18;5792:30;5739:4;5839:56;5891:2;5880:9;5876:18;5868:6;5839:56;:::i;5906:881::-;6001:6;6032:2;6075;6063:9;6054:7;6050:23;6046:32;6043:52;;;6091:1;6088;6081:12;6043:52;6124:9;6118:16;6157:18;6149:6;6146:30;6143:50;;;6189:1;6186;6179:12;6143:50;6212:22;;6265:4;6257:13;;6253:27;-1:-1:-1;6243:55:32;;6294:1;6291;6284:12;6243:55;6323:2;6317:9;6346:60;6362:43;6402:2;6362:43;:::i;6346:60::-;6440:15;;;6522:1;6518:10;;;;6510:19;;6506:28;;;6471:12;;;;6546:19;;;6543:39;;;6578:1;6575;6568:12;6543:39;6602:11;;;;6622:135;6638:6;6633:3;6630:15;6622:135;;;6704:10;;6692:23;;6655:12;;;;6735;;;;6622:135;;;6776:5;5906:881;-1:-1:-1;;;;;;;5906:881:32:o;6792:127::-;6853:10;6848:3;6844:20;6841:1;6834:31;6884:4;6881:1;6874:15;6908:4;6905:1;6898:15;6924:125;6964:4;6992:1;6989;6986:8;6983:34;;;6997:18;;:::i;:::-;-1:-1:-1;7034:9:32;;6924:125::o;7054:127::-;7115:10;7110:3;7106:20;7103:1;7096:31;7146:4;7143:1;7136:15;7170:4;7167:1;7160:15;7186:356;7388:2;7370:21;;;7407:18;;;7400:30;7466:34;7461:2;7446:18;;7439:62;7533:2;7518:18;;7186:356::o;7826:277::-;7893:6;7946:2;7934:9;7925:7;7921:23;7917:32;7914:52;;;7962:1;7959;7952:12;7914:52;7994:9;7988:16;8047:5;8040:13;8033:21;8026:5;8023:32;8013:60;;8069:1;8066;8059:12;8108:127;8169:10;8164:3;8160:20;8157:1;8150:31;8200:4;8197:1;8190:15;8224:4;8221:1;8214:15;8240:128;8280:3;8311:1;8307:6;8304:1;8301:13;8298:39;;;8317:18;;:::i;:::-;-1:-1:-1;8353:9:32;;8240:128::o;8373:582::-;8672:6;8661:9;8654:25;8715:6;8710:2;8699:9;8695:18;8688:34;8758:3;8753:2;8742:9;8738:18;8731:31;8635:4;8779:57;8831:3;8820:9;8816:19;8808:6;8779:57;:::i;:::-;-1:-1:-1;;;;;8872:32:32;;;;8867:2;8852:18;;8845:60;-1:-1:-1;8936:3:32;8921:19;8914:35;8771:65;8373:582;-1:-1:-1;;;8373:582:32:o;8960:184::-;9030:6;9083:2;9071:9;9062:7;9058:23;9054:32;9051:52;;;9099:1;9096;9089:12;9051:52;-1:-1:-1;9122:16:32;;8960:184;-1:-1:-1;8960:184:32:o;9149:168::-;9189:7;9255:1;9251;9247:6;9243:14;9240:1;9237:21;9232:1;9225:9;9218:17;9214:45;9211:71;;;9262:18;;:::i;:::-;-1:-1:-1;9302:9:32;;9149:168::o;9322:217::-;9362:1;9388;9378:132;;9432:10;9427:3;9423:20;9420:1;9413:31;9467:4;9464:1;9457:15;9495:4;9492:1;9485:15;9378:132;-1:-1:-1;9524:9:32;;9322:217::o;9823:135::-;9862:3;9883:17;;;9880:43;;9903:18;;:::i;:::-;-1:-1:-1;9950:1:32;9939:13;;9823:135::o", + "object": "0x608060405234801561001057600080fd5b506004361061014d5760003560e01c8063838a4107116100c3578063cdb6ee381161007c578063cdb6ee38146102c3578063dd467064146102d6578063ed0ce006146102e9578063f2fde38b146102fc578063f66ed0141461030f578063f851a4401461032257600080fd5b8063838a4107146102435780638da5cb5b1461025657806395e4a6b314610267578063ad5c464814610287578063ba13f4c51461029a578063bf66dc6e146102a357600080fd5b8063676d356311610115578063676d3563146101db57806368a61804146101f6578063715018a6146101fe57806371fc737c14610208578063755965b814610210578063813db8f31461022357600080fd5b80631f72028d146101525780631fc928ae1461017257806322be3de11461019d57806331392fcb146101b057806331e912a8146101c8575b600080fd5b61015a610335565b604051610169939291906111e3565b60405180910390f35b600354610185906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b600454610185906001600160a01b031681565b600b546101ba9081565b604051908152602001610169565b6101ba6101d6366004611337565b610403565b610185737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6006546101ba565b6102066104b2565b005b6101ba61052f565b61020661021e366004611374565b610939565b6101ba610231366004611374565b60096020526000908152604090205481565b61020661025136600461138d565b6109a7565b6000546001600160a01b0316610185565b6101ba61027536600461138d565b600a6020526000908152604090205481565b600754610185906001600160a01b031681565b6101ba60065481565b6101ba6102b1366004611374565b60086020526000908152604090205481565b6102066102d136600461138d565b610add565b6102066102e4366004611374565b610be5565b6101ba6102f73660046113af565b610c7c565b61020661030a36600461138d565b610d37565b61020661031d366004611440565b610e21565b600554610185906001600160a01b031681565b6000606080600b60000154600b600101600b6002018180548060200260200160405190810160405280929190818152602001828054801561039f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610381575b50505050509150808054806020026020016040519081016040528092919081815260200182805480156103f157602002820191906000526020600020905b8154815260200190600101908083116103dd575b50505050509050925092509250909192565b60065460405163d06ca61f60e01b8152600091737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f916104409186906004016114ba565b600060405180830381865afa15801561045d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261048591908101906114d3565b60018351610493919061157a565b815181106104a3576104a361158d565b60200260200101519050919050565b6000546001600160a01b031633146104e55760405162461bcd60e51b81526004016104dc906115a3565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600654801561093657600060065560075460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d6004820152602481018390526001600160a01b039091169063095ea7b3906044016020604051808303816000875af11580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906115d8565b6105d2576105d26115fa565b604080516002808252606082018352600092602083019080368337505060075482519293506001600160a01b0316918391506000906106135761061361158d565b6001600160a01b0392831660209182029290920101526004548251911690829060019081106106445761064461158d565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d6338ed1739836000843061068742617530611610565b6040518663ffffffff1660e01b81526004016106a7959493929190611623565b6000604051808303816000875af11580156106c6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ee91908101906114d3565b50600480546040516370a0823160e01b815230928101929092526000916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610761919061165f565b905060005b600c548110156109325760006064600b600201838154811061078a5761078a61158d565b9060005260206000200154846107a09190611678565b6107aa919061168f565b600454600c80549293506001600160a01b039091169163a9059cbb9190859081106107d7576107d761158d565b60009182526020909120015460405160e083901b6001600160e01b03191681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085491906115d8565b610860576108606115fa565b80600a6000600b600101858154811061087b5761087b61158d565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906108af908490611610565b9091555050600c8054839081106108c8576108c861158d565b60009182526020918290200154600454604080518581526001600160a01b03928316948101949094529116917f9feb579bbc7ffef3037d91ecb8e45b70c8049afa8741cd4cb398926bd98f6922910160405180910390a2508061092a816116b1565b915050610766565b5050505b90565b6003546001600160a01b0316331461095057600080fd5b80600660008282546109629190611610565b90915550506006546040805183815260208101929092527fe8f58c2c4663d8d9bab1fcd91c3bef339c90e81754e2d0ec7e888c5c0b56b08d910160405180910390a150565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016104dc906115a3565b6007546001600160a01b03908116908216036109ed5760006006555b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610a3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5f919061165f565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906115d8565b610ada57610ada6115fa565b50565b6000546001600160a01b03163314610b075760405162461bcd60e51b81526004016104dc906115a3565b6004546001600160a01b0390811690821603610b7c5760405162461bcd60e51b815260206004820152602e60248201527f54726561737572792e736f6c3a3a757064617465537461626c6528292076616c60448201526d1d5948185b1c9958591e481cd95d60921b60648201526084016104dc565b600454604080516001600160a01b03928316815291831660208301527fbe67eb17c76f052c9025267eaab09f6b7c384a42bb6830eb5f36665113cadf70910160405180910390a1600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c0f5760405162461bcd60e51b81526004016104dc906115a3565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610c3e8142611610565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60008181526008602052604080822054905163d06ca61f60e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9163d06ca61f91610cc3919087906004016114ba565b600060405180830381865afa158015610ce0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d0891908101906114d3565b60018451610d16919061157a565b81518110610d2657610d2661158d565b602002602001015190505b92915050565b6000546001600160a01b03163314610d615760405162461bcd60e51b81526004016104dc906115a3565b6001600160a01b038116610dc65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104dc565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e4b5760405162461bcd60e51b81526004016104dc906115a3565b848314610ed15760405162461bcd60e51b815260206004820152604860248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2077616c6c65746064820152670e65cd8cadccee8d60c31b608482015260a4016104dc565b848114610f635760405162461bcd60e51b815260206004820152605460248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2077616c6c6574436f756e74206c656e67746820213d2070657263656e6064820152730e888d2e6e8e4d2c4eae8d2dedc5cd8cadccee8d60631b608482015260a4016104dc565b6000805b86811015610fa757838382818110610f8157610f8161158d565b9050602002013582610f939190611610565b915080610f9f816116b1565b915050610f67565b50806064146110285760405162461bcd60e51b815260206004820152604160248201527f54726561737572792e736f6c3a3a736574546178446973747269627574696f6e60448201527f28292c2073756d50657263656e74446973747269627574696f6e20213d2031306064820152600360fc1b608482015260a4016104dc565b6040518060600160405280878152602001868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505090825250604080516020868102828101820190935286825292830192909187918791829185019084908082843760009201919091525050509152508051600b90815560208083015180516110c392600c9201906110ea565b50604082015180516110df91600284019160209091019061114f565b505050505050505050565b82805482825590600052602060002090810192821561113f579160200282015b8281111561113f57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019061110a565b5061114b92915061118a565b5090565b82805482825590600052602060002090810192821561113f579160200282015b8281111561113f57825182559160200191906001019061116f565b5b8082111561114b576000815560010161118b565b600081518084526020808501945080840160005b838110156111d85781516001600160a01b0316875295820195908201906001016111b3565b509495945050505050565b838152600060206060818401526111fd606084018661119f565b838103604085015284518082528286019183019060005b8181101561123057835183529284019291840191600101611214565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561127d5761127d61123e565b604052919050565b600067ffffffffffffffff82111561129f5761129f61123e565b5060051b60200190565b80356001600160a01b03811681146112c057600080fd5b919050565b600082601f8301126112d657600080fd5b813560206112eb6112e683611285565b611254565b82815260059290921b8401810191818101908684111561130a57600080fd5b8286015b8481101561132c5761131f816112a9565b835291830191830161130e565b509695505050505050565b60006020828403121561134957600080fd5b813567ffffffffffffffff81111561136057600080fd5b61136c848285016112c5565b949350505050565b60006020828403121561138657600080fd5b5035919050565b60006020828403121561139f57600080fd5b6113a8826112a9565b9392505050565b600080604083850312156113c257600080fd5b823567ffffffffffffffff8111156113d957600080fd5b6113e5858286016112c5565b95602094909401359450505050565b60008083601f84011261140657600080fd5b50813567ffffffffffffffff81111561141e57600080fd5b6020830191508360208260051b850101111561143957600080fd5b9250929050565b60008060008060006060868803121561145857600080fd5b85359450602086013567ffffffffffffffff8082111561147757600080fd5b61148389838a016113f4565b9096509450604088013591508082111561149c57600080fd5b506114a9888289016113f4565b969995985093965092949392505050565b82815260406020820152600061136c604083018461119f565b600060208083850312156114e657600080fd5b825167ffffffffffffffff8111156114fd57600080fd5b8301601f8101851361150e57600080fd5b805161151c6112e682611285565b81815260059190911b8201830190838101908783111561153b57600080fd5b928401925b8284101561155957835182529284019290840190611540565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610d3157610d31611564565b634e487b7160e01b600052603260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156115ea57600080fd5b815180151581146113a857600080fd5b634e487b7160e01b600052600160045260246000fd5b80820180821115610d3157610d31611564565b85815284602082015260a06040820152600061164260a083018661119f565b6001600160a01b0394909416606083015250608001529392505050565b60006020828403121561167157600080fd5b5051919050565b8082028115828204841417610d3157610d31611564565b6000826116ac57634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016116c3576116c3611564565b506001019056fea26469706673582212203c7ec3091ab8ec598f46705ce3a77ab2566c8b685e82486782c553c6d00f7d7564736f6c63430008110033", + "sourceMap": "560:8820:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:246;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;756:23;;;;;-1:-1:-1;;;;;756:23:17;;;;;;-1:-1:-1;;;;;1524:32:32;;;1506:51;;1494:2;1479:18;756:23:17;1360:203:32;852:21:17;;;;;-1:-1:-1;;;;;852:21:17;;;1773:34;;;;;;;;;;1714:25:32;;;1702:2;1687:18;1773:34:17;1568:177:32;9129:248:17;;;;;;:::i;:::-;;:::i;1031:81::-;;1070:42;1031:81;;4196:117;4286:19;;4196:117;;1815:148:20;;;:::i;:::-;;5797:1248:17;;;:::i;3967:221::-;;;;;;:::i;:::-;;:::i;1552:50::-;;;;;;:::i;:::-;;;;;;;;;;;;;;7778:218;;;;;;:::i;:::-;;:::i;1164:87:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;1164:87;;1683:54:17;;;;;;:::i;:::-;;;;;;;;;;;;;;1121:19;;;;;-1:-1:-1;;;;;1121:19:17;;;984:34;;;;;;1486:54;;;;;;:::i;:::-;;;;;;;;;;;;;;8166:226;;;;;;:::i;:::-;;:::i;2444::20:-;;;;;;:::i;:::-;;:::i;8653:274:17:-;;;;;;:::i;:::-;;:::i;2118:244:20:-;;;;;;:::i;:::-;;:::i;4734:1001:17:-;;;;;;:::i;:::-;;:::i;955:20::-;;;;;-1:-1:-1;;;;;955:20:17;;;7311:246;7360:7;7369:16;7387:13;7435:11;:23;;;7473:11;:19;;7507:11;:31;;7413:136;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7413:136:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:246;;;:::o;9129:248::-;9300:19;;9239:112;;-1:-1:-1;;;9239:112:17;;9212:7;;1070:42;;9239:46;;:112;;9335:5;;9239:112;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9239:112:17;;;;;;;;;;;;:::i;:::-;9367:1;9352:5;:12;:16;;;;:::i;:::-;9239:130;;;;;;;;:::i;:::-;;;;;;;9232:137;;9129:248;;;:::o;1815:148:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;;;;;;;;;1922:1:::1;1906:6:::0;;1885:40:::1;::::0;-1:-1:-1;;;;;1906:6:20;;::::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1953:1;1936:19:::0;;-1:-1:-1;;;;;;1936:19:20::1;::::0;;1815:148::o;5797:1248:17:-;5905:19;;5949:23;;5945:1054;;6013:1;5991:19;:23;6045:4;;6038:64;;-1:-1:-1;;;6038:64:17;;1070:42;6038:64;;;7724:51:32;7791:18;;;7784:34;;;-1:-1:-1;;;;;6045:4:17;;;;6038:20;;7697:18:32;;6038:64:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6031:72;;;;:::i;:::-;6151:16;;;6165:1;6151:16;;;;;;;;6120:28;;6151:16;;;;;;;;-1:-1:-1;;6201:4:17;;6184:14;;;;-1:-1:-1;;;;;;6201:4:17;;6184:14;;-1:-1:-1;6201:4:17;;6184:14;;;;:::i;:::-;-1:-1:-1;;;;;6184:21:17;;;:14;;;;;;;;;:21;6237:6;;6220:14;;6237:6;;;6220:11;;6237:6;;6220:14;;;;;;:::i;:::-;-1:-1:-1;;;;;6220:23:17;;;:14;;;;;;;;;;;:23;1070:42;6260:57;6336:19;6385:1;6405:11;6443:4;6467:23;:15;6485:5;6467:23;:::i;:::-;6260:245;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6260:245:17;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6550:6:17;;;6543:39;;-1:-1:-1;;;6543:39:17;;6576:4;6543:39;;;1506:51:32;;;;6522:18:17;;-1:-1:-1;;;;;6550:6:17;;;;6543:24;;1479:18:32;;6543:39:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6522:60;;6604:6;6599:389;6620:19;:26;6616:30;;6599:389;;;6672:8;6736:3;6699:11;:31;;6731:1;6699:34;;;;;;;;:::i;:::-;;;;;;;;;6683:13;:50;;;;:::i;:::-;:56;;;;:::i;:::-;6774:6;;6791:19;:22;;6672:67;;-1:-1:-1;;;;;;6774:6:17;;;;6767:23;;6791:19;6811:1;;6791:22;;;;;;:::i;:::-;;;;;;;;;;;6767:52;;;;;;-1:-1:-1;;;;;;6767:52:17;;;-1:-1:-1;;;;;6791:22:17;;;6767:52;;;7724:51:32;7791:18;;;7784:34;;;7697:18;;6767:52:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6760:60;;;;:::i;:::-;6888:3;6841:19;:43;6861:11;:19;;6881:1;6861:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;6861:22:17;6841:43;;;;;;;;;;;;:50;;:43;;6861:22;6841:50;;;;;:::i;:::-;;;;-1:-1:-1;;6936:19:17;:22;;6956:1;;6936:22;;;;;;:::i;:::-;;;;;;;;;;;;6965:6;;6915:57;;;9718:25:32;;;-1:-1:-1;;;;;6965:6:17;;;9759:18:32;;;9752:60;;;;6936:22:17;;;6915:57;;9691:18:32;6915:57:17;;;;;;;-1:-1:-1;6648:3:17;;;;:::i;:::-;;;;6599:389;;;;5974:1025;;5945:1054;5797:1248;:::o;3967:221::-;3198:8;;-1:-1:-1;;;;;3198:8:17;3184:10;:22;3176:31;;;;;;4060:4:::1;4037:19;;:27;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4104:19:17::1;::::0;4080:44:::1;::::0;;10137:25:32;;;10193:2;10178:18;;10171:34;;;;4080:44:17::1;::::0;10110:18:32;4080:44:17::1;;;;;;;3967:221:::0;:::o;7778:218::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;7860:4:17::1;::::0;-1:-1:-1;;;;;7860:4:17;;::::1;7850:14:::0;;::::1;::::0;7846:48:::1;;7890:1;7868:19;:23:::0;7846:48:::1;7947:39;::::0;-1:-1:-1;;;7947:39:17;;7980:4:::1;7947:39;::::0;::::1;1506:51:32::0;-1:-1:-1;;;;;7911:23:17;::::1;::::0;::::1;::::0;7935:10:::1;::::0;7911:23;;7947:24:::1;::::0;1479:18:32;;7947:39:17::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7911:76;::::0;-1:-1:-1;;;;;;7911:76:17::1;::::0;;;;;;-1:-1:-1;;;;;7742:32:32;;;7911:76:17::1;::::0;::::1;7724:51:32::0;7791:18;;;7784:34;7697:18;;7911:76:17::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7904:84;;;;:::i;:::-;7778:218:::0;:::o;8166:226::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;8254:6:17::1;::::0;-1:-1:-1;;;;;8254:6:17;;::::1;8243:17:::0;;::::1;::::0;8235:76:::1;;;::::0;-1:-1:-1;;;8235:76:17;;10418:2:32;8235:76:17::1;::::0;::::1;10400:21:32::0;10457:2;10437:18;;;10430:30;10496:34;10476:18;;;10469:62;-1:-1:-1;;;10547:18:32;;;10540:44;10601:19;;8235:76:17::1;10216:410:32::0;8235:76:17::1;8341:6;::::0;8327:30:::1;::::0;;-1:-1:-1;;;;;8341:6:17;;::::1;10843:34:32::0;;10913:15;;;10908:2;10893:18;;10886:43;8327:30:17::1;::::0;10778:18:32;8327:30:17::1;;;;;;;8368:6;:16:::0;;-1:-1:-1;;;;;;8368:16:17::1;-1:-1:-1::0;;;;;8368:16:17;;;::::1;::::0;;;::::1;::::0;;8166:226::o;2444::20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;2525:6:::1;::::0;;;2508:23;;-1:-1:-1;;;;;;2508:23:20;;::::1;-1:-1:-1::0;;;;;2525:6:20;::::1;2508:23;::::0;;;2542:19:::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2659:1:::1;2643:6:::0;;2622:40:::1;::::0;-1:-1:-1;;;;;2643:6:20;;::::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;8653:274:17:-;8746:7;8834:35;;;:25;:35;;;;;;;8773:128;;-1:-1:-1;;;8773:128:17;;1070:42;;8773:46;;:128;;8834:35;8885:5;;8773:128;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8773:128:17;;;;;;;;;;;;:::i;:::-;8917:1;8902:5;:12;:16;;;;:::i;:::-;8773:146;;;;;;;;:::i;:::-;;;;;;;8766:153;;8653:274;;;;;:::o;2118:244:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;11142:2:32;2199:73:20::1;::::0;::::1;11124:21:32::0;11181:2;11161:18;;;11154:30;11220:34;11200:18;;;11193:62;-1:-1:-1;;;11271:18:32;;;11264:36;11317:19;;2199:73:20::1;10940:402:32::0;2199:73:20::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6;::::1;::::0;2288:38:::1;::::0;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:20::1;-1:-1:-1::0;;;;;2337:17:20;;;::::1;::::0;;;::::1;::::0;;2118:244::o;4734:1001:17:-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;4951:31:17;;::::1;4943:116;;;::::0;-1:-1:-1;;;4943:116:17;;11549:2:32;4943:116:17::1;::::0;::::1;11531:21:32::0;11588:2;11568:18;;;11561:30;11627:34;11607:18;;;11600:62;11698:34;11678:18;;;11671:62;-1:-1:-1;;;11749:19:32;;;11742:39;11798:19;;4943:116:17::1;11347:476:32::0;4943:116:17::1;5078:43:::0;;::::1;5070:140;;;::::0;-1:-1:-1;;;5070:140:17;;12030:2:32;5070:140:17::1;::::0;::::1;12012:21:32::0;12069:2;12049:18;;;12042:30;12108:34;12088:18;;;12081:62;12179:34;12159:18;;;12152:62;-1:-1:-1;;;12230:19:32;;;12223:51;12291:19;;5070:140:17::1;11828:488:32::0;5070:140:17::1;5275:27;::::0;5313:115:::1;5333:12;5329:1;:16;5313:115;;;5393:20;;5414:1;5393:23;;;;;;;:::i;:::-;;;;;;;5367:49;;;;;:::i;:::-;::::0;-1:-1:-1;5347:3:17;::::1;::::0;::::1;:::i;:::-;;;;5313:115;;;;5446:22;5472:3;5446:29;5438:107;;;::::0;-1:-1:-1;;;5438:107:17;;12523:2:32;5438:107:17::1;::::0;::::1;12505:21:32::0;12562:2;12542:18;;;12535:30;12601:34;12581:18;;;12574:62;12672:34;12652:18;;;12645:62;-1:-1:-1;;;12723:19:32;;;12716:32;12765:19;;5438:107:17::1;12321:469:32::0;5438:107:17::1;5616:111;;;;;;;;5646:12;5616:111;;;;5673:8;;5616:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;;5616:111:17;;;-1:-1:-1;5616:111:17::1;::::0;;::::1;::::0;;::::1;::::0;;;;;;;;;;;;;::::1;::::0;;;5696:20;;;;;;5616:111;::::1;::::0;5696:20;;5616:111;5696:20;5616:111;::::1;;::::0;::::1;::::0;;;;-1:-1:-1;;;5616:111:17;;-1:-1:-1;5602:125:17;;:11:::1;:125:::0;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;5602:125:17::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;;;;;4734:1001:17:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:461:32;67:3;105:5;99:12;132:6;127:3;120:19;158:4;187:2;182:3;178:12;171:19;;224:2;217:5;213:14;245:1;255:195;269:6;266:1;263:13;255:195;;;334:13;;-1:-1:-1;;;;;330:39:32;318:52;;390:12;;;;425:15;;;;366:1;284:9;255:195;;;-1:-1:-1;466:3:32;;14:461;-1:-1:-1;;;;;14:461:32:o;480:875::-;765:6;754:9;747:25;728:4;791:2;829;824;813:9;809:18;802:30;855:56;907:2;896:9;892:18;884:6;855:56;:::i;:::-;947:22;;;942:2;927:18;;920:50;1019:13;;1041:22;;;1117:15;;;;1079;;;1150:1;1160:169;1174:6;1171:1;1168:13;1160:169;;;1235:13;;1223:26;;1304:15;;;;1269:12;;;;1196:1;1189:9;1160:169;;;-1:-1:-1;1346:3:32;;480:875;-1:-1:-1;;;;;;;;480:875:32:o;1750:127::-;1811:10;1806:3;1802:20;1799:1;1792:31;1842:4;1839:1;1832:15;1866:4;1863:1;1856:15;1882:275;1953:2;1947:9;2018:2;1999:13;;-1:-1:-1;;1995:27:32;1983:40;;2053:18;2038:34;;2074:22;;;2035:62;2032:88;;;2100:18;;:::i;:::-;2136:2;2129:22;1882:275;;-1:-1:-1;1882:275:32:o;2162:183::-;2222:4;2255:18;2247:6;2244:30;2241:56;;;2277:18;;:::i;:::-;-1:-1:-1;2322:1:32;2318:14;2334:4;2314:25;;2162:183::o;2350:173::-;2418:20;;-1:-1:-1;;;;;2467:31:32;;2457:42;;2447:70;;2513:1;2510;2503:12;2447:70;2350:173;;;:::o;2528:668::-;2582:5;2635:3;2628:4;2620:6;2616:17;2612:27;2602:55;;2653:1;2650;2643:12;2602:55;2689:6;2676:20;2715:4;2739:60;2755:43;2795:2;2755:43;:::i;:::-;2739:60;:::i;:::-;2833:15;;;2919:1;2915:10;;;;2903:23;;2899:32;;;2864:12;;;;2943:15;;;2940:35;;;2971:1;2968;2961:12;2940:35;3007:2;2999:6;2995:15;3019:148;3035:6;3030:3;3027:15;3019:148;;;3101:23;3120:3;3101:23;:::i;:::-;3089:36;;3145:12;;;;3052;;3019:148;;;-1:-1:-1;3185:5:32;2528:668;-1:-1:-1;;;;;;2528:668:32:o;3201:348::-;3285:6;3338:2;3326:9;3317:7;3313:23;3309:32;3306:52;;;3354:1;3351;3344:12;3306:52;3394:9;3381:23;3427:18;3419:6;3416:30;3413:50;;;3459:1;3456;3449:12;3413:50;3482:61;3535:7;3526:6;3515:9;3511:22;3482:61;:::i;:::-;3472:71;3201:348;-1:-1:-1;;;;3201:348:32:o;3554:180::-;3613:6;3666:2;3654:9;3645:7;3641:23;3637:32;3634:52;;;3682:1;3679;3672:12;3634:52;-1:-1:-1;3705:23:32;;3554:180;-1:-1:-1;3554:180:32:o;3739:186::-;3798:6;3851:2;3839:9;3830:7;3826:23;3822:32;3819:52;;;3867:1;3864;3857:12;3819:52;3890:29;3909:9;3890:29;:::i;:::-;3880:39;3739:186;-1:-1:-1;;;3739:186:32:o;3930:416::-;4023:6;4031;4084:2;4072:9;4063:7;4059:23;4055:32;4052:52;;;4100:1;4097;4090:12;4052:52;4140:9;4127:23;4173:18;4165:6;4162:30;4159:50;;;4205:1;4202;4195:12;4159:50;4228:61;4281:7;4272:6;4261:9;4257:22;4228:61;:::i;:::-;4218:71;4336:2;4321:18;;;;4308:32;;-1:-1:-1;;;;3930:416:32:o;4351:367::-;4414:8;4424:6;4478:3;4471:4;4463:6;4459:17;4455:27;4445:55;;4496:1;4493;4486:12;4445:55;-1:-1:-1;4519:20:32;;4562:18;4551:30;;4548:50;;;4594:1;4591;4584:12;4548:50;4631:4;4623:6;4619:17;4607:29;;4691:3;4684:4;4674:6;4671:1;4667:14;4659:6;4655:27;4651:38;4648:47;4645:67;;;4708:1;4705;4698:12;4645:67;4351:367;;;;;:::o;4723:841::-;4854:6;4862;4870;4878;4886;4939:2;4927:9;4918:7;4914:23;4910:32;4907:52;;;4955:1;4952;4945:12;4907:52;4991:9;4978:23;4968:33;;5052:2;5041:9;5037:18;5024:32;5075:18;5116:2;5108:6;5105:14;5102:34;;;5132:1;5129;5122:12;5102:34;5171:70;5233:7;5224:6;5213:9;5209:22;5171:70;:::i;:::-;5260:8;;-1:-1:-1;5145:96:32;-1:-1:-1;5348:2:32;5333:18;;5320:32;;-1:-1:-1;5364:16:32;;;5361:36;;;5393:1;5390;5383:12;5361:36;;5432:72;5496:7;5485:8;5474:9;5470:24;5432:72;:::i;:::-;4723:841;;;;-1:-1:-1;4723:841:32;;-1:-1:-1;5523:8:32;;5406:98;4723:841;-1:-1:-1;;;4723:841:32:o;5569:332::-;5776:6;5765:9;5758:25;5819:2;5814;5803:9;5799:18;5792:30;5739:4;5839:56;5891:2;5880:9;5876:18;5868:6;5839:56;:::i;5906:881::-;6001:6;6032:2;6075;6063:9;6054:7;6050:23;6046:32;6043:52;;;6091:1;6088;6081:12;6043:52;6124:9;6118:16;6157:18;6149:6;6146:30;6143:50;;;6189:1;6186;6179:12;6143:50;6212:22;;6265:4;6257:13;;6253:27;-1:-1:-1;6243:55:32;;6294:1;6291;6284:12;6243:55;6323:2;6317:9;6346:60;6362:43;6402:2;6362:43;:::i;6346:60::-;6440:15;;;6522:1;6518:10;;;;6510:19;;6506:28;;;6471:12;;;;6546:19;;;6543:39;;;6578:1;6575;6568:12;6543:39;6602:11;;;;6622:135;6638:6;6633:3;6630:15;6622:135;;;6704:10;;6692:23;;6655:12;;;;6735;;;;6622:135;;;6776:5;5906:881;-1:-1:-1;;;;;;;5906:881:32:o;6792:127::-;6853:10;6848:3;6844:20;6841:1;6834:31;6884:4;6881:1;6874:15;6908:4;6905:1;6898:15;6924:128;6991:9;;;7012:11;;;7009:37;;;7026:18;;:::i;7057:127::-;7118:10;7113:3;7109:20;7106:1;7099:31;7149:4;7146:1;7139:15;7173:4;7170:1;7163:15;7189:356;7391:2;7373:21;;;7410:18;;;7403:30;7469:34;7464:2;7449:18;;7442:62;7536:2;7521:18;;7189:356::o;7829:277::-;7896:6;7949:2;7937:9;7928:7;7924:23;7920:32;7917:52;;;7965:1;7962;7955:12;7917:52;7997:9;7991:16;8050:5;8043:13;8036:21;8029:5;8026:32;8016:60;;8072:1;8069;8062:12;8111:127;8172:10;8167:3;8163:20;8160:1;8153:31;8203:4;8200:1;8193:15;8227:4;8224:1;8217:15;8243:125;8308:9;;;8329:10;;;8326:36;;;8342:18;;:::i;8373:582::-;8672:6;8661:9;8654:25;8715:6;8710:2;8699:9;8695:18;8688:34;8758:3;8753:2;8742:9;8738:18;8731:31;8635:4;8779:57;8831:3;8820:9;8816:19;8808:6;8779:57;:::i;:::-;-1:-1:-1;;;;;8872:32:32;;;;8867:2;8852:18;;8845:60;-1:-1:-1;8936:3:32;8921:19;8914:35;8771:65;8373:582;-1:-1:-1;;;8373:582:32:o;8960:184::-;9030:6;9083:2;9071:9;9062:7;9058:23;9054:32;9051:52;;;9099:1;9096;9089:12;9051:52;-1:-1:-1;9122:16:32;;8960:184;-1:-1:-1;8960:184:32:o;9149:168::-;9222:9;;;9253;;9270:15;;;9264:22;;9250:37;9240:71;;9291:18;;:::i;9322:217::-;9362:1;9388;9378:132;;9432:10;9427:3;9423:20;9420:1;9413:31;9467:4;9464:1;9457:15;9495:4;9492:1;9485:15;9378:132;-1:-1:-1;9524:9:32;;9322:217::o;9823:135::-;9862:3;9883:17;;;9880:43;;9903:18;;:::i;:::-;-1:-1:-1;9950:1:32;9939:13;;9823:135::o", "linkReferences": {} }, "methodIdentifiers": { @@ -487,21 +487,637 @@ "viewTaxSettings()": "1f72028d", "viewTaxesAccrued()": "68a61804" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_admin\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_taxToken\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_stable\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"RoyaltiesDistributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amountReceived\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newTotal\",\"type\":\"uint256\"}],\"name\":\"RoyaltiesReceived\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"currentStable\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newStable\",\"type\":\"address\"}],\"name\":\"StableUpdated\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"UNIV2_ROUTER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WETH\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"WethAccruedForTaxType\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"amountRoyaltiesWeth\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"distributeTaxes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountToDistribute\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"distributionsStable\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_path\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_taxType\",\"type\":\"uint256\"}],\"name\":\"exchangeRateForTaxType\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_path\",\"type\":\"address[]\"}],\"name\":\"exchangeRateForWethToStable\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"lock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"safeWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_walletCount\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"_wallets\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_percentDistribution\",\"type\":\"uint256[]\"}],\"name\":\"setTaxDistribution\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stable\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"taxSettings\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"walletCount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"taxToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"taxTokenAccruedForTaxType\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_stable\",\"type\":\"address\"}],\"name\":\"updateStable\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amt\",\"type\":\"uint256\"}],\"name\":\"updateTaxesAccrued\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"viewTaxSettings\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"viewTaxesAccrued\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountAccrued\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"RoyaltiesDistributed(address,uint256,address)\":{\"details\":\"Emitted when royalties are distributed via distributeTaxes()\"},\"RoyaltiesReceived(uint256,uint256)\":{\"details\":\"Emitted when the treasury receives royalties\"},\"StableUpdated(address,address)\":{\"details\":\"Emitted when the stable state variable is updated via updateStable()\"}},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"_admin\":\"The administrator of the contract.\",\"_taxToken\":\"The taxToken (ERC-20 asset) which accumulates in this Treasury.\"}},\"exchangeRateForTaxType(address[],uint256)\":{\"params\":{\"_path\":\"The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK).\",\"_taxType\":\"The taxType to be exchanged.\"}},\"exchangeRateForWethToStable(address[])\":{\"params\":{\"_path\":\"The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK).\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"safeWithdraw(address)\":{\"details\":\"Reverts if token == taxtoken.Only callable by Admin.\",\"params\":{\"_token\":\"The token to withdraw from the treasury.\"}},\"setTaxDistribution(uint256,address[],uint256[])\":{\"details\":\"Only callable by Admin.\",\"params\":{\"_percentDistribution\":\"The percentage (corresponding with wallets) to distribute taxes to of overall amount owed for taxType.\",\"_walletCount\":\"The number of wallets to distribute across.\",\"_wallets\":\"The address of wallets to distribute fees across.\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"updateStable(address)\":{\"details\":\"Only callable by Admin.\",\"params\":{\"_stable\":\"New stablecoin address.\"}},\"updateTaxesAccrued(uint256)\":{\"details\":\"Only callable by taxToken.\",\"params\":{\"_amt\":\"The amount of taxToken going to taxType.\"}},\"viewTaxSettings()\":{\"returns\":{\"_0\":\"uint256 num of wallets in distribution.\",\"_1\":\"address[] array of wallets in distribution.\",\"_2\":\"uint[] array of distribution, all uints must add up to 100.\"}}},\"stateVariables\":{\"admin\":{\"details\":\"The administrator of accounting and distribution settings.\"},\"distributionsStable\":{\"details\":\"Tracks amount of stablecoin distributed to recipients.\"},\"stable\":{\"details\":\"The stablecoin that is distributed via royalties.\"},\"taxSettings\":{\"details\":\"taxSettings.\"},\"taxToken\":{\"details\":\"The token that fees are taken from, and what is held in escrow here.\"},\"taxTokenAccruedForTaxType\":{\"details\":\"e.g. 10,000 taxToken owed to taxType 0 => taxTokenAccruedForTaxType[0] = 10000 * 10**18. taxType 0 => Xfer Tax taxType 1 => Buy Tax taxType 2 => Sell Tax\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"constructor\":{\"notice\":\"Initializes the Treasury.\"},\"distributeTaxes()\":{\"notice\":\"Distributes taxes for given taxType.\"},\"exchangeRateForTaxType(address[],uint256)\":{\"notice\":\"View function for exchanging fees collected for given taxType.\"},\"exchangeRateForWethToStable(address[])\":{\"notice\":\"View function for exchanging fees collected for given taxType.\"},\"safeWithdraw(address)\":{\"notice\":\"Withdraw a non-taxToken from the treasury.\"},\"setTaxDistribution(uint256,address[],uint256[])\":{\"notice\":\"This function modifies the distribution settings for all taxes.\"},\"taxTokenAccruedForTaxType(uint256)\":{\"notice\":\"Handles the internal accounting for how much taxToken is owed to each taxType.\"},\"updateStable(address)\":{\"notice\":\"Change the stable value of the treasury distriubution.\"},\"updateTaxesAccrued(uint256)\":{\"notice\":\"Increases _amt of taxToken allocated to _taxType.\"},\"viewTaxSettings()\":{\"notice\":\"Helper view function for taxSettings.\"}},\"notice\":\"The treasury is responsible for escrow of TaxToken fee's. The treasury handles accounting, for what's owed to different groups. The treasury handles distribution of TaxToken fees to different groups. The admin can modify how TaxToken fees are distributed (the TaxDistribution struct).\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/Treasury.sol\":\"Treasury\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/Treasury.sol\":{\"keccak256\":\"0x27460b541b6369e633da21ef4570c204040a4cc0d40e95e78c269848f89b733b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e77dd6b109beb9728caf6156ea891e7e02d3167287658260bc3fef57b25699a\",\"dweb:/ipfs/QmaZRGiSa4S83tHN9HKDZe1DpgLEyAYZYdU9X3tpGPwCQT\"]},\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/interfaces/IUniswapV2Router.sol\":{\"keccak256\":\"0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee\",\"dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_admin", + "type": "address" + }, + { + "internalType": "address", + "name": "_taxToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_stable", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "previousOwner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "newOwner", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "OwnershipTransferred", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "address", + "name": "asset", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "RoyaltiesDistributed", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amountReceived", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "newTotal", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "RoyaltiesReceived", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "currentStable", + "type": "address", + "indexed": false + }, + { + "internalType": "address", + "name": "newStable", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "StableUpdated", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "UNIV2_ROUTER", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "WETH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function", + "name": "WethAccruedForTaxType", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "amountRoyaltiesWeth", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "distributeTaxes", + "outputs": [ + { + "internalType": "uint256", + "name": "_amountToDistribute", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "distributionsStable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_path", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "_taxType", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function", + "name": "exchangeRateForTaxType", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_path", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function", + "name": "exchangeRateForWethToStable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "lock" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "renounceOwnership" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "safeWithdraw" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_walletCount", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "_wallets", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_percentDistribution", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setTaxDistribution" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "stable", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "taxSettings", + "outputs": [ + { + "internalType": "uint256", + "name": "walletCount", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "taxToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function", + "name": "taxTokenAccruedForTaxType", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferOwnership" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_stable", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateStable" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amt", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateTaxesAccrued" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "viewTaxSettings", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "viewTaxesAccrued", + "outputs": [ + { + "internalType": "uint256", + "name": "_amountAccrued", + "type": "uint256" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "constructor": { + "params": { + "_admin": "The administrator of the contract.", + "_taxToken": "The taxToken (ERC-20 asset) which accumulates in this Treasury." + } + }, + "exchangeRateForTaxType(address[],uint256)": { + "params": { + "_path": "The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK).", + "_taxType": "The taxType to be exchanged." + } + }, + "exchangeRateForWethToStable(address[])": { + "params": { + "_path": "The path by which taxToken is converted into a given asset (i.e. taxToken => DAI => LINK)." + } + }, + "owner()": { + "details": "Returns the address of the current owner." + }, + "renounceOwnership()": { + "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + }, + "safeWithdraw(address)": { + "details": "Reverts if token == taxtoken.Only callable by Admin.", + "params": { + "_token": "The token to withdraw from the treasury." + } + }, + "setTaxDistribution(uint256,address[],uint256[])": { + "details": "Only callable by Admin.", + "params": { + "_percentDistribution": "The percentage (corresponding with wallets) to distribute taxes to of overall amount owed for taxType.", + "_walletCount": "The number of wallets to distribute across.", + "_wallets": "The address of wallets to distribute fees across." + } + }, + "transferOwnership(address)": { + "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." + }, + "updateStable(address)": { + "details": "Only callable by Admin.", + "params": { + "_stable": "New stablecoin address." + } + }, + "updateTaxesAccrued(uint256)": { + "details": "Only callable by taxToken.", + "params": { + "_amt": "The amount of taxToken going to taxType." + } + }, + "viewTaxSettings()": { + "returns": { + "_0": "uint256 num of wallets in distribution.", + "_1": "address[] array of wallets in distribution.", + "_2": "uint[] array of distribution, all uints must add up to 100." + } + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": { + "constructor": { + "notice": "Initializes the Treasury." + }, + "distributeTaxes()": { + "notice": "Distributes taxes for given taxType." + }, + "exchangeRateForTaxType(address[],uint256)": { + "notice": "View function for exchanging fees collected for given taxType." + }, + "exchangeRateForWethToStable(address[])": { + "notice": "View function for exchanging fees collected for given taxType." + }, + "safeWithdraw(address)": { + "notice": "Withdraw a non-taxToken from the treasury." + }, + "setTaxDistribution(uint256,address[],uint256[])": { + "notice": "This function modifies the distribution settings for all taxes." + }, + "taxTokenAccruedForTaxType(uint256)": { + "notice": "Handles the internal accounting for how much taxToken is owed to each taxType." + }, + "updateStable(address)": { + "notice": "Change the stable value of the treasury distriubution." + }, + "updateTaxesAccrued(uint256)": { + "notice": "Increases _amt of taxToken allocated to _taxType." + }, + "viewTaxSettings()": { + "notice": "Helper view function for taxSettings." + } + }, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/Treasury.sol": "Treasury" + }, + "libraries": {} + }, + "sources": { + "src/Treasury.sol": { + "keccak256": "0x27460b541b6369e633da21ef4570c204040a4cc0d40e95e78c269848f89b733b", + "urls": [ + "bzz-raw://6e77dd6b109beb9728caf6156ea891e7e02d3167287658260bc3fef57b25699a", + "dweb:/ipfs/QmaZRGiSa4S83tHN9HKDZe1DpgLEyAYZYdU9X3tpGPwCQT" + ], + "license": "MIT" + }, + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/extensions/Ownable.sol": { + "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", + "urls": [ + "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", + "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" + ], + "license": "MIT" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/interfaces/IUniswapV2Router.sol": { + "keccak256": "0xd6f5421763c422b31d0d448ddb3406628b7119a0230d05c82ac932816374f4e4", + "urls": [ + "bzz-raw://0413b1f197957edd78b044d2342ef527c18f768d678967a085a4820b4b6e1cee", + "dweb:/ipfs/QmTekfGmFArRoMM2HQ5hrqxqsDMfahfVa7tc7ddYk7EsD5" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/Treasury.sol", "id": 27496, "exportedSymbols": { "Context": [ - 28107 + 28122 ], "IERC20": [ - 29143 + 29158 ], "IUniswapV2Router02": [ - 29849 + 29864 ], "Ownable": [ - 28255 + 28270 ], "Treasury": [ 27495 @@ -514,6 +1130,7 @@ "id": 27008, "nodeType": "PragmaDirective", "src": "32:23:17", + "nodes": [], "literals": [ "solidity", "^", @@ -525,11 +1142,12 @@ "id": 27010, "nodeType": "ImportDirective", "src": "59:49:17", + "nodes": [], "absolutePath": "src/interfaces/IERC20.sol", "file": "./interfaces/IERC20.sol", "nameLocation": "-1:-1:-1", "scope": 27496, - "sourceUnit": 29152, + "sourceUnit": 29167, "symbolAliases": [ { "foreign": { @@ -537,7 +1155,7 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "68:6:17", "typeDescriptions": {} }, @@ -550,11 +1168,12 @@ "id": 27012, "nodeType": "ImportDirective", "src": "110:71:17", + "nodes": [], "absolutePath": "src/interfaces/IUniswapV2Router.sol", "file": "./interfaces/IUniswapV2Router.sol", "nameLocation": "-1:-1:-1", "scope": 27496, - "sourceUnit": 29850, + "sourceUnit": 29865, "symbolAliases": [ { "foreign": { @@ -562,7 +1181,7 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "119:18:17", "typeDescriptions": {} }, @@ -575,11 +1194,12 @@ "id": 27013, "nodeType": "ImportDirective", "src": "183:34:17", + "nodes": [], "absolutePath": "src/extensions/Ownable.sol", "file": "./extensions/Ownable.sol", "nameLocation": "-1:-1:-1", "scope": 27496, - "sourceUnit": 28256, + "sourceUnit": 28271, "symbolAliases": [], "unitAlias": "" }, @@ -592,6 +1212,7 @@ "id": 27019, "nodeType": "VariableDeclaration", "src": "756:23:17", + "nodes": [], "constant": false, "documentation": { "id": 27017, @@ -627,6 +1248,7 @@ "id": 27022, "nodeType": "VariableDeclaration", "src": "852:21:17", + "nodes": [], "constant": false, "documentation": { "id": 27020, @@ -662,6 +1284,7 @@ "id": 27025, "nodeType": "VariableDeclaration", "src": "955:20:17", + "nodes": [], "constant": false, "documentation": { "id": 27023, @@ -697,6 +1320,7 @@ "id": 27027, "nodeType": "VariableDeclaration", "src": "984:34:17", + "nodes": [], "constant": false, "functionSelector": "ba13f4c5", "mutability": "mutable", @@ -725,6 +1349,7 @@ "id": 27030, "nodeType": "VariableDeclaration", "src": "1031:81:17", + "nodes": [], "constant": true, "functionSelector": "676d3563", "mutability": "constant", @@ -770,6 +1395,7 @@ "id": 27032, "nodeType": "VariableDeclaration", "src": "1121:19:17", + "nodes": [], "constant": false, "functionSelector": "ad5c4648", "mutability": "mutable", @@ -799,6 +1425,7 @@ "id": 27037, "nodeType": "VariableDeclaration", "src": "1486:54:17", + "nodes": [], "constant": false, "documentation": { "id": 27033, @@ -852,6 +1479,7 @@ "id": 27041, "nodeType": "VariableDeclaration", "src": "1552:50:17", + "nodes": [], "constant": false, "functionSelector": "813db8f3", "mutability": "mutable", @@ -899,6 +1527,7 @@ "id": 27046, "nodeType": "VariableDeclaration", "src": "1683:54:17", + "nodes": [], "constant": false, "documentation": { "id": 27042, @@ -952,6 +1581,7 @@ "id": 27050, "nodeType": "VariableDeclaration", "src": "1773:34:17", + "nodes": [], "constant": false, "documentation": { "id": 27047, @@ -976,6 +1606,9 @@ "pathNode": { "id": 27048, "name": "TaxDistribution", + "nameLocations": [ + "1773:15:17" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 27059, "src": "1773:15:17" @@ -993,6 +1626,7 @@ "id": 27059, "nodeType": "StructDefinition", "src": "2410:123:17", + "nodes": [], "canonicalName": "Treasury.TaxDistribution", "members": [ { @@ -1105,10 +1739,12 @@ "id": 27090, "nodeType": "FunctionDefinition", "src": "2805:227:17", + "nodes": [], "body": { "id": 27089, "nodeType": "Block", "src": "2869:163:17", + "nodes": [], "statements": [ { "expression": { @@ -1223,7 +1859,7 @@ "name": "transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28220, + "referencedDeclaration": 28235, "src": "2940:17:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", @@ -1236,6 +1872,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2940:25:17", @@ -1300,10 +1937,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "2985:18:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -1313,12 +1950,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2985:32:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -1327,9 +1965,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3018:4:17", "memberName": "WETH", "nodeType": "MemberAccess", - "referencedDeclaration": 29468, + "referencedDeclaration": 29483, "src": "2985:37:17", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$__$returns$_t_address_$", @@ -1342,6 +1981,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2985:39:17", @@ -1480,10 +2120,12 @@ "id": 27102, "nodeType": "ModifierDefinition", "src": "3145:82:17", + "nodes": [], "body": { "id": 27101, "nodeType": "Block", "src": "3165:62:17", + "nodes": [], "statements": [ { "expression": { @@ -1516,6 +2158,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3188:6:17", "memberName": "sender", "nodeType": "MemberAccess", "src": "3184:10:17", @@ -1572,6 +2215,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3176:31:17", @@ -1613,6 +2257,7 @@ "id": 27111, "nodeType": "EventDefinition", "src": "3359:82:17", + "nodes": [], "anonymous": false, "documentation": { "id": 27103, @@ -1721,6 +2366,7 @@ "id": 27118, "nodeType": "EventDefinition", "src": "3532:62:17", + "nodes": [], "anonymous": false, "documentation": { "id": 27112, @@ -1801,6 +2447,7 @@ "id": 27125, "nodeType": "EventDefinition", "src": "3661:66:17", + "nodes": [], "anonymous": false, "documentation": { "id": 27119, @@ -1879,10 +2526,12 @@ "id": 27143, "nodeType": "FunctionDefinition", "src": "3967:221:17", + "nodes": [], "body": { "id": 27142, "nodeType": "Block", "src": "4026:162:17", + "nodes": [], "statements": [ { "expression": { @@ -1983,6 +2632,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4080:44:17", @@ -2014,6 +2664,9 @@ "modifierName": { "id": 27130, "name": "isTaxToken", + "nameLocations": [ + "4006:10:17" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 27102, "src": "4006:10:17" @@ -2073,10 +2726,12 @@ "id": 27151, "nodeType": "FunctionDefinition", "src": "4196:117:17", + "nodes": [], "body": { "id": 27150, "nodeType": "Block", "src": "4268:45:17", + "nodes": [], "statements": [ { "expression": { @@ -2153,10 +2808,12 @@ "id": 27218, "nodeType": "FunctionDefinition", "src": "4734:1001:17", + "nodes": [], "body": { "id": 27217, "nodeType": "Block", "src": "4867:868:17", + "nodes": [], "statements": [ { "expression": { @@ -2203,6 +2860,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4976:6:17", "memberName": "length", "nodeType": "MemberAccess", "src": "4967:15:17", @@ -2265,6 +2923,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4943:116:17", @@ -2323,6 +2982,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5115:6:17", "memberName": "length", "nodeType": "MemberAccess", "src": "5094:27:17", @@ -2385,6 +3045,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5070:140:17", @@ -2739,6 +3400,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5438:107:17", @@ -2844,6 +3506,7 @@ "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5616:111:17", @@ -2881,8 +3544,11 @@ "modifierName": { "id": 27162, "name": "onlyOwner", + "nameLocations": [ + "4857:9:17" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "4857:9:17" }, "nodeType": "ModifierInvocation", @@ -3013,10 +3679,12 @@ "id": 27361, "nodeType": "FunctionDefinition", "src": "5797:1248:17", + "nodes": [], "body": { "id": 27360, "nodeType": "Block", "src": "5870:1175:17", + "nodes": [], "statements": [ { "expression": { @@ -3215,6 +3883,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6059:21:17", @@ -3274,10 +3943,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "6038:6:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, @@ -3287,12 +3956,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6038:12:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, @@ -3301,9 +3971,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6051:7:17", "memberName": "approve", "nodeType": "MemberAccess", - "referencedDeclaration": 29112, + "referencedDeclaration": 29127, "src": "6038:20:17", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", @@ -3316,6 +3987,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6038:64:17", @@ -3350,6 +4022,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6031:72:17", @@ -3470,6 +4143,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6151:16:17", @@ -3716,6 +4390,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6435:13:17", @@ -3753,6 +4428,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6473:9:17", "memberName": "timestamp", "nodeType": "MemberAccess", "src": "6467:15:17", @@ -3835,10 +4511,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "6260:18:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -3848,12 +4524,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6260:32:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -3862,9 +4539,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6293:24:17", "memberName": "swapExactTokensForTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 29627, + "referencedDeclaration": 29642, "src": "6260:57:17", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", @@ -3877,6 +4555,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6260:245:17", @@ -3973,6 +4652,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6568:13:17", @@ -4016,10 +4696,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "6543:6:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, @@ -4029,12 +4709,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6543:14:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, @@ -4043,9 +4724,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6558:9:17", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "6543:24:17", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", @@ -4058,6 +4740,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6543:39:17", @@ -4163,6 +4846,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "6711:19:17", "memberName": "percentDistribution", "nodeType": "MemberAccess", "referencedDeclaration": 27058, @@ -4253,6 +4937,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "6803:7:17", "memberName": "wallets", "nodeType": "MemberAccess", "referencedDeclaration": 27055, @@ -4336,10 +5021,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "6767:6:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, @@ -4349,12 +5034,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6767:14:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, @@ -4363,9 +5049,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6782:8:17", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 29092, + "referencedDeclaration": 29107, "src": "6767:23:17", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", @@ -4378,6 +5065,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6767:52:17", @@ -4412,6 +5100,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6760:60:17", @@ -4465,6 +5154,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "6873:7:17", "memberName": "wallets", "nodeType": "MemberAccess", "referencedDeclaration": 27055, @@ -4555,6 +5245,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "6948:7:17", "memberName": "wallets", "nodeType": "MemberAccess", "referencedDeclaration": 27055, @@ -4645,6 +5336,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6915:57:17", @@ -4703,6 +5395,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "6632:7:17", "memberName": "wallets", "nodeType": "MemberAccess", "referencedDeclaration": 27055, @@ -4717,6 +5410,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6640:6:17", "memberName": "length", "nodeType": "MemberAccess", "src": "6620:26:17", @@ -4904,10 +5598,12 @@ "id": 27382, "nodeType": "FunctionDefinition", "src": "7311:246:17", + "nodes": [], "body": { "id": 27381, "nodeType": "Block", "src": "7402:155:17", + "nodes": [], "statements": [ { "expression": { @@ -4930,6 +5626,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7447:11:17", "memberName": "walletCount", "nodeType": "MemberAccess", "referencedDeclaration": 27052, @@ -4957,6 +5654,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7485:7:17", "memberName": "wallets", "nodeType": "MemberAccess", "referencedDeclaration": 27055, @@ -4984,6 +5682,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7519:19:17", "memberName": "percentDistribution", "nodeType": "MemberAccess", "referencedDeclaration": 27058, @@ -5148,10 +5847,12 @@ "id": 27419, "nodeType": "FunctionDefinition", "src": "7778:218:17", + "nodes": [], "body": { "id": 27418, "nodeType": "Block", "src": "7835:161:17", + "nodes": [], "statements": [ { "condition": { @@ -5277,6 +5978,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7939:6:17", "memberName": "sender", "nodeType": "MemberAccess", "src": "7935:10:17", @@ -5334,6 +6036,7 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7972:13:17", @@ -5377,10 +6080,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "7947:6:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, @@ -5390,12 +6093,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7947:14:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, @@ -5404,9 +6108,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7962:9:17", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "7947:24:17", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", @@ -5419,6 +6124,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7947:39:17", @@ -5466,10 +6172,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "7911:6:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, @@ -5479,12 +6185,13 @@ "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7911:14:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, @@ -5493,9 +6200,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7926:8:17", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 29092, + "referencedDeclaration": 29107, "src": "7911:23:17", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", @@ -5508,6 +6216,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7911:76:17", @@ -5542,6 +6251,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7904:84:17", @@ -5573,8 +6283,11 @@ "modifierName": { "id": 27387, "name": "onlyOwner", + "nameLocations": [ + "7825:9:17" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "7825:9:17" }, "nodeType": "ModifierInvocation", @@ -5633,10 +6346,12 @@ "id": 27444, "nodeType": "FunctionDefinition", "src": "8166:226:17", + "nodes": [], "body": { "id": 27443, "nodeType": "Block", "src": "8224:168:17", + "nodes": [], "statements": [ { "expression": { @@ -5731,6 +6446,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8235:76:17", @@ -5800,6 +6516,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8327:30:17", @@ -5874,8 +6591,11 @@ "modifierName": { "id": 27424, "name": "onlyOwner", + "nameLocations": [ + "8214:9:17" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28170, + "referencedDeclaration": 28185, "src": "8214:9:17" }, "nodeType": "ModifierInvocation", @@ -5934,10 +6654,12 @@ "id": 27471, "nodeType": "FunctionDefinition", "src": "8653:274:17", + "nodes": [], "body": { "id": 27470, "nodeType": "Block", "src": "8755:172:17", + "nodes": [], "statements": [ { "expression": { @@ -6030,10 +6752,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "8773:18:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -6043,12 +6765,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8773:32:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -6057,9 +6780,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8806:13:17", "memberName": "getAmountsOut", "nodeType": "MemberAccess", - "referencedDeclaration": 29752, + "referencedDeclaration": 29767, "src": "8773:46:17", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", @@ -6072,6 +6796,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8773:128:17", @@ -6110,6 +6835,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8908:6:17", "memberName": "length", "nodeType": "MemberAccess", "src": "8902:12:17", @@ -6286,10 +7012,12 @@ "id": 27494, "nodeType": "FunctionDefinition", "src": "9129:248:17", + "nodes": [], "body": { "id": 27493, "nodeType": "Block", "src": "9221:156:17", + "nodes": [], "statements": [ { "expression": { @@ -6357,10 +7085,10 @@ "name": "IUniswapV2Router02", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29849, + "referencedDeclaration": 29864, "src": "9239:18:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29849_$", + "typeIdentifier": "t_type$_t_contract$_IUniswapV2Router02_$29864_$", "typeString": "type(contract IUniswapV2Router02)" } }, @@ -6370,12 +7098,13 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9239:32:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IUniswapV2Router02_$29849", + "typeIdentifier": "t_contract$_IUniswapV2Router02_$29864", "typeString": "contract IUniswapV2Router02" } }, @@ -6384,9 +7113,10 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9272:13:17", "memberName": "getAmountsOut", "nodeType": "MemberAccess", - "referencedDeclaration": 29752, + "referencedDeclaration": 29767, "src": "9239:46:17", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", @@ -6399,6 +7129,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9239:112:17", @@ -6437,6 +7168,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9358:6:17", "memberName": "length", "nodeType": "MemberAccess", "src": "9352:12:17", @@ -6589,8 +7321,11 @@ "baseName": { "id": 27015, "name": "Ownable", + "nameLocations": [ + "581:7:17" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28255, + "referencedDeclaration": 28270, "src": "581:7:17" }, "id": 27016, @@ -6610,8 +7345,8 @@ "fullyImplemented": true, "linearizedBaseContracts": [ 27495, - 28255, - 28107 + 28270, + 28122 ], "name": "Treasury", "nameLocation": "569:8:17", diff --git a/out/Utility.sol/Hevm.json b/out/Utility.sol/Hevm.json index 4d7b131..b2d2f25 100644 --- a/out/Utility.sol/Hevm.json +++ b/out/Utility.sol/Hevm.json @@ -51,21 +51,232 @@ "store(address,bytes32,bytes32)": "70ca10bb", "warp(uint256)": "e5d6bf02" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"store\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"warp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Utility.sol\":\"Hevm\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843\",\"dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5\"]},\"test/Utility.sol\":{\"keccak256\":\"0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda\",\"dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "store" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "warp" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "test/Utility.sol": "Hevm" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + }, + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdAssertions.sol": { + "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", + "urls": [ + "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", + "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdError.sol": { + "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", + "urls": [ + "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", + "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Test.sol": { + "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", + "urls": [ + "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", + "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/users/Actor.sol": { + "keccak256": "0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3", + "urls": [ + "bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843", + "dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5" + ], + "license": "AGPL-3.0-or-later" + }, + "test/Utility.sol": { + "keccak256": "0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135", + "urls": [ + "bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda", + "dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s" + ], + "license": "AGPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "test/Utility.sol", - "id": 31030, + "id": 32081, "exportedSymbols": { "Actor": [ - 30364 + 30379 ], "DSTest": [ 1786 ], "Hevm": [ - 30498 + 31549 ], "IERC20": [ - 29143 + 29158 ], "StdAssertions": [ 2708 @@ -89,10 +300,10 @@ 1843 ], "User": [ - 30506 + 31557 ], "Utility": [ - 31029 + 32080 ], "Vm": [ 9352 @@ -120,9 +331,10 @@ "src": "47:6283:30", "nodes": [ { - "id": 30481, + "id": 31532, "nodeType": "PragmaDirective", "src": "47:23:30", + "nodes": [], "literals": [ "solidity", "^", @@ -131,38 +343,41 @@ ] }, { - "id": 30482, + "id": 31533, "nodeType": "ImportDirective", "src": "74:32:30", + "nodes": [], "absolutePath": "src/users/Actor.sol", "file": "../src/users/Actor.sol", "nameLocation": "-1:-1:-1", - "scope": 31030, - "sourceUnit": 30365, + "scope": 32081, + "sourceUnit": 30380, "symbolAliases": [], "unitAlias": "" }, { - "id": 30483, + "id": 31534, "nodeType": "ImportDirective", "src": "110:39:30", + "nodes": [], "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 31030, + "scope": 32081, "sourceUnit": 8196, "symbolAliases": [], "unitAlias": "" }, { - "id": 30498, + "id": 31549, "nodeType": "ContractDefinition", "src": "153:112:30", "nodes": [ { - "id": 30488, + "id": 31539, "nodeType": "FunctionDefinition", "src": "175:32:30", + "nodes": [], "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", @@ -170,17 +385,17 @@ "name": "warp", "nameLocation": "184:4:30", "parameters": { - "id": 30486, + "id": 31537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30485, + "id": 31536, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30488, + "scope": 31539, "src": "189:7:30", "stateVariable": false, "storageLocation": "default", @@ -189,7 +404,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30484, + "id": 31535, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "189:7:30", @@ -204,20 +419,21 @@ "src": "188:9:30" }, "returnParameters": { - "id": 30487, + "id": 31538, "nodeType": "ParameterList", "parameters": [], "src": "206:0:30" }, - "scope": 30498, + "scope": 31549, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30497, + "id": 31548, "nodeType": "FunctionDefinition", "src": "213:49:30", + "nodes": [], "functionSelector": "70ca10bb", "implemented": false, "kind": "function", @@ -225,17 +441,17 @@ "name": "store", "nameLocation": "222:5:30", "parameters": { - "id": 30495, + "id": 31546, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30490, + "id": 31541, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "228:7:30", "stateVariable": false, "storageLocation": "default", @@ -244,7 +460,7 @@ "typeString": "address" }, "typeName": { - "id": 30489, + "id": 31540, "name": "address", "nodeType": "ElementaryTypeName", "src": "228:7:30", @@ -258,12 +474,12 @@ }, { "constant": false, - "id": 30492, + "id": 31543, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "236:7:30", "stateVariable": false, "storageLocation": "default", @@ -272,7 +488,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30491, + "id": 31542, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "236:7:30", @@ -285,12 +501,12 @@ }, { "constant": false, - "id": 30494, + "id": 31545, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "244:7:30", "stateVariable": false, "storageLocation": "default", @@ -299,7 +515,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30493, + "id": 31544, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "244:7:30", @@ -314,12 +530,12 @@ "src": "227:25:30" }, "returnParameters": { - "id": 30496, + "id": 31547, "nodeType": "ParameterList", "parameters": [], "src": "261:0:30" }, - "scope": 30498, + "scope": 31549, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -332,22 +548,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 30498 + 31549 ], "name": "Hevm", "nameLocation": "163:4:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] }, { - "id": 30506, + "id": 31557, "nodeType": "ContractDefinition", "src": "269:69:30", "nodes": [ { - "id": 30505, + "id": 31556, "nodeType": "FunctionDefinition", "src": "291:44:30", + "nodes": [], "functionSelector": "095ea7b3", "implemented": false, "kind": "function", @@ -355,17 +572,17 @@ "name": "approve", "nameLocation": "300:7:30", "parameters": { - "id": 30503, + "id": 31554, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30500, + "id": 31551, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30505, + "scope": 31556, "src": "308:7:30", "stateVariable": false, "storageLocation": "default", @@ -374,7 +591,7 @@ "typeString": "address" }, "typeName": { - "id": 30499, + "id": 31550, "name": "address", "nodeType": "ElementaryTypeName", "src": "308:7:30", @@ -388,12 +605,12 @@ }, { "constant": false, - "id": 30502, + "id": 31553, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30505, + "scope": 31556, "src": "317:7:30", "stateVariable": false, "storageLocation": "default", @@ -402,7 +619,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30501, + "id": 31552, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "317:7:30", @@ -417,12 +634,12 @@ "src": "307:18:30" }, "returnParameters": { - "id": 30504, + "id": 31555, "nodeType": "ParameterList", "parameters": [], "src": "334:0:30" }, - "scope": 30506, + "scope": 31557, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -435,163 +652,180 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 30506 + 31557 ], "name": "User", "nameLocation": "279:4:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] }, { - "id": 31029, + "id": 32080, "nodeType": "ContractDefinition", "src": "449:5881:30", "nodes": [ { - "id": 30511, + "id": 31562, "nodeType": "VariableDeclaration", "src": "485:9:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "hevm", "nameLocation": "490:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" }, "typeName": { - "id": 30510, + "id": 31561, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30509, + "id": 31560, "name": "Hevm", + "nameLocations": [ + "485:4:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "485:4:30" }, - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "485:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, "visibility": "internal" }, { - "id": 30514, + "id": 31565, "nodeType": "VariableDeclaration", "src": "596:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "joe", "nameLocation": "603:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30513, + "id": 31564, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30512, + "id": 31563, "name": "Actor", + "nameLocations": [ + "596:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "596:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "596:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30517, + "id": 31568, "nodeType": "VariableDeclaration", "src": "625:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "dev", "nameLocation": "632:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30516, + "id": 31567, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30515, + "id": 31566, "name": "Actor", + "nameLocations": [ + "625:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "625:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "625:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30520, + "id": 31571, "nodeType": "VariableDeclaration", "src": "651:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "jon", "nameLocation": "658:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30519, + "id": 31570, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30518, + "id": 31569, "name": "Actor", + "nameLocations": [ + "651:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "651:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "651:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30523, + "id": 31574, "nodeType": "VariableDeclaration", "src": "815:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "USDC", "nameLocation": "832:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -599,7 +833,7 @@ "typeString": "address" }, "typeName": { - "id": 30521, + "id": 31572, "name": "address", "nodeType": "ElementaryTypeName", "src": "815:7:30", @@ -611,7 +845,7 @@ }, "value": { "hexValue": "307841306238363939316336323138623336633164313944346132653945623063453336303665423438", - "id": 30522, + "id": 31573, "isConstant": false, "isLValue": false, "isPure": true, @@ -628,14 +862,15 @@ "visibility": "internal" }, { - "id": 30526, + "id": 31577, "nodeType": "VariableDeclaration", "src": "889:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "DAI", "nameLocation": "906:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -643,7 +878,7 @@ "typeString": "address" }, "typeName": { - "id": 30524, + "id": 31575, "name": "address", "nodeType": "ElementaryTypeName", "src": "889:7:30", @@ -655,7 +890,7 @@ }, "value": { "hexValue": "307836423137353437344538393039344334344461393862393534456564654143343935323731643046", - "id": 30525, + "id": 31576, "isConstant": false, "isLValue": false, "isPure": true, @@ -672,14 +907,15 @@ "visibility": "internal" }, { - "id": 30529, + "id": 31580, "nodeType": "VariableDeclaration", "src": "963:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WETH", "nameLocation": "980:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -687,7 +923,7 @@ "typeString": "address" }, "typeName": { - "id": 30527, + "id": 31578, "name": "address", "nodeType": "ElementaryTypeName", "src": "963:7:30", @@ -699,7 +935,7 @@ }, "value": { "hexValue": "307843303261614133396232323346453844304130653543344632376541443930383343373536436332", - "id": 30528, + "id": 31579, "isConstant": false, "isLValue": false, "isPure": true, @@ -716,14 +952,15 @@ "visibility": "internal" }, { - "id": 30532, + "id": 31583, "nodeType": "VariableDeclaration", "src": "1037:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WBTC", "nameLocation": "1054:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -731,7 +968,7 @@ "typeString": "address" }, "typeName": { - "id": 30530, + "id": 31581, "name": "address", "nodeType": "ElementaryTypeName", "src": "1037:7:30", @@ -743,7 +980,7 @@ }, "value": { "hexValue": "307832323630464143354535353432613737334161343466424366654466374331393362633243353939", - "id": 30531, + "id": 31582, "isConstant": false, "isLValue": false, "isPure": true, @@ -760,14 +997,15 @@ "visibility": "internal" }, { - "id": 30535, + "id": 31586, "nodeType": "VariableDeclaration", "src": "1111:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "FRAX", "nameLocation": "1128:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -775,7 +1013,7 @@ "typeString": "address" }, "typeName": { - "id": 30533, + "id": 31584, "name": "address", "nodeType": "ElementaryTypeName", "src": "1111:7:30", @@ -787,7 +1025,7 @@ }, "value": { "hexValue": "307838353364393535614345663832324462303538656238353035393131454437374631373562393965", - "id": 30534, + "id": 31585, "isConstant": false, "isLValue": false, "isPure": true, @@ -804,45 +1042,49 @@ "visibility": "internal" }, { - "id": 30541, + "id": 31592, "nodeType": "VariableDeclaration", "src": "1187:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "usdc", "nameLocation": "1203:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30537, + "id": 31588, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30536, + "id": 31587, "name": "IERC20", + "nameLocations": [ + "1187:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1187:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1187:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30539, + "id": 31590, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30523, + "referencedDeclaration": 31574, "src": "1217:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -857,74 +1099,79 @@ "typeString": "address" } ], - "id": 30538, + "id": 31589, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1210:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30540, + "id": 31591, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1210:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30547, + "id": 31598, "nodeType": "VariableDeclaration", "src": "1229:34:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "dai", "nameLocation": "1245:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30543, + "id": 31594, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30542, + "id": 31593, "name": "IERC20", + "nameLocations": [ + "1229:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1229:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1229:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30545, + "id": 31596, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30526, + "referencedDeclaration": 31577, "src": "1259:3:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -939,74 +1186,79 @@ "typeString": "address" } ], - "id": 30544, + "id": 31595, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1252:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30546, + "id": 31597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1252:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30553, + "id": 31604, "nodeType": "VariableDeclaration", "src": "1270:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "weth", "nameLocation": "1286:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30549, + "id": 31600, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30548, + "id": 31599, "name": "IERC20", + "nameLocations": [ + "1270:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1270:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1270:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30551, + "id": 31602, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30529, + "referencedDeclaration": 31580, "src": "1300:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1021,74 +1273,79 @@ "typeString": "address" } ], - "id": 30550, + "id": 31601, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1293:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30552, + "id": 31603, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1293:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30559, + "id": 31610, "nodeType": "VariableDeclaration", "src": "1312:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "wbtc", "nameLocation": "1328:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30555, + "id": 31606, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30554, + "id": 31605, "name": "IERC20", + "nameLocations": [ + "1312:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1312:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1312:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30557, + "id": 31608, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30532, + "referencedDeclaration": 31583, "src": "1342:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1103,43 +1360,45 @@ "typeString": "address" } ], - "id": 30556, + "id": 31607, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1335:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30558, + "id": 31609, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1335:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30562, + "id": 31613, "nodeType": "VariableDeclaration", "src": "1356:82:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "UNISWAP_V2_ROUTER_02", "nameLocation": "1373:20:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1147,7 +1406,7 @@ "typeString": "address" }, "typeName": { - "id": 30560, + "id": 31611, "name": "address", "nodeType": "ElementaryTypeName", "src": "1356:7:30", @@ -1159,7 +1418,7 @@ }, "value": { "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", - "id": 30561, + "id": 31612, "isConstant": false, "isLValue": false, "isPure": true, @@ -1176,14 +1435,15 @@ "visibility": "internal" }, { - "id": 30565, + "id": 31616, "nodeType": "VariableDeclaration", "src": "1466:82:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "UNISWAP_V2_FACTORY", "nameLocation": "1483:18:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1191,7 +1451,7 @@ "typeString": "address" }, "typeName": { - "id": 30563, + "id": 31614, "name": "address", "nodeType": "ElementaryTypeName", "src": "1466:7:30", @@ -1203,7 +1463,7 @@ }, "value": { "hexValue": "307835433639624565373031656638313461324236613345444434423136353243423963633561413666", - "id": 30564, + "id": 31615, "isConstant": false, "isLValue": false, "isPure": true, @@ -1220,15 +1480,16 @@ "visibility": "internal" }, { - "id": 30568, + "id": 31619, "nodeType": "VariableDeclaration", "src": "1655:36:30", + "nodes": [], "constant": true, "functionSelector": "e70dd6cf", "mutability": "constant", "name": "CL_FACTORY", "nameLocation": "1677:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1236,7 +1497,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30566, + "id": 31617, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1655:5:30", @@ -1247,7 +1508,7 @@ }, "value": { "hexValue": "30", - "id": 30567, + "id": 31618, "isConstant": false, "isLValue": false, "isPure": true, @@ -1264,15 +1525,16 @@ "visibility": "public" }, { - "id": 30571, + "id": 31622, "nodeType": "VariableDeclaration", "src": "1745:36:30", + "nodes": [], "constant": true, "functionSelector": "174a5be4", "mutability": "constant", "name": "DL_FACTORY", "nameLocation": "1767:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1280,7 +1542,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30569, + "id": 31620, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1745:5:30", @@ -1291,7 +1553,7 @@ }, "value": { "hexValue": "31", - "id": 30570, + "id": 31621, "isConstant": false, "isLValue": false, "isPure": true, @@ -1308,15 +1570,16 @@ "visibility": "public" }, { - "id": 30574, + "id": 31625, "nodeType": "VariableDeclaration", "src": "1829:36:30", + "nodes": [], "constant": true, "functionSelector": "38505fb0", "mutability": "constant", "name": "FL_FACTORY", "nameLocation": "1851:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1324,7 +1587,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30572, + "id": 31623, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1829:5:30", @@ -1335,7 +1598,7 @@ }, "value": { "hexValue": "32", - "id": 30573, + "id": 31624, "isConstant": false, "isLValue": false, "isPure": true, @@ -1352,15 +1615,16 @@ "visibility": "public" }, { - "id": 30577, + "id": 31628, "nodeType": "VariableDeclaration", "src": "1916:36:30", + "nodes": [], "constant": true, "functionSelector": "c5ba73ed", "mutability": "constant", "name": "LL_FACTORY", "nameLocation": "1938:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1368,7 +1632,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30575, + "id": 31626, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1916:5:30", @@ -1379,7 +1643,7 @@ }, "value": { "hexValue": "33", - "id": 30576, + "id": 31627, "isConstant": false, "isLValue": false, "isPure": true, @@ -1396,15 +1660,16 @@ "visibility": "public" }, { - "id": 30580, + "id": 31631, "nodeType": "VariableDeclaration", "src": "2005:36:30", + "nodes": [], "constant": true, "functionSelector": "9f71f14a", "mutability": "constant", "name": "SL_FACTORY", "nameLocation": "2027:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1412,7 +1677,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30578, + "id": 31629, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2005:5:30", @@ -1423,7 +1688,7 @@ }, "value": { "hexValue": "34", - "id": 30579, + "id": 31630, "isConstant": false, "isLValue": false, "isPure": true, @@ -1440,15 +1705,16 @@ "visibility": "public" }, { - "id": 30583, + "id": 31634, "nodeType": "VariableDeclaration", "src": "2092:45:30", + "nodes": [], "constant": true, "functionSelector": "8c38922f", "mutability": "constant", "name": "INTEREST_CALC_TYPE", "nameLocation": "2114:18:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1456,7 +1722,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30581, + "id": 31632, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2092:5:30", @@ -1467,7 +1733,7 @@ }, "value": { "hexValue": "3130", - "id": 30582, + "id": 31633, "isConstant": false, "isLValue": false, "isPure": true, @@ -1484,15 +1750,16 @@ "visibility": "public" }, { - "id": 30586, + "id": 31637, "nodeType": "VariableDeclaration", "src": "2178:45:30", + "nodes": [], "constant": true, "functionSelector": "3493f4ca", "mutability": "constant", "name": "LATEFEE_CALC_TYPE", "nameLocation": "2200:17:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1500,7 +1767,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30584, + "id": 31635, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2178:5:30", @@ -1511,7 +1778,7 @@ }, "value": { "hexValue": "3131", - "id": 30585, + "id": 31636, "isConstant": false, "isLValue": false, "isPure": true, @@ -1528,15 +1795,16 @@ "visibility": "public" }, { - "id": 30589, + "id": 31640, "nodeType": "VariableDeclaration", "src": "2262:45:30", + "nodes": [], "constant": true, "functionSelector": "7a8fe3c0", "mutability": "constant", "name": "PREMIUM_CALC_TYPE", "nameLocation": "2284:17:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1544,7 +1812,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30587, + "id": 31638, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2262:5:30", @@ -1555,7 +1823,7 @@ }, "value": { "hexValue": "3132", - "id": 30588, + "id": 31639, "isConstant": false, "isLValue": false, "isPure": true, @@ -1572,14 +1840,15 @@ "visibility": "public" }, { - "id": 30594, + "id": 31645, "nodeType": "VariableDeclaration", "src": "2348:30:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "USD", "nameLocation": "2365:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1587,7 +1856,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30590, + "id": 31641, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2348:7:30", @@ -1601,14 +1870,14 @@ "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" }, - "id": 30593, + "id": 31644, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30591, + "id": 31642, "isConstant": false, "isLValue": false, "isPure": true, @@ -1626,7 +1895,7 @@ "operator": "**", "rightExpression": { "hexValue": "36", - "id": 30592, + "id": 31643, "isConstant": false, "isLValue": false, "isPure": true, @@ -1649,14 +1918,15 @@ "visibility": "internal" }, { - "id": 30599, + "id": 31650, "nodeType": "VariableDeclaration", "src": "2413:30:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "BTC", "nameLocation": "2430:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1664,7 +1934,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30595, + "id": 31646, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2413:7:30", @@ -1678,14 +1948,14 @@ "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" }, - "id": 30598, + "id": 31649, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30596, + "id": 31647, "isConstant": false, "isLValue": false, "isPure": true, @@ -1703,7 +1973,7 @@ "operator": "**", "rightExpression": { "hexValue": "38", - "id": 30597, + "id": 31648, "isConstant": false, "isLValue": false, "isPure": true, @@ -1726,14 +1996,15 @@ "visibility": "internal" }, { - "id": 30604, + "id": 31655, "nodeType": "VariableDeclaration", "src": "2478:31:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WAD", "nameLocation": "2495:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1741,7 +2012,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30600, + "id": 31651, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2478:7:30", @@ -1755,14 +2026,14 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 30603, + "id": 31654, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30601, + "id": 31652, "isConstant": false, "isLValue": false, "isPure": true, @@ -1780,7 +2051,7 @@ "operator": "**", "rightExpression": { "hexValue": "3138", - "id": 30602, + "id": 31653, "isConstant": false, "isLValue": false, "isPure": true, @@ -1803,14 +2074,15 @@ "visibility": "internal" }, { - "id": 30609, + "id": 31660, "nodeType": "VariableDeclaration", "src": "2516:31:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "RAY", "nameLocation": "2533:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1818,7 +2090,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30605, + "id": 31656, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2516:7:30", @@ -1832,14 +2104,14 @@ "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" }, - "id": 30608, + "id": 31659, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30606, + "id": 31657, "isConstant": false, "isLValue": false, "isPure": true, @@ -1857,7 +2129,7 @@ "operator": "**", "rightExpression": { "hexValue": "3237", - "id": 30607, + "id": 31658, "isConstant": false, "isLValue": false, "isPure": true, @@ -1880,19 +2152,20 @@ "visibility": "internal" }, { - "id": 30616, + "id": 31667, "nodeType": "StructDefinition", "src": "2631:167:30", + "nodes": [], "canonicalName": "Utility.Token", "members": [ { "constant": false, - "id": 30611, + "id": 31662, "mutability": "mutable", "name": "addr", "nameLocation": "2663:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2655:12:30", "stateVariable": false, "storageLocation": "default", @@ -1901,7 +2174,7 @@ "typeString": "address" }, "typeName": { - "id": 30610, + "id": 31661, "name": "address", "nodeType": "ElementaryTypeName", "src": "2655:7:30", @@ -1915,12 +2188,12 @@ }, { "constant": false, - "id": 30613, + "id": 31664, "mutability": "mutable", "name": "slot", "nameLocation": "2711:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2703:12:30", "stateVariable": false, "storageLocation": "default", @@ -1929,7 +2202,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30612, + "id": 31663, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2703:7:30", @@ -1942,12 +2215,12 @@ }, { "constant": false, - "id": 30615, + "id": 31666, "mutability": "mutable", "name": "orcl", "nameLocation": "2758:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2750:12:30", "stateVariable": false, "storageLocation": "default", @@ -1956,7 +2229,7 @@ "typeString": "address" }, "typeName": { - "id": 30614, + "id": 31665, "name": "address", "nodeType": "ElementaryTypeName", "src": "2750:7:30", @@ -1971,28 +2244,29 @@ ], "name": "Token", "nameLocation": "2638:5:30", - "scope": 31029, + "scope": 32080, "visibility": "public" }, { - "id": 30621, + "id": 31672, "nodeType": "VariableDeclaration", "src": "2807:33:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "tokens", "nameLocation": "2834:6:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "typeName": { - "id": 30620, + "id": 31671, "keyType": { - "id": 30617, + "id": 31668, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2816:7:30", @@ -2004,23 +2278,26 @@ "nodeType": "Mapping", "src": "2807:26:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "valueType": { - "id": 30619, + "id": 31670, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30618, + "id": 31669, "name": "Token", + "nameLocations": [ + "2827:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30616, + "referencedDeclaration": 31667, "src": "2827:5:30" }, - "referencedDeclaration": 30616, + "referencedDeclaration": 31667, "src": "2827:5:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage_ptr", + "typeIdentifier": "t_struct$_Token_$31667_storage_ptr", "typeString": "struct Utility.Token" } } @@ -2028,19 +2305,20 @@ "visibility": "internal" }, { - "id": 30626, + "id": 31677, "nodeType": "StructDefinition", "src": "2849:68:30", + "nodes": [], "canonicalName": "Utility.TestObj", "members": [ { "constant": false, - "id": 30623, + "id": 31674, "mutability": "mutable", "name": "pre", "nameLocation": "2883:3:30", "nodeType": "VariableDeclaration", - "scope": 30626, + "scope": 31677, "src": "2875:11:30", "stateVariable": false, "storageLocation": "default", @@ -2049,7 +2327,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30622, + "id": 31673, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2875:7:30", @@ -2062,12 +2340,12 @@ }, { "constant": false, - "id": 30625, + "id": 31676, "mutability": "mutable", "name": "post", "nameLocation": "2905:4:30", "nodeType": "VariableDeclaration", - "scope": 30626, + "scope": 31677, "src": "2897:12:30", "stateVariable": false, "storageLocation": "default", @@ -2076,7 +2354,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30624, + "id": 31675, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2897:7:30", @@ -2090,30 +2368,31 @@ ], "name": "TestObj", "nameLocation": "2856:7:30", - "scope": 31029, + "scope": 32080, "visibility": "public" }, { - "id": 30632, + "id": 31683, "nodeType": "EventDefinition", "src": "2925:29:30", + "nodes": [], "anonymous": false, "eventSelector": "3c5ad147104e56be34a9176a6692f7df8d2f4b29a5af06bc6b98970d329d6577", "name": "Debug", "nameLocation": "2931:5:30", "parameters": { - "id": 30631, + "id": 31682, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30628, + "id": 31679, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30632, + "scope": 31683, "src": "2937:6:30", "stateVariable": false, "storageLocation": "default", @@ -2122,7 +2401,7 @@ "typeString": "string" }, "typeName": { - "id": 30627, + "id": 31678, "name": "string", "nodeType": "ElementaryTypeName", "src": "2937:6:30", @@ -2135,13 +2414,13 @@ }, { "constant": false, - "id": 30630, + "id": 31681, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30632, + "scope": 31683, "src": "2945:7:30", "stateVariable": false, "storageLocation": "default", @@ -2150,7 +2429,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30629, + "id": 31680, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2945:7:30", @@ -2166,26 +2445,27 @@ } }, { - "id": 30638, + "id": 31689, "nodeType": "EventDefinition", "src": "2960:29:30", + "nodes": [], "anonymous": false, "eventSelector": "14186b8ac9c91f14b0f16f9e886356157442bb899be26513dfe1d4d5929a5bac", "name": "Debug", "nameLocation": "2966:5:30", "parameters": { - "id": 30637, + "id": 31688, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30634, + "id": 31685, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30638, + "scope": 31689, "src": "2972:6:30", "stateVariable": false, "storageLocation": "default", @@ -2194,7 +2474,7 @@ "typeString": "string" }, "typeName": { - "id": 30633, + "id": 31684, "name": "string", "nodeType": "ElementaryTypeName", "src": "2972:6:30", @@ -2207,13 +2487,13 @@ }, { "constant": false, - "id": 30636, + "id": 31687, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30638, + "scope": 31689, "src": "2980:7:30", "stateVariable": false, "storageLocation": "default", @@ -2222,7 +2502,7 @@ "typeString": "address" }, "typeName": { - "id": 30635, + "id": 31686, "name": "address", "nodeType": "ElementaryTypeName", "src": "2980:7:30", @@ -2239,26 +2519,27 @@ } }, { - "id": 30644, + "id": 31695, "nodeType": "EventDefinition", "src": "2995:26:30", + "nodes": [], "anonymous": false, "eventSelector": "d1401e4d321999a7547f3d989953912043b0f4ab8471cc7307695072f6ee9d83", "name": "Debug", "nameLocation": "3001:5:30", "parameters": { - "id": 30643, + "id": 31694, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30640, + "id": 31691, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30644, + "scope": 31695, "src": "3007:6:30", "stateVariable": false, "storageLocation": "default", @@ -2267,7 +2548,7 @@ "typeString": "string" }, "typeName": { - "id": 30639, + "id": 31690, "name": "string", "nodeType": "ElementaryTypeName", "src": "3007:6:30", @@ -2280,13 +2561,13 @@ }, { "constant": false, - "id": 30642, + "id": 31693, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30644, + "scope": 31695, "src": "3015:4:30", "stateVariable": false, "storageLocation": "default", @@ -2295,7 +2576,7 @@ "typeString": "bool" }, "typeName": { - "id": 30641, + "id": 31692, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3015:4:30", @@ -2311,26 +2592,27 @@ } }, { - "id": 30650, + "id": 31701, "nodeType": "EventDefinition", "src": "3027:28:30", + "nodes": [], "anonymous": false, "eventSelector": "747eaa98d4c6787fb9ebfa7ba00179a57433dbd57fd28208b7a240d949164a09", "name": "Debug", "nameLocation": "3033:5:30", "parameters": { - "id": 30649, + "id": 31700, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30646, + "id": 31697, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30650, + "scope": 31701, "src": "3039:6:30", "stateVariable": false, "storageLocation": "default", @@ -2339,7 +2621,7 @@ "typeString": "string" }, "typeName": { - "id": 30645, + "id": 31696, "name": "string", "nodeType": "ElementaryTypeName", "src": "3039:6:30", @@ -2352,13 +2634,13 @@ }, { "constant": false, - "id": 30648, + "id": 31699, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30650, + "scope": 31701, "src": "3047:6:30", "stateVariable": false, "storageLocation": "default", @@ -2367,7 +2649,7 @@ "typeString": "string" }, "typeName": { - "id": 30647, + "id": 31698, "name": "string", "nodeType": "ElementaryTypeName", "src": "3047:6:30", @@ -2383,30 +2665,32 @@ } }, { - "id": 30674, + "id": 31725, "nodeType": "FunctionDefinition", "src": "3063:103:30", + "nodes": [], "body": { - "id": 30673, + "id": 31724, "nodeType": "Block", "src": "3084:82:30", + "nodes": [], "statements": [ { "expression": { - "id": 30671, + "id": 31722, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30653, + "id": 31704, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30511, + "referencedDeclaration": 31562, "src": "3086:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, @@ -2426,7 +2710,7 @@ "arguments": [ { "hexValue": "6865766d20636865617420636f6465", - "id": 30664, + "id": 31715, "isConstant": false, "isLValue": false, "isPure": true, @@ -2448,7 +2732,7 @@ "typeString": "literal_string \"hevm cheat code\"" } ], - "id": 30663, + "id": 31714, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2459,12 +2743,13 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 30665, + "id": 31716, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3130:28:30", @@ -2482,7 +2767,7 @@ "typeString": "bytes32" } ], - "id": 30662, + "id": 31713, "isConstant": false, "isLValue": false, "isPure": true, @@ -2494,19 +2779,20 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 30661, + "id": 31712, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3122:7:30", "typeDescriptions": {} } }, - "id": 30666, + "id": 31717, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3122:37:30", @@ -2524,7 +2810,7 @@ "typeString": "uint256" } ], - "id": 30660, + "id": 31711, "isConstant": false, "isLValue": false, "isPure": true, @@ -2536,19 +2822,20 @@ "typeString": "type(uint160)" }, "typeName": { - "id": 30659, + "id": 31710, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "3114:7:30", "typeDescriptions": {} } }, - "id": 30667, + "id": 31718, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3114:46:30", @@ -2566,7 +2853,7 @@ "typeString": "uint160" } ], - "id": 30658, + "id": 31709, "isConstant": false, "isLValue": false, "isPure": true, @@ -2578,19 +2865,20 @@ "typeString": "type(bytes20)" }, "typeName": { - "id": 30657, + "id": 31708, "name": "bytes20", "nodeType": "ElementaryTypeName", "src": "3106:7:30", "typeDescriptions": {} } }, - "id": 30668, + "id": 31719, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3106:55:30", @@ -2608,7 +2896,7 @@ "typeString": "bytes20" } ], - "id": 30656, + "id": 31707, "isConstant": false, "isLValue": false, "isPure": true, @@ -2620,19 +2908,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30655, + "id": 31706, "name": "address", "nodeType": "ElementaryTypeName", "src": "3098:7:30", "typeDescriptions": {} } }, - "id": 30669, + "id": 31720, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3098:64:30", @@ -2650,39 +2939,40 @@ "typeString": "address" } ], - "id": 30654, + "id": 31705, "name": "Hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "3093:4:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Hevm_$30498_$", + "typeIdentifier": "t_type$_t_contract$_Hevm_$31549_$", "typeString": "type(contract Hevm)" } }, - "id": 30670, + "id": 31721, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3093:70:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, "src": "3086:77:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, - "id": 30672, + "id": 31723, "nodeType": "ExpressionStatement", "src": "3086:77:30" } @@ -2694,47 +2984,49 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 30651, + "id": 31702, "nodeType": "ParameterList", "parameters": [], "src": "3074:2:30" }, "returnParameters": { - "id": 30652, + "id": 31703, "nodeType": "ParameterList", "parameters": [], "src": "3084:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30699, + "id": 31750, "nodeType": "FunctionDefinition", "src": "3312:184:30", + "nodes": [], "body": { - "id": 30698, + "id": 31749, "nodeType": "Block", "src": "3343:153:30", + "nodes": [], "statements": [ { "expression": { - "id": 30682, + "id": 31733, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30677, + "id": 31728, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30520, + "referencedDeclaration": 31571, "src": "3354:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -2744,7 +3036,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30680, + "id": 31731, "isConstant": false, "isLValue": false, "isPure": false, @@ -2752,68 +3044,72 @@ "nodeType": "NewExpression", "src": "3360:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30679, + "id": 31730, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30678, + "id": 31729, "name": "Actor", + "nameLocations": [ + "3364:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3364:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3364:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30681, + "id": 31732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3360:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3354:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30683, + "id": 31734, "nodeType": "ExpressionStatement", "src": "3354:17:30" }, { "expression": { - "id": 30689, + "id": 31740, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30684, + "id": 31735, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30514, + "referencedDeclaration": 31565, "src": "3395:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -2823,7 +3119,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30687, + "id": 31738, "isConstant": false, "isLValue": false, "isPure": false, @@ -2831,68 +3127,72 @@ "nodeType": "NewExpression", "src": "3401:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30686, + "id": 31737, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30685, + "id": 31736, "name": "Actor", + "nameLocations": [ + "3405:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3405:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3405:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30688, + "id": 31739, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3401:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3395:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30690, + "id": 31741, "nodeType": "ExpressionStatement", "src": "3395:17:30" }, { "expression": { - "id": 30696, + "id": 31747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30691, + "id": 31742, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30517, + "referencedDeclaration": 31568, "src": "3462:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -2902,7 +3202,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30694, + "id": 31745, "isConstant": false, "isLValue": false, "isPure": false, @@ -2910,49 +3210,53 @@ "nodeType": "NewExpression", "src": "3468:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30693, + "id": 31744, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30692, + "id": 31743, "name": "Actor", + "nameLocations": [ + "3472:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3472:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3472:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30695, + "id": 31746, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3468:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3462:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30697, + "id": 31748, "nodeType": "ExpressionStatement", "src": "3462:17:30" } @@ -2965,34 +3269,36 @@ "name": "createActors", "nameLocation": "3321:12:30", "parameters": { - "id": 30675, + "id": 31726, "nodeType": "ParameterList", "parameters": [], "src": "3333:2:30" }, "returnParameters": { - "id": 30676, + "id": 31727, "nodeType": "ParameterList", "parameters": [], "src": "3343:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30780, + "id": 31831, "nodeType": "FunctionDefinition", "src": "3620:551:30", + "nodes": [], "body": { - "id": 30779, + "id": 31830, "nodeType": "Block", "src": "3650:521:30", + "nodes": [], "statements": [ { "expression": { - "id": 30707, + "id": 31758, "isConstant": false, "isLValue": false, "isPure": false, @@ -3000,21 +3306,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30702, + "id": 31753, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3663:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30704, + "id": 31755, "indexExpression": { "hexValue": "55534443", - "id": 30703, + "id": 31754, "isConstant": false, "isLValue": false, "isPure": true, @@ -3035,18 +3341,19 @@ "nodeType": "IndexAccess", "src": "3663:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30705, + "id": 31756, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3678:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3663:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3056,11 +3363,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30706, + "id": 31757, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30523, + "referencedDeclaration": 31574, "src": "3685:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3073,13 +3380,13 @@ "typeString": "address" } }, - "id": 30708, + "id": 31759, "nodeType": "ExpressionStatement", "src": "3663:26:30" }, { "expression": { - "id": 30714, + "id": 31765, "isConstant": false, "isLValue": false, "isPure": false, @@ -3087,21 +3394,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30709, + "id": 31760, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3700:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30711, + "id": 31762, "indexExpression": { "hexValue": "55534443", - "id": 30710, + "id": 31761, "isConstant": false, "isLValue": false, "isPure": true, @@ -3122,18 +3429,19 @@ "nodeType": "IndexAccess", "src": "3700:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30712, + "id": 31763, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3715:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3700:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3144,7 +3452,7 @@ "operator": "=", "rightHandSide": { "hexValue": "39", - "id": 30713, + "id": 31764, "isConstant": false, "isLValue": false, "isPure": true, @@ -3164,13 +3472,13 @@ "typeString": "uint256" } }, - "id": 30715, + "id": 31766, "nodeType": "ExpressionStatement", "src": "3700:23:30" }, { "expression": { - "id": 30721, + "id": 31772, "isConstant": false, "isLValue": false, "isPure": false, @@ -3178,21 +3486,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30716, + "id": 31767, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3736:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30718, + "id": 31769, "indexExpression": { "hexValue": "444149", - "id": 30717, + "id": 31768, "isConstant": false, "isLValue": false, "isPure": true, @@ -3213,18 +3521,19 @@ "nodeType": "IndexAccess", "src": "3736:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30719, + "id": 31770, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3750:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3736:18:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3234,11 +3543,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30720, + "id": 31771, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30526, + "referencedDeclaration": 31577, "src": "3757:3:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3251,13 +3560,13 @@ "typeString": "address" } }, - "id": 30722, + "id": 31773, "nodeType": "ExpressionStatement", "src": "3736:24:30" }, { "expression": { - "id": 30728, + "id": 31779, "isConstant": false, "isLValue": false, "isPure": false, @@ -3265,21 +3574,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30723, + "id": 31774, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3771:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30725, + "id": 31776, "indexExpression": { "hexValue": "444149", - "id": 30724, + "id": 31775, "isConstant": false, "isLValue": false, "isPure": true, @@ -3300,18 +3609,19 @@ "nodeType": "IndexAccess", "src": "3771:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30726, + "id": 31777, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3785:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3771:18:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3322,7 +3632,7 @@ "operator": "=", "rightHandSide": { "hexValue": "32", - "id": 30727, + "id": 31778, "isConstant": false, "isLValue": false, "isPure": true, @@ -3342,13 +3652,13 @@ "typeString": "uint256" } }, - "id": 30729, + "id": 31780, "nodeType": "ExpressionStatement", "src": "3771:22:30" }, { "expression": { - "id": 30735, + "id": 31786, "isConstant": false, "isLValue": false, "isPure": false, @@ -3356,21 +3666,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30730, + "id": 31781, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3804:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30732, + "id": 31783, "indexExpression": { "hexValue": "444149", - "id": 30731, + "id": 31782, "isConstant": false, "isLValue": false, "isPure": true, @@ -3391,18 +3701,19 @@ "nodeType": "IndexAccess", "src": "3804:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30733, + "id": 31784, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3818:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "3804:18:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3413,7 +3724,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307841656430633338343032613564313964663645346330334634453244636544366532396331656539", - "id": 30734, + "id": 31785, "isConstant": false, "isLValue": false, "isPure": true, @@ -3433,13 +3744,13 @@ "typeString": "address" } }, - "id": 30736, + "id": 31787, "nodeType": "ExpressionStatement", "src": "3804:63:30" }, { "expression": { - "id": 30742, + "id": 31793, "isConstant": false, "isLValue": false, "isPure": false, @@ -3447,21 +3758,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30737, + "id": 31788, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3880:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30739, + "id": 31790, "indexExpression": { "hexValue": "57455448", - "id": 30738, + "id": 31789, "isConstant": false, "isLValue": false, "isPure": true, @@ -3482,18 +3793,19 @@ "nodeType": "IndexAccess", "src": "3880:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30740, + "id": 31791, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3895:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3880:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3503,11 +3815,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30741, + "id": 31792, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30529, + "referencedDeclaration": 31580, "src": "3902:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3520,13 +3832,13 @@ "typeString": "address" } }, - "id": 30743, + "id": 31794, "nodeType": "ExpressionStatement", "src": "3880:26:30" }, { "expression": { - "id": 30749, + "id": 31800, "isConstant": false, "isLValue": false, "isPure": false, @@ -3534,21 +3846,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30744, + "id": 31795, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3917:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30746, + "id": 31797, "indexExpression": { "hexValue": "57455448", - "id": 30745, + "id": 31796, "isConstant": false, "isLValue": false, "isPure": true, @@ -3569,18 +3881,19 @@ "nodeType": "IndexAccess", "src": "3917:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30747, + "id": 31798, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3932:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3917:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3591,7 +3904,7 @@ "operator": "=", "rightHandSide": { "hexValue": "33", - "id": 30748, + "id": 31799, "isConstant": false, "isLValue": false, "isPure": true, @@ -3611,13 +3924,13 @@ "typeString": "uint256" } }, - "id": 30750, + "id": 31801, "nodeType": "ExpressionStatement", "src": "3917:23:30" }, { "expression": { - "id": 30756, + "id": 31807, "isConstant": false, "isLValue": false, "isPure": false, @@ -3625,21 +3938,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30751, + "id": 31802, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3951:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30753, + "id": 31804, "indexExpression": { "hexValue": "57455448", - "id": 30752, + "id": 31803, "isConstant": false, "isLValue": false, "isPure": true, @@ -3660,18 +3973,19 @@ "nodeType": "IndexAccess", "src": "3951:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30754, + "id": 31805, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3966:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "3951:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3682,7 +3996,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307835663465433344663963626434333731344645323734306635453336313631353563356238343139", - "id": 30755, + "id": 31806, "isConstant": false, "isLValue": false, "isPure": true, @@ -3702,13 +4016,13 @@ "typeString": "address" } }, - "id": 30757, + "id": 31808, "nodeType": "ExpressionStatement", "src": "3951:64:30" }, { "expression": { - "id": 30763, + "id": 31814, "isConstant": false, "isLValue": false, "isPure": false, @@ -3716,21 +4030,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30758, + "id": 31809, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4028:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30760, + "id": 31811, "indexExpression": { "hexValue": "57425443", - "id": 30759, + "id": 31810, "isConstant": false, "isLValue": false, "isPure": true, @@ -3751,18 +4065,19 @@ "nodeType": "IndexAccess", "src": "4028:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30761, + "id": 31812, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4043:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "4028:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3772,11 +4087,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30762, + "id": 31813, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30532, + "referencedDeclaration": 31583, "src": "4050:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3789,13 +4104,13 @@ "typeString": "address" } }, - "id": 30764, + "id": 31815, "nodeType": "ExpressionStatement", "src": "4028:26:30" }, { "expression": { - "id": 30770, + "id": 31821, "isConstant": false, "isLValue": false, "isPure": false, @@ -3803,21 +4118,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30765, + "id": 31816, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4065:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30767, + "id": 31818, "indexExpression": { "hexValue": "57425443", - "id": 30766, + "id": 31817, "isConstant": false, "isLValue": false, "isPure": true, @@ -3838,18 +4153,19 @@ "nodeType": "IndexAccess", "src": "4065:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30768, + "id": 31819, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4080:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "4065:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3860,7 +4176,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 30769, + "id": 31820, "isConstant": false, "isLValue": false, "isPure": true, @@ -3880,13 +4196,13 @@ "typeString": "uint256" } }, - "id": 30771, + "id": 31822, "nodeType": "ExpressionStatement", "src": "4065:23:30" }, { "expression": { - "id": 30777, + "id": 31828, "isConstant": false, "isLValue": false, "isPure": false, @@ -3894,21 +4210,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30772, + "id": 31823, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4099:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30774, + "id": 31825, "indexExpression": { "hexValue": "57425443", - "id": 30773, + "id": 31824, "isConstant": false, "isLValue": false, "isPure": true, @@ -3929,18 +4245,19 @@ "nodeType": "IndexAccess", "src": "4099:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30775, + "id": 31826, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4114:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "4099:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3951,7 +4268,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307846343033303038363532326135624545613439383846386341354233366462433937426545383863", - "id": 30776, + "id": 31827, "isConstant": false, "isLValue": false, "isPure": true, @@ -3971,7 +4288,7 @@ "typeString": "address" } }, - "id": 30778, + "id": 31829, "nodeType": "ExpressionStatement", "src": "4099:64:30" } @@ -3984,44 +4301,46 @@ "name": "setUpTokens", "nameLocation": "3629:11:30", "parameters": { - "id": 30700, + "id": 31751, "nodeType": "ParameterList", "parameters": [], "src": "3640:2:30" }, "returnParameters": { - "id": 30701, + "id": 31752, "nodeType": "ParameterList", "parameters": [], "src": "3650:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30844, + "id": 31895, "nodeType": "FunctionDefinition", "src": "4221:461:30", + "nodes": [], "body": { - "id": 30843, + "id": 31894, "nodeType": "Block", "src": "4288:394:30", + "nodes": [], "statements": [ { "assignments": [ - 30790 + 31841 ], "declarations": [ { "constant": false, - "id": 30790, + "id": 31841, "mutability": "mutable", "name": "addr", "nameLocation": "4307:4:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4299:12:30", "stateVariable": false, "storageLocation": "default", @@ -4030,7 +4349,7 @@ "typeString": "address" }, "typeName": { - "id": 30789, + "id": 31840, "name": "address", "nodeType": "ElementaryTypeName", "src": "4299:7:30", @@ -4043,28 +4362,28 @@ "visibility": "internal" } ], - "id": 30795, + "id": 31846, "initialValue": { "expression": { "baseExpression": { - "id": 30791, + "id": 31842, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4314:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30793, + "id": 31844, "indexExpression": { - "id": 30792, + "id": 31843, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30782, + "referencedDeclaration": 31833, "src": "4321:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4078,18 +4397,19 @@ "nodeType": "IndexAccess", "src": "4314:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30794, + "id": 31845, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4329:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "4314:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4101,17 +4421,17 @@ }, { "assignments": [ - 30797 + 31848 ], "declarations": [ { "constant": false, - "id": 30797, + "id": 31848, "mutability": "mutable", "name": "slot", "nameLocation": "4352:4:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4344:12:30", "stateVariable": false, "storageLocation": "default", @@ -4120,7 +4440,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30796, + "id": 31847, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4344:7:30", @@ -4132,28 +4452,28 @@ "visibility": "internal" } ], - "id": 30802, + "id": 31853, "initialValue": { "expression": { "baseExpression": { - "id": 30798, + "id": 31849, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4360:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30800, + "id": 31851, "indexExpression": { - "id": 30799, + "id": 31850, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30782, + "referencedDeclaration": 31833, "src": "4367:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4167,18 +4487,19 @@ "nodeType": "IndexAccess", "src": "4360:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30801, + "id": 31852, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4375:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "4360:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4190,17 +4511,17 @@ }, { "assignments": [ - 30804 + 31855 ], "declarations": [ { "constant": false, - "id": 30804, + "id": 31855, "mutability": "mutable", "name": "bal", "nameLocation": "4398:3:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4390:11:30", "stateVariable": false, "storageLocation": "default", @@ -4209,7 +4530,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30803, + "id": 31854, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4390:7:30", @@ -4221,15 +4542,15 @@ "visibility": "internal" } ], - "id": 30811, + "id": 31862, "initialValue": { "arguments": [ { - "id": 30809, + "id": 31860, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4427:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4247,11 +4568,11 @@ "expression": { "arguments": [ { - "id": 30806, + "id": 31857, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4411:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4266,52 +4587,55 @@ "typeString": "address" } ], - "id": 30805, + "id": 31856, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "4404:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30807, + "id": 31858, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4404:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30808, + "id": 31859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4417:9:30", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "4404:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30810, + "id": 31861, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4404:31:30", @@ -4328,11 +4652,11 @@ "expression": { "arguments": [ { - "id": 30815, + "id": 31866, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4473:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4344,11 +4668,11 @@ { "arguments": [ { - "id": 30819, + "id": 31870, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4513:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4356,11 +4680,11 @@ } }, { - "id": 30820, + "id": 31871, "name": "slot", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30797, + "referencedDeclaration": 31848, "src": "4522:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4380,7 +4704,7 @@ } ], "expression": { - "id": 30817, + "id": 31868, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -4391,11 +4715,12 @@ "typeString": "abi" } }, - "id": 30818, + "id": 31869, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4506:6:30", "memberName": "encode", "nodeType": "MemberAccess", "src": "4502:10:30", @@ -4404,12 +4729,13 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 30821, + "id": 31872, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4502:25:30", @@ -4427,7 +4753,7 @@ "typeString": "bytes memory" } ], - "id": 30816, + "id": 31867, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -4438,12 +4764,13 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 30822, + "id": 31873, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4492:36:30", @@ -4460,17 +4787,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30827, + "id": 31878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30825, + "id": 31876, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30804, + "referencedDeclaration": 31855, "src": "4566:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4480,11 +4807,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 30826, + "id": 31877, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30786, + "referencedDeclaration": 31837, "src": "4572:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4505,7 +4832,7 @@ "typeString": "uint256" } ], - "id": 30824, + "id": 31875, "isConstant": false, "isLValue": false, "isPure": true, @@ -4517,19 +4844,20 @@ "typeString": "type(bytes32)" }, "typeName": { - "id": 30823, + "id": 31874, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4558:7:30", "typeDescriptions": {} } }, - "id": 30828, + "id": 31879, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4558:18:30", @@ -4556,37 +4884,39 @@ } ], "expression": { - "id": 30812, + "id": 31863, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30511, + "referencedDeclaration": 31562, "src": "4448:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, - "id": 30814, + "id": 31865, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4453:5:30", "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 30497, + "referencedDeclaration": 31548, "src": "4448:10:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (address,bytes32,bytes32) external" } }, - "id": 30829, + "id": 31880, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4448:139:30", @@ -4596,7 +4926,7 @@ "typeString": "tuple()" } }, - "id": 30830, + "id": 31881, "nodeType": "ExpressionStatement", "src": "4448:139:30" }, @@ -4606,11 +4936,11 @@ { "arguments": [ { - "id": 30836, + "id": 31887, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4632:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4628,11 +4958,11 @@ "expression": { "arguments": [ { - "id": 30833, + "id": 31884, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4616:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4647,52 +4977,55 @@ "typeString": "address" } ], - "id": 30832, + "id": 31883, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "4609:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30834, + "id": 31885, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4609:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30835, + "id": 31886, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4622:9:30", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "4609:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30837, + "id": 31888, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4609:31:30", @@ -4707,17 +5040,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30840, + "id": 31891, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30838, + "id": 31889, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30804, + "referencedDeclaration": 31855, "src": "4642:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4727,11 +5060,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 30839, + "id": 31890, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30786, + "referencedDeclaration": 31837, "src": "4648:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4756,7 +5089,7 @@ "typeString": "uint256" } ], - "id": 30831, + "id": 31882, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4778,12 +5111,13 @@ "typeString": "function (uint256,uint256)" } }, - "id": 30841, + "id": 31892, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4600:52:30", @@ -4793,7 +5127,7 @@ "typeString": "tuple()" } }, - "id": 30842, + "id": 31893, "nodeType": "ExpressionStatement", "src": "4600:52:30" } @@ -4806,17 +5140,17 @@ "name": "mint", "nameLocation": "4230:4:30", "parameters": { - "id": 30787, + "id": 31838, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30782, + "id": 31833, "mutability": "mutable", "name": "symbol", "nameLocation": "4243:6:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4235:14:30", "stateVariable": false, "storageLocation": "default", @@ -4825,7 +5159,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30781, + "id": 31832, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4235:7:30", @@ -4838,12 +5172,12 @@ }, { "constant": false, - "id": 30784, + "id": 31835, "mutability": "mutable", "name": "account", "nameLocation": "4259:7:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4251:15:30", "stateVariable": false, "storageLocation": "default", @@ -4852,7 +5186,7 @@ "typeString": "address" }, "typeName": { - "id": 30783, + "id": 31834, "name": "address", "nodeType": "ElementaryTypeName", "src": "4251:7:30", @@ -4866,12 +5200,12 @@ }, { "constant": false, - "id": 30786, + "id": 31837, "mutability": "mutable", "name": "amt", "nameLocation": "4276:3:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4268:11:30", "stateVariable": false, "storageLocation": "default", @@ -4880,7 +5214,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30785, + "id": 31836, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4268:7:30", @@ -4895,38 +5229,40 @@ "src": "4234:46:30" }, "returnParameters": { - "id": 30788, + "id": 31839, "nodeType": "ParameterList", "parameters": [], "src": "4288:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30920, + "id": 31971, "nodeType": "FunctionDefinition", "src": "4740:583:30", + "nodes": [], "body": { - "id": 30919, + "id": 31970, "nodeType": "Block", "src": "4818:505:30", + "nodes": [], "statements": [ { "assignments": [ - 30854 + 31905 ], "declarations": [ { "constant": false, - "id": 30854, + "id": 31905, "mutability": "mutable", "name": "diff", "nameLocation": "4837:4:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4829:12:30", "stateVariable": false, "storageLocation": "default", @@ -4935,7 +5271,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30853, + "id": 31904, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4829:7:30", @@ -4947,24 +5283,24 @@ "visibility": "internal" } ], - "id": 30865, + "id": 31916, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30857, + "id": 31908, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30855, + "id": 31906, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4845:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4974,11 +5310,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 30856, + "id": 31907, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4852:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4996,17 +5332,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30863, + "id": 31914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30861, + "id": 31912, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4873:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5016,11 +5352,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30862, + "id": 31913, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4880:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5033,7 +5369,7 @@ "typeString": "uint256" } }, - "id": 30864, + "id": 31915, "isConstant": false, "isLValue": false, "isPure": false, @@ -5045,17 +5381,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30860, + "id": 31911, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30858, + "id": 31909, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4859:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5065,11 +5401,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30859, + "id": 31910, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4866:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5096,17 +5432,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30868, + "id": 31919, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30866, + "id": 31917, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30854, + "referencedDeclaration": 31905, "src": "4899:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5117,7 +5453,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 30867, + "id": 31918, "isConstant": false, "isLValue": false, "isPure": true, @@ -5137,29 +5473,29 @@ "typeString": "bool" } }, - "id": 30870, + "id": 31921, "nodeType": "IfStatement", "src": "4895:22:30", "trueBody": { - "functionReturnParameters": 30852, - "id": 30869, + "functionReturnParameters": 31903, + "id": 31920, "nodeType": "Return", "src": "4910:7:30" } }, { "assignments": [ - 30872 + 31923 ], "declarations": [ { "constant": false, - "id": 30872, + "id": 31923, "mutability": "mutable", "name": "denominator", "nameLocation": "4937:11:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4929:19:30", "stateVariable": false, "storageLocation": "default", @@ -5168,7 +5504,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30871, + "id": 31922, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4929:7:30", @@ -5180,24 +5516,24 @@ "visibility": "internal" } ], - "id": 30879, + "id": 31930, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30875, + "id": 31926, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30873, + "id": 31924, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4951:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5208,7 +5544,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 30874, + "id": 31925, "isConstant": false, "isLValue": false, "isPure": true, @@ -5229,18 +5565,18 @@ } }, "falseExpression": { - "id": 30877, + "id": 31928, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4970:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 30878, + "id": 31929, "isConstant": false, "isLValue": false, "isPure": false, @@ -5248,11 +5584,11 @@ "nodeType": "Conditional", "src": "4951:23:30", "trueExpression": { - "id": 30876, + "id": 31927, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4963:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5269,17 +5605,17 @@ }, { "assignments": [ - 30881 + 31932 ], "declarations": [ { "constant": false, - "id": 30881, + "id": 31932, "mutability": "mutable", "name": "check", "nameLocation": "4990:5:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4985:10:30", "stateVariable": false, "storageLocation": "default", @@ -5288,7 +5624,7 @@ "typeString": "bool" }, "typeName": { - "id": 30880, + "id": 31931, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4985:4:30", @@ -5300,13 +5636,13 @@ "visibility": "internal" } ], - "id": 30896, + "id": 31947, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30895, + "id": 31946, "isConstant": false, "isLValue": false, "isPure": false, @@ -5318,7 +5654,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30887, + "id": 31938, "isConstant": false, "isLValue": false, "isPure": false, @@ -5330,17 +5666,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30884, + "id": 31935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30882, + "id": 31933, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30854, + "referencedDeclaration": 31905, "src": "5000:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5350,11 +5686,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30883, + "id": 31934, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30609, + "referencedDeclaration": 31660, "src": "5007:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5368,7 +5704,7 @@ } } ], - "id": 30885, + "id": 31936, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -5384,11 +5720,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 30886, + "id": 31937, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30872, + "referencedDeclaration": 31923, "src": "5014:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5402,7 +5738,7 @@ } } ], - "id": 30888, + "id": 31939, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -5424,17 +5760,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30893, + "id": 31944, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30889, + "id": 31940, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30609, + "referencedDeclaration": 31660, "src": "5030:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5448,14 +5784,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30892, + "id": 31943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30890, + "id": 31941, "isConstant": false, "isLValue": false, "isPure": true, @@ -5472,11 +5808,11 @@ "nodeType": "BinaryOperation", "operator": "**", "rightExpression": { - "id": 30891, + "id": 31942, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30850, + "referencedDeclaration": 31901, "src": "5042:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5496,7 +5832,7 @@ } } ], - "id": 30894, + "id": 31945, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -5520,7 +5856,7 @@ }, { "condition": { - "id": 30898, + "id": 31949, "isConstant": false, "isLValue": false, "isPure": false, @@ -5530,11 +5866,11 @@ "prefix": true, "src": "5068:6:30", "subExpression": { - "id": 30897, + "id": 31948, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30881, + "referencedDeclaration": 31932, "src": "5069:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5546,11 +5882,11 @@ "typeString": "bool" } }, - "id": 30918, + "id": 31969, "nodeType": "IfStatement", "src": "5064:252:30", "trueBody": { - "id": 30917, + "id": 31968, "nodeType": "Block", "src": "5075:241:30", "statements": [ @@ -5559,7 +5895,7 @@ "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c2061636375726163792064696769747320", - "id": 30900, + "id": 31951, "isConstant": false, "isLValue": false, "isPure": true, @@ -5574,11 +5910,11 @@ "value": "Error: approx a == b not satisfied, accuracy digits " }, { - "id": 30901, + "id": 31952, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30850, + "referencedDeclaration": 31901, "src": "5166:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5597,7 +5933,7 @@ "typeString": "uint256" } ], - "id": 30899, + "id": 31950, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5608,12 +5944,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30902, + "id": 31953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5095:80:30", @@ -5623,7 +5960,7 @@ "typeString": "tuple()" } }, - "id": 30903, + "id": 31954, "nodeType": "EmitStatement", "src": "5090:85:30" }, @@ -5632,7 +5969,7 @@ "arguments": [ { "hexValue": "20204578706563746564", - "id": 30905, + "id": 31956, "isConstant": false, "isLValue": false, "isPure": true, @@ -5647,11 +5984,11 @@ "value": " Expected" }, { - "id": 30906, + "id": 31957, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "5224:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5670,7 +6007,7 @@ "typeString": "uint256" } ], - "id": 30904, + "id": 31955, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5681,12 +6018,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30907, + "id": 31958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5195:34:30", @@ -5696,7 +6034,7 @@ "typeString": "tuple()" } }, - "id": 30908, + "id": 31959, "nodeType": "EmitStatement", "src": "5190:39:30" }, @@ -5705,7 +6043,7 @@ "arguments": [ { "hexValue": "2020202041637475616c", - "id": 30910, + "id": 31961, "isConstant": false, "isLValue": false, "isPure": true, @@ -5720,11 +6058,11 @@ "value": " Actual" }, { - "id": 30911, + "id": 31962, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "5278:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5743,7 +6081,7 @@ "typeString": "uint256" } ], - "id": 30909, + "id": 31960, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5754,12 +6092,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30912, + "id": 31963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5249:34:30", @@ -5769,7 +6108,7 @@ "typeString": "tuple()" } }, - "id": 30913, + "id": 31964, "nodeType": "EmitStatement", "src": "5244:39:30" }, @@ -5778,7 +6117,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30914, + "id": 31965, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5789,12 +6128,13 @@ "typeString": "function ()" } }, - "id": 30915, + "id": 31966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5298:6:30", @@ -5804,7 +6144,7 @@ "typeString": "tuple()" } }, - "id": 30916, + "id": 31967, "nodeType": "ExpressionStatement", "src": "5298:6:30" } @@ -5820,17 +6160,17 @@ "name": "withinPrecision", "nameLocation": "4749:15:30", "parameters": { - "id": 30851, + "id": 31902, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30846, + "id": 31897, "mutability": "mutable", "name": "val0", "nameLocation": "4773:4:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4765:12:30", "stateVariable": false, "storageLocation": "default", @@ -5839,7 +6179,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30845, + "id": 31896, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4765:7:30", @@ -5852,12 +6192,12 @@ }, { "constant": false, - "id": 30848, + "id": 31899, "mutability": "mutable", "name": "val1", "nameLocation": "4787:4:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4779:12:30", "stateVariable": false, "storageLocation": "default", @@ -5866,7 +6206,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30847, + "id": 31898, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4779:7:30", @@ -5879,12 +6219,12 @@ }, { "constant": false, - "id": 30850, + "id": 31901, "mutability": "mutable", "name": "accuracy", "nameLocation": "4801:8:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4793:16:30", "stateVariable": false, "storageLocation": "default", @@ -5893,7 +6233,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30849, + "id": 31900, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4793:7:30", @@ -5908,38 +6248,40 @@ "src": "4764:46:30" }, "returnParameters": { - "id": 30852, + "id": 31903, "nodeType": "ParameterList", "parameters": [], "src": "4818:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30971, + "id": 32022, "nodeType": "FunctionDefinition", "src": "5374:479:30", + "nodes": [], "body": { - "id": 30970, + "id": 32021, "nodeType": "Block", "src": "5451:402:30", + "nodes": [], "statements": [ { "assignments": [ - 30930 + 31981 ], "declarations": [ { "constant": false, - "id": 30930, + "id": 31981, "mutability": "mutable", "name": "actualDiff", "nameLocation": "5470:10:30", "nodeType": "VariableDeclaration", - "scope": 30970, + "scope": 32021, "src": "5462:18:30", "stateVariable": false, "storageLocation": "default", @@ -5948,7 +6290,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30929, + "id": 31980, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5462:7:30", @@ -5960,24 +6302,24 @@ "visibility": "internal" } ], - "id": 30941, + "id": 31992, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30933, + "id": 31984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30931, + "id": 31982, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5483:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5987,11 +6329,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 30932, + "id": 31983, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5490:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6009,17 +6351,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30939, + "id": 31990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30937, + "id": 31988, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5511:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6029,11 +6371,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30938, + "id": 31989, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5518:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6046,7 +6388,7 @@ "typeString": "uint256" } }, - "id": 30940, + "id": 31991, "isConstant": false, "isLValue": false, "isPure": false, @@ -6058,17 +6400,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30936, + "id": 31987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30934, + "id": 31985, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5497:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6078,11 +6420,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30935, + "id": 31986, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5504:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6105,17 +6447,17 @@ }, { "assignments": [ - 30943 + 31994 ], "declarations": [ { "constant": false, - "id": 30943, + "id": 31994, "mutability": "mutable", "name": "check", "nameLocation": "5538:5:30", "nodeType": "VariableDeclaration", - "scope": 30970, + "scope": 32021, "src": "5533:10:30", "stateVariable": false, "storageLocation": "default", @@ -6124,7 +6466,7 @@ "typeString": "bool" }, "typeName": { - "id": 30942, + "id": 31993, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5533:4:30", @@ -6136,23 +6478,23 @@ "visibility": "internal" } ], - "id": 30947, + "id": 31998, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30946, + "id": 31997, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30944, + "id": 31995, "name": "actualDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30930, + "referencedDeclaration": 31981, "src": "5546:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6162,11 +6504,11 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 30945, + "id": 31996, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30926, + "referencedDeclaration": 31977, "src": "5560:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6184,7 +6526,7 @@ }, { "condition": { - "id": 30949, + "id": 32000, "isConstant": false, "isLValue": false, "isPure": false, @@ -6194,11 +6536,11 @@ "prefix": true, "src": "5589:6:30", "subExpression": { - "id": 30948, + "id": 31999, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30943, + "referencedDeclaration": 31994, "src": "5590:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6210,11 +6552,11 @@ "typeString": "bool" } }, - "id": 30969, + "id": 32020, "nodeType": "IfStatement", "src": "5585:261:30", "trueBody": { - "id": 30968, + "id": 32019, "nodeType": "Block", "src": "5597:249:30", "statements": [ @@ -6223,7 +6565,7 @@ "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c20616363757261637920646966666572656e636520", - "id": 30951, + "id": 32002, "isConstant": false, "isLValue": false, "isPure": true, @@ -6238,11 +6580,11 @@ "value": "Error: approx a == b not satisfied, accuracy difference " }, { - "id": 30952, + "id": 32003, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30926, + "referencedDeclaration": 31977, "src": "5692:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6261,7 +6603,7 @@ "typeString": "uint256" } ], - "id": 30950, + "id": 32001, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6272,12 +6614,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30953, + "id": 32004, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5617:88:30", @@ -6287,7 +6630,7 @@ "typeString": "tuple()" } }, - "id": 30954, + "id": 32005, "nodeType": "EmitStatement", "src": "5612:93:30" }, @@ -6296,7 +6639,7 @@ "arguments": [ { "hexValue": "20204578706563746564", - "id": 30956, + "id": 32007, "isConstant": false, "isLValue": false, "isPure": true, @@ -6311,11 +6654,11 @@ "value": " Expected" }, { - "id": 30957, + "id": 32008, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5754:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6334,7 +6677,7 @@ "typeString": "uint256" } ], - "id": 30955, + "id": 32006, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6345,12 +6688,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30958, + "id": 32009, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5725:34:30", @@ -6360,7 +6704,7 @@ "typeString": "tuple()" } }, - "id": 30959, + "id": 32010, "nodeType": "EmitStatement", "src": "5720:39:30" }, @@ -6369,7 +6713,7 @@ "arguments": [ { "hexValue": "2020202041637475616c", - "id": 30961, + "id": 32012, "isConstant": false, "isLValue": false, "isPure": true, @@ -6384,11 +6728,11 @@ "value": " Actual" }, { - "id": 30962, + "id": 32013, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5808:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6407,7 +6751,7 @@ "typeString": "uint256" } ], - "id": 30960, + "id": 32011, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6418,12 +6762,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30963, + "id": 32014, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5779:34:30", @@ -6433,7 +6778,7 @@ "typeString": "tuple()" } }, - "id": 30964, + "id": 32015, "nodeType": "EmitStatement", "src": "5774:39:30" }, @@ -6442,7 +6787,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30965, + "id": 32016, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6453,12 +6798,13 @@ "typeString": "function ()" } }, - "id": 30966, + "id": 32017, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5828:6:30", @@ -6468,7 +6814,7 @@ "typeString": "tuple()" } }, - "id": 30967, + "id": 32018, "nodeType": "ExpressionStatement", "src": "5828:6:30" } @@ -6484,17 +6830,17 @@ "name": "withinDiff", "nameLocation": "5383:10:30", "parameters": { - "id": 30927, + "id": 31978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30922, + "id": 31973, "mutability": "mutable", "name": "val0", "nameLocation": "5402:4:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5394:12:30", "stateVariable": false, "storageLocation": "default", @@ -6503,7 +6849,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30921, + "id": 31972, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5394:7:30", @@ -6516,12 +6862,12 @@ }, { "constant": false, - "id": 30924, + "id": 31975, "mutability": "mutable", "name": "val1", "nameLocation": "5416:4:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5408:12:30", "stateVariable": false, "storageLocation": "default", @@ -6530,7 +6876,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30923, + "id": 31974, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5408:7:30", @@ -6543,12 +6889,12 @@ }, { "constant": false, - "id": 30926, + "id": 31977, "mutability": "mutable", "name": "expectedDiff", "nameLocation": "5430:12:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5422:20:30", "stateVariable": false, "storageLocation": "default", @@ -6557,7 +6903,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30925, + "id": 31976, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5422:7:30", @@ -6572,34 +6918,36 @@ "src": "5393:50:30" }, "returnParameters": { - "id": 30928, + "id": 31979, "nodeType": "ParameterList", "parameters": [], "src": "5451:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30990, + "id": 32041, "nodeType": "FunctionDefinition", "src": "5861:159:30", + "nodes": [], "body": { - "id": 30989, + "id": 32040, "nodeType": "Block", "src": "5956:64:30", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 30983, + "id": 32034, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30973, + "referencedDeclaration": 32024, "src": "5991:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6607,11 +6955,11 @@ } }, { - "id": 30984, + "id": 32035, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30975, + "referencedDeclaration": 32026, "src": "5996:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6619,11 +6967,11 @@ } }, { - "id": 30985, + "id": 32036, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30977, + "referencedDeclaration": 32028, "src": "6001:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6632,7 +6980,7 @@ }, { "hexValue": "66616c7365", - "id": 30986, + "id": 32037, "isConstant": false, "isLValue": false, "isPure": true, @@ -6666,26 +7014,27 @@ "typeString": "bool" } ], - "id": 30982, + "id": 32033, "name": "constrictToRange", "nodeType": "Identifier", "overloadedDeclarations": [ - 30990, - 31028 + 32041, + 32079 ], - "referencedDeclaration": 31028, + "referencedDeclaration": 32079, "src": "5974:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_bool_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256,bool) pure returns (uint256)" } }, - "id": 30987, + "id": 32038, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5974:38:30", @@ -6695,8 +7044,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30981, - "id": 30988, + "functionReturnParameters": 32032, + "id": 32039, "nodeType": "Return", "src": "5967:45:30" } @@ -6709,17 +7058,17 @@ "name": "constrictToRange", "nameLocation": "5870:16:30", "parameters": { - "id": 30978, + "id": 32029, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30973, + "id": 32024, "mutability": "mutable", "name": "val", "nameLocation": "5895:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5887:11:30", "stateVariable": false, "storageLocation": "default", @@ -6728,7 +7077,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30972, + "id": 32023, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5887:7:30", @@ -6741,12 +7090,12 @@ }, { "constant": false, - "id": 30975, + "id": 32026, "mutability": "mutable", "name": "min", "nameLocation": "5908:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5900:11:30", "stateVariable": false, "storageLocation": "default", @@ -6755,7 +7104,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30974, + "id": 32025, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5900:7:30", @@ -6768,12 +7117,12 @@ }, { "constant": false, - "id": 30977, + "id": 32028, "mutability": "mutable", "name": "max", "nameLocation": "5921:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5913:11:30", "stateVariable": false, "storageLocation": "default", @@ -6782,7 +7131,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30976, + "id": 32027, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5913:7:30", @@ -6797,17 +7146,17 @@ "src": "5886:39:30" }, "returnParameters": { - "id": 30981, + "id": 32032, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30980, + "id": 32031, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5947:7:30", "stateVariable": false, "storageLocation": "default", @@ -6816,7 +7165,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30979, + "id": 32030, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5947:7:30", @@ -6830,19 +7179,21 @@ ], "src": "5946:9:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "pure", "virtual": false, "visibility": "public" }, { - "id": 31028, + "id": 32079, "nodeType": "FunctionDefinition", "src": "6028:291:30", + "nodes": [], "body": { - "id": 31027, + "id": 32078, "nodeType": "Block", "src": "6137:182:30", + "nodes": [], "statements": [ { "condition": { @@ -6850,7 +7201,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 31008, + "id": 32059, "isConstant": false, "isLValue": false, "isPure": false, @@ -6860,17 +7211,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31005, + "id": 32056, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31003, + "id": 32054, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30992, + "referencedDeclaration": 32043, "src": "6157:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6881,7 +7232,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 31004, + "id": 32055, "isConstant": false, "isLValue": false, "isPure": true, @@ -6904,7 +7255,7 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 31007, + "id": 32058, "isConstant": false, "isLValue": false, "isPure": false, @@ -6914,11 +7265,11 @@ "prefix": true, "src": "6169:8:30", "subExpression": { - "id": 31006, + "id": 32057, "name": "nonZero", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30998, + "referencedDeclaration": 32049, "src": "6170:7:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6942,17 +7293,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31013, + "id": 32064, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31011, + "id": 32062, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6207:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6962,11 +7313,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 31012, + "id": 32063, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6214:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6985,7 +7336,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31023, + "id": 32074, "isConstant": false, "isLValue": false, "isPure": false, @@ -6995,17 +7346,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31021, + "id": 32072, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31016, + "id": 32067, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30992, + "referencedDeclaration": 32043, "src": "6288:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7021,17 +7372,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31019, + "id": 32070, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31017, + "id": 32068, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6295:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7041,11 +7392,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 31018, + "id": 32069, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6301:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7059,7 +7410,7 @@ } } ], - "id": 31020, + "id": 32071, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -7081,11 +7432,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 31022, + "id": 32073, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6308:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7098,40 +7449,40 @@ "typeString": "uint256" } }, - "functionReturnParameters": 31002, - "id": 31024, + "functionReturnParameters": 32053, + "id": 32075, "nodeType": "Return", "src": "6281:30:30" }, - "id": 31025, + "id": 32076, "nodeType": "IfStatement", "src": "6203:108:30", "trueBody": { "expression": { - "id": 31014, + "id": 32065, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6236:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 31002, - "id": 31015, + "functionReturnParameters": 32053, + "id": 32066, "nodeType": "Return", "src": "6229:10:30" } }, - "id": 31026, + "id": 32077, "nodeType": "IfStatement", "src": "6148:163:30", "trueBody": { "expression": { "hexValue": "30", - "id": 31009, + "id": 32060, "isConstant": false, "isLValue": false, "isPure": true, @@ -7145,8 +7496,8 @@ }, "value": "0" }, - "functionReturnParameters": 31002, - "id": 31010, + "functionReturnParameters": 32053, + "id": 32061, "nodeType": "Return", "src": "6179:8:30" } @@ -7160,17 +7511,17 @@ "name": "constrictToRange", "nameLocation": "6037:16:30", "parameters": { - "id": 30999, + "id": 32050, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30992, + "id": 32043, "mutability": "mutable", "name": "val", "nameLocation": "6062:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6054:11:30", "stateVariable": false, "storageLocation": "default", @@ -7179,7 +7530,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30991, + "id": 32042, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6054:7:30", @@ -7192,12 +7543,12 @@ }, { "constant": false, - "id": 30994, + "id": 32045, "mutability": "mutable", "name": "min", "nameLocation": "6075:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6067:11:30", "stateVariable": false, "storageLocation": "default", @@ -7206,7 +7557,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30993, + "id": 32044, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6067:7:30", @@ -7219,12 +7570,12 @@ }, { "constant": false, - "id": 30996, + "id": 32047, "mutability": "mutable", "name": "max", "nameLocation": "6088:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6080:11:30", "stateVariable": false, "storageLocation": "default", @@ -7233,7 +7584,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30995, + "id": 32046, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6080:7:30", @@ -7246,12 +7597,12 @@ }, { "constant": false, - "id": 30998, + "id": 32049, "mutability": "mutable", "name": "nonZero", "nameLocation": "6098:7:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6093:12:30", "stateVariable": false, "storageLocation": "default", @@ -7260,7 +7611,7 @@ "typeString": "bool" }, "typeName": { - "id": 30997, + "id": 32048, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6093:4:30", @@ -7275,17 +7626,17 @@ "src": "6053:53:30" }, "returnParameters": { - "id": 31002, + "id": 32053, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 31001, + "id": 32052, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6128:7:30", "stateVariable": false, "storageLocation": "default", @@ -7294,7 +7645,7 @@ "typeString": "uint256" }, "typeName": { - "id": 31000, + "id": 32051, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6128:7:30", @@ -7308,7 +7659,7 @@ ], "src": "6127:9:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "pure", "virtual": false, "visibility": "public" @@ -7318,30 +7669,33 @@ "baseContracts": [ { "baseName": { - "id": 30507, + "id": 31558, "name": "DSTest", + "nameLocations": [ + "469:6:30" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, "src": "469:6:30" }, - "id": 30508, + "id": 31559, "nodeType": "InheritanceSpecifier", "src": "469:6:30" } ], "canonicalName": "Utility", "contractDependencies": [ - 30364 + 30379 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 31029, + 32080, 1786 ], "name": "Utility", "nameLocation": "458:7:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] } ], diff --git a/out/Utility.sol/User.json b/out/Utility.sol/User.json index d712270..dfc8be6 100644 --- a/out/Utility.sol/User.json +++ b/out/Utility.sol/User.json @@ -32,21 +32,215 @@ "methodIdentifiers": { "approve(address,uint256)": "095ea7b3" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Utility.sol\":\"User\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843\",\"dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5\"]},\"test/Utility.sol\":{\"keccak256\":\"0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda\",\"dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "approve" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "test/Utility.sol": "User" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + }, + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdAssertions.sol": { + "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", + "urls": [ + "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", + "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdError.sol": { + "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", + "urls": [ + "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", + "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Test.sol": { + "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", + "urls": [ + "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", + "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/users/Actor.sol": { + "keccak256": "0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3", + "urls": [ + "bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843", + "dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5" + ], + "license": "AGPL-3.0-or-later" + }, + "test/Utility.sol": { + "keccak256": "0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135", + "urls": [ + "bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda", + "dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s" + ], + "license": "AGPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "test/Utility.sol", - "id": 31030, + "id": 32081, "exportedSymbols": { "Actor": [ - 30364 + 30379 ], "DSTest": [ 1786 ], "Hevm": [ - 30498 + 31549 ], "IERC20": [ - 29143 + 29158 ], "StdAssertions": [ 2708 @@ -70,10 +264,10 @@ 1843 ], "User": [ - 30506 + 31557 ], "Utility": [ - 31029 + 32080 ], "Vm": [ 9352 @@ -101,9 +295,10 @@ "src": "47:6283:30", "nodes": [ { - "id": 30481, + "id": 31532, "nodeType": "PragmaDirective", "src": "47:23:30", + "nodes": [], "literals": [ "solidity", "^", @@ -112,38 +307,41 @@ ] }, { - "id": 30482, + "id": 31533, "nodeType": "ImportDirective", "src": "74:32:30", + "nodes": [], "absolutePath": "src/users/Actor.sol", "file": "../src/users/Actor.sol", "nameLocation": "-1:-1:-1", - "scope": 31030, - "sourceUnit": 30365, + "scope": 32081, + "sourceUnit": 30380, "symbolAliases": [], "unitAlias": "" }, { - "id": 30483, + "id": 31534, "nodeType": "ImportDirective", "src": "110:39:30", + "nodes": [], "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 31030, + "scope": 32081, "sourceUnit": 8196, "symbolAliases": [], "unitAlias": "" }, { - "id": 30498, + "id": 31549, "nodeType": "ContractDefinition", "src": "153:112:30", "nodes": [ { - "id": 30488, + "id": 31539, "nodeType": "FunctionDefinition", "src": "175:32:30", + "nodes": [], "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", @@ -151,17 +349,17 @@ "name": "warp", "nameLocation": "184:4:30", "parameters": { - "id": 30486, + "id": 31537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30485, + "id": 31536, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30488, + "scope": 31539, "src": "189:7:30", "stateVariable": false, "storageLocation": "default", @@ -170,7 +368,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30484, + "id": 31535, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "189:7:30", @@ -185,20 +383,21 @@ "src": "188:9:30" }, "returnParameters": { - "id": 30487, + "id": 31538, "nodeType": "ParameterList", "parameters": [], "src": "206:0:30" }, - "scope": 30498, + "scope": 31549, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30497, + "id": 31548, "nodeType": "FunctionDefinition", "src": "213:49:30", + "nodes": [], "functionSelector": "70ca10bb", "implemented": false, "kind": "function", @@ -206,17 +405,17 @@ "name": "store", "nameLocation": "222:5:30", "parameters": { - "id": 30495, + "id": 31546, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30490, + "id": 31541, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "228:7:30", "stateVariable": false, "storageLocation": "default", @@ -225,7 +424,7 @@ "typeString": "address" }, "typeName": { - "id": 30489, + "id": 31540, "name": "address", "nodeType": "ElementaryTypeName", "src": "228:7:30", @@ -239,12 +438,12 @@ }, { "constant": false, - "id": 30492, + "id": 31543, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "236:7:30", "stateVariable": false, "storageLocation": "default", @@ -253,7 +452,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30491, + "id": 31542, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "236:7:30", @@ -266,12 +465,12 @@ }, { "constant": false, - "id": 30494, + "id": 31545, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "244:7:30", "stateVariable": false, "storageLocation": "default", @@ -280,7 +479,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30493, + "id": 31544, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "244:7:30", @@ -295,12 +494,12 @@ "src": "227:25:30" }, "returnParameters": { - "id": 30496, + "id": 31547, "nodeType": "ParameterList", "parameters": [], "src": "261:0:30" }, - "scope": 30498, + "scope": 31549, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -313,22 +512,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 30498 + 31549 ], "name": "Hevm", "nameLocation": "163:4:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] }, { - "id": 30506, + "id": 31557, "nodeType": "ContractDefinition", "src": "269:69:30", "nodes": [ { - "id": 30505, + "id": 31556, "nodeType": "FunctionDefinition", "src": "291:44:30", + "nodes": [], "functionSelector": "095ea7b3", "implemented": false, "kind": "function", @@ -336,17 +536,17 @@ "name": "approve", "nameLocation": "300:7:30", "parameters": { - "id": 30503, + "id": 31554, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30500, + "id": 31551, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30505, + "scope": 31556, "src": "308:7:30", "stateVariable": false, "storageLocation": "default", @@ -355,7 +555,7 @@ "typeString": "address" }, "typeName": { - "id": 30499, + "id": 31550, "name": "address", "nodeType": "ElementaryTypeName", "src": "308:7:30", @@ -369,12 +569,12 @@ }, { "constant": false, - "id": 30502, + "id": 31553, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30505, + "scope": 31556, "src": "317:7:30", "stateVariable": false, "storageLocation": "default", @@ -383,7 +583,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30501, + "id": 31552, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "317:7:30", @@ -398,12 +598,12 @@ "src": "307:18:30" }, "returnParameters": { - "id": 30504, + "id": 31555, "nodeType": "ParameterList", "parameters": [], "src": "334:0:30" }, - "scope": 30506, + "scope": 31557, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -416,163 +616,180 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 30506 + 31557 ], "name": "User", "nameLocation": "279:4:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] }, { - "id": 31029, + "id": 32080, "nodeType": "ContractDefinition", "src": "449:5881:30", "nodes": [ { - "id": 30511, + "id": 31562, "nodeType": "VariableDeclaration", "src": "485:9:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "hevm", "nameLocation": "490:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" }, "typeName": { - "id": 30510, + "id": 31561, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30509, + "id": 31560, "name": "Hevm", + "nameLocations": [ + "485:4:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "485:4:30" }, - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "485:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, "visibility": "internal" }, { - "id": 30514, + "id": 31565, "nodeType": "VariableDeclaration", "src": "596:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "joe", "nameLocation": "603:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30513, + "id": 31564, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30512, + "id": 31563, "name": "Actor", + "nameLocations": [ + "596:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "596:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "596:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30517, + "id": 31568, "nodeType": "VariableDeclaration", "src": "625:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "dev", "nameLocation": "632:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30516, + "id": 31567, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30515, + "id": 31566, "name": "Actor", + "nameLocations": [ + "625:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "625:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "625:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30520, + "id": 31571, "nodeType": "VariableDeclaration", "src": "651:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "jon", "nameLocation": "658:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30519, + "id": 31570, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30518, + "id": 31569, "name": "Actor", + "nameLocations": [ + "651:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "651:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "651:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30523, + "id": 31574, "nodeType": "VariableDeclaration", "src": "815:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "USDC", "nameLocation": "832:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -580,7 +797,7 @@ "typeString": "address" }, "typeName": { - "id": 30521, + "id": 31572, "name": "address", "nodeType": "ElementaryTypeName", "src": "815:7:30", @@ -592,7 +809,7 @@ }, "value": { "hexValue": "307841306238363939316336323138623336633164313944346132653945623063453336303665423438", - "id": 30522, + "id": 31573, "isConstant": false, "isLValue": false, "isPure": true, @@ -609,14 +826,15 @@ "visibility": "internal" }, { - "id": 30526, + "id": 31577, "nodeType": "VariableDeclaration", "src": "889:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "DAI", "nameLocation": "906:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -624,7 +842,7 @@ "typeString": "address" }, "typeName": { - "id": 30524, + "id": 31575, "name": "address", "nodeType": "ElementaryTypeName", "src": "889:7:30", @@ -636,7 +854,7 @@ }, "value": { "hexValue": "307836423137353437344538393039344334344461393862393534456564654143343935323731643046", - "id": 30525, + "id": 31576, "isConstant": false, "isLValue": false, "isPure": true, @@ -653,14 +871,15 @@ "visibility": "internal" }, { - "id": 30529, + "id": 31580, "nodeType": "VariableDeclaration", "src": "963:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WETH", "nameLocation": "980:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -668,7 +887,7 @@ "typeString": "address" }, "typeName": { - "id": 30527, + "id": 31578, "name": "address", "nodeType": "ElementaryTypeName", "src": "963:7:30", @@ -680,7 +899,7 @@ }, "value": { "hexValue": "307843303261614133396232323346453844304130653543344632376541443930383343373536436332", - "id": 30528, + "id": 31579, "isConstant": false, "isLValue": false, "isPure": true, @@ -697,14 +916,15 @@ "visibility": "internal" }, { - "id": 30532, + "id": 31583, "nodeType": "VariableDeclaration", "src": "1037:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WBTC", "nameLocation": "1054:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -712,7 +932,7 @@ "typeString": "address" }, "typeName": { - "id": 30530, + "id": 31581, "name": "address", "nodeType": "ElementaryTypeName", "src": "1037:7:30", @@ -724,7 +944,7 @@ }, "value": { "hexValue": "307832323630464143354535353432613737334161343466424366654466374331393362633243353939", - "id": 30531, + "id": 31582, "isConstant": false, "isLValue": false, "isPure": true, @@ -741,14 +961,15 @@ "visibility": "internal" }, { - "id": 30535, + "id": 31586, "nodeType": "VariableDeclaration", "src": "1111:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "FRAX", "nameLocation": "1128:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -756,7 +977,7 @@ "typeString": "address" }, "typeName": { - "id": 30533, + "id": 31584, "name": "address", "nodeType": "ElementaryTypeName", "src": "1111:7:30", @@ -768,7 +989,7 @@ }, "value": { "hexValue": "307838353364393535614345663832324462303538656238353035393131454437374631373562393965", - "id": 30534, + "id": 31585, "isConstant": false, "isLValue": false, "isPure": true, @@ -785,45 +1006,49 @@ "visibility": "internal" }, { - "id": 30541, + "id": 31592, "nodeType": "VariableDeclaration", "src": "1187:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "usdc", "nameLocation": "1203:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30537, + "id": 31588, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30536, + "id": 31587, "name": "IERC20", + "nameLocations": [ + "1187:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1187:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1187:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30539, + "id": 31590, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30523, + "referencedDeclaration": 31574, "src": "1217:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -838,74 +1063,79 @@ "typeString": "address" } ], - "id": 30538, + "id": 31589, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1210:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30540, + "id": 31591, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1210:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30547, + "id": 31598, "nodeType": "VariableDeclaration", "src": "1229:34:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "dai", "nameLocation": "1245:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30543, + "id": 31594, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30542, + "id": 31593, "name": "IERC20", + "nameLocations": [ + "1229:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1229:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1229:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30545, + "id": 31596, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30526, + "referencedDeclaration": 31577, "src": "1259:3:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -920,74 +1150,79 @@ "typeString": "address" } ], - "id": 30544, + "id": 31595, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1252:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30546, + "id": 31597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1252:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30553, + "id": 31604, "nodeType": "VariableDeclaration", "src": "1270:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "weth", "nameLocation": "1286:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30549, + "id": 31600, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30548, + "id": 31599, "name": "IERC20", + "nameLocations": [ + "1270:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1270:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1270:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30551, + "id": 31602, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30529, + "referencedDeclaration": 31580, "src": "1300:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1002,74 +1237,79 @@ "typeString": "address" } ], - "id": 30550, + "id": 31601, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1293:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30552, + "id": 31603, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1293:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30559, + "id": 31610, "nodeType": "VariableDeclaration", "src": "1312:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "wbtc", "nameLocation": "1328:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30555, + "id": 31606, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30554, + "id": 31605, "name": "IERC20", + "nameLocations": [ + "1312:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1312:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1312:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30557, + "id": 31608, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30532, + "referencedDeclaration": 31583, "src": "1342:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1084,43 +1324,45 @@ "typeString": "address" } ], - "id": 30556, + "id": 31607, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1335:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30558, + "id": 31609, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1335:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30562, + "id": 31613, "nodeType": "VariableDeclaration", "src": "1356:82:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "UNISWAP_V2_ROUTER_02", "nameLocation": "1373:20:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1128,7 +1370,7 @@ "typeString": "address" }, "typeName": { - "id": 30560, + "id": 31611, "name": "address", "nodeType": "ElementaryTypeName", "src": "1356:7:30", @@ -1140,7 +1382,7 @@ }, "value": { "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", - "id": 30561, + "id": 31612, "isConstant": false, "isLValue": false, "isPure": true, @@ -1157,14 +1399,15 @@ "visibility": "internal" }, { - "id": 30565, + "id": 31616, "nodeType": "VariableDeclaration", "src": "1466:82:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "UNISWAP_V2_FACTORY", "nameLocation": "1483:18:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1172,7 +1415,7 @@ "typeString": "address" }, "typeName": { - "id": 30563, + "id": 31614, "name": "address", "nodeType": "ElementaryTypeName", "src": "1466:7:30", @@ -1184,7 +1427,7 @@ }, "value": { "hexValue": "307835433639624565373031656638313461324236613345444434423136353243423963633561413666", - "id": 30564, + "id": 31615, "isConstant": false, "isLValue": false, "isPure": true, @@ -1201,15 +1444,16 @@ "visibility": "internal" }, { - "id": 30568, + "id": 31619, "nodeType": "VariableDeclaration", "src": "1655:36:30", + "nodes": [], "constant": true, "functionSelector": "e70dd6cf", "mutability": "constant", "name": "CL_FACTORY", "nameLocation": "1677:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1217,7 +1461,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30566, + "id": 31617, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1655:5:30", @@ -1228,7 +1472,7 @@ }, "value": { "hexValue": "30", - "id": 30567, + "id": 31618, "isConstant": false, "isLValue": false, "isPure": true, @@ -1245,15 +1489,16 @@ "visibility": "public" }, { - "id": 30571, + "id": 31622, "nodeType": "VariableDeclaration", "src": "1745:36:30", + "nodes": [], "constant": true, "functionSelector": "174a5be4", "mutability": "constant", "name": "DL_FACTORY", "nameLocation": "1767:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1261,7 +1506,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30569, + "id": 31620, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1745:5:30", @@ -1272,7 +1517,7 @@ }, "value": { "hexValue": "31", - "id": 30570, + "id": 31621, "isConstant": false, "isLValue": false, "isPure": true, @@ -1289,15 +1534,16 @@ "visibility": "public" }, { - "id": 30574, + "id": 31625, "nodeType": "VariableDeclaration", "src": "1829:36:30", + "nodes": [], "constant": true, "functionSelector": "38505fb0", "mutability": "constant", "name": "FL_FACTORY", "nameLocation": "1851:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1305,7 +1551,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30572, + "id": 31623, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1829:5:30", @@ -1316,7 +1562,7 @@ }, "value": { "hexValue": "32", - "id": 30573, + "id": 31624, "isConstant": false, "isLValue": false, "isPure": true, @@ -1333,15 +1579,16 @@ "visibility": "public" }, { - "id": 30577, + "id": 31628, "nodeType": "VariableDeclaration", "src": "1916:36:30", + "nodes": [], "constant": true, "functionSelector": "c5ba73ed", "mutability": "constant", "name": "LL_FACTORY", "nameLocation": "1938:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1349,7 +1596,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30575, + "id": 31626, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1916:5:30", @@ -1360,7 +1607,7 @@ }, "value": { "hexValue": "33", - "id": 30576, + "id": 31627, "isConstant": false, "isLValue": false, "isPure": true, @@ -1377,15 +1624,16 @@ "visibility": "public" }, { - "id": 30580, + "id": 31631, "nodeType": "VariableDeclaration", "src": "2005:36:30", + "nodes": [], "constant": true, "functionSelector": "9f71f14a", "mutability": "constant", "name": "SL_FACTORY", "nameLocation": "2027:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1393,7 +1641,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30578, + "id": 31629, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2005:5:30", @@ -1404,7 +1652,7 @@ }, "value": { "hexValue": "34", - "id": 30579, + "id": 31630, "isConstant": false, "isLValue": false, "isPure": true, @@ -1421,15 +1669,16 @@ "visibility": "public" }, { - "id": 30583, + "id": 31634, "nodeType": "VariableDeclaration", "src": "2092:45:30", + "nodes": [], "constant": true, "functionSelector": "8c38922f", "mutability": "constant", "name": "INTEREST_CALC_TYPE", "nameLocation": "2114:18:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1437,7 +1686,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30581, + "id": 31632, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2092:5:30", @@ -1448,7 +1697,7 @@ }, "value": { "hexValue": "3130", - "id": 30582, + "id": 31633, "isConstant": false, "isLValue": false, "isPure": true, @@ -1465,15 +1714,16 @@ "visibility": "public" }, { - "id": 30586, + "id": 31637, "nodeType": "VariableDeclaration", "src": "2178:45:30", + "nodes": [], "constant": true, "functionSelector": "3493f4ca", "mutability": "constant", "name": "LATEFEE_CALC_TYPE", "nameLocation": "2200:17:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1481,7 +1731,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30584, + "id": 31635, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2178:5:30", @@ -1492,7 +1742,7 @@ }, "value": { "hexValue": "3131", - "id": 30585, + "id": 31636, "isConstant": false, "isLValue": false, "isPure": true, @@ -1509,15 +1759,16 @@ "visibility": "public" }, { - "id": 30589, + "id": 31640, "nodeType": "VariableDeclaration", "src": "2262:45:30", + "nodes": [], "constant": true, "functionSelector": "7a8fe3c0", "mutability": "constant", "name": "PREMIUM_CALC_TYPE", "nameLocation": "2284:17:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1525,7 +1776,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30587, + "id": 31638, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2262:5:30", @@ -1536,7 +1787,7 @@ }, "value": { "hexValue": "3132", - "id": 30588, + "id": 31639, "isConstant": false, "isLValue": false, "isPure": true, @@ -1553,14 +1804,15 @@ "visibility": "public" }, { - "id": 30594, + "id": 31645, "nodeType": "VariableDeclaration", "src": "2348:30:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "USD", "nameLocation": "2365:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1568,7 +1820,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30590, + "id": 31641, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2348:7:30", @@ -1582,14 +1834,14 @@ "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" }, - "id": 30593, + "id": 31644, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30591, + "id": 31642, "isConstant": false, "isLValue": false, "isPure": true, @@ -1607,7 +1859,7 @@ "operator": "**", "rightExpression": { "hexValue": "36", - "id": 30592, + "id": 31643, "isConstant": false, "isLValue": false, "isPure": true, @@ -1630,14 +1882,15 @@ "visibility": "internal" }, { - "id": 30599, + "id": 31650, "nodeType": "VariableDeclaration", "src": "2413:30:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "BTC", "nameLocation": "2430:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1645,7 +1898,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30595, + "id": 31646, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2413:7:30", @@ -1659,14 +1912,14 @@ "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" }, - "id": 30598, + "id": 31649, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30596, + "id": 31647, "isConstant": false, "isLValue": false, "isPure": true, @@ -1684,7 +1937,7 @@ "operator": "**", "rightExpression": { "hexValue": "38", - "id": 30597, + "id": 31648, "isConstant": false, "isLValue": false, "isPure": true, @@ -1707,14 +1960,15 @@ "visibility": "internal" }, { - "id": 30604, + "id": 31655, "nodeType": "VariableDeclaration", "src": "2478:31:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WAD", "nameLocation": "2495:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1722,7 +1976,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30600, + "id": 31651, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2478:7:30", @@ -1736,14 +1990,14 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 30603, + "id": 31654, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30601, + "id": 31652, "isConstant": false, "isLValue": false, "isPure": true, @@ -1761,7 +2015,7 @@ "operator": "**", "rightExpression": { "hexValue": "3138", - "id": 30602, + "id": 31653, "isConstant": false, "isLValue": false, "isPure": true, @@ -1784,14 +2038,15 @@ "visibility": "internal" }, { - "id": 30609, + "id": 31660, "nodeType": "VariableDeclaration", "src": "2516:31:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "RAY", "nameLocation": "2533:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1799,7 +2054,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30605, + "id": 31656, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2516:7:30", @@ -1813,14 +2068,14 @@ "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" }, - "id": 30608, + "id": 31659, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30606, + "id": 31657, "isConstant": false, "isLValue": false, "isPure": true, @@ -1838,7 +2093,7 @@ "operator": "**", "rightExpression": { "hexValue": "3237", - "id": 30607, + "id": 31658, "isConstant": false, "isLValue": false, "isPure": true, @@ -1861,19 +2116,20 @@ "visibility": "internal" }, { - "id": 30616, + "id": 31667, "nodeType": "StructDefinition", "src": "2631:167:30", + "nodes": [], "canonicalName": "Utility.Token", "members": [ { "constant": false, - "id": 30611, + "id": 31662, "mutability": "mutable", "name": "addr", "nameLocation": "2663:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2655:12:30", "stateVariable": false, "storageLocation": "default", @@ -1882,7 +2138,7 @@ "typeString": "address" }, "typeName": { - "id": 30610, + "id": 31661, "name": "address", "nodeType": "ElementaryTypeName", "src": "2655:7:30", @@ -1896,12 +2152,12 @@ }, { "constant": false, - "id": 30613, + "id": 31664, "mutability": "mutable", "name": "slot", "nameLocation": "2711:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2703:12:30", "stateVariable": false, "storageLocation": "default", @@ -1910,7 +2166,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30612, + "id": 31663, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2703:7:30", @@ -1923,12 +2179,12 @@ }, { "constant": false, - "id": 30615, + "id": 31666, "mutability": "mutable", "name": "orcl", "nameLocation": "2758:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2750:12:30", "stateVariable": false, "storageLocation": "default", @@ -1937,7 +2193,7 @@ "typeString": "address" }, "typeName": { - "id": 30614, + "id": 31665, "name": "address", "nodeType": "ElementaryTypeName", "src": "2750:7:30", @@ -1952,28 +2208,29 @@ ], "name": "Token", "nameLocation": "2638:5:30", - "scope": 31029, + "scope": 32080, "visibility": "public" }, { - "id": 30621, + "id": 31672, "nodeType": "VariableDeclaration", "src": "2807:33:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "tokens", "nameLocation": "2834:6:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "typeName": { - "id": 30620, + "id": 31671, "keyType": { - "id": 30617, + "id": 31668, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2816:7:30", @@ -1985,23 +2242,26 @@ "nodeType": "Mapping", "src": "2807:26:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "valueType": { - "id": 30619, + "id": 31670, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30618, + "id": 31669, "name": "Token", + "nameLocations": [ + "2827:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30616, + "referencedDeclaration": 31667, "src": "2827:5:30" }, - "referencedDeclaration": 30616, + "referencedDeclaration": 31667, "src": "2827:5:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage_ptr", + "typeIdentifier": "t_struct$_Token_$31667_storage_ptr", "typeString": "struct Utility.Token" } } @@ -2009,19 +2269,20 @@ "visibility": "internal" }, { - "id": 30626, + "id": 31677, "nodeType": "StructDefinition", "src": "2849:68:30", + "nodes": [], "canonicalName": "Utility.TestObj", "members": [ { "constant": false, - "id": 30623, + "id": 31674, "mutability": "mutable", "name": "pre", "nameLocation": "2883:3:30", "nodeType": "VariableDeclaration", - "scope": 30626, + "scope": 31677, "src": "2875:11:30", "stateVariable": false, "storageLocation": "default", @@ -2030,7 +2291,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30622, + "id": 31673, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2875:7:30", @@ -2043,12 +2304,12 @@ }, { "constant": false, - "id": 30625, + "id": 31676, "mutability": "mutable", "name": "post", "nameLocation": "2905:4:30", "nodeType": "VariableDeclaration", - "scope": 30626, + "scope": 31677, "src": "2897:12:30", "stateVariable": false, "storageLocation": "default", @@ -2057,7 +2318,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30624, + "id": 31675, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2897:7:30", @@ -2071,30 +2332,31 @@ ], "name": "TestObj", "nameLocation": "2856:7:30", - "scope": 31029, + "scope": 32080, "visibility": "public" }, { - "id": 30632, + "id": 31683, "nodeType": "EventDefinition", "src": "2925:29:30", + "nodes": [], "anonymous": false, "eventSelector": "3c5ad147104e56be34a9176a6692f7df8d2f4b29a5af06bc6b98970d329d6577", "name": "Debug", "nameLocation": "2931:5:30", "parameters": { - "id": 30631, + "id": 31682, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30628, + "id": 31679, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30632, + "scope": 31683, "src": "2937:6:30", "stateVariable": false, "storageLocation": "default", @@ -2103,7 +2365,7 @@ "typeString": "string" }, "typeName": { - "id": 30627, + "id": 31678, "name": "string", "nodeType": "ElementaryTypeName", "src": "2937:6:30", @@ -2116,13 +2378,13 @@ }, { "constant": false, - "id": 30630, + "id": 31681, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30632, + "scope": 31683, "src": "2945:7:30", "stateVariable": false, "storageLocation": "default", @@ -2131,7 +2393,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30629, + "id": 31680, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2945:7:30", @@ -2147,26 +2409,27 @@ } }, { - "id": 30638, + "id": 31689, "nodeType": "EventDefinition", "src": "2960:29:30", + "nodes": [], "anonymous": false, "eventSelector": "14186b8ac9c91f14b0f16f9e886356157442bb899be26513dfe1d4d5929a5bac", "name": "Debug", "nameLocation": "2966:5:30", "parameters": { - "id": 30637, + "id": 31688, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30634, + "id": 31685, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30638, + "scope": 31689, "src": "2972:6:30", "stateVariable": false, "storageLocation": "default", @@ -2175,7 +2438,7 @@ "typeString": "string" }, "typeName": { - "id": 30633, + "id": 31684, "name": "string", "nodeType": "ElementaryTypeName", "src": "2972:6:30", @@ -2188,13 +2451,13 @@ }, { "constant": false, - "id": 30636, + "id": 31687, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30638, + "scope": 31689, "src": "2980:7:30", "stateVariable": false, "storageLocation": "default", @@ -2203,7 +2466,7 @@ "typeString": "address" }, "typeName": { - "id": 30635, + "id": 31686, "name": "address", "nodeType": "ElementaryTypeName", "src": "2980:7:30", @@ -2220,26 +2483,27 @@ } }, { - "id": 30644, + "id": 31695, "nodeType": "EventDefinition", "src": "2995:26:30", + "nodes": [], "anonymous": false, "eventSelector": "d1401e4d321999a7547f3d989953912043b0f4ab8471cc7307695072f6ee9d83", "name": "Debug", "nameLocation": "3001:5:30", "parameters": { - "id": 30643, + "id": 31694, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30640, + "id": 31691, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30644, + "scope": 31695, "src": "3007:6:30", "stateVariable": false, "storageLocation": "default", @@ -2248,7 +2512,7 @@ "typeString": "string" }, "typeName": { - "id": 30639, + "id": 31690, "name": "string", "nodeType": "ElementaryTypeName", "src": "3007:6:30", @@ -2261,13 +2525,13 @@ }, { "constant": false, - "id": 30642, + "id": 31693, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30644, + "scope": 31695, "src": "3015:4:30", "stateVariable": false, "storageLocation": "default", @@ -2276,7 +2540,7 @@ "typeString": "bool" }, "typeName": { - "id": 30641, + "id": 31692, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3015:4:30", @@ -2292,26 +2556,27 @@ } }, { - "id": 30650, + "id": 31701, "nodeType": "EventDefinition", "src": "3027:28:30", + "nodes": [], "anonymous": false, "eventSelector": "747eaa98d4c6787fb9ebfa7ba00179a57433dbd57fd28208b7a240d949164a09", "name": "Debug", "nameLocation": "3033:5:30", "parameters": { - "id": 30649, + "id": 31700, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30646, + "id": 31697, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30650, + "scope": 31701, "src": "3039:6:30", "stateVariable": false, "storageLocation": "default", @@ -2320,7 +2585,7 @@ "typeString": "string" }, "typeName": { - "id": 30645, + "id": 31696, "name": "string", "nodeType": "ElementaryTypeName", "src": "3039:6:30", @@ -2333,13 +2598,13 @@ }, { "constant": false, - "id": 30648, + "id": 31699, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30650, + "scope": 31701, "src": "3047:6:30", "stateVariable": false, "storageLocation": "default", @@ -2348,7 +2613,7 @@ "typeString": "string" }, "typeName": { - "id": 30647, + "id": 31698, "name": "string", "nodeType": "ElementaryTypeName", "src": "3047:6:30", @@ -2364,30 +2629,32 @@ } }, { - "id": 30674, + "id": 31725, "nodeType": "FunctionDefinition", "src": "3063:103:30", + "nodes": [], "body": { - "id": 30673, + "id": 31724, "nodeType": "Block", "src": "3084:82:30", + "nodes": [], "statements": [ { "expression": { - "id": 30671, + "id": 31722, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30653, + "id": 31704, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30511, + "referencedDeclaration": 31562, "src": "3086:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, @@ -2407,7 +2674,7 @@ "arguments": [ { "hexValue": "6865766d20636865617420636f6465", - "id": 30664, + "id": 31715, "isConstant": false, "isLValue": false, "isPure": true, @@ -2429,7 +2696,7 @@ "typeString": "literal_string \"hevm cheat code\"" } ], - "id": 30663, + "id": 31714, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2440,12 +2707,13 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 30665, + "id": 31716, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3130:28:30", @@ -2463,7 +2731,7 @@ "typeString": "bytes32" } ], - "id": 30662, + "id": 31713, "isConstant": false, "isLValue": false, "isPure": true, @@ -2475,19 +2743,20 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 30661, + "id": 31712, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3122:7:30", "typeDescriptions": {} } }, - "id": 30666, + "id": 31717, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3122:37:30", @@ -2505,7 +2774,7 @@ "typeString": "uint256" } ], - "id": 30660, + "id": 31711, "isConstant": false, "isLValue": false, "isPure": true, @@ -2517,19 +2786,20 @@ "typeString": "type(uint160)" }, "typeName": { - "id": 30659, + "id": 31710, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "3114:7:30", "typeDescriptions": {} } }, - "id": 30667, + "id": 31718, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3114:46:30", @@ -2547,7 +2817,7 @@ "typeString": "uint160" } ], - "id": 30658, + "id": 31709, "isConstant": false, "isLValue": false, "isPure": true, @@ -2559,19 +2829,20 @@ "typeString": "type(bytes20)" }, "typeName": { - "id": 30657, + "id": 31708, "name": "bytes20", "nodeType": "ElementaryTypeName", "src": "3106:7:30", "typeDescriptions": {} } }, - "id": 30668, + "id": 31719, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3106:55:30", @@ -2589,7 +2860,7 @@ "typeString": "bytes20" } ], - "id": 30656, + "id": 31707, "isConstant": false, "isLValue": false, "isPure": true, @@ -2601,19 +2872,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30655, + "id": 31706, "name": "address", "nodeType": "ElementaryTypeName", "src": "3098:7:30", "typeDescriptions": {} } }, - "id": 30669, + "id": 31720, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3098:64:30", @@ -2631,39 +2903,40 @@ "typeString": "address" } ], - "id": 30654, + "id": 31705, "name": "Hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "3093:4:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Hevm_$30498_$", + "typeIdentifier": "t_type$_t_contract$_Hevm_$31549_$", "typeString": "type(contract Hevm)" } }, - "id": 30670, + "id": 31721, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3093:70:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, "src": "3086:77:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, - "id": 30672, + "id": 31723, "nodeType": "ExpressionStatement", "src": "3086:77:30" } @@ -2675,47 +2948,49 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 30651, + "id": 31702, "nodeType": "ParameterList", "parameters": [], "src": "3074:2:30" }, "returnParameters": { - "id": 30652, + "id": 31703, "nodeType": "ParameterList", "parameters": [], "src": "3084:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30699, + "id": 31750, "nodeType": "FunctionDefinition", "src": "3312:184:30", + "nodes": [], "body": { - "id": 30698, + "id": 31749, "nodeType": "Block", "src": "3343:153:30", + "nodes": [], "statements": [ { "expression": { - "id": 30682, + "id": 31733, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30677, + "id": 31728, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30520, + "referencedDeclaration": 31571, "src": "3354:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -2725,7 +3000,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30680, + "id": 31731, "isConstant": false, "isLValue": false, "isPure": false, @@ -2733,68 +3008,72 @@ "nodeType": "NewExpression", "src": "3360:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30679, + "id": 31730, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30678, + "id": 31729, "name": "Actor", + "nameLocations": [ + "3364:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3364:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3364:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30681, + "id": 31732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3360:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3354:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30683, + "id": 31734, "nodeType": "ExpressionStatement", "src": "3354:17:30" }, { "expression": { - "id": 30689, + "id": 31740, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30684, + "id": 31735, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30514, + "referencedDeclaration": 31565, "src": "3395:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -2804,7 +3083,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30687, + "id": 31738, "isConstant": false, "isLValue": false, "isPure": false, @@ -2812,68 +3091,72 @@ "nodeType": "NewExpression", "src": "3401:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30686, + "id": 31737, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30685, + "id": 31736, "name": "Actor", + "nameLocations": [ + "3405:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3405:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3405:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30688, + "id": 31739, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3401:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3395:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30690, + "id": 31741, "nodeType": "ExpressionStatement", "src": "3395:17:30" }, { "expression": { - "id": 30696, + "id": 31747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30691, + "id": 31742, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30517, + "referencedDeclaration": 31568, "src": "3462:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -2883,7 +3166,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30694, + "id": 31745, "isConstant": false, "isLValue": false, "isPure": false, @@ -2891,49 +3174,53 @@ "nodeType": "NewExpression", "src": "3468:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30693, + "id": 31744, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30692, + "id": 31743, "name": "Actor", + "nameLocations": [ + "3472:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3472:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3472:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30695, + "id": 31746, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3468:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3462:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30697, + "id": 31748, "nodeType": "ExpressionStatement", "src": "3462:17:30" } @@ -2946,34 +3233,36 @@ "name": "createActors", "nameLocation": "3321:12:30", "parameters": { - "id": 30675, + "id": 31726, "nodeType": "ParameterList", "parameters": [], "src": "3333:2:30" }, "returnParameters": { - "id": 30676, + "id": 31727, "nodeType": "ParameterList", "parameters": [], "src": "3343:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30780, + "id": 31831, "nodeType": "FunctionDefinition", "src": "3620:551:30", + "nodes": [], "body": { - "id": 30779, + "id": 31830, "nodeType": "Block", "src": "3650:521:30", + "nodes": [], "statements": [ { "expression": { - "id": 30707, + "id": 31758, "isConstant": false, "isLValue": false, "isPure": false, @@ -2981,21 +3270,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30702, + "id": 31753, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3663:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30704, + "id": 31755, "indexExpression": { "hexValue": "55534443", - "id": 30703, + "id": 31754, "isConstant": false, "isLValue": false, "isPure": true, @@ -3016,18 +3305,19 @@ "nodeType": "IndexAccess", "src": "3663:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30705, + "id": 31756, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3678:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3663:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3037,11 +3327,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30706, + "id": 31757, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30523, + "referencedDeclaration": 31574, "src": "3685:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3054,13 +3344,13 @@ "typeString": "address" } }, - "id": 30708, + "id": 31759, "nodeType": "ExpressionStatement", "src": "3663:26:30" }, { "expression": { - "id": 30714, + "id": 31765, "isConstant": false, "isLValue": false, "isPure": false, @@ -3068,21 +3358,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30709, + "id": 31760, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3700:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30711, + "id": 31762, "indexExpression": { "hexValue": "55534443", - "id": 30710, + "id": 31761, "isConstant": false, "isLValue": false, "isPure": true, @@ -3103,18 +3393,19 @@ "nodeType": "IndexAccess", "src": "3700:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30712, + "id": 31763, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3715:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3700:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3125,7 +3416,7 @@ "operator": "=", "rightHandSide": { "hexValue": "39", - "id": 30713, + "id": 31764, "isConstant": false, "isLValue": false, "isPure": true, @@ -3145,13 +3436,13 @@ "typeString": "uint256" } }, - "id": 30715, + "id": 31766, "nodeType": "ExpressionStatement", "src": "3700:23:30" }, { "expression": { - "id": 30721, + "id": 31772, "isConstant": false, "isLValue": false, "isPure": false, @@ -3159,21 +3450,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30716, + "id": 31767, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3736:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30718, + "id": 31769, "indexExpression": { "hexValue": "444149", - "id": 30717, + "id": 31768, "isConstant": false, "isLValue": false, "isPure": true, @@ -3194,18 +3485,19 @@ "nodeType": "IndexAccess", "src": "3736:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30719, + "id": 31770, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3750:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3736:18:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3215,11 +3507,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30720, + "id": 31771, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30526, + "referencedDeclaration": 31577, "src": "3757:3:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3232,13 +3524,13 @@ "typeString": "address" } }, - "id": 30722, + "id": 31773, "nodeType": "ExpressionStatement", "src": "3736:24:30" }, { "expression": { - "id": 30728, + "id": 31779, "isConstant": false, "isLValue": false, "isPure": false, @@ -3246,21 +3538,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30723, + "id": 31774, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3771:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30725, + "id": 31776, "indexExpression": { "hexValue": "444149", - "id": 30724, + "id": 31775, "isConstant": false, "isLValue": false, "isPure": true, @@ -3281,18 +3573,19 @@ "nodeType": "IndexAccess", "src": "3771:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30726, + "id": 31777, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3785:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3771:18:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3303,7 +3596,7 @@ "operator": "=", "rightHandSide": { "hexValue": "32", - "id": 30727, + "id": 31778, "isConstant": false, "isLValue": false, "isPure": true, @@ -3323,13 +3616,13 @@ "typeString": "uint256" } }, - "id": 30729, + "id": 31780, "nodeType": "ExpressionStatement", "src": "3771:22:30" }, { "expression": { - "id": 30735, + "id": 31786, "isConstant": false, "isLValue": false, "isPure": false, @@ -3337,21 +3630,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30730, + "id": 31781, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3804:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30732, + "id": 31783, "indexExpression": { "hexValue": "444149", - "id": 30731, + "id": 31782, "isConstant": false, "isLValue": false, "isPure": true, @@ -3372,18 +3665,19 @@ "nodeType": "IndexAccess", "src": "3804:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30733, + "id": 31784, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3818:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "3804:18:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3394,7 +3688,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307841656430633338343032613564313964663645346330334634453244636544366532396331656539", - "id": 30734, + "id": 31785, "isConstant": false, "isLValue": false, "isPure": true, @@ -3414,13 +3708,13 @@ "typeString": "address" } }, - "id": 30736, + "id": 31787, "nodeType": "ExpressionStatement", "src": "3804:63:30" }, { "expression": { - "id": 30742, + "id": 31793, "isConstant": false, "isLValue": false, "isPure": false, @@ -3428,21 +3722,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30737, + "id": 31788, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3880:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30739, + "id": 31790, "indexExpression": { "hexValue": "57455448", - "id": 30738, + "id": 31789, "isConstant": false, "isLValue": false, "isPure": true, @@ -3463,18 +3757,19 @@ "nodeType": "IndexAccess", "src": "3880:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30740, + "id": 31791, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3895:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3880:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3484,11 +3779,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30741, + "id": 31792, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30529, + "referencedDeclaration": 31580, "src": "3902:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3501,13 +3796,13 @@ "typeString": "address" } }, - "id": 30743, + "id": 31794, "nodeType": "ExpressionStatement", "src": "3880:26:30" }, { "expression": { - "id": 30749, + "id": 31800, "isConstant": false, "isLValue": false, "isPure": false, @@ -3515,21 +3810,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30744, + "id": 31795, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3917:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30746, + "id": 31797, "indexExpression": { "hexValue": "57455448", - "id": 30745, + "id": 31796, "isConstant": false, "isLValue": false, "isPure": true, @@ -3550,18 +3845,19 @@ "nodeType": "IndexAccess", "src": "3917:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30747, + "id": 31798, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3932:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3917:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3572,7 +3868,7 @@ "operator": "=", "rightHandSide": { "hexValue": "33", - "id": 30748, + "id": 31799, "isConstant": false, "isLValue": false, "isPure": true, @@ -3592,13 +3888,13 @@ "typeString": "uint256" } }, - "id": 30750, + "id": 31801, "nodeType": "ExpressionStatement", "src": "3917:23:30" }, { "expression": { - "id": 30756, + "id": 31807, "isConstant": false, "isLValue": false, "isPure": false, @@ -3606,21 +3902,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30751, + "id": 31802, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3951:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30753, + "id": 31804, "indexExpression": { "hexValue": "57455448", - "id": 30752, + "id": 31803, "isConstant": false, "isLValue": false, "isPure": true, @@ -3641,18 +3937,19 @@ "nodeType": "IndexAccess", "src": "3951:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30754, + "id": 31805, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3966:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "3951:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3663,7 +3960,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307835663465433344663963626434333731344645323734306635453336313631353563356238343139", - "id": 30755, + "id": 31806, "isConstant": false, "isLValue": false, "isPure": true, @@ -3683,13 +3980,13 @@ "typeString": "address" } }, - "id": 30757, + "id": 31808, "nodeType": "ExpressionStatement", "src": "3951:64:30" }, { "expression": { - "id": 30763, + "id": 31814, "isConstant": false, "isLValue": false, "isPure": false, @@ -3697,21 +3994,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30758, + "id": 31809, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4028:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30760, + "id": 31811, "indexExpression": { "hexValue": "57425443", - "id": 30759, + "id": 31810, "isConstant": false, "isLValue": false, "isPure": true, @@ -3732,18 +4029,19 @@ "nodeType": "IndexAccess", "src": "4028:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30761, + "id": 31812, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4043:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "4028:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3753,11 +4051,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30762, + "id": 31813, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30532, + "referencedDeclaration": 31583, "src": "4050:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3770,13 +4068,13 @@ "typeString": "address" } }, - "id": 30764, + "id": 31815, "nodeType": "ExpressionStatement", "src": "4028:26:30" }, { "expression": { - "id": 30770, + "id": 31821, "isConstant": false, "isLValue": false, "isPure": false, @@ -3784,21 +4082,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30765, + "id": 31816, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4065:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30767, + "id": 31818, "indexExpression": { "hexValue": "57425443", - "id": 30766, + "id": 31817, "isConstant": false, "isLValue": false, "isPure": true, @@ -3819,18 +4117,19 @@ "nodeType": "IndexAccess", "src": "4065:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30768, + "id": 31819, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4080:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "4065:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3841,7 +4140,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 30769, + "id": 31820, "isConstant": false, "isLValue": false, "isPure": true, @@ -3861,13 +4160,13 @@ "typeString": "uint256" } }, - "id": 30771, + "id": 31822, "nodeType": "ExpressionStatement", "src": "4065:23:30" }, { "expression": { - "id": 30777, + "id": 31828, "isConstant": false, "isLValue": false, "isPure": false, @@ -3875,21 +4174,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30772, + "id": 31823, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4099:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30774, + "id": 31825, "indexExpression": { "hexValue": "57425443", - "id": 30773, + "id": 31824, "isConstant": false, "isLValue": false, "isPure": true, @@ -3910,18 +4209,19 @@ "nodeType": "IndexAccess", "src": "4099:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30775, + "id": 31826, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4114:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "4099:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3932,7 +4232,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307846343033303038363532326135624545613439383846386341354233366462433937426545383863", - "id": 30776, + "id": 31827, "isConstant": false, "isLValue": false, "isPure": true, @@ -3952,7 +4252,7 @@ "typeString": "address" } }, - "id": 30778, + "id": 31829, "nodeType": "ExpressionStatement", "src": "4099:64:30" } @@ -3965,44 +4265,46 @@ "name": "setUpTokens", "nameLocation": "3629:11:30", "parameters": { - "id": 30700, + "id": 31751, "nodeType": "ParameterList", "parameters": [], "src": "3640:2:30" }, "returnParameters": { - "id": 30701, + "id": 31752, "nodeType": "ParameterList", "parameters": [], "src": "3650:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30844, + "id": 31895, "nodeType": "FunctionDefinition", "src": "4221:461:30", + "nodes": [], "body": { - "id": 30843, + "id": 31894, "nodeType": "Block", "src": "4288:394:30", + "nodes": [], "statements": [ { "assignments": [ - 30790 + 31841 ], "declarations": [ { "constant": false, - "id": 30790, + "id": 31841, "mutability": "mutable", "name": "addr", "nameLocation": "4307:4:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4299:12:30", "stateVariable": false, "storageLocation": "default", @@ -4011,7 +4313,7 @@ "typeString": "address" }, "typeName": { - "id": 30789, + "id": 31840, "name": "address", "nodeType": "ElementaryTypeName", "src": "4299:7:30", @@ -4024,28 +4326,28 @@ "visibility": "internal" } ], - "id": 30795, + "id": 31846, "initialValue": { "expression": { "baseExpression": { - "id": 30791, + "id": 31842, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4314:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30793, + "id": 31844, "indexExpression": { - "id": 30792, + "id": 31843, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30782, + "referencedDeclaration": 31833, "src": "4321:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4059,18 +4361,19 @@ "nodeType": "IndexAccess", "src": "4314:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30794, + "id": 31845, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4329:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "4314:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4082,17 +4385,17 @@ }, { "assignments": [ - 30797 + 31848 ], "declarations": [ { "constant": false, - "id": 30797, + "id": 31848, "mutability": "mutable", "name": "slot", "nameLocation": "4352:4:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4344:12:30", "stateVariable": false, "storageLocation": "default", @@ -4101,7 +4404,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30796, + "id": 31847, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4344:7:30", @@ -4113,28 +4416,28 @@ "visibility": "internal" } ], - "id": 30802, + "id": 31853, "initialValue": { "expression": { "baseExpression": { - "id": 30798, + "id": 31849, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4360:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30800, + "id": 31851, "indexExpression": { - "id": 30799, + "id": 31850, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30782, + "referencedDeclaration": 31833, "src": "4367:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4148,18 +4451,19 @@ "nodeType": "IndexAccess", "src": "4360:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30801, + "id": 31852, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4375:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "4360:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4171,17 +4475,17 @@ }, { "assignments": [ - 30804 + 31855 ], "declarations": [ { "constant": false, - "id": 30804, + "id": 31855, "mutability": "mutable", "name": "bal", "nameLocation": "4398:3:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4390:11:30", "stateVariable": false, "storageLocation": "default", @@ -4190,7 +4494,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30803, + "id": 31854, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4390:7:30", @@ -4202,15 +4506,15 @@ "visibility": "internal" } ], - "id": 30811, + "id": 31862, "initialValue": { "arguments": [ { - "id": 30809, + "id": 31860, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4427:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4228,11 +4532,11 @@ "expression": { "arguments": [ { - "id": 30806, + "id": 31857, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4411:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4247,52 +4551,55 @@ "typeString": "address" } ], - "id": 30805, + "id": 31856, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "4404:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30807, + "id": 31858, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4404:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30808, + "id": 31859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4417:9:30", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "4404:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30810, + "id": 31861, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4404:31:30", @@ -4309,11 +4616,11 @@ "expression": { "arguments": [ { - "id": 30815, + "id": 31866, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4473:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4325,11 +4632,11 @@ { "arguments": [ { - "id": 30819, + "id": 31870, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4513:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4337,11 +4644,11 @@ } }, { - "id": 30820, + "id": 31871, "name": "slot", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30797, + "referencedDeclaration": 31848, "src": "4522:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4361,7 +4668,7 @@ } ], "expression": { - "id": 30817, + "id": 31868, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -4372,11 +4679,12 @@ "typeString": "abi" } }, - "id": 30818, + "id": 31869, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4506:6:30", "memberName": "encode", "nodeType": "MemberAccess", "src": "4502:10:30", @@ -4385,12 +4693,13 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 30821, + "id": 31872, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4502:25:30", @@ -4408,7 +4717,7 @@ "typeString": "bytes memory" } ], - "id": 30816, + "id": 31867, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -4419,12 +4728,13 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 30822, + "id": 31873, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4492:36:30", @@ -4441,17 +4751,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30827, + "id": 31878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30825, + "id": 31876, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30804, + "referencedDeclaration": 31855, "src": "4566:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4461,11 +4771,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 30826, + "id": 31877, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30786, + "referencedDeclaration": 31837, "src": "4572:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4486,7 +4796,7 @@ "typeString": "uint256" } ], - "id": 30824, + "id": 31875, "isConstant": false, "isLValue": false, "isPure": true, @@ -4498,19 +4808,20 @@ "typeString": "type(bytes32)" }, "typeName": { - "id": 30823, + "id": 31874, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4558:7:30", "typeDescriptions": {} } }, - "id": 30828, + "id": 31879, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4558:18:30", @@ -4537,37 +4848,39 @@ } ], "expression": { - "id": 30812, + "id": 31863, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30511, + "referencedDeclaration": 31562, "src": "4448:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, - "id": 30814, + "id": 31865, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4453:5:30", "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 30497, + "referencedDeclaration": 31548, "src": "4448:10:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (address,bytes32,bytes32) external" } }, - "id": 30829, + "id": 31880, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4448:139:30", @@ -4577,7 +4890,7 @@ "typeString": "tuple()" } }, - "id": 30830, + "id": 31881, "nodeType": "ExpressionStatement", "src": "4448:139:30" }, @@ -4587,11 +4900,11 @@ { "arguments": [ { - "id": 30836, + "id": 31887, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4632:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4609,11 +4922,11 @@ "expression": { "arguments": [ { - "id": 30833, + "id": 31884, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4616:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4628,52 +4941,55 @@ "typeString": "address" } ], - "id": 30832, + "id": 31883, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "4609:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30834, + "id": 31885, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4609:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30835, + "id": 31886, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4622:9:30", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "4609:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30837, + "id": 31888, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4609:31:30", @@ -4688,17 +5004,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30840, + "id": 31891, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30838, + "id": 31889, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30804, + "referencedDeclaration": 31855, "src": "4642:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4708,11 +5024,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 30839, + "id": 31890, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30786, + "referencedDeclaration": 31837, "src": "4648:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4737,7 +5053,7 @@ "typeString": "uint256" } ], - "id": 30831, + "id": 31882, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4759,12 +5075,13 @@ "typeString": "function (uint256,uint256)" } }, - "id": 30841, + "id": 31892, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4600:52:30", @@ -4774,7 +5091,7 @@ "typeString": "tuple()" } }, - "id": 30842, + "id": 31893, "nodeType": "ExpressionStatement", "src": "4600:52:30" } @@ -4787,17 +5104,17 @@ "name": "mint", "nameLocation": "4230:4:30", "parameters": { - "id": 30787, + "id": 31838, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30782, + "id": 31833, "mutability": "mutable", "name": "symbol", "nameLocation": "4243:6:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4235:14:30", "stateVariable": false, "storageLocation": "default", @@ -4806,7 +5123,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30781, + "id": 31832, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4235:7:30", @@ -4819,12 +5136,12 @@ }, { "constant": false, - "id": 30784, + "id": 31835, "mutability": "mutable", "name": "account", "nameLocation": "4259:7:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4251:15:30", "stateVariable": false, "storageLocation": "default", @@ -4833,7 +5150,7 @@ "typeString": "address" }, "typeName": { - "id": 30783, + "id": 31834, "name": "address", "nodeType": "ElementaryTypeName", "src": "4251:7:30", @@ -4847,12 +5164,12 @@ }, { "constant": false, - "id": 30786, + "id": 31837, "mutability": "mutable", "name": "amt", "nameLocation": "4276:3:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4268:11:30", "stateVariable": false, "storageLocation": "default", @@ -4861,7 +5178,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30785, + "id": 31836, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4268:7:30", @@ -4876,38 +5193,40 @@ "src": "4234:46:30" }, "returnParameters": { - "id": 30788, + "id": 31839, "nodeType": "ParameterList", "parameters": [], "src": "4288:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30920, + "id": 31971, "nodeType": "FunctionDefinition", "src": "4740:583:30", + "nodes": [], "body": { - "id": 30919, + "id": 31970, "nodeType": "Block", "src": "4818:505:30", + "nodes": [], "statements": [ { "assignments": [ - 30854 + 31905 ], "declarations": [ { "constant": false, - "id": 30854, + "id": 31905, "mutability": "mutable", "name": "diff", "nameLocation": "4837:4:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4829:12:30", "stateVariable": false, "storageLocation": "default", @@ -4916,7 +5235,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30853, + "id": 31904, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4829:7:30", @@ -4928,24 +5247,24 @@ "visibility": "internal" } ], - "id": 30865, + "id": 31916, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30857, + "id": 31908, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30855, + "id": 31906, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4845:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4955,11 +5274,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 30856, + "id": 31907, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4852:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4977,17 +5296,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30863, + "id": 31914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30861, + "id": 31912, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4873:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4997,11 +5316,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30862, + "id": 31913, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4880:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5014,7 +5333,7 @@ "typeString": "uint256" } }, - "id": 30864, + "id": 31915, "isConstant": false, "isLValue": false, "isPure": false, @@ -5026,17 +5345,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30860, + "id": 31911, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30858, + "id": 31909, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4859:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5046,11 +5365,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30859, + "id": 31910, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4866:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5077,17 +5396,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30868, + "id": 31919, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30866, + "id": 31917, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30854, + "referencedDeclaration": 31905, "src": "4899:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5098,7 +5417,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 30867, + "id": 31918, "isConstant": false, "isLValue": false, "isPure": true, @@ -5118,29 +5437,29 @@ "typeString": "bool" } }, - "id": 30870, + "id": 31921, "nodeType": "IfStatement", "src": "4895:22:30", "trueBody": { - "functionReturnParameters": 30852, - "id": 30869, + "functionReturnParameters": 31903, + "id": 31920, "nodeType": "Return", "src": "4910:7:30" } }, { "assignments": [ - 30872 + 31923 ], "declarations": [ { "constant": false, - "id": 30872, + "id": 31923, "mutability": "mutable", "name": "denominator", "nameLocation": "4937:11:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4929:19:30", "stateVariable": false, "storageLocation": "default", @@ -5149,7 +5468,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30871, + "id": 31922, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4929:7:30", @@ -5161,24 +5480,24 @@ "visibility": "internal" } ], - "id": 30879, + "id": 31930, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30875, + "id": 31926, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30873, + "id": 31924, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4951:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5189,7 +5508,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 30874, + "id": 31925, "isConstant": false, "isLValue": false, "isPure": true, @@ -5210,18 +5529,18 @@ } }, "falseExpression": { - "id": 30877, + "id": 31928, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4970:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 30878, + "id": 31929, "isConstant": false, "isLValue": false, "isPure": false, @@ -5229,11 +5548,11 @@ "nodeType": "Conditional", "src": "4951:23:30", "trueExpression": { - "id": 30876, + "id": 31927, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4963:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5250,17 +5569,17 @@ }, { "assignments": [ - 30881 + 31932 ], "declarations": [ { "constant": false, - "id": 30881, + "id": 31932, "mutability": "mutable", "name": "check", "nameLocation": "4990:5:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4985:10:30", "stateVariable": false, "storageLocation": "default", @@ -5269,7 +5588,7 @@ "typeString": "bool" }, "typeName": { - "id": 30880, + "id": 31931, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4985:4:30", @@ -5281,13 +5600,13 @@ "visibility": "internal" } ], - "id": 30896, + "id": 31947, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30895, + "id": 31946, "isConstant": false, "isLValue": false, "isPure": false, @@ -5299,7 +5618,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30887, + "id": 31938, "isConstant": false, "isLValue": false, "isPure": false, @@ -5311,17 +5630,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30884, + "id": 31935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30882, + "id": 31933, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30854, + "referencedDeclaration": 31905, "src": "5000:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5331,11 +5650,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30883, + "id": 31934, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30609, + "referencedDeclaration": 31660, "src": "5007:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5349,7 +5668,7 @@ } } ], - "id": 30885, + "id": 31936, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -5365,11 +5684,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 30886, + "id": 31937, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30872, + "referencedDeclaration": 31923, "src": "5014:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5383,7 +5702,7 @@ } } ], - "id": 30888, + "id": 31939, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -5405,17 +5724,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30893, + "id": 31944, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30889, + "id": 31940, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30609, + "referencedDeclaration": 31660, "src": "5030:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5429,14 +5748,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30892, + "id": 31943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30890, + "id": 31941, "isConstant": false, "isLValue": false, "isPure": true, @@ -5453,11 +5772,11 @@ "nodeType": "BinaryOperation", "operator": "**", "rightExpression": { - "id": 30891, + "id": 31942, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30850, + "referencedDeclaration": 31901, "src": "5042:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5477,7 +5796,7 @@ } } ], - "id": 30894, + "id": 31945, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -5501,7 +5820,7 @@ }, { "condition": { - "id": 30898, + "id": 31949, "isConstant": false, "isLValue": false, "isPure": false, @@ -5511,11 +5830,11 @@ "prefix": true, "src": "5068:6:30", "subExpression": { - "id": 30897, + "id": 31948, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30881, + "referencedDeclaration": 31932, "src": "5069:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5527,11 +5846,11 @@ "typeString": "bool" } }, - "id": 30918, + "id": 31969, "nodeType": "IfStatement", "src": "5064:252:30", "trueBody": { - "id": 30917, + "id": 31968, "nodeType": "Block", "src": "5075:241:30", "statements": [ @@ -5540,7 +5859,7 @@ "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c2061636375726163792064696769747320", - "id": 30900, + "id": 31951, "isConstant": false, "isLValue": false, "isPure": true, @@ -5555,11 +5874,11 @@ "value": "Error: approx a == b not satisfied, accuracy digits " }, { - "id": 30901, + "id": 31952, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30850, + "referencedDeclaration": 31901, "src": "5166:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5578,7 +5897,7 @@ "typeString": "uint256" } ], - "id": 30899, + "id": 31950, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5589,12 +5908,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30902, + "id": 31953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5095:80:30", @@ -5604,7 +5924,7 @@ "typeString": "tuple()" } }, - "id": 30903, + "id": 31954, "nodeType": "EmitStatement", "src": "5090:85:30" }, @@ -5613,7 +5933,7 @@ "arguments": [ { "hexValue": "20204578706563746564", - "id": 30905, + "id": 31956, "isConstant": false, "isLValue": false, "isPure": true, @@ -5628,11 +5948,11 @@ "value": " Expected" }, { - "id": 30906, + "id": 31957, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "5224:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5651,7 +5971,7 @@ "typeString": "uint256" } ], - "id": 30904, + "id": 31955, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5662,12 +5982,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30907, + "id": 31958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5195:34:30", @@ -5677,7 +5998,7 @@ "typeString": "tuple()" } }, - "id": 30908, + "id": 31959, "nodeType": "EmitStatement", "src": "5190:39:30" }, @@ -5686,7 +6007,7 @@ "arguments": [ { "hexValue": "2020202041637475616c", - "id": 30910, + "id": 31961, "isConstant": false, "isLValue": false, "isPure": true, @@ -5701,11 +6022,11 @@ "value": " Actual" }, { - "id": 30911, + "id": 31962, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "5278:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5724,7 +6045,7 @@ "typeString": "uint256" } ], - "id": 30909, + "id": 31960, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5735,12 +6056,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30912, + "id": 31963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5249:34:30", @@ -5750,7 +6072,7 @@ "typeString": "tuple()" } }, - "id": 30913, + "id": 31964, "nodeType": "EmitStatement", "src": "5244:39:30" }, @@ -5759,7 +6081,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30914, + "id": 31965, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5770,12 +6092,13 @@ "typeString": "function ()" } }, - "id": 30915, + "id": 31966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5298:6:30", @@ -5785,7 +6108,7 @@ "typeString": "tuple()" } }, - "id": 30916, + "id": 31967, "nodeType": "ExpressionStatement", "src": "5298:6:30" } @@ -5801,17 +6124,17 @@ "name": "withinPrecision", "nameLocation": "4749:15:30", "parameters": { - "id": 30851, + "id": 31902, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30846, + "id": 31897, "mutability": "mutable", "name": "val0", "nameLocation": "4773:4:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4765:12:30", "stateVariable": false, "storageLocation": "default", @@ -5820,7 +6143,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30845, + "id": 31896, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4765:7:30", @@ -5833,12 +6156,12 @@ }, { "constant": false, - "id": 30848, + "id": 31899, "mutability": "mutable", "name": "val1", "nameLocation": "4787:4:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4779:12:30", "stateVariable": false, "storageLocation": "default", @@ -5847,7 +6170,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30847, + "id": 31898, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4779:7:30", @@ -5860,12 +6183,12 @@ }, { "constant": false, - "id": 30850, + "id": 31901, "mutability": "mutable", "name": "accuracy", "nameLocation": "4801:8:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4793:16:30", "stateVariable": false, "storageLocation": "default", @@ -5874,7 +6197,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30849, + "id": 31900, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4793:7:30", @@ -5889,38 +6212,40 @@ "src": "4764:46:30" }, "returnParameters": { - "id": 30852, + "id": 31903, "nodeType": "ParameterList", "parameters": [], "src": "4818:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30971, + "id": 32022, "nodeType": "FunctionDefinition", "src": "5374:479:30", + "nodes": [], "body": { - "id": 30970, + "id": 32021, "nodeType": "Block", "src": "5451:402:30", + "nodes": [], "statements": [ { "assignments": [ - 30930 + 31981 ], "declarations": [ { "constant": false, - "id": 30930, + "id": 31981, "mutability": "mutable", "name": "actualDiff", "nameLocation": "5470:10:30", "nodeType": "VariableDeclaration", - "scope": 30970, + "scope": 32021, "src": "5462:18:30", "stateVariable": false, "storageLocation": "default", @@ -5929,7 +6254,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30929, + "id": 31980, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5462:7:30", @@ -5941,24 +6266,24 @@ "visibility": "internal" } ], - "id": 30941, + "id": 31992, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30933, + "id": 31984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30931, + "id": 31982, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5483:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5968,11 +6293,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 30932, + "id": 31983, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5490:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5990,17 +6315,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30939, + "id": 31990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30937, + "id": 31988, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5511:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6010,11 +6335,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30938, + "id": 31989, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5518:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6027,7 +6352,7 @@ "typeString": "uint256" } }, - "id": 30940, + "id": 31991, "isConstant": false, "isLValue": false, "isPure": false, @@ -6039,17 +6364,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30936, + "id": 31987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30934, + "id": 31985, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5497:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6059,11 +6384,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30935, + "id": 31986, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5504:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6086,17 +6411,17 @@ }, { "assignments": [ - 30943 + 31994 ], "declarations": [ { "constant": false, - "id": 30943, + "id": 31994, "mutability": "mutable", "name": "check", "nameLocation": "5538:5:30", "nodeType": "VariableDeclaration", - "scope": 30970, + "scope": 32021, "src": "5533:10:30", "stateVariable": false, "storageLocation": "default", @@ -6105,7 +6430,7 @@ "typeString": "bool" }, "typeName": { - "id": 30942, + "id": 31993, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5533:4:30", @@ -6117,23 +6442,23 @@ "visibility": "internal" } ], - "id": 30947, + "id": 31998, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30946, + "id": 31997, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30944, + "id": 31995, "name": "actualDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30930, + "referencedDeclaration": 31981, "src": "5546:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6143,11 +6468,11 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 30945, + "id": 31996, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30926, + "referencedDeclaration": 31977, "src": "5560:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6165,7 +6490,7 @@ }, { "condition": { - "id": 30949, + "id": 32000, "isConstant": false, "isLValue": false, "isPure": false, @@ -6175,11 +6500,11 @@ "prefix": true, "src": "5589:6:30", "subExpression": { - "id": 30948, + "id": 31999, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30943, + "referencedDeclaration": 31994, "src": "5590:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6191,11 +6516,11 @@ "typeString": "bool" } }, - "id": 30969, + "id": 32020, "nodeType": "IfStatement", "src": "5585:261:30", "trueBody": { - "id": 30968, + "id": 32019, "nodeType": "Block", "src": "5597:249:30", "statements": [ @@ -6204,7 +6529,7 @@ "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c20616363757261637920646966666572656e636520", - "id": 30951, + "id": 32002, "isConstant": false, "isLValue": false, "isPure": true, @@ -6219,11 +6544,11 @@ "value": "Error: approx a == b not satisfied, accuracy difference " }, { - "id": 30952, + "id": 32003, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30926, + "referencedDeclaration": 31977, "src": "5692:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6242,7 +6567,7 @@ "typeString": "uint256" } ], - "id": 30950, + "id": 32001, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6253,12 +6578,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30953, + "id": 32004, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5617:88:30", @@ -6268,7 +6594,7 @@ "typeString": "tuple()" } }, - "id": 30954, + "id": 32005, "nodeType": "EmitStatement", "src": "5612:93:30" }, @@ -6277,7 +6603,7 @@ "arguments": [ { "hexValue": "20204578706563746564", - "id": 30956, + "id": 32007, "isConstant": false, "isLValue": false, "isPure": true, @@ -6292,11 +6618,11 @@ "value": " Expected" }, { - "id": 30957, + "id": 32008, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5754:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6315,7 +6641,7 @@ "typeString": "uint256" } ], - "id": 30955, + "id": 32006, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6326,12 +6652,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30958, + "id": 32009, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5725:34:30", @@ -6341,7 +6668,7 @@ "typeString": "tuple()" } }, - "id": 30959, + "id": 32010, "nodeType": "EmitStatement", "src": "5720:39:30" }, @@ -6350,7 +6677,7 @@ "arguments": [ { "hexValue": "2020202041637475616c", - "id": 30961, + "id": 32012, "isConstant": false, "isLValue": false, "isPure": true, @@ -6365,11 +6692,11 @@ "value": " Actual" }, { - "id": 30962, + "id": 32013, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5808:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6388,7 +6715,7 @@ "typeString": "uint256" } ], - "id": 30960, + "id": 32011, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6399,12 +6726,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30963, + "id": 32014, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5779:34:30", @@ -6414,7 +6742,7 @@ "typeString": "tuple()" } }, - "id": 30964, + "id": 32015, "nodeType": "EmitStatement", "src": "5774:39:30" }, @@ -6423,7 +6751,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30965, + "id": 32016, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6434,12 +6762,13 @@ "typeString": "function ()" } }, - "id": 30966, + "id": 32017, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5828:6:30", @@ -6449,7 +6778,7 @@ "typeString": "tuple()" } }, - "id": 30967, + "id": 32018, "nodeType": "ExpressionStatement", "src": "5828:6:30" } @@ -6465,17 +6794,17 @@ "name": "withinDiff", "nameLocation": "5383:10:30", "parameters": { - "id": 30927, + "id": 31978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30922, + "id": 31973, "mutability": "mutable", "name": "val0", "nameLocation": "5402:4:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5394:12:30", "stateVariable": false, "storageLocation": "default", @@ -6484,7 +6813,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30921, + "id": 31972, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5394:7:30", @@ -6497,12 +6826,12 @@ }, { "constant": false, - "id": 30924, + "id": 31975, "mutability": "mutable", "name": "val1", "nameLocation": "5416:4:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5408:12:30", "stateVariable": false, "storageLocation": "default", @@ -6511,7 +6840,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30923, + "id": 31974, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5408:7:30", @@ -6524,12 +6853,12 @@ }, { "constant": false, - "id": 30926, + "id": 31977, "mutability": "mutable", "name": "expectedDiff", "nameLocation": "5430:12:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5422:20:30", "stateVariable": false, "storageLocation": "default", @@ -6538,7 +6867,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30925, + "id": 31976, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5422:7:30", @@ -6553,34 +6882,36 @@ "src": "5393:50:30" }, "returnParameters": { - "id": 30928, + "id": 31979, "nodeType": "ParameterList", "parameters": [], "src": "5451:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30990, + "id": 32041, "nodeType": "FunctionDefinition", "src": "5861:159:30", + "nodes": [], "body": { - "id": 30989, + "id": 32040, "nodeType": "Block", "src": "5956:64:30", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 30983, + "id": 32034, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30973, + "referencedDeclaration": 32024, "src": "5991:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6588,11 +6919,11 @@ } }, { - "id": 30984, + "id": 32035, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30975, + "referencedDeclaration": 32026, "src": "5996:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6600,11 +6931,11 @@ } }, { - "id": 30985, + "id": 32036, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30977, + "referencedDeclaration": 32028, "src": "6001:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6613,7 +6944,7 @@ }, { "hexValue": "66616c7365", - "id": 30986, + "id": 32037, "isConstant": false, "isLValue": false, "isPure": true, @@ -6647,26 +6978,27 @@ "typeString": "bool" } ], - "id": 30982, + "id": 32033, "name": "constrictToRange", "nodeType": "Identifier", "overloadedDeclarations": [ - 30990, - 31028 + 32041, + 32079 ], - "referencedDeclaration": 31028, + "referencedDeclaration": 32079, "src": "5974:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_bool_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256,bool) pure returns (uint256)" } }, - "id": 30987, + "id": 32038, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5974:38:30", @@ -6676,8 +7008,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30981, - "id": 30988, + "functionReturnParameters": 32032, + "id": 32039, "nodeType": "Return", "src": "5967:45:30" } @@ -6690,17 +7022,17 @@ "name": "constrictToRange", "nameLocation": "5870:16:30", "parameters": { - "id": 30978, + "id": 32029, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30973, + "id": 32024, "mutability": "mutable", "name": "val", "nameLocation": "5895:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5887:11:30", "stateVariable": false, "storageLocation": "default", @@ -6709,7 +7041,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30972, + "id": 32023, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5887:7:30", @@ -6722,12 +7054,12 @@ }, { "constant": false, - "id": 30975, + "id": 32026, "mutability": "mutable", "name": "min", "nameLocation": "5908:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5900:11:30", "stateVariable": false, "storageLocation": "default", @@ -6736,7 +7068,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30974, + "id": 32025, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5900:7:30", @@ -6749,12 +7081,12 @@ }, { "constant": false, - "id": 30977, + "id": 32028, "mutability": "mutable", "name": "max", "nameLocation": "5921:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5913:11:30", "stateVariable": false, "storageLocation": "default", @@ -6763,7 +7095,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30976, + "id": 32027, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5913:7:30", @@ -6778,17 +7110,17 @@ "src": "5886:39:30" }, "returnParameters": { - "id": 30981, + "id": 32032, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30980, + "id": 32031, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5947:7:30", "stateVariable": false, "storageLocation": "default", @@ -6797,7 +7129,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30979, + "id": 32030, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5947:7:30", @@ -6811,19 +7143,21 @@ ], "src": "5946:9:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "pure", "virtual": false, "visibility": "public" }, { - "id": 31028, + "id": 32079, "nodeType": "FunctionDefinition", "src": "6028:291:30", + "nodes": [], "body": { - "id": 31027, + "id": 32078, "nodeType": "Block", "src": "6137:182:30", + "nodes": [], "statements": [ { "condition": { @@ -6831,7 +7165,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 31008, + "id": 32059, "isConstant": false, "isLValue": false, "isPure": false, @@ -6841,17 +7175,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31005, + "id": 32056, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31003, + "id": 32054, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30992, + "referencedDeclaration": 32043, "src": "6157:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6862,7 +7196,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 31004, + "id": 32055, "isConstant": false, "isLValue": false, "isPure": true, @@ -6885,7 +7219,7 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 31007, + "id": 32058, "isConstant": false, "isLValue": false, "isPure": false, @@ -6895,11 +7229,11 @@ "prefix": true, "src": "6169:8:30", "subExpression": { - "id": 31006, + "id": 32057, "name": "nonZero", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30998, + "referencedDeclaration": 32049, "src": "6170:7:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6923,17 +7257,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31013, + "id": 32064, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31011, + "id": 32062, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6207:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6943,11 +7277,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 31012, + "id": 32063, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6214:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6966,7 +7300,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31023, + "id": 32074, "isConstant": false, "isLValue": false, "isPure": false, @@ -6976,17 +7310,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31021, + "id": 32072, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31016, + "id": 32067, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30992, + "referencedDeclaration": 32043, "src": "6288:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7002,17 +7336,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31019, + "id": 32070, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31017, + "id": 32068, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6295:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7022,11 +7356,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 31018, + "id": 32069, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6301:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7040,7 +7374,7 @@ } } ], - "id": 31020, + "id": 32071, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -7062,11 +7396,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 31022, + "id": 32073, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6308:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7079,40 +7413,40 @@ "typeString": "uint256" } }, - "functionReturnParameters": 31002, - "id": 31024, + "functionReturnParameters": 32053, + "id": 32075, "nodeType": "Return", "src": "6281:30:30" }, - "id": 31025, + "id": 32076, "nodeType": "IfStatement", "src": "6203:108:30", "trueBody": { "expression": { - "id": 31014, + "id": 32065, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6236:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 31002, - "id": 31015, + "functionReturnParameters": 32053, + "id": 32066, "nodeType": "Return", "src": "6229:10:30" } }, - "id": 31026, + "id": 32077, "nodeType": "IfStatement", "src": "6148:163:30", "trueBody": { "expression": { "hexValue": "30", - "id": 31009, + "id": 32060, "isConstant": false, "isLValue": false, "isPure": true, @@ -7126,8 +7460,8 @@ }, "value": "0" }, - "functionReturnParameters": 31002, - "id": 31010, + "functionReturnParameters": 32053, + "id": 32061, "nodeType": "Return", "src": "6179:8:30" } @@ -7141,17 +7475,17 @@ "name": "constrictToRange", "nameLocation": "6037:16:30", "parameters": { - "id": 30999, + "id": 32050, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30992, + "id": 32043, "mutability": "mutable", "name": "val", "nameLocation": "6062:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6054:11:30", "stateVariable": false, "storageLocation": "default", @@ -7160,7 +7494,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30991, + "id": 32042, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6054:7:30", @@ -7173,12 +7507,12 @@ }, { "constant": false, - "id": 30994, + "id": 32045, "mutability": "mutable", "name": "min", "nameLocation": "6075:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6067:11:30", "stateVariable": false, "storageLocation": "default", @@ -7187,7 +7521,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30993, + "id": 32044, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6067:7:30", @@ -7200,12 +7534,12 @@ }, { "constant": false, - "id": 30996, + "id": 32047, "mutability": "mutable", "name": "max", "nameLocation": "6088:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6080:11:30", "stateVariable": false, "storageLocation": "default", @@ -7214,7 +7548,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30995, + "id": 32046, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6080:7:30", @@ -7227,12 +7561,12 @@ }, { "constant": false, - "id": 30998, + "id": 32049, "mutability": "mutable", "name": "nonZero", "nameLocation": "6098:7:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6093:12:30", "stateVariable": false, "storageLocation": "default", @@ -7241,7 +7575,7 @@ "typeString": "bool" }, "typeName": { - "id": 30997, + "id": 32048, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6093:4:30", @@ -7256,17 +7590,17 @@ "src": "6053:53:30" }, "returnParameters": { - "id": 31002, + "id": 32053, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 31001, + "id": 32052, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6128:7:30", "stateVariable": false, "storageLocation": "default", @@ -7275,7 +7609,7 @@ "typeString": "uint256" }, "typeName": { - "id": 31000, + "id": 32051, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6128:7:30", @@ -7289,7 +7623,7 @@ ], "src": "6127:9:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "pure", "virtual": false, "visibility": "public" @@ -7299,30 +7633,33 @@ "baseContracts": [ { "baseName": { - "id": 30507, + "id": 31558, "name": "DSTest", + "nameLocations": [ + "469:6:30" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, "src": "469:6:30" }, - "id": 30508, + "id": 31559, "nodeType": "InheritanceSpecifier", "src": "469:6:30" } ], "canonicalName": "Utility", "contractDependencies": [ - 30364 + 30379 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 31029, + 32080, 1786 ], "name": "Utility", "nameLocation": "458:7:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] } ], diff --git a/out/Utility.sol/Utility.json b/out/Utility.sol/Utility.json index 647165a..c521e55 100644 --- a/out/Utility.sol/Utility.json +++ b/out/Utility.sol/Utility.json @@ -627,13 +627,13 @@ } ], "bytecode": { - "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b0319909116179055611654806100596000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528660405161057d9190610efe565b60405180910390a16000805160206115ff833981519152856040516105a29190610f2a565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528560405161067e9190610efe565b60405180910390a16000805160206115ff833981519152846040516106a39190610f2a565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f56565b6107029190610f6a565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f82565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f6a565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f82565b6108c98684610f6a565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fd6565b60408051601f1981840301815290829052610a7391610ff2565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610ffe565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fd6565b60408051601f1981840301815290829052610b9991610ff2565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115ff83398151915281604051610c879190610efe565b60405180910390a16000805160206115ff83398151915282604051610cac9190610f2a565b60405180910390a1610cbc610ae5565b5050565b6105e38061101c83390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b600082821015610db757610db7610d8f565b500390565b600181815b80851115610df7578160001904821115610ddd57610ddd610d8f565b80851615610dea57918102915b93841c9390800290610dc1565b509250929050565b600082610e0e57506001610e9c565b81610e1b57506000610e9c565b8160018114610e315760028114610e3b57610e57565b6001915050610e9c565b60ff841115610e4c57610e4c610d8f565b50506001821b610e9c565b5060208310610133831016604e8410600b8410161715610e7a575081810a610e9c565b610e848383610dbc565b8060001904821115610e9857610e98610d8f565b0290505b92915050565b6000610eae8383610dff565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b6000816000190483118215151615610ef957610ef9610d8f565b500290565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f6557610f65610eb5565b500690565b60008219821115610f7d57610f7d610d8f565b500190565b600060208284031215610f9457600080fd5b5051919050565b6000815160005b81811015610fbc5760208185018101518683015201610fa2565b81811115610fcb576000828601525b509290920192915050565b6001600160e01b03198316815260006107056004830184610f9b565b6000610eae8284610f9b565b60006020828403121561101057600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220232012e6a0447c146bf2864e8737b38551253301057cf2559d1a2c5c1ea9becf64736f6c634300080f0033", + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b0319909116179055611630806100596000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528660405161057d9190610ef6565b60405180910390a16000805160206115db833981519152856040516105a29190610f22565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528560405161067e9190610ef6565b60405180910390a16000805160206115db833981519152846040516106a39190610f22565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f4e565b6107029190610f62565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f75565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f62565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f75565b6108c98684610f62565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fbe565b60408051601f1981840301815290829052610a7391610fda565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610fe6565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fbe565b60408051601f1981840301815290829052610b9991610fda565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115db83398151915281604051610c879190610ef6565b60405180910390a16000805160206115db83398151915282604051610cac9190610f22565b60405180910390a1610cbc610ae5565b5050565b6105d78061100483390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b81810381811115610db857610db8610d8f565b92915050565b600181815b80851115610df9578160001904821115610ddf57610ddf610d8f565b80851615610dec57918102915b93841c9390800290610dc3565b509250929050565b600082610e1057506001610db8565b81610e1d57506000610db8565b8160018114610e335760028114610e3d57610e59565b6001915050610db8565b60ff841115610e4e57610e4e610d8f565b50506001821b610db8565b5060208310610133831016604e8410600b8410161715610e7c575081810a610db8565b610e868383610dbe565b8060001904821115610e9a57610e9a610d8f565b029392505050565b6000610eae8383610e01565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b8082028115828204841417610db857610db8610d8f565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f5d57610f5d610eb5565b500690565b80820180821115610db857610db8610d8f565b600060208284031215610f8757600080fd5b5051919050565b6000815160005b81811015610faf5760208185018101518683015201610f95565b50600093019283525090919050565b6001600160e01b03198316815260006107056004830184610f8e565b6000610eae8284610f8e565b600060208284031215610ff857600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c63430008110033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220d7afc70b0ada6633f99b8ae71df9d93f63c9400877f062ac298f36f7182ae1f064736f6c63430008110033", "sourceMap": "449:5881:30:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;3063:103:30;;;;;;;;;-1:-1:-1;3122:37:30;3086:77;;;-1:-1:-1;;;;;;3086:77:30;;;;;;449:5881;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528660405161057d9190610efe565b60405180910390a16000805160206115ff833981519152856040516105a29190610f2a565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115ff8339815191529181900360a00190a16000805160206115ff8339815191528560405161067e9190610efe565b60405180910390a16000805160206115ff833981519152846040516106a39190610f2a565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f56565b6107029190610f6a565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f82565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f6a565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f82565b6108c98684610f6a565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fd6565b60408051601f1981840301815290829052610a7391610ff2565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610ffe565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fd6565b60408051601f1981840301815290829052610b9991610ff2565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115ff83398151915281604051610c879190610efe565b60405180910390a16000805160206115ff83398151915282604051610cac9190610f2a565b60405180910390a1610cbc610ae5565b5050565b6105e38061101c83390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b600082821015610db757610db7610d8f565b500390565b600181815b80851115610df7578160001904821115610ddd57610ddd610d8f565b80851615610dea57918102915b93841c9390800290610dc1565b509250929050565b600082610e0e57506001610e9c565b81610e1b57506000610e9c565b8160018114610e315760028114610e3b57610e57565b6001915050610e9c565b60ff841115610e4c57610e4c610d8f565b50506001821b610e9c565b5060208310610133831016604e8410600b8410161715610e7a575081810a610e9c565b610e848383610dbc565b8060001904821115610e9857610e98610d8f565b0290505b92915050565b6000610eae8383610dff565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b6000816000190483118215151615610ef957610ef9610d8f565b500290565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f6557610f65610eb5565b500690565b60008219821115610f7d57610f7d610d8f565b500190565b600060208284031215610f9457600080fd5b5051919050565b6000815160005b81811015610fbc5760208185018101518683015201610fa2565b81811115610fcb576000828601525b509290920192915050565b6001600160e01b03198316815260006107056004830184610f9b565b6000610eae8284610f9b565b60006020828403121561101057600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f0033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220232012e6a0447c146bf2864e8737b38551253301057cf2559d1a2c5c1ea9becf64736f6c634300080f0033", - "sourceMap": "449:5881:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1745:36;;1780:1;1745:36;;;;;186:4:32;174:17;;;156:36;;144:2;129:18;1745:36:30;;;;;;;;4740:583;;;;;;:::i;:::-;;:::i;:::-;;5374:479;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;6028:291;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:32;;;1232:2;1217:18;6028:291:30;1098:177:32;2262:45:30;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;2092:45::-;;2135:2;2092:45;;2005:36;;2040:1;2005:36;;3312:184;;;:::i;1819:584:0:-;;;:::i;:::-;;;1872:14:32;;1865:22;1847:41;;1835:2;1820:18;1819:584:0;1707:187:32;5861:159:30;;;;;;:::i;:::-;;:::i;1916:36::-;;1951:1;1916:36;;1655;;1690:1;1655:36;;3620:551;;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:30;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:30;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551;1572:26:0;;;;;;;;;4740:583:30;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:30;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;4177:21:32;;;4234:2;4214:18;;;4207:30;4273:34;4268:2;4253:18;;4246:62;-1:-1:-1;;;4339:3:32;4324:19;;4317:51;4435:4;4420:20;;4413:36;;;5095:80:30;;-1:-1:-1;;;;;;;;;;;5095:80:30;;;;4400:3:32;5095:80:30;;;-1:-1:-1;;;;;;;;;;;5224:4:30;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:30;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:30;;;;;5585:261;;5617:88;;;5498:21:32;;;5555:2;5535:18;;;5528:30;5594:34;5589:2;5574:18;;5567:62;5666:26;5660:3;5645:19;;5638:55;5760:4;5745:20;;5738:36;;;5617:88:30;;-1:-1:-1;;;;;;;;;;;5617:88:30;;;;5725:3:32;5617:88:30;;;-1:-1:-1;;;;;;;;;;;5754:4:30;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:30;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;6028:291::-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:30;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:30;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:30;;-1:-1:-1;;;;;6199:32:32;;;4404:31:30;;;6181:51:32;;;;4314:19:30;;;4360;;4314;;4404:22;;6154:18:32;;4404:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;;-1:-1:-1;;;;;6624:32:32;;;4502:25:30;;;6606:51:32;6673:18;;;6666:34;;;4390:45:30;;-1:-1:-1;4448:4:30;;;;;;:10;;4473:4;;6579:18:32;;4502:25:30;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;;;;;-1:-1:-1;;;;;;4448:139:30;;;-1:-1:-1;;;;;6931:32:32;;;4448:139:30;;;6913:51:32;6980:18;;;6973:34;;;;7023:18;;;7016:34;6886:18;;4448:139:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:30;;-1:-1:-1;;;4609:31:30;;-1:-1:-1;;;;;6199:32:32;;;4609:31:30;;;6181:51:32;4600:52:30;;-1:-1:-1;4609:22:30;;;-1:-1:-1;4609:22:30;;6154:18:32;;4609:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;:::-;4600:8;:52::i;3312:184::-;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:30;:17;;-1:-1:-1;;;;;;3354:17:30;-1:-1:-1;;;;;3354:17:30;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:30;:17;;-1:-1:-1;;;;;;3395:17:30;-1:-1:-1;;;;;3395:17:30;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:30;:17;;-1:-1:-1;;;;;;3462:17:30;-1:-1:-1;;;;;3462:17:30;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;6606:51:32;;;-1:-1:-1;;;6673:18:32;;;6666:34;2196:43:0;;;;;;;;;6579:18:32;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:30:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;2410:424:0:-;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;6913:51:32;;;-1:-1:-1;;;6980:18:32;;;6973:34;;;;2705:4:0;7023:18:32;;;7016:34;2482:11:0;;1671:64;2579:43;;6886:18:32;;2645:67:0;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;5202:262::-;5264:1;5259;:6;5255:203;;5286:41;;;;;8610:2:32;8592:21;;;8649:2;8629:18;;;8622:30;8688:34;8683:2;8668:18;;8661:62;-1:-1:-1;;;8754:2:32;8739:18;;8732:32;8796:3;8781:19;;8408:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;:::-;;;;;;;;5441:6;:4;:6::i;:::-;5202:262;;:::o;-1:-1:-1:-;;;;;;;;:::o;203:316:32:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:32;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:32;494:18;;;481:32;;203:316;-1:-1:-1;203:316:32:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;576:60;524:118;:::o;647:446::-;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:32;;-1:-1:-1;;647:446:32:o;1280:422::-;1357:6;1365;1373;1426:2;1414:9;1405:7;1401:23;1397:32;1394:52;;;1442:1;1439;1432:12;1394:52;1465:23;;;-1:-1:-1;1538:2:32;1523:18;;1510:32;-1:-1:-1;;;;;1571:31:32;;1561:42;;1551:70;;1617:1;1614;1607:12;1551:70;1280:422;;1640:5;;-1:-1:-1;;;1692:2:32;1677:18;;;;1664:32;;1280:422::o;1899:127::-;1960:10;1955:3;1951:20;1948:1;1941:31;1991:4;1988:1;1981:15;2015:4;2012:1;2005:15;2031:125;2071:4;2099:1;2096;2093:8;2090:34;;;2104:18;;:::i;:::-;-1:-1:-1;2141:9:32;;2031:125::o;2161:422::-;2250:1;2293:5;2250:1;2307:270;2328:7;2318:8;2315:21;2307:270;;;2387:4;2383:1;2379:6;2375:17;2369:4;2366:27;2363:53;;;2396:18;;:::i;:::-;2446:7;2436:8;2432:22;2429:55;;;2466:16;;;;2429:55;2545:22;;;;2505:15;;;;2307:270;;;2311:3;2161:422;;;;;:::o;2588:806::-;2637:5;2667:8;2657:80;;-1:-1:-1;2708:1:32;2722:5;;2657:80;2756:4;2746:76;;-1:-1:-1;2793:1:32;2807:5;;2746:76;2838:4;2856:1;2851:59;;;;2924:1;2919:130;;;;2831:218;;2851:59;2881:1;2872:10;;2895:5;;;2919:130;2956:3;2946:8;2943:17;2940:43;;;2963:18;;:::i;:::-;-1:-1:-1;;3019:1:32;3005:16;;3034:5;;2831:218;;3133:2;3123:8;3120:16;3114:3;3108:4;3105:13;3101:36;3095:2;3085:8;3082:16;3077:2;3071:4;3068:12;3064:35;3061:77;3058:159;;;-1:-1:-1;3170:19:32;;;3202:5;;3058:159;3249:34;3274:8;3268:4;3249:34;:::i;:::-;3319:6;3315:1;3311:6;3307:19;3298:7;3295:32;3292:58;;;3330:18;;:::i;:::-;3368:20;;-1:-1:-1;2588:806:32;;;;;:::o;3399:131::-;3459:5;3488:36;3515:8;3509:4;3488:36;:::i;:::-;3479:45;3399:131;-1:-1:-1;;;3399:131:32:o;3535:127::-;3596:10;3591:3;3587:20;3584:1;3577:31;3627:4;3624:1;3617:15;3651:4;3648:1;3641:15;3667:120;3707:1;3733;3723:35;;3738:18;;:::i;:::-;-1:-1:-1;3772:9:32;;3667:120::o;3792:168::-;3832:7;3898:1;3894;3890:6;3886:14;3883:1;3880:21;3875:1;3868:9;3861:17;3857:45;3854:71;;;3905:18;;:::i;:::-;-1:-1:-1;3945:9:32;;3792:168::o;4460:408::-;4690:2;4672:21;;;4729:2;4709:18;;;4702:30;-1:-1:-1;;;4763:2:32;4748:18;;4741:40;4848:4;4833:20;;4826:36;;;;4813:3;4798:19;;4460:408::o;4873:::-;5103:2;5085:21;;;5142:2;5122:18;;;5115:30;-1:-1:-1;;;5176:2:32;5161:18;;5154:40;5261:4;5246:20;;5239:36;;;;5226:3;5211:19;;4873:408::o;5785:112::-;5817:1;5843;5833:35;;5848:18;;:::i;:::-;-1:-1:-1;5882:9:32;;5785:112::o;5902:128::-;5942:3;5973:1;5969:6;5966:1;5963:13;5960:39;;;5979:18;;:::i;:::-;-1:-1:-1;6015:9:32;;5902:128::o;6243:184::-;6313:6;6366:2;6354:9;6345:7;6341:23;6337:32;6334:52;;;6382:1;6379;6372:12;6334:52;-1:-1:-1;6405:16:32;;6243:184;-1:-1:-1;6243:184:32:o;7340:336::-;7381:3;7419:5;7413:12;7443:1;7453:128;7467:6;7464:1;7461:13;7453:128;;;7564:4;7549:13;;;7545:24;;7539:31;7526:11;;;7519:52;7482:12;7453:128;;;7599:6;7596:1;7593:13;7590:48;;;7634:1;7625:6;7620:3;7616:16;7609:27;7590:48;-1:-1:-1;7654:16:32;;;;;7340:336;-1:-1:-1;;7340:336:32:o;7681:278::-;-1:-1:-1;;;;;;7866:33:32;;7854:46;;7836:3;7916:37;7950:1;7941:11;;7933:6;7916:37;:::i;7964:189::-;8093:3;8118:29;8143:3;8135:6;8118:29;:::i;8158:245::-;8225:6;8278:2;8266:9;8257:7;8253:23;8249:32;8246:52;;;8294:1;8291;8284:12;8246:52;8326:9;8320:16;8345:28;8367:5;8345:28;:::i", + "object": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c38922f116100a2578063c060c5f311610071578063c060c5f3146101d3578063c5ba73ed146101e6578063e70dd6cf146101ee578063eea96210146101f6578063fa7626d41461045257600080fd5b80638c38922f146101a35780639f71f14a146101ab578063b967b5a7146101b3578063ba414fa6146101bb57600080fd5b806338505fb0116100de57806338505fb01461015f5780636c676a60146101675780637a8fe3c0146101885780637ed9db591461019057600080fd5b8063174a5be41461011057806330f7c5c31461012f578063344b1478146101445780633493f4ca14610157575b600080fd5b610118600181565b60405160ff90911681526020015b60405180910390f35b61014261013d366004610ccd565b61045f565b005b610142610152366004610ccd565b6105ba565b610118600b81565b610118600281565b61017a610175366004610d0a565b6106ba565b604051908152602001610126565b610118600c81565b61014261019e366004610d4b565b61070d565b610118600a81565b610118600481565b6101426108ce565b6101c36109ab565b6040519015158152602001610126565b61017a6101e1366004610ccd565b610ad6565b610118600381565b610118600081565b61014260046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b6000546101c39060ff1681565b6000828411610477576104728484610da5565b610481565b6104818385610da5565b9050806000036104915750505050565b6000841561049f57846104a1565b835b905060006104b084600a610ea2565b6104c6906b033b2e3c9fd0803ce8000000610ecb565b826104dd6b033b2e3c9fd0803ce800000086610edf565b6104e79190610ecb565b109050806105b257604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528660405161057d9190610ef6565b60405180910390a16000805160206115db833981519152856040516105a29190610f22565b60405180910390a16105b2610ae5565b505050505050565b60008284116105d2576105cd8484610da5565b6105dc565b6105dc8385610da5565b905081811115806106b357604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206115db8339815191529181900360a00190a16000805160206115db8339815191528560405161067e9190610ef6565b60405180910390a16000805160206115db833981519152846040516106a39190610f22565b60405180910390a16106b3610ae5565b5050505050565b6000841580156106c8575081155b156106d557506000610705565b8383036106e3575081610705565b836106ee8185610da5565b6106f89087610f4e565b6107029190610f62565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa158015610771573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107959190610f75565b600054604080516001600160a01b0389811660208301529181018690529293506201000090910416906370ca10bb9085906060016040516020818303038152906040528051906020012087856107eb9190610f62565b60405160e085901b6001600160e01b03191681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381600087803b15801561083957600080fd5b505af115801561084d573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b0388811660048301526105b29350861691506370a0823190602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190610f75565b6108c98684610f62565b610bf1565b6040516108da90610cc0565b604051809103906000f0801580156108f6573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039290921691909117905560405161092390610cc0565b604051809103906000f08015801561093f573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b039290921691909117905560405161096c90610cc0565b604051809103906000f080158015610988573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156109cb5750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610ad15760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610a59917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610fbe565b60408051601f1981840301815290829052610a7391610fda565b6000604051808303816000865af19150503d8060008114610ab0576040519150601f19603f3d011682016040523d82523d6000602084013e610ab5565b606091505b5091505080806020019051810190610acd9190610fe6565b9150505b919050565b600061070584848460006106ba565b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be05760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b7f9291602001610fbe565b60408051601f1981840301815290829052610b9991610fda565b6000604051808303816000865af19150503d8060008114610bd6576040519150601f19603f3d011682016040523d82523d6000602084013e610bdb565b606091505b505050505b6000805461ff001916610100179055565b808214610cbc577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610c629060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206115db83398151915281604051610c879190610ef6565b60405180910390a16000805160206115db83398151915282604051610cac9190610f22565b60405180910390a1610cbc610ae5565b5050565b6105d78061100483390190565b600080600060608486031215610ce257600080fd5b505081359360208301359350604090920135919050565b8015158114610d0757600080fd5b50565b60008060008060808587031215610d2057600080fd5b8435935060208501359250604085013591506060850135610d4081610cf9565b939692955090935050565b600080600060608486031215610d6057600080fd5b8335925060208401356001600160a01b0381168114610d7e57600080fd5b929592945050506040919091013590565b634e487b7160e01b600052601160045260246000fd5b81810381811115610db857610db8610d8f565b92915050565b600181815b80851115610df9578160001904821115610ddf57610ddf610d8f565b80851615610dec57918102915b93841c9390800290610dc3565b509250929050565b600082610e1057506001610db8565b81610e1d57506000610db8565b8160018114610e335760028114610e3d57610e59565b6001915050610db8565b60ff841115610e4e57610e4e610d8f565b50506001821b610db8565b5060208310610133831016604e8410600b8410161715610e7c575081810a610db8565b610e868383610dbe565b8060001904821115610e9a57610e9a610d8f565b029392505050565b6000610eae8383610e01565b9392505050565b634e487b7160e01b600052601260045260246000fd5b600082610eda57610eda610eb5565b500490565b8082028115828204841417610db857610db8610d8f565b6040808252600a90820152690808115e1c1958dd195960b21b6060820152602081019190915260800190565b6040808252600a9082015269080808081058dd1d585b60b21b6060820152602081019190915260800190565b600082610f5d57610f5d610eb5565b500690565b80820180821115610db857610db8610d8f565b600060208284031215610f8757600080fd5b5051919050565b6000815160005b81811015610faf5760208185018101518683015201610f95565b50600093019283525090919050565b6001600160e01b03198316815260006107056004830184610f8e565b6000610eae8284610f8e565b600060208284031215610ff857600080fd5b8151610eae81610cf956fe608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c63430008110033b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220d7afc70b0ada6633f99b8ae71df9d93f63c9400877f062ac298f36f7182ae1f064736f6c63430008110033", + "sourceMap": "449:5881:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1745:36;;1780:1;1745:36;;;;;186:4:32;174:17;;;156:36;;144:2;129:18;1745:36:30;;;;;;;;4740:583;;;;;;:::i;:::-;;:::i;:::-;;5374:479;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;6028:291;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:32;;;1232:2;1217:18;6028:291:30;1098:177:32;2262:45:30;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;2092:45::-;;2135:2;2092:45;;2005:36;;2040:1;2005:36;;3312:184;;;:::i;1819:584:0:-;;;:::i;:::-;;;1872:14:32;;1865:22;1847:41;;1835:2;1820:18;1819:584:0;1707:187:32;5861:159:30;;;;;;:::i;:::-;;:::i;1916:36::-;;1951:1;1916:36;;1655;;1690:1;1655:36;;3620:551;;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:30;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:30;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551;1572:26:0;;;;;;;;;4740:583:30;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:30;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;4180:21:32;;;4237:2;4217:18;;;4210:30;4276:34;4271:2;4256:18;;4249:62;-1:-1:-1;;;4342:3:32;4327:19;;4320:51;4438:4;4423:20;;4416:36;;;5095:80:30;;-1:-1:-1;;;;;;;;;;;5095:80:30;;;;4403:3:32;5095:80:30;;;-1:-1:-1;;;;;;;;;;;5224:4:30;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:30;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:30;;;;;5585:261;;5617:88;;;5501:21:32;;;5558:2;5538:18;;;5531:30;5597:34;5592:2;5577:18;;5570:62;5669:26;5663:3;5648:19;;5641:55;5763:4;5748:20;;5741:36;;;5617:88:30;;-1:-1:-1;;;;;;;;;;;5617:88:30;;;;5728:3:32;5617:88:30;;;-1:-1:-1;;;;;;;;;;;5754:4:30;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:30;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;6028:291::-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:30;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:30;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:30;;-1:-1:-1;;;;;6199:32:32;;;4404:31:30;;;6181:51:32;;;;4314:19:30;;;4360;;4314;;4404:22;;6154:18:32;;4404:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;;-1:-1:-1;;;;;6624:32:32;;;4502:25:30;;;6606:51:32;6673:18;;;6666:34;;;4390:45:30;;-1:-1:-1;4448:4:30;;;;;;:10;;4473:4;;6579:18:32;;4502:25:30;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;;;;;-1:-1:-1;;;;;;4448:139:30;;;-1:-1:-1;;;;;6931:32:32;;;4448:139:30;;;6913:51:32;6980:18;;;6973:34;;;;7023:18;;;7016:34;6886:18;;4448:139:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:30;;-1:-1:-1;;;4609:31:30;;-1:-1:-1;;;;;6199:32:32;;;4609:31:30;;;6181:51:32;4600:52:30;;-1:-1:-1;4609:22:30;;;-1:-1:-1;4609:22:30;;6154:18:32;;4609:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;:::-;4600:8;:52::i;3312:184::-;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:30;:17;;-1:-1:-1;;;;;;3354:17:30;-1:-1:-1;;;;;3354:17:30;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:30;:17;;-1:-1:-1;;;;;;3395:17:30;-1:-1:-1;;;;;3395:17:30;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:30;:17;;-1:-1:-1;;;;;;3462:17:30;-1:-1:-1;;;;;3462:17:30;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;6606:51:32;;;-1:-1:-1;;;6673:18:32;;;6666:34;2196:43:0;;;;;;;;;6579:18:32;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:30:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;2410:424:0:-;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;6913:51:32;;;-1:-1:-1;;;6980:18:32;;;6973:34;;;;2705:4:0;7023:18:32;;;7016:34;2482:11:0;;1671:64;2579:43;;6886:18:32;;2645:67:0;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;5202:262::-;5264:1;5259;:6;5255:203;;5286:41;;;;;8596:2:32;8578:21;;;8635:2;8615:18;;;8608:30;8674:34;8669:2;8654:18;;8647:62;-1:-1:-1;;;8740:2:32;8725:18;;8718:32;8782:3;8767:19;;8394:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;:::-;;;;;;;;5441:6;:4;:6::i;:::-;5202:262;;:::o;-1:-1:-1:-;;;;;;;;:::o;203:316:32:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:32;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:32;494:18;;;481:32;;203:316;-1:-1:-1;203:316:32:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;576:60;524:118;:::o;647:446::-;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:32;;-1:-1:-1;;647:446:32:o;1280:422::-;1357:6;1365;1373;1426:2;1414:9;1405:7;1401:23;1397:32;1394:52;;;1442:1;1439;1432:12;1394:52;1465:23;;;-1:-1:-1;1538:2:32;1523:18;;1510:32;-1:-1:-1;;;;;1571:31:32;;1561:42;;1551:70;;1617:1;1614;1607:12;1551:70;1280:422;;1640:5;;-1:-1:-1;;;1692:2:32;1677:18;;;;1664:32;;1280:422::o;1899:127::-;1960:10;1955:3;1951:20;1948:1;1941:31;1991:4;1988:1;1981:15;2015:4;2012:1;2005:15;2031:128;2098:9;;;2119:11;;;2116:37;;;2133:18;;:::i;:::-;2031:128;;;;:::o;2164:422::-;2253:1;2296:5;2253:1;2310:270;2331:7;2321:8;2318:21;2310:270;;;2390:4;2386:1;2382:6;2378:17;2372:4;2369:27;2366:53;;;2399:18;;:::i;:::-;2449:7;2439:8;2435:22;2432:55;;;2469:16;;;;2432:55;2548:22;;;;2508:15;;;;2310:270;;;2314:3;2164:422;;;;;:::o;2591:806::-;2640:5;2670:8;2660:80;;-1:-1:-1;2711:1:32;2725:5;;2660:80;2759:4;2749:76;;-1:-1:-1;2796:1:32;2810:5;;2749:76;2841:4;2859:1;2854:59;;;;2927:1;2922:130;;;;2834:218;;2854:59;2884:1;2875:10;;2898:5;;;2922:130;2959:3;2949:8;2946:17;2943:43;;;2966:18;;:::i;:::-;-1:-1:-1;;3022:1:32;3008:16;;3037:5;;2834:218;;3136:2;3126:8;3123:16;3117:3;3111:4;3108:13;3104:36;3098:2;3088:8;3085:16;3080:2;3074:4;3071:12;3067:35;3064:77;3061:159;;;-1:-1:-1;3173:19:32;;;3205:5;;3061:159;3252:34;3277:8;3271:4;3252:34;:::i;:::-;3322:6;3318:1;3314:6;3310:19;3301:7;3298:32;3295:58;;;3333:18;;:::i;:::-;3371:20;;2591:806;-1:-1:-1;;;2591:806:32:o;3402:131::-;3462:5;3491:36;3518:8;3512:4;3491:36;:::i;:::-;3482:45;3402:131;-1:-1:-1;;;3402:131:32:o;3538:127::-;3599:10;3594:3;3590:20;3587:1;3580:31;3630:4;3627:1;3620:15;3654:4;3651:1;3644:15;3670:120;3710:1;3736;3726:35;;3741:18;;:::i;:::-;-1:-1:-1;3775:9:32;;3670:120::o;3795:168::-;3868:9;;;3899;;3916:15;;;3910:22;;3896:37;3886:71;;3937:18;;:::i;4463:408::-;4693:2;4675:21;;;4732:2;4712:18;;;4705:30;-1:-1:-1;;;4766:2:32;4751:18;;4744:40;4851:4;4836:20;;4829:36;;;;4816:3;4801:19;;4463:408::o;4876:::-;5106:2;5088:21;;;5145:2;5125:18;;;5118:30;-1:-1:-1;;;5179:2:32;5164:18;;5157:40;5264:4;5249:20;;5242:36;;;;5229:3;5214:19;;4876:408::o;5788:112::-;5820:1;5846;5836:35;;5851:18;;:::i;:::-;-1:-1:-1;5885:9:32;;5788:112::o;5905:125::-;5970:9;;;5991:10;;;5988:36;;;6004:18;;:::i;6243:184::-;6313:6;6366:2;6354:9;6345:7;6341:23;6337:32;6334:52;;;6382:1;6379;6372:12;6334:52;-1:-1:-1;6405:16:32;;6243:184;-1:-1:-1;6243:184:32:o;7340:322::-;7381:3;7419:5;7413:12;7443:1;7453:128;7467:6;7464:1;7461:13;7453:128;;;7564:4;7549:13;;;7545:24;;7539:31;7526:11;;;7519:52;7482:12;7453:128;;;-1:-1:-1;7636:1:32;7600:16;;7625:13;;;-1:-1:-1;7600:16:32;;7340:322;-1:-1:-1;7340:322:32:o;7667:278::-;-1:-1:-1;;;;;;7852:33:32;;7840:46;;7822:3;7902:37;7936:1;7927:11;;7919:6;7902:37;:::i;7950:189::-;8079:3;8104:29;8129:3;8121:6;8104:29;:::i;8144:245::-;8211:6;8264:2;8252:9;8243:7;8239:23;8235:32;8232:52;;;8280:1;8277;8270:12;8232:52;8312:9;8306:16;8331:28;8353:5;8331:28;:::i", "linkReferences": {} }, "methodIdentifiers": { @@ -655,21 +655,818 @@ "withinDiff(uint256,uint256,uint256)": "344b1478", "withinPrecision(uint256,uint256,uint256)": "30f7c5c3" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"INTEREST_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LATEFEE_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PREMIUM_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"nonZero\",\"type\":\"bool\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createActors\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"symbol\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUpTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expectedDiff\",\"type\":\"uint256\"}],\"name\":\"withinDiff\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accuracy\",\"type\":\"uint256\"}],\"name\":\"withinPrecision\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Utility.sol\":\"Utility\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843\",\"dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5\"]},\"test/Utility.sol\":{\"keccak256\":\"0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda\",\"dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "bool", + "name": "", + "type": "bool", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "val", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_named_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes", + "name": "val", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "val", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "val", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_named_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "logs", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "CL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "DL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "FL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "INTEREST_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "LATEFEE_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "LL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "PREMIUM_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "SL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "nonZero", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "createActors" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "symbol", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amt", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "mint" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "setUpTokens" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "expectedDiff", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withinDiff" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accuracy", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withinPrecision" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "test/Utility.sol": "Utility" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + }, + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdAssertions.sol": { + "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", + "urls": [ + "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", + "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdError.sol": { + "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", + "urls": [ + "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", + "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Test.sol": { + "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", + "urls": [ + "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", + "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/users/Actor.sol": { + "keccak256": "0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3", + "urls": [ + "bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843", + "dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5" + ], + "license": "AGPL-3.0-or-later" + }, + "test/Utility.sol": { + "keccak256": "0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135", + "urls": [ + "bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda", + "dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s" + ], + "license": "AGPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "test/Utility.sol", - "id": 31030, + "id": 32081, "exportedSymbols": { "Actor": [ - 30364 + 30379 ], "DSTest": [ 1786 ], "Hevm": [ - 30498 + 31549 ], "IERC20": [ - 29143 + 29158 ], "StdAssertions": [ 2708 @@ -693,10 +1490,10 @@ 1843 ], "User": [ - 30506 + 31557 ], "Utility": [ - 31029 + 32080 ], "Vm": [ 9352 @@ -724,9 +1521,10 @@ "src": "47:6283:30", "nodes": [ { - "id": 30481, + "id": 31532, "nodeType": "PragmaDirective", "src": "47:23:30", + "nodes": [], "literals": [ "solidity", "^", @@ -735,38 +1533,41 @@ ] }, { - "id": 30482, + "id": 31533, "nodeType": "ImportDirective", "src": "74:32:30", + "nodes": [], "absolutePath": "src/users/Actor.sol", "file": "../src/users/Actor.sol", "nameLocation": "-1:-1:-1", - "scope": 31030, - "sourceUnit": 30365, + "scope": 32081, + "sourceUnit": 30380, "symbolAliases": [], "unitAlias": "" }, { - "id": 30483, + "id": 31534, "nodeType": "ImportDirective", "src": "110:39:30", + "nodes": [], "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 31030, + "scope": 32081, "sourceUnit": 8196, "symbolAliases": [], "unitAlias": "" }, { - "id": 30498, + "id": 31549, "nodeType": "ContractDefinition", "src": "153:112:30", "nodes": [ { - "id": 30488, + "id": 31539, "nodeType": "FunctionDefinition", "src": "175:32:30", + "nodes": [], "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", @@ -774,17 +1575,17 @@ "name": "warp", "nameLocation": "184:4:30", "parameters": { - "id": 30486, + "id": 31537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30485, + "id": 31536, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30488, + "scope": 31539, "src": "189:7:30", "stateVariable": false, "storageLocation": "default", @@ -793,7 +1594,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30484, + "id": 31535, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "189:7:30", @@ -808,20 +1609,21 @@ "src": "188:9:30" }, "returnParameters": { - "id": 30487, + "id": 31538, "nodeType": "ParameterList", "parameters": [], "src": "206:0:30" }, - "scope": 30498, + "scope": 31549, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 30497, + "id": 31548, "nodeType": "FunctionDefinition", "src": "213:49:30", + "nodes": [], "functionSelector": "70ca10bb", "implemented": false, "kind": "function", @@ -829,17 +1631,17 @@ "name": "store", "nameLocation": "222:5:30", "parameters": { - "id": 30495, + "id": 31546, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30490, + "id": 31541, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "228:7:30", "stateVariable": false, "storageLocation": "default", @@ -848,7 +1650,7 @@ "typeString": "address" }, "typeName": { - "id": 30489, + "id": 31540, "name": "address", "nodeType": "ElementaryTypeName", "src": "228:7:30", @@ -862,12 +1664,12 @@ }, { "constant": false, - "id": 30492, + "id": 31543, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "236:7:30", "stateVariable": false, "storageLocation": "default", @@ -876,7 +1678,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30491, + "id": 31542, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "236:7:30", @@ -889,12 +1691,12 @@ }, { "constant": false, - "id": 30494, + "id": 31545, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30497, + "scope": 31548, "src": "244:7:30", "stateVariable": false, "storageLocation": "default", @@ -903,7 +1705,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30493, + "id": 31544, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "244:7:30", @@ -918,12 +1720,12 @@ "src": "227:25:30" }, "returnParameters": { - "id": 30496, + "id": 31547, "nodeType": "ParameterList", "parameters": [], "src": "261:0:30" }, - "scope": 30498, + "scope": 31549, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -936,22 +1738,23 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 30498 + 31549 ], "name": "Hevm", "nameLocation": "163:4:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] }, { - "id": 30506, + "id": 31557, "nodeType": "ContractDefinition", "src": "269:69:30", "nodes": [ { - "id": 30505, + "id": 31556, "nodeType": "FunctionDefinition", "src": "291:44:30", + "nodes": [], "functionSelector": "095ea7b3", "implemented": false, "kind": "function", @@ -959,17 +1762,17 @@ "name": "approve", "nameLocation": "300:7:30", "parameters": { - "id": 30503, + "id": 31554, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30500, + "id": 31551, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30505, + "scope": 31556, "src": "308:7:30", "stateVariable": false, "storageLocation": "default", @@ -978,7 +1781,7 @@ "typeString": "address" }, "typeName": { - "id": 30499, + "id": 31550, "name": "address", "nodeType": "ElementaryTypeName", "src": "308:7:30", @@ -992,12 +1795,12 @@ }, { "constant": false, - "id": 30502, + "id": 31553, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30505, + "scope": 31556, "src": "317:7:30", "stateVariable": false, "storageLocation": "default", @@ -1006,7 +1809,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30501, + "id": 31552, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "317:7:30", @@ -1021,12 +1824,12 @@ "src": "307:18:30" }, "returnParameters": { - "id": 30504, + "id": 31555, "nodeType": "ParameterList", "parameters": [], "src": "334:0:30" }, - "scope": 30506, + "scope": 31557, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" @@ -1039,163 +1842,180 @@ "contractKind": "interface", "fullyImplemented": false, "linearizedBaseContracts": [ - 30506 + 31557 ], "name": "User", "nameLocation": "279:4:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] }, { - "id": 31029, + "id": 32080, "nodeType": "ContractDefinition", "src": "449:5881:30", "nodes": [ { - "id": 30511, + "id": 31562, "nodeType": "VariableDeclaration", "src": "485:9:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "hevm", "nameLocation": "490:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" }, "typeName": { - "id": 30510, + "id": 31561, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30509, + "id": 31560, "name": "Hevm", + "nameLocations": [ + "485:4:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "485:4:30" }, - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "485:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, "visibility": "internal" }, { - "id": 30514, + "id": 31565, "nodeType": "VariableDeclaration", "src": "596:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "joe", "nameLocation": "603:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30513, + "id": 31564, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30512, + "id": 31563, "name": "Actor", + "nameLocations": [ + "596:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "596:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "596:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30517, + "id": 31568, "nodeType": "VariableDeclaration", "src": "625:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "dev", "nameLocation": "632:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30516, + "id": 31567, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30515, + "id": 31566, "name": "Actor", + "nameLocations": [ + "625:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "625:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "625:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30520, + "id": 31571, "nodeType": "VariableDeclaration", "src": "651:10:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "jon", "nameLocation": "658:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 30519, + "id": 31570, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30518, + "id": 31569, "name": "Actor", + "nameLocations": [ + "651:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "651:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "651:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" }, { - "id": 30523, + "id": 31574, "nodeType": "VariableDeclaration", "src": "815:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "USDC", "nameLocation": "832:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1203,7 +2023,7 @@ "typeString": "address" }, "typeName": { - "id": 30521, + "id": 31572, "name": "address", "nodeType": "ElementaryTypeName", "src": "815:7:30", @@ -1215,7 +2035,7 @@ }, "value": { "hexValue": "307841306238363939316336323138623336633164313944346132653945623063453336303665423438", - "id": 30522, + "id": 31573, "isConstant": false, "isLValue": false, "isPure": true, @@ -1232,14 +2052,15 @@ "visibility": "internal" }, { - "id": 30526, + "id": 31577, "nodeType": "VariableDeclaration", "src": "889:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "DAI", "nameLocation": "906:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1247,7 +2068,7 @@ "typeString": "address" }, "typeName": { - "id": 30524, + "id": 31575, "name": "address", "nodeType": "ElementaryTypeName", "src": "889:7:30", @@ -1259,7 +2080,7 @@ }, "value": { "hexValue": "307836423137353437344538393039344334344461393862393534456564654143343935323731643046", - "id": 30525, + "id": 31576, "isConstant": false, "isLValue": false, "isPure": true, @@ -1276,14 +2097,15 @@ "visibility": "internal" }, { - "id": 30529, + "id": 31580, "nodeType": "VariableDeclaration", "src": "963:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WETH", "nameLocation": "980:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1291,7 +2113,7 @@ "typeString": "address" }, "typeName": { - "id": 30527, + "id": 31578, "name": "address", "nodeType": "ElementaryTypeName", "src": "963:7:30", @@ -1303,7 +2125,7 @@ }, "value": { "hexValue": "307843303261614133396232323346453844304130653543344632376541443930383343373536436332", - "id": 30528, + "id": 31579, "isConstant": false, "isLValue": false, "isPure": true, @@ -1320,14 +2142,15 @@ "visibility": "internal" }, { - "id": 30532, + "id": 31583, "nodeType": "VariableDeclaration", "src": "1037:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WBTC", "nameLocation": "1054:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1335,7 +2158,7 @@ "typeString": "address" }, "typeName": { - "id": 30530, + "id": 31581, "name": "address", "nodeType": "ElementaryTypeName", "src": "1037:7:30", @@ -1347,7 +2170,7 @@ }, "value": { "hexValue": "307832323630464143354535353432613737334161343466424366654466374331393362633243353939", - "id": 30531, + "id": 31582, "isConstant": false, "isLValue": false, "isPure": true, @@ -1364,14 +2187,15 @@ "visibility": "internal" }, { - "id": 30535, + "id": 31586, "nodeType": "VariableDeclaration", "src": "1111:67:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "FRAX", "nameLocation": "1128:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1379,7 +2203,7 @@ "typeString": "address" }, "typeName": { - "id": 30533, + "id": 31584, "name": "address", "nodeType": "ElementaryTypeName", "src": "1111:7:30", @@ -1391,7 +2215,7 @@ }, "value": { "hexValue": "307838353364393535614345663832324462303538656238353035393131454437374631373562393965", - "id": 30534, + "id": 31585, "isConstant": false, "isLValue": false, "isPure": true, @@ -1408,45 +2232,49 @@ "visibility": "internal" }, { - "id": 30541, + "id": 31592, "nodeType": "VariableDeclaration", "src": "1187:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "usdc", "nameLocation": "1203:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30537, + "id": 31588, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30536, + "id": 31587, "name": "IERC20", + "nameLocations": [ + "1187:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1187:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1187:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30539, + "id": 31590, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30523, + "referencedDeclaration": 31574, "src": "1217:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1461,74 +2289,79 @@ "typeString": "address" } ], - "id": 30538, + "id": 31589, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1210:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30540, + "id": 31591, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1210:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30547, + "id": 31598, "nodeType": "VariableDeclaration", "src": "1229:34:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "dai", "nameLocation": "1245:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30543, + "id": 31594, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30542, + "id": 31593, "name": "IERC20", + "nameLocations": [ + "1229:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1229:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1229:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30545, + "id": 31596, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30526, + "referencedDeclaration": 31577, "src": "1259:3:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1543,74 +2376,79 @@ "typeString": "address" } ], - "id": 30544, + "id": 31595, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1252:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30546, + "id": 31597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1252:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30553, + "id": 31604, "nodeType": "VariableDeclaration", "src": "1270:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "weth", "nameLocation": "1286:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30549, + "id": 31600, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30548, + "id": 31599, "name": "IERC20", + "nameLocations": [ + "1270:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1270:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1270:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30551, + "id": 31602, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30529, + "referencedDeclaration": 31580, "src": "1300:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1625,74 +2463,79 @@ "typeString": "address" } ], - "id": 30550, + "id": 31601, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1293:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30552, + "id": 31603, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1293:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30559, + "id": 31610, "nodeType": "VariableDeclaration", "src": "1312:35:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "wbtc", "nameLocation": "1328:4:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" }, "typeName": { - "id": 30555, + "id": 31606, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30554, + "id": 31605, "name": "IERC20", + "nameLocations": [ + "1312:6:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1312:6:30" }, - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1312:6:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "value": { "arguments": [ { - "id": 30557, + "id": 31608, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30532, + "referencedDeclaration": 31583, "src": "1342:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1707,43 +2550,45 @@ "typeString": "address" } ], - "id": 30556, + "id": 31607, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "1335:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30558, + "id": 31609, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1335:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, "visibility": "internal" }, { - "id": 30562, + "id": 31613, "nodeType": "VariableDeclaration", "src": "1356:82:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "UNISWAP_V2_ROUTER_02", "nameLocation": "1373:20:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1751,7 +2596,7 @@ "typeString": "address" }, "typeName": { - "id": 30560, + "id": 31611, "name": "address", "nodeType": "ElementaryTypeName", "src": "1356:7:30", @@ -1763,7 +2608,7 @@ }, "value": { "hexValue": "307837613235306435363330423463463533393733396446324335644163623463363539463234383844", - "id": 30561, + "id": 31612, "isConstant": false, "isLValue": false, "isPure": true, @@ -1780,14 +2625,15 @@ "visibility": "internal" }, { - "id": 30565, + "id": 31616, "nodeType": "VariableDeclaration", "src": "1466:82:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "UNISWAP_V2_FACTORY", "nameLocation": "1483:18:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1795,7 +2641,7 @@ "typeString": "address" }, "typeName": { - "id": 30563, + "id": 31614, "name": "address", "nodeType": "ElementaryTypeName", "src": "1466:7:30", @@ -1807,7 +2653,7 @@ }, "value": { "hexValue": "307835433639624565373031656638313461324236613345444434423136353243423963633561413666", - "id": 30564, + "id": 31615, "isConstant": false, "isLValue": false, "isPure": true, @@ -1824,15 +2670,16 @@ "visibility": "internal" }, { - "id": 30568, + "id": 31619, "nodeType": "VariableDeclaration", "src": "1655:36:30", + "nodes": [], "constant": true, "functionSelector": "e70dd6cf", "mutability": "constant", "name": "CL_FACTORY", "nameLocation": "1677:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1840,7 +2687,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30566, + "id": 31617, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1655:5:30", @@ -1851,7 +2698,7 @@ }, "value": { "hexValue": "30", - "id": 30567, + "id": 31618, "isConstant": false, "isLValue": false, "isPure": true, @@ -1868,15 +2715,16 @@ "visibility": "public" }, { - "id": 30571, + "id": 31622, "nodeType": "VariableDeclaration", "src": "1745:36:30", + "nodes": [], "constant": true, "functionSelector": "174a5be4", "mutability": "constant", "name": "DL_FACTORY", "nameLocation": "1767:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1884,7 +2732,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30569, + "id": 31620, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1745:5:30", @@ -1895,7 +2743,7 @@ }, "value": { "hexValue": "31", - "id": 30570, + "id": 31621, "isConstant": false, "isLValue": false, "isPure": true, @@ -1912,15 +2760,16 @@ "visibility": "public" }, { - "id": 30574, + "id": 31625, "nodeType": "VariableDeclaration", "src": "1829:36:30", + "nodes": [], "constant": true, "functionSelector": "38505fb0", "mutability": "constant", "name": "FL_FACTORY", "nameLocation": "1851:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1928,7 +2777,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30572, + "id": 31623, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1829:5:30", @@ -1939,7 +2788,7 @@ }, "value": { "hexValue": "32", - "id": 30573, + "id": 31624, "isConstant": false, "isLValue": false, "isPure": true, @@ -1956,15 +2805,16 @@ "visibility": "public" }, { - "id": 30577, + "id": 31628, "nodeType": "VariableDeclaration", "src": "1916:36:30", + "nodes": [], "constant": true, "functionSelector": "c5ba73ed", "mutability": "constant", "name": "LL_FACTORY", "nameLocation": "1938:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1972,7 +2822,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30575, + "id": 31626, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "1916:5:30", @@ -1983,7 +2833,7 @@ }, "value": { "hexValue": "33", - "id": 30576, + "id": 31627, "isConstant": false, "isLValue": false, "isPure": true, @@ -2000,15 +2850,16 @@ "visibility": "public" }, { - "id": 30580, + "id": 31631, "nodeType": "VariableDeclaration", "src": "2005:36:30", + "nodes": [], "constant": true, "functionSelector": "9f71f14a", "mutability": "constant", "name": "SL_FACTORY", "nameLocation": "2027:10:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2016,7 +2867,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30578, + "id": 31629, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2005:5:30", @@ -2027,7 +2878,7 @@ }, "value": { "hexValue": "34", - "id": 30579, + "id": 31630, "isConstant": false, "isLValue": false, "isPure": true, @@ -2044,15 +2895,16 @@ "visibility": "public" }, { - "id": 30583, + "id": 31634, "nodeType": "VariableDeclaration", "src": "2092:45:30", + "nodes": [], "constant": true, "functionSelector": "8c38922f", "mutability": "constant", "name": "INTEREST_CALC_TYPE", "nameLocation": "2114:18:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2060,7 +2912,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30581, + "id": 31632, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2092:5:30", @@ -2071,7 +2923,7 @@ }, "value": { "hexValue": "3130", - "id": 30582, + "id": 31633, "isConstant": false, "isLValue": false, "isPure": true, @@ -2088,15 +2940,16 @@ "visibility": "public" }, { - "id": 30586, + "id": 31637, "nodeType": "VariableDeclaration", "src": "2178:45:30", + "nodes": [], "constant": true, "functionSelector": "3493f4ca", "mutability": "constant", "name": "LATEFEE_CALC_TYPE", "nameLocation": "2200:17:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2104,7 +2957,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30584, + "id": 31635, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2178:5:30", @@ -2115,7 +2968,7 @@ }, "value": { "hexValue": "3131", - "id": 30585, + "id": 31636, "isConstant": false, "isLValue": false, "isPure": true, @@ -2132,15 +2985,16 @@ "visibility": "public" }, { - "id": 30589, + "id": 31640, "nodeType": "VariableDeclaration", "src": "2262:45:30", + "nodes": [], "constant": true, "functionSelector": "7a8fe3c0", "mutability": "constant", "name": "PREMIUM_CALC_TYPE", "nameLocation": "2284:17:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2148,7 +3002,7 @@ "typeString": "uint8" }, "typeName": { - "id": 30587, + "id": 31638, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2262:5:30", @@ -2159,7 +3013,7 @@ }, "value": { "hexValue": "3132", - "id": 30588, + "id": 31639, "isConstant": false, "isLValue": false, "isPure": true, @@ -2176,14 +3030,15 @@ "visibility": "public" }, { - "id": 30594, + "id": 31645, "nodeType": "VariableDeclaration", "src": "2348:30:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "USD", "nameLocation": "2365:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2191,7 +3046,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30590, + "id": 31641, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2348:7:30", @@ -2205,14 +3060,14 @@ "typeIdentifier": "t_rational_1000000_by_1", "typeString": "int_const 1000000" }, - "id": 30593, + "id": 31644, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30591, + "id": 31642, "isConstant": false, "isLValue": false, "isPure": true, @@ -2230,7 +3085,7 @@ "operator": "**", "rightExpression": { "hexValue": "36", - "id": 30592, + "id": 31643, "isConstant": false, "isLValue": false, "isPure": true, @@ -2253,14 +3108,15 @@ "visibility": "internal" }, { - "id": 30599, + "id": 31650, "nodeType": "VariableDeclaration", "src": "2413:30:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "BTC", "nameLocation": "2430:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2268,7 +3124,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30595, + "id": 31646, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2413:7:30", @@ -2282,14 +3138,14 @@ "typeIdentifier": "t_rational_100000000_by_1", "typeString": "int_const 100000000" }, - "id": 30598, + "id": 31649, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30596, + "id": 31647, "isConstant": false, "isLValue": false, "isPure": true, @@ -2307,7 +3163,7 @@ "operator": "**", "rightExpression": { "hexValue": "38", - "id": 30597, + "id": 31648, "isConstant": false, "isLValue": false, "isPure": true, @@ -2330,14 +3186,15 @@ "visibility": "internal" }, { - "id": 30604, + "id": 31655, "nodeType": "VariableDeclaration", "src": "2478:31:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "WAD", "nameLocation": "2495:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2345,7 +3202,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30600, + "id": 31651, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2478:7:30", @@ -2359,14 +3216,14 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 30603, + "id": 31654, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30601, + "id": 31652, "isConstant": false, "isLValue": false, "isPure": true, @@ -2384,7 +3241,7 @@ "operator": "**", "rightExpression": { "hexValue": "3138", - "id": 30602, + "id": 31653, "isConstant": false, "isLValue": false, "isPure": true, @@ -2407,14 +3264,15 @@ "visibility": "internal" }, { - "id": 30609, + "id": 31660, "nodeType": "VariableDeclaration", "src": "2516:31:30", + "nodes": [], "constant": true, "mutability": "constant", "name": "RAY", "nameLocation": "2533:3:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2422,7 +3280,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30605, + "id": 31656, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2516:7:30", @@ -2436,14 +3294,14 @@ "typeIdentifier": "t_rational_1000000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000000" }, - "id": 30608, + "id": 31659, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30606, + "id": 31657, "isConstant": false, "isLValue": false, "isPure": true, @@ -2461,7 +3319,7 @@ "operator": "**", "rightExpression": { "hexValue": "3237", - "id": 30607, + "id": 31658, "isConstant": false, "isLValue": false, "isPure": true, @@ -2484,19 +3342,20 @@ "visibility": "internal" }, { - "id": 30616, + "id": 31667, "nodeType": "StructDefinition", "src": "2631:167:30", + "nodes": [], "canonicalName": "Utility.Token", "members": [ { "constant": false, - "id": 30611, + "id": 31662, "mutability": "mutable", "name": "addr", "nameLocation": "2663:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2655:12:30", "stateVariable": false, "storageLocation": "default", @@ -2505,7 +3364,7 @@ "typeString": "address" }, "typeName": { - "id": 30610, + "id": 31661, "name": "address", "nodeType": "ElementaryTypeName", "src": "2655:7:30", @@ -2519,12 +3378,12 @@ }, { "constant": false, - "id": 30613, + "id": 31664, "mutability": "mutable", "name": "slot", "nameLocation": "2711:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2703:12:30", "stateVariable": false, "storageLocation": "default", @@ -2533,7 +3392,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30612, + "id": 31663, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2703:7:30", @@ -2546,12 +3405,12 @@ }, { "constant": false, - "id": 30615, + "id": 31666, "mutability": "mutable", "name": "orcl", "nameLocation": "2758:4:30", "nodeType": "VariableDeclaration", - "scope": 30616, + "scope": 31667, "src": "2750:12:30", "stateVariable": false, "storageLocation": "default", @@ -2560,7 +3419,7 @@ "typeString": "address" }, "typeName": { - "id": 30614, + "id": 31665, "name": "address", "nodeType": "ElementaryTypeName", "src": "2750:7:30", @@ -2575,28 +3434,29 @@ ], "name": "Token", "nameLocation": "2638:5:30", - "scope": 31029, + "scope": 32080, "visibility": "public" }, { - "id": 30621, + "id": 31672, "nodeType": "VariableDeclaration", "src": "2807:33:30", + "nodes": [], "constant": false, "mutability": "mutable", "name": "tokens", "nameLocation": "2834:6:30", - "scope": 31029, + "scope": 32080, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "typeName": { - "id": 30620, + "id": 31671, "keyType": { - "id": 30617, + "id": 31668, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2816:7:30", @@ -2608,23 +3468,26 @@ "nodeType": "Mapping", "src": "2807:26:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token)" }, "valueType": { - "id": 30619, + "id": 31670, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30618, + "id": 31669, "name": "Token", + "nameLocations": [ + "2827:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30616, + "referencedDeclaration": 31667, "src": "2827:5:30" }, - "referencedDeclaration": 30616, + "referencedDeclaration": 31667, "src": "2827:5:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage_ptr", + "typeIdentifier": "t_struct$_Token_$31667_storage_ptr", "typeString": "struct Utility.Token" } } @@ -2632,19 +3495,20 @@ "visibility": "internal" }, { - "id": 30626, + "id": 31677, "nodeType": "StructDefinition", "src": "2849:68:30", + "nodes": [], "canonicalName": "Utility.TestObj", "members": [ { "constant": false, - "id": 30623, + "id": 31674, "mutability": "mutable", "name": "pre", "nameLocation": "2883:3:30", "nodeType": "VariableDeclaration", - "scope": 30626, + "scope": 31677, "src": "2875:11:30", "stateVariable": false, "storageLocation": "default", @@ -2653,7 +3517,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30622, + "id": 31673, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2875:7:30", @@ -2666,12 +3530,12 @@ }, { "constant": false, - "id": 30625, + "id": 31676, "mutability": "mutable", "name": "post", "nameLocation": "2905:4:30", "nodeType": "VariableDeclaration", - "scope": 30626, + "scope": 31677, "src": "2897:12:30", "stateVariable": false, "storageLocation": "default", @@ -2680,7 +3544,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30624, + "id": 31675, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2897:7:30", @@ -2694,30 +3558,31 @@ ], "name": "TestObj", "nameLocation": "2856:7:30", - "scope": 31029, + "scope": 32080, "visibility": "public" }, { - "id": 30632, + "id": 31683, "nodeType": "EventDefinition", "src": "2925:29:30", + "nodes": [], "anonymous": false, "eventSelector": "3c5ad147104e56be34a9176a6692f7df8d2f4b29a5af06bc6b98970d329d6577", "name": "Debug", "nameLocation": "2931:5:30", "parameters": { - "id": 30631, + "id": 31682, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30628, + "id": 31679, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30632, + "scope": 31683, "src": "2937:6:30", "stateVariable": false, "storageLocation": "default", @@ -2726,7 +3591,7 @@ "typeString": "string" }, "typeName": { - "id": 30627, + "id": 31678, "name": "string", "nodeType": "ElementaryTypeName", "src": "2937:6:30", @@ -2739,13 +3604,13 @@ }, { "constant": false, - "id": 30630, + "id": 31681, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30632, + "scope": 31683, "src": "2945:7:30", "stateVariable": false, "storageLocation": "default", @@ -2754,7 +3619,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30629, + "id": 31680, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2945:7:30", @@ -2770,26 +3635,27 @@ } }, { - "id": 30638, + "id": 31689, "nodeType": "EventDefinition", "src": "2960:29:30", + "nodes": [], "anonymous": false, "eventSelector": "14186b8ac9c91f14b0f16f9e886356157442bb899be26513dfe1d4d5929a5bac", "name": "Debug", "nameLocation": "2966:5:30", "parameters": { - "id": 30637, + "id": 31688, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30634, + "id": 31685, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30638, + "scope": 31689, "src": "2972:6:30", "stateVariable": false, "storageLocation": "default", @@ -2798,7 +3664,7 @@ "typeString": "string" }, "typeName": { - "id": 30633, + "id": 31684, "name": "string", "nodeType": "ElementaryTypeName", "src": "2972:6:30", @@ -2811,13 +3677,13 @@ }, { "constant": false, - "id": 30636, + "id": 31687, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30638, + "scope": 31689, "src": "2980:7:30", "stateVariable": false, "storageLocation": "default", @@ -2826,7 +3692,7 @@ "typeString": "address" }, "typeName": { - "id": 30635, + "id": 31686, "name": "address", "nodeType": "ElementaryTypeName", "src": "2980:7:30", @@ -2843,26 +3709,27 @@ } }, { - "id": 30644, + "id": 31695, "nodeType": "EventDefinition", "src": "2995:26:30", + "nodes": [], "anonymous": false, "eventSelector": "d1401e4d321999a7547f3d989953912043b0f4ab8471cc7307695072f6ee9d83", "name": "Debug", "nameLocation": "3001:5:30", "parameters": { - "id": 30643, + "id": 31694, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30640, + "id": 31691, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30644, + "scope": 31695, "src": "3007:6:30", "stateVariable": false, "storageLocation": "default", @@ -2871,7 +3738,7 @@ "typeString": "string" }, "typeName": { - "id": 30639, + "id": 31690, "name": "string", "nodeType": "ElementaryTypeName", "src": "3007:6:30", @@ -2884,13 +3751,13 @@ }, { "constant": false, - "id": 30642, + "id": 31693, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30644, + "scope": 31695, "src": "3015:4:30", "stateVariable": false, "storageLocation": "default", @@ -2899,7 +3766,7 @@ "typeString": "bool" }, "typeName": { - "id": 30641, + "id": 31692, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3015:4:30", @@ -2915,26 +3782,27 @@ } }, { - "id": 30650, + "id": 31701, "nodeType": "EventDefinition", "src": "3027:28:30", + "nodes": [], "anonymous": false, "eventSelector": "747eaa98d4c6787fb9ebfa7ba00179a57433dbd57fd28208b7a240d949164a09", "name": "Debug", "nameLocation": "3033:5:30", "parameters": { - "id": 30649, + "id": 31700, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30646, + "id": 31697, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30650, + "scope": 31701, "src": "3039:6:30", "stateVariable": false, "storageLocation": "default", @@ -2943,7 +3811,7 @@ "typeString": "string" }, "typeName": { - "id": 30645, + "id": 31696, "name": "string", "nodeType": "ElementaryTypeName", "src": "3039:6:30", @@ -2956,13 +3824,13 @@ }, { "constant": false, - "id": 30648, + "id": 31699, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30650, + "scope": 31701, "src": "3047:6:30", "stateVariable": false, "storageLocation": "default", @@ -2971,7 +3839,7 @@ "typeString": "string" }, "typeName": { - "id": 30647, + "id": 31698, "name": "string", "nodeType": "ElementaryTypeName", "src": "3047:6:30", @@ -2987,30 +3855,32 @@ } }, { - "id": 30674, + "id": 31725, "nodeType": "FunctionDefinition", "src": "3063:103:30", + "nodes": [], "body": { - "id": 30673, + "id": 31724, "nodeType": "Block", "src": "3084:82:30", + "nodes": [], "statements": [ { "expression": { - "id": 30671, + "id": 31722, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30653, + "id": 31704, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30511, + "referencedDeclaration": 31562, "src": "3086:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, @@ -3030,7 +3900,7 @@ "arguments": [ { "hexValue": "6865766d20636865617420636f6465", - "id": 30664, + "id": 31715, "isConstant": false, "isLValue": false, "isPure": true, @@ -3052,7 +3922,7 @@ "typeString": "literal_string \"hevm cheat code\"" } ], - "id": 30663, + "id": 31714, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -3063,12 +3933,13 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 30665, + "id": 31716, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3130:28:30", @@ -3086,7 +3957,7 @@ "typeString": "bytes32" } ], - "id": 30662, + "id": 31713, "isConstant": false, "isLValue": false, "isPure": true, @@ -3098,19 +3969,20 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 30661, + "id": 31712, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3122:7:30", "typeDescriptions": {} } }, - "id": 30666, + "id": 31717, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3122:37:30", @@ -3128,7 +4000,7 @@ "typeString": "uint256" } ], - "id": 30660, + "id": 31711, "isConstant": false, "isLValue": false, "isPure": true, @@ -3140,19 +4012,20 @@ "typeString": "type(uint160)" }, "typeName": { - "id": 30659, + "id": 31710, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "3114:7:30", "typeDescriptions": {} } }, - "id": 30667, + "id": 31718, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3114:46:30", @@ -3170,7 +4043,7 @@ "typeString": "uint160" } ], - "id": 30658, + "id": 31709, "isConstant": false, "isLValue": false, "isPure": true, @@ -3182,19 +4055,20 @@ "typeString": "type(bytes20)" }, "typeName": { - "id": 30657, + "id": 31708, "name": "bytes20", "nodeType": "ElementaryTypeName", "src": "3106:7:30", "typeDescriptions": {} } }, - "id": 30668, + "id": 31719, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3106:55:30", @@ -3212,7 +4086,7 @@ "typeString": "bytes20" } ], - "id": 30656, + "id": 31707, "isConstant": false, "isLValue": false, "isPure": true, @@ -3224,19 +4098,20 @@ "typeString": "type(address)" }, "typeName": { - "id": 30655, + "id": 31706, "name": "address", "nodeType": "ElementaryTypeName", "src": "3098:7:30", "typeDescriptions": {} } }, - "id": 30669, + "id": 31720, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3098:64:30", @@ -3254,39 +4129,40 @@ "typeString": "address" } ], - "id": 30654, + "id": 31705, "name": "Hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30498, + "referencedDeclaration": 31549, "src": "3093:4:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Hevm_$30498_$", + "typeIdentifier": "t_type$_t_contract$_Hevm_$31549_$", "typeString": "type(contract Hevm)" } }, - "id": 30670, + "id": 31721, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3093:70:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, "src": "3086:77:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, - "id": 30672, + "id": 31723, "nodeType": "ExpressionStatement", "src": "3086:77:30" } @@ -3298,47 +4174,49 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 30651, + "id": 31702, "nodeType": "ParameterList", "parameters": [], "src": "3074:2:30" }, "returnParameters": { - "id": 30652, + "id": 31703, "nodeType": "ParameterList", "parameters": [], "src": "3084:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30699, + "id": 31750, "nodeType": "FunctionDefinition", "src": "3312:184:30", + "nodes": [], "body": { - "id": 30698, + "id": 31749, "nodeType": "Block", "src": "3343:153:30", + "nodes": [], "statements": [ { "expression": { - "id": 30682, + "id": 31733, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30677, + "id": 31728, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30520, + "referencedDeclaration": 31571, "src": "3354:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -3348,7 +4226,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30680, + "id": 31731, "isConstant": false, "isLValue": false, "isPure": false, @@ -3356,68 +4234,72 @@ "nodeType": "NewExpression", "src": "3360:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30679, + "id": 31730, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30678, + "id": 31729, "name": "Actor", + "nameLocations": [ + "3364:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3364:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3364:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30681, + "id": 31732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3360:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3354:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30683, + "id": 31734, "nodeType": "ExpressionStatement", "src": "3354:17:30" }, { "expression": { - "id": 30689, + "id": 31740, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30684, + "id": 31735, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30514, + "referencedDeclaration": 31565, "src": "3395:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -3427,7 +4309,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30687, + "id": 31738, "isConstant": false, "isLValue": false, "isPure": false, @@ -3435,68 +4317,72 @@ "nodeType": "NewExpression", "src": "3401:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30686, + "id": 31737, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30685, + "id": 31736, "name": "Actor", + "nameLocations": [ + "3405:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3405:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3405:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30688, + "id": 31739, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3401:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3395:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30690, + "id": 31741, "nodeType": "ExpressionStatement", "src": "3395:17:30" }, { "expression": { - "id": 30696, + "id": 31747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30691, + "id": 31742, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30517, + "referencedDeclaration": 31568, "src": "3462:3:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, @@ -3506,7 +4392,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30694, + "id": 31745, "isConstant": false, "isLValue": false, "isPure": false, @@ -3514,49 +4400,53 @@ "nodeType": "NewExpression", "src": "3468:9:30", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30364_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 30693, + "id": 31744, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30692, + "id": 31743, "name": "Actor", + "nameLocations": [ + "3472:5:30" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3472:5:30" }, - "referencedDeclaration": 30364, + "referencedDeclaration": 30379, "src": "3472:5:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 30695, + "id": 31746, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3468:11:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "src": "3462:17:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$30364", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30697, + "id": 31748, "nodeType": "ExpressionStatement", "src": "3462:17:30" } @@ -3569,34 +4459,36 @@ "name": "createActors", "nameLocation": "3321:12:30", "parameters": { - "id": 30675, + "id": 31726, "nodeType": "ParameterList", "parameters": [], "src": "3333:2:30" }, "returnParameters": { - "id": 30676, + "id": 31727, "nodeType": "ParameterList", "parameters": [], "src": "3343:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30780, + "id": 31831, "nodeType": "FunctionDefinition", "src": "3620:551:30", + "nodes": [], "body": { - "id": 30779, + "id": 31830, "nodeType": "Block", "src": "3650:521:30", + "nodes": [], "statements": [ { "expression": { - "id": 30707, + "id": 31758, "isConstant": false, "isLValue": false, "isPure": false, @@ -3604,21 +4496,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30702, + "id": 31753, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3663:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30704, + "id": 31755, "indexExpression": { "hexValue": "55534443", - "id": 30703, + "id": 31754, "isConstant": false, "isLValue": false, "isPure": true, @@ -3639,18 +4531,19 @@ "nodeType": "IndexAccess", "src": "3663:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30705, + "id": 31756, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3678:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3663:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3660,11 +4553,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30706, + "id": 31757, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30523, + "referencedDeclaration": 31574, "src": "3685:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3677,13 +4570,13 @@ "typeString": "address" } }, - "id": 30708, + "id": 31759, "nodeType": "ExpressionStatement", "src": "3663:26:30" }, { "expression": { - "id": 30714, + "id": 31765, "isConstant": false, "isLValue": false, "isPure": false, @@ -3691,21 +4584,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30709, + "id": 31760, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3700:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30711, + "id": 31762, "indexExpression": { "hexValue": "55534443", - "id": 30710, + "id": 31761, "isConstant": false, "isLValue": false, "isPure": true, @@ -3726,18 +4619,19 @@ "nodeType": "IndexAccess", "src": "3700:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30712, + "id": 31763, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3715:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3700:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3748,7 +4642,7 @@ "operator": "=", "rightHandSide": { "hexValue": "39", - "id": 30713, + "id": 31764, "isConstant": false, "isLValue": false, "isPure": true, @@ -3768,13 +4662,13 @@ "typeString": "uint256" } }, - "id": 30715, + "id": 31766, "nodeType": "ExpressionStatement", "src": "3700:23:30" }, { "expression": { - "id": 30721, + "id": 31772, "isConstant": false, "isLValue": false, "isPure": false, @@ -3782,21 +4676,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30716, + "id": 31767, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3736:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30718, + "id": 31769, "indexExpression": { "hexValue": "444149", - "id": 30717, + "id": 31768, "isConstant": false, "isLValue": false, "isPure": true, @@ -3817,18 +4711,19 @@ "nodeType": "IndexAccess", "src": "3736:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30719, + "id": 31770, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3750:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3736:18:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3838,11 +4733,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30720, + "id": 31771, "name": "DAI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30526, + "referencedDeclaration": 31577, "src": "3757:3:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3855,13 +4750,13 @@ "typeString": "address" } }, - "id": 30722, + "id": 31773, "nodeType": "ExpressionStatement", "src": "3736:24:30" }, { "expression": { - "id": 30728, + "id": 31779, "isConstant": false, "isLValue": false, "isPure": false, @@ -3869,21 +4764,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30723, + "id": 31774, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3771:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30725, + "id": 31776, "indexExpression": { "hexValue": "444149", - "id": 30724, + "id": 31775, "isConstant": false, "isLValue": false, "isPure": true, @@ -3904,18 +4799,19 @@ "nodeType": "IndexAccess", "src": "3771:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30726, + "id": 31777, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3785:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3771:18:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3926,7 +4822,7 @@ "operator": "=", "rightHandSide": { "hexValue": "32", - "id": 30727, + "id": 31778, "isConstant": false, "isLValue": false, "isPure": true, @@ -3946,13 +4842,13 @@ "typeString": "uint256" } }, - "id": 30729, + "id": 31780, "nodeType": "ExpressionStatement", "src": "3771:22:30" }, { "expression": { - "id": 30735, + "id": 31786, "isConstant": false, "isLValue": false, "isPure": false, @@ -3960,21 +4856,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30730, + "id": 31781, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3804:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30732, + "id": 31783, "indexExpression": { "hexValue": "444149", - "id": 30731, + "id": 31782, "isConstant": false, "isLValue": false, "isPure": true, @@ -3995,18 +4891,19 @@ "nodeType": "IndexAccess", "src": "3804:13:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30733, + "id": 31784, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3818:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "3804:18:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4017,7 +4914,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307841656430633338343032613564313964663645346330334634453244636544366532396331656539", - "id": 30734, + "id": 31785, "isConstant": false, "isLValue": false, "isPure": true, @@ -4037,13 +4934,13 @@ "typeString": "address" } }, - "id": 30736, + "id": 31787, "nodeType": "ExpressionStatement", "src": "3804:63:30" }, { "expression": { - "id": 30742, + "id": 31793, "isConstant": false, "isLValue": false, "isPure": false, @@ -4051,21 +4948,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30737, + "id": 31788, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3880:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30739, + "id": 31790, "indexExpression": { "hexValue": "57455448", - "id": 30738, + "id": 31789, "isConstant": false, "isLValue": false, "isPure": true, @@ -4086,18 +4983,19 @@ "nodeType": "IndexAccess", "src": "3880:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30740, + "id": 31791, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3895:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "3880:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4107,11 +5005,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30741, + "id": 31792, "name": "WETH", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30529, + "referencedDeclaration": 31580, "src": "3902:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4124,13 +5022,13 @@ "typeString": "address" } }, - "id": 30743, + "id": 31794, "nodeType": "ExpressionStatement", "src": "3880:26:30" }, { "expression": { - "id": 30749, + "id": 31800, "isConstant": false, "isLValue": false, "isPure": false, @@ -4138,21 +5036,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30744, + "id": 31795, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3917:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30746, + "id": 31797, "indexExpression": { "hexValue": "57455448", - "id": 30745, + "id": 31796, "isConstant": false, "isLValue": false, "isPure": true, @@ -4173,18 +5071,19 @@ "nodeType": "IndexAccess", "src": "3917:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30747, + "id": 31798, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3932:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "3917:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4195,7 +5094,7 @@ "operator": "=", "rightHandSide": { "hexValue": "33", - "id": 30748, + "id": 31799, "isConstant": false, "isLValue": false, "isPure": true, @@ -4215,13 +5114,13 @@ "typeString": "uint256" } }, - "id": 30750, + "id": 31801, "nodeType": "ExpressionStatement", "src": "3917:23:30" }, { "expression": { - "id": 30756, + "id": 31807, "isConstant": false, "isLValue": false, "isPure": false, @@ -4229,21 +5128,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30751, + "id": 31802, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "3951:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30753, + "id": 31804, "indexExpression": { "hexValue": "57455448", - "id": 30752, + "id": 31803, "isConstant": false, "isLValue": false, "isPure": true, @@ -4264,18 +5163,19 @@ "nodeType": "IndexAccess", "src": "3951:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30754, + "id": 31805, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "3966:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "3951:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4286,7 +5186,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307835663465433344663963626434333731344645323734306635453336313631353563356238343139", - "id": 30755, + "id": 31806, "isConstant": false, "isLValue": false, "isPure": true, @@ -4306,13 +5206,13 @@ "typeString": "address" } }, - "id": 30757, + "id": 31808, "nodeType": "ExpressionStatement", "src": "3951:64:30" }, { "expression": { - "id": 30763, + "id": 31814, "isConstant": false, "isLValue": false, "isPure": false, @@ -4320,21 +5220,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30758, + "id": 31809, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4028:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30760, + "id": 31811, "indexExpression": { "hexValue": "57425443", - "id": 30759, + "id": 31810, "isConstant": false, "isLValue": false, "isPure": true, @@ -4355,18 +5255,19 @@ "nodeType": "IndexAccess", "src": "4028:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30761, + "id": 31812, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4043:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "4028:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4376,11 +5277,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 30762, + "id": 31813, "name": "WBTC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30532, + "referencedDeclaration": 31583, "src": "4050:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4393,13 +5294,13 @@ "typeString": "address" } }, - "id": 30764, + "id": 31815, "nodeType": "ExpressionStatement", "src": "4028:26:30" }, { "expression": { - "id": 30770, + "id": 31821, "isConstant": false, "isLValue": false, "isPure": false, @@ -4407,21 +5308,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30765, + "id": 31816, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4065:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30767, + "id": 31818, "indexExpression": { "hexValue": "57425443", - "id": 30766, + "id": 31817, "isConstant": false, "isLValue": false, "isPure": true, @@ -4442,18 +5343,19 @@ "nodeType": "IndexAccess", "src": "4065:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30768, + "id": 31819, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4080:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "4065:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4464,7 +5366,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 30769, + "id": 31820, "isConstant": false, "isLValue": false, "isPure": true, @@ -4484,13 +5386,13 @@ "typeString": "uint256" } }, - "id": 30771, + "id": 31822, "nodeType": "ExpressionStatement", "src": "4065:23:30" }, { "expression": { - "id": 30777, + "id": 31828, "isConstant": false, "isLValue": false, "isPure": false, @@ -4498,21 +5400,21 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 30772, + "id": 31823, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4099:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30774, + "id": 31825, "indexExpression": { "hexValue": "57425443", - "id": 30773, + "id": 31824, "isConstant": false, "isLValue": false, "isPure": true, @@ -4533,18 +5435,19 @@ "nodeType": "IndexAccess", "src": "4099:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30775, + "id": 31826, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4114:4:30", "memberName": "orcl", "nodeType": "MemberAccess", - "referencedDeclaration": 30615, + "referencedDeclaration": 31666, "src": "4099:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4555,7 +5458,7 @@ "operator": "=", "rightHandSide": { "hexValue": "307846343033303038363532326135624545613439383846386341354233366462433937426545383863", - "id": 30776, + "id": 31827, "isConstant": false, "isLValue": false, "isPure": true, @@ -4575,7 +5478,7 @@ "typeString": "address" } }, - "id": 30778, + "id": 31829, "nodeType": "ExpressionStatement", "src": "4099:64:30" } @@ -4588,44 +5491,46 @@ "name": "setUpTokens", "nameLocation": "3629:11:30", "parameters": { - "id": 30700, + "id": 31751, "nodeType": "ParameterList", "parameters": [], "src": "3640:2:30" }, "returnParameters": { - "id": 30701, + "id": 31752, "nodeType": "ParameterList", "parameters": [], "src": "3650:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30844, + "id": 31895, "nodeType": "FunctionDefinition", "src": "4221:461:30", + "nodes": [], "body": { - "id": 30843, + "id": 31894, "nodeType": "Block", "src": "4288:394:30", + "nodes": [], "statements": [ { "assignments": [ - 30790 + 31841 ], "declarations": [ { "constant": false, - "id": 30790, + "id": 31841, "mutability": "mutable", "name": "addr", "nameLocation": "4307:4:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4299:12:30", "stateVariable": false, "storageLocation": "default", @@ -4634,7 +5539,7 @@ "typeString": "address" }, "typeName": { - "id": 30789, + "id": 31840, "name": "address", "nodeType": "ElementaryTypeName", "src": "4299:7:30", @@ -4647,28 +5552,28 @@ "visibility": "internal" } ], - "id": 30795, + "id": 31846, "initialValue": { "expression": { "baseExpression": { - "id": 30791, + "id": 31842, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4314:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30793, + "id": 31844, "indexExpression": { - "id": 30792, + "id": 31843, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30782, + "referencedDeclaration": 31833, "src": "4321:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4682,18 +5587,19 @@ "nodeType": "IndexAccess", "src": "4314:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30794, + "id": 31845, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4329:4:30", "memberName": "addr", "nodeType": "MemberAccess", - "referencedDeclaration": 30611, + "referencedDeclaration": 31662, "src": "4314:19:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4705,17 +5611,17 @@ }, { "assignments": [ - 30797 + 31848 ], "declarations": [ { "constant": false, - "id": 30797, + "id": 31848, "mutability": "mutable", "name": "slot", "nameLocation": "4352:4:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4344:12:30", "stateVariable": false, "storageLocation": "default", @@ -4724,7 +5630,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30796, + "id": 31847, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4344:7:30", @@ -4736,28 +5642,28 @@ "visibility": "internal" } ], - "id": 30802, + "id": 31853, "initialValue": { "expression": { "baseExpression": { - "id": 30798, + "id": 31849, "name": "tokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30621, + "referencedDeclaration": 31672, "src": "4360:6:30", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$30616_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Token_$31667_storage_$", "typeString": "mapping(bytes32 => struct Utility.Token storage ref)" } }, - "id": 30800, + "id": 31851, "indexExpression": { - "id": 30799, + "id": 31850, "name": "symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30782, + "referencedDeclaration": 31833, "src": "4367:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4771,18 +5677,19 @@ "nodeType": "IndexAccess", "src": "4360:14:30", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$30616_storage", + "typeIdentifier": "t_struct$_Token_$31667_storage", "typeString": "struct Utility.Token storage ref" } }, - "id": 30801, + "id": 31852, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "4375:4:30", "memberName": "slot", "nodeType": "MemberAccess", - "referencedDeclaration": 30613, + "referencedDeclaration": 31664, "src": "4360:19:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4794,17 +5701,17 @@ }, { "assignments": [ - 30804 + 31855 ], "declarations": [ { "constant": false, - "id": 30804, + "id": 31855, "mutability": "mutable", "name": "bal", "nameLocation": "4398:3:30", "nodeType": "VariableDeclaration", - "scope": 30843, + "scope": 31894, "src": "4390:11:30", "stateVariable": false, "storageLocation": "default", @@ -4813,7 +5720,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30803, + "id": 31854, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4390:7:30", @@ -4825,15 +5732,15 @@ "visibility": "internal" } ], - "id": 30811, + "id": 31862, "initialValue": { "arguments": [ { - "id": 30809, + "id": 31860, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4427:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4851,11 +5758,11 @@ "expression": { "arguments": [ { - "id": 30806, + "id": 31857, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4411:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4870,52 +5777,55 @@ "typeString": "address" } ], - "id": 30805, + "id": 31856, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "4404:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30807, + "id": 31858, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4404:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30808, + "id": 31859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4417:9:30", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "4404:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30810, + "id": 31861, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4404:31:30", @@ -4932,11 +5842,11 @@ "expression": { "arguments": [ { - "id": 30815, + "id": 31866, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4473:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4948,11 +5858,11 @@ { "arguments": [ { - "id": 30819, + "id": 31870, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4513:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4960,11 +5870,11 @@ } }, { - "id": 30820, + "id": 31871, "name": "slot", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30797, + "referencedDeclaration": 31848, "src": "4522:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4984,7 +5894,7 @@ } ], "expression": { - "id": 30817, + "id": 31868, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -4995,11 +5905,12 @@ "typeString": "abi" } }, - "id": 30818, + "id": 31869, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4506:6:30", "memberName": "encode", "nodeType": "MemberAccess", "src": "4502:10:30", @@ -5008,12 +5919,13 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 30821, + "id": 31872, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4502:25:30", @@ -5031,7 +5943,7 @@ "typeString": "bytes memory" } ], - "id": 30816, + "id": 31867, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -5042,12 +5954,13 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 30822, + "id": 31873, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4492:36:30", @@ -5064,17 +5977,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30827, + "id": 31878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30825, + "id": 31876, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30804, + "referencedDeclaration": 31855, "src": "4566:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5084,11 +5997,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 30826, + "id": 31877, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30786, + "referencedDeclaration": 31837, "src": "4572:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5109,7 +6022,7 @@ "typeString": "uint256" } ], - "id": 30824, + "id": 31875, "isConstant": false, "isLValue": false, "isPure": true, @@ -5121,19 +6034,20 @@ "typeString": "type(bytes32)" }, "typeName": { - "id": 30823, + "id": 31874, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4558:7:30", "typeDescriptions": {} } }, - "id": 30828, + "id": 31879, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4558:18:30", @@ -5160,37 +6074,39 @@ } ], "expression": { - "id": 30812, + "id": 31863, "name": "hevm", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30511, + "referencedDeclaration": 31562, "src": "4448:4:30", "typeDescriptions": { - "typeIdentifier": "t_contract$_Hevm_$30498", + "typeIdentifier": "t_contract$_Hevm_$31549", "typeString": "contract Hevm" } }, - "id": 30814, + "id": 31865, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4453:5:30", "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 30497, + "referencedDeclaration": 31548, "src": "4448:10:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (address,bytes32,bytes32) external" } }, - "id": 30829, + "id": 31880, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4448:139:30", @@ -5200,7 +6116,7 @@ "typeString": "tuple()" } }, - "id": 30830, + "id": 31881, "nodeType": "ExpressionStatement", "src": "4448:139:30" }, @@ -5210,11 +6126,11 @@ { "arguments": [ { - "id": 30836, + "id": 31887, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30784, + "referencedDeclaration": 31835, "src": "4632:7:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5232,11 +6148,11 @@ "expression": { "arguments": [ { - "id": 30833, + "id": 31884, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30790, + "referencedDeclaration": 31841, "src": "4616:4:30", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5251,52 +6167,55 @@ "typeString": "address" } ], - "id": 30832, + "id": 31883, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29143, + "referencedDeclaration": 29158, "src": "4609:6:30", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29143_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30834, + "id": 31885, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4609:12:30", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29143", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30835, + "id": 31886, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4622:9:30", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29082, + "referencedDeclaration": 29097, "src": "4609:22:30", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30837, + "id": 31888, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4609:31:30", @@ -5311,17 +6230,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30840, + "id": 31891, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30838, + "id": 31889, "name": "bal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30804, + "referencedDeclaration": 31855, "src": "4642:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5331,11 +6250,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 30839, + "id": 31890, "name": "amt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30786, + "referencedDeclaration": 31837, "src": "4648:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5360,7 +6279,7 @@ "typeString": "uint256" } ], - "id": 30831, + "id": 31882, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5382,12 +6301,13 @@ "typeString": "function (uint256,uint256)" } }, - "id": 30841, + "id": 31892, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4600:52:30", @@ -5397,7 +6317,7 @@ "typeString": "tuple()" } }, - "id": 30842, + "id": 31893, "nodeType": "ExpressionStatement", "src": "4600:52:30" } @@ -5410,17 +6330,17 @@ "name": "mint", "nameLocation": "4230:4:30", "parameters": { - "id": 30787, + "id": 31838, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30782, + "id": 31833, "mutability": "mutable", "name": "symbol", "nameLocation": "4243:6:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4235:14:30", "stateVariable": false, "storageLocation": "default", @@ -5429,7 +6349,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 30781, + "id": 31832, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4235:7:30", @@ -5442,12 +6362,12 @@ }, { "constant": false, - "id": 30784, + "id": 31835, "mutability": "mutable", "name": "account", "nameLocation": "4259:7:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4251:15:30", "stateVariable": false, "storageLocation": "default", @@ -5456,7 +6376,7 @@ "typeString": "address" }, "typeName": { - "id": 30783, + "id": 31834, "name": "address", "nodeType": "ElementaryTypeName", "src": "4251:7:30", @@ -5470,12 +6390,12 @@ }, { "constant": false, - "id": 30786, + "id": 31837, "mutability": "mutable", "name": "amt", "nameLocation": "4276:3:30", "nodeType": "VariableDeclaration", - "scope": 30844, + "scope": 31895, "src": "4268:11:30", "stateVariable": false, "storageLocation": "default", @@ -5484,7 +6404,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30785, + "id": 31836, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4268:7:30", @@ -5499,38 +6419,40 @@ "src": "4234:46:30" }, "returnParameters": { - "id": 30788, + "id": 31839, "nodeType": "ParameterList", "parameters": [], "src": "4288:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30920, + "id": 31971, "nodeType": "FunctionDefinition", "src": "4740:583:30", + "nodes": [], "body": { - "id": 30919, + "id": 31970, "nodeType": "Block", "src": "4818:505:30", + "nodes": [], "statements": [ { "assignments": [ - 30854 + 31905 ], "declarations": [ { "constant": false, - "id": 30854, + "id": 31905, "mutability": "mutable", "name": "diff", "nameLocation": "4837:4:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4829:12:30", "stateVariable": false, "storageLocation": "default", @@ -5539,7 +6461,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30853, + "id": 31904, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4829:7:30", @@ -5551,24 +6473,24 @@ "visibility": "internal" } ], - "id": 30865, + "id": 31916, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30857, + "id": 31908, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30855, + "id": 31906, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4845:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5578,11 +6500,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 30856, + "id": 31907, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4852:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5600,17 +6522,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30863, + "id": 31914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30861, + "id": 31912, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4873:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5620,11 +6542,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30862, + "id": 31913, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4880:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5637,7 +6559,7 @@ "typeString": "uint256" } }, - "id": 30864, + "id": 31915, "isConstant": false, "isLValue": false, "isPure": false, @@ -5649,17 +6571,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30860, + "id": 31911, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30858, + "id": 31909, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4859:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5669,11 +6591,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30859, + "id": 31910, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4866:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5700,17 +6622,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30868, + "id": 31919, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30866, + "id": 31917, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30854, + "referencedDeclaration": 31905, "src": "4899:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5721,7 +6643,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 30867, + "id": 31918, "isConstant": false, "isLValue": false, "isPure": true, @@ -5741,29 +6663,29 @@ "typeString": "bool" } }, - "id": 30870, + "id": 31921, "nodeType": "IfStatement", "src": "4895:22:30", "trueBody": { - "functionReturnParameters": 30852, - "id": 30869, + "functionReturnParameters": 31903, + "id": 31920, "nodeType": "Return", "src": "4910:7:30" } }, { "assignments": [ - 30872 + 31923 ], "declarations": [ { "constant": false, - "id": 30872, + "id": 31923, "mutability": "mutable", "name": "denominator", "nameLocation": "4937:11:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4929:19:30", "stateVariable": false, "storageLocation": "default", @@ -5772,7 +6694,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30871, + "id": 31922, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4929:7:30", @@ -5784,24 +6706,24 @@ "visibility": "internal" } ], - "id": 30879, + "id": 31930, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30875, + "id": 31926, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30873, + "id": 31924, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4951:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5812,7 +6734,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 30874, + "id": 31925, "isConstant": false, "isLValue": false, "isPure": true, @@ -5833,18 +6755,18 @@ } }, "falseExpression": { - "id": 30877, + "id": 31928, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "4970:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 30878, + "id": 31929, "isConstant": false, "isLValue": false, "isPure": false, @@ -5852,11 +6774,11 @@ "nodeType": "Conditional", "src": "4951:23:30", "trueExpression": { - "id": 30876, + "id": 31927, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "4963:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5873,17 +6795,17 @@ }, { "assignments": [ - 30881 + 31932 ], "declarations": [ { "constant": false, - "id": 30881, + "id": 31932, "mutability": "mutable", "name": "check", "nameLocation": "4990:5:30", "nodeType": "VariableDeclaration", - "scope": 30919, + "scope": 31970, "src": "4985:10:30", "stateVariable": false, "storageLocation": "default", @@ -5892,7 +6814,7 @@ "typeString": "bool" }, "typeName": { - "id": 30880, + "id": 31931, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4985:4:30", @@ -5904,13 +6826,13 @@ "visibility": "internal" } ], - "id": 30896, + "id": 31947, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30895, + "id": 31946, "isConstant": false, "isLValue": false, "isPure": false, @@ -5922,7 +6844,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30887, + "id": 31938, "isConstant": false, "isLValue": false, "isPure": false, @@ -5934,17 +6856,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30884, + "id": 31935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30882, + "id": 31933, "name": "diff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30854, + "referencedDeclaration": 31905, "src": "5000:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5954,11 +6876,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30883, + "id": 31934, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30609, + "referencedDeclaration": 31660, "src": "5007:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5972,7 +6894,7 @@ } } ], - "id": 30885, + "id": 31936, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -5988,11 +6910,11 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 30886, + "id": 31937, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30872, + "referencedDeclaration": 31923, "src": "5014:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6006,7 +6928,7 @@ } } ], - "id": 30888, + "id": 31939, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -6028,17 +6950,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30893, + "id": 31944, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30889, + "id": 31940, "name": "RAY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30609, + "referencedDeclaration": 31660, "src": "5030:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6052,14 +6974,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30892, + "id": 31943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 30890, + "id": 31941, "isConstant": false, "isLValue": false, "isPure": true, @@ -6076,11 +6998,11 @@ "nodeType": "BinaryOperation", "operator": "**", "rightExpression": { - "id": 30891, + "id": 31942, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30850, + "referencedDeclaration": 31901, "src": "5042:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6100,7 +7022,7 @@ } } ], - "id": 30894, + "id": 31945, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -6124,7 +7046,7 @@ }, { "condition": { - "id": 30898, + "id": 31949, "isConstant": false, "isLValue": false, "isPure": false, @@ -6134,11 +7056,11 @@ "prefix": true, "src": "5068:6:30", "subExpression": { - "id": 30897, + "id": 31948, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30881, + "referencedDeclaration": 31932, "src": "5069:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6150,11 +7072,11 @@ "typeString": "bool" } }, - "id": 30918, + "id": 31969, "nodeType": "IfStatement", "src": "5064:252:30", "trueBody": { - "id": 30917, + "id": 31968, "nodeType": "Block", "src": "5075:241:30", "statements": [ @@ -6163,7 +7085,7 @@ "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c2061636375726163792064696769747320", - "id": 30900, + "id": 31951, "isConstant": false, "isLValue": false, "isPure": true, @@ -6178,11 +7100,11 @@ "value": "Error: approx a == b not satisfied, accuracy digits " }, { - "id": 30901, + "id": 31952, "name": "accuracy", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30850, + "referencedDeclaration": 31901, "src": "5166:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6201,7 +7123,7 @@ "typeString": "uint256" } ], - "id": 30899, + "id": 31950, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6212,12 +7134,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30902, + "id": 31953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5095:80:30", @@ -6227,7 +7150,7 @@ "typeString": "tuple()" } }, - "id": 30903, + "id": 31954, "nodeType": "EmitStatement", "src": "5090:85:30" }, @@ -6236,7 +7159,7 @@ "arguments": [ { "hexValue": "20204578706563746564", - "id": 30905, + "id": 31956, "isConstant": false, "isLValue": false, "isPure": true, @@ -6251,11 +7174,11 @@ "value": " Expected" }, { - "id": 30906, + "id": 31957, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30846, + "referencedDeclaration": 31897, "src": "5224:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6274,7 +7197,7 @@ "typeString": "uint256" } ], - "id": 30904, + "id": 31955, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6285,12 +7208,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30907, + "id": 31958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5195:34:30", @@ -6300,7 +7224,7 @@ "typeString": "tuple()" } }, - "id": 30908, + "id": 31959, "nodeType": "EmitStatement", "src": "5190:39:30" }, @@ -6309,7 +7233,7 @@ "arguments": [ { "hexValue": "2020202041637475616c", - "id": 30910, + "id": 31961, "isConstant": false, "isLValue": false, "isPure": true, @@ -6324,11 +7248,11 @@ "value": " Actual" }, { - "id": 30911, + "id": 31962, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30848, + "referencedDeclaration": 31899, "src": "5278:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6347,7 +7271,7 @@ "typeString": "uint256" } ], - "id": 30909, + "id": 31960, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6358,12 +7282,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30912, + "id": 31963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5249:34:30", @@ -6373,7 +7298,7 @@ "typeString": "tuple()" } }, - "id": 30913, + "id": 31964, "nodeType": "EmitStatement", "src": "5244:39:30" }, @@ -6382,7 +7307,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30914, + "id": 31965, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6393,12 +7318,13 @@ "typeString": "function ()" } }, - "id": 30915, + "id": 31966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5298:6:30", @@ -6408,7 +7334,7 @@ "typeString": "tuple()" } }, - "id": 30916, + "id": 31967, "nodeType": "ExpressionStatement", "src": "5298:6:30" } @@ -6424,17 +7350,17 @@ "name": "withinPrecision", "nameLocation": "4749:15:30", "parameters": { - "id": 30851, + "id": 31902, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30846, + "id": 31897, "mutability": "mutable", "name": "val0", "nameLocation": "4773:4:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4765:12:30", "stateVariable": false, "storageLocation": "default", @@ -6443,7 +7369,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30845, + "id": 31896, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4765:7:30", @@ -6456,12 +7382,12 @@ }, { "constant": false, - "id": 30848, + "id": 31899, "mutability": "mutable", "name": "val1", "nameLocation": "4787:4:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4779:12:30", "stateVariable": false, "storageLocation": "default", @@ -6470,7 +7396,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30847, + "id": 31898, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4779:7:30", @@ -6483,12 +7409,12 @@ }, { "constant": false, - "id": 30850, + "id": 31901, "mutability": "mutable", "name": "accuracy", "nameLocation": "4801:8:30", "nodeType": "VariableDeclaration", - "scope": 30920, + "scope": 31971, "src": "4793:16:30", "stateVariable": false, "storageLocation": "default", @@ -6497,7 +7423,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30849, + "id": 31900, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4793:7:30", @@ -6512,38 +7438,40 @@ "src": "4764:46:30" }, "returnParameters": { - "id": 30852, + "id": 31903, "nodeType": "ParameterList", "parameters": [], "src": "4818:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30971, + "id": 32022, "nodeType": "FunctionDefinition", "src": "5374:479:30", + "nodes": [], "body": { - "id": 30970, + "id": 32021, "nodeType": "Block", "src": "5451:402:30", + "nodes": [], "statements": [ { "assignments": [ - 30930 + 31981 ], "declarations": [ { "constant": false, - "id": 30930, + "id": 31981, "mutability": "mutable", "name": "actualDiff", "nameLocation": "5470:10:30", "nodeType": "VariableDeclaration", - "scope": 30970, + "scope": 32021, "src": "5462:18:30", "stateVariable": false, "storageLocation": "default", @@ -6552,7 +7480,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30929, + "id": 31980, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5462:7:30", @@ -6564,24 +7492,24 @@ "visibility": "internal" } ], - "id": 30941, + "id": 31992, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30933, + "id": 31984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30931, + "id": 31982, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5483:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6591,11 +7519,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 30932, + "id": 31983, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5490:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6613,17 +7541,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30939, + "id": 31990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30937, + "id": 31988, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5511:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6633,11 +7561,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30938, + "id": 31989, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5518:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6650,7 +7578,7 @@ "typeString": "uint256" } }, - "id": 30940, + "id": 31991, "isConstant": false, "isLValue": false, "isPure": false, @@ -6662,17 +7590,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30936, + "id": 31987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30934, + "id": 31985, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5497:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6682,11 +7610,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 30935, + "id": 31986, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5504:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6709,17 +7637,17 @@ }, { "assignments": [ - 30943 + 31994 ], "declarations": [ { "constant": false, - "id": 30943, + "id": 31994, "mutability": "mutable", "name": "check", "nameLocation": "5538:5:30", "nodeType": "VariableDeclaration", - "scope": 30970, + "scope": 32021, "src": "5533:10:30", "stateVariable": false, "storageLocation": "default", @@ -6728,7 +7656,7 @@ "typeString": "bool" }, "typeName": { - "id": 30942, + "id": 31993, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5533:4:30", @@ -6740,23 +7668,23 @@ "visibility": "internal" } ], - "id": 30947, + "id": 31998, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30946, + "id": 31997, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 30944, + "id": 31995, "name": "actualDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30930, + "referencedDeclaration": 31981, "src": "5546:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6766,11 +7694,11 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 30945, + "id": 31996, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30926, + "referencedDeclaration": 31977, "src": "5560:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6788,7 +7716,7 @@ }, { "condition": { - "id": 30949, + "id": 32000, "isConstant": false, "isLValue": false, "isPure": false, @@ -6798,11 +7726,11 @@ "prefix": true, "src": "5589:6:30", "subExpression": { - "id": 30948, + "id": 31999, "name": "check", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30943, + "referencedDeclaration": 31994, "src": "5590:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6814,11 +7742,11 @@ "typeString": "bool" } }, - "id": 30969, + "id": 32020, "nodeType": "IfStatement", "src": "5585:261:30", "trueBody": { - "id": 30968, + "id": 32019, "nodeType": "Block", "src": "5597:249:30", "statements": [ @@ -6827,7 +7755,7 @@ "arguments": [ { "hexValue": "4572726f723a20617070726f782061203d3d2062206e6f74207361746973666965642c20616363757261637920646966666572656e636520", - "id": 30951, + "id": 32002, "isConstant": false, "isLValue": false, "isPure": true, @@ -6842,11 +7770,11 @@ "value": "Error: approx a == b not satisfied, accuracy difference " }, { - "id": 30952, + "id": 32003, "name": "expectedDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30926, + "referencedDeclaration": 31977, "src": "5692:12:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6865,7 +7793,7 @@ "typeString": "uint256" } ], - "id": 30950, + "id": 32001, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6876,12 +7804,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30953, + "id": 32004, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5617:88:30", @@ -6891,7 +7820,7 @@ "typeString": "tuple()" } }, - "id": 30954, + "id": 32005, "nodeType": "EmitStatement", "src": "5612:93:30" }, @@ -6900,7 +7829,7 @@ "arguments": [ { "hexValue": "20204578706563746564", - "id": 30956, + "id": 32007, "isConstant": false, "isLValue": false, "isPure": true, @@ -6915,11 +7844,11 @@ "value": " Expected" }, { - "id": 30957, + "id": 32008, "name": "val0", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30922, + "referencedDeclaration": 31973, "src": "5754:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6938,7 +7867,7 @@ "typeString": "uint256" } ], - "id": 30955, + "id": 32006, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -6949,12 +7878,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30958, + "id": 32009, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5725:34:30", @@ -6964,7 +7894,7 @@ "typeString": "tuple()" } }, - "id": 30959, + "id": 32010, "nodeType": "EmitStatement", "src": "5720:39:30" }, @@ -6973,7 +7903,7 @@ "arguments": [ { "hexValue": "2020202041637475616c", - "id": 30961, + "id": 32012, "isConstant": false, "isLValue": false, "isPure": true, @@ -6988,11 +7918,11 @@ "value": " Actual" }, { - "id": 30962, + "id": 32013, "name": "val1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30924, + "referencedDeclaration": 31975, "src": "5808:4:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7011,7 +7941,7 @@ "typeString": "uint256" } ], - "id": 30960, + "id": 32011, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -7022,12 +7952,13 @@ "typeString": "function (string memory,uint256)" } }, - "id": 30963, + "id": 32014, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5779:34:30", @@ -7037,7 +7968,7 @@ "typeString": "tuple()" } }, - "id": 30964, + "id": 32015, "nodeType": "EmitStatement", "src": "5774:39:30" }, @@ -7046,7 +7977,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 30965, + "id": 32016, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -7057,12 +7988,13 @@ "typeString": "function ()" } }, - "id": 30966, + "id": 32017, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5828:6:30", @@ -7072,7 +8004,7 @@ "typeString": "tuple()" } }, - "id": 30967, + "id": 32018, "nodeType": "ExpressionStatement", "src": "5828:6:30" } @@ -7088,17 +8020,17 @@ "name": "withinDiff", "nameLocation": "5383:10:30", "parameters": { - "id": 30927, + "id": 31978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30922, + "id": 31973, "mutability": "mutable", "name": "val0", "nameLocation": "5402:4:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5394:12:30", "stateVariable": false, "storageLocation": "default", @@ -7107,7 +8039,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30921, + "id": 31972, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5394:7:30", @@ -7120,12 +8052,12 @@ }, { "constant": false, - "id": 30924, + "id": 31975, "mutability": "mutable", "name": "val1", "nameLocation": "5416:4:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5408:12:30", "stateVariable": false, "storageLocation": "default", @@ -7134,7 +8066,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30923, + "id": 31974, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5408:7:30", @@ -7147,12 +8079,12 @@ }, { "constant": false, - "id": 30926, + "id": 31977, "mutability": "mutable", "name": "expectedDiff", "nameLocation": "5430:12:30", "nodeType": "VariableDeclaration", - "scope": 30971, + "scope": 32022, "src": "5422:20:30", "stateVariable": false, "storageLocation": "default", @@ -7161,7 +8093,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30925, + "id": 31976, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5422:7:30", @@ -7176,34 +8108,36 @@ "src": "5393:50:30" }, "returnParameters": { - "id": 30928, + "id": 31979, "nodeType": "ParameterList", "parameters": [], "src": "5451:0:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30990, + "id": 32041, "nodeType": "FunctionDefinition", "src": "5861:159:30", + "nodes": [], "body": { - "id": 30989, + "id": 32040, "nodeType": "Block", "src": "5956:64:30", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 30983, + "id": 32034, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30973, + "referencedDeclaration": 32024, "src": "5991:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7211,11 +8145,11 @@ } }, { - "id": 30984, + "id": 32035, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30975, + "referencedDeclaration": 32026, "src": "5996:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7223,11 +8157,11 @@ } }, { - "id": 30985, + "id": 32036, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30977, + "referencedDeclaration": 32028, "src": "6001:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7236,7 +8170,7 @@ }, { "hexValue": "66616c7365", - "id": 30986, + "id": 32037, "isConstant": false, "isLValue": false, "isPure": true, @@ -7270,26 +8204,27 @@ "typeString": "bool" } ], - "id": 30982, + "id": 32033, "name": "constrictToRange", "nodeType": "Identifier", "overloadedDeclarations": [ - 30990, - 31028 + 32041, + 32079 ], - "referencedDeclaration": 31028, + "referencedDeclaration": 32079, "src": "5974:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$_t_bool_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256,bool) pure returns (uint256)" } }, - "id": 30987, + "id": 32038, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5974:38:30", @@ -7299,8 +8234,8 @@ "typeString": "uint256" } }, - "functionReturnParameters": 30981, - "id": 30988, + "functionReturnParameters": 32032, + "id": 32039, "nodeType": "Return", "src": "5967:45:30" } @@ -7313,17 +8248,17 @@ "name": "constrictToRange", "nameLocation": "5870:16:30", "parameters": { - "id": 30978, + "id": 32029, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30973, + "id": 32024, "mutability": "mutable", "name": "val", "nameLocation": "5895:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5887:11:30", "stateVariable": false, "storageLocation": "default", @@ -7332,7 +8267,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30972, + "id": 32023, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5887:7:30", @@ -7345,12 +8280,12 @@ }, { "constant": false, - "id": 30975, + "id": 32026, "mutability": "mutable", "name": "min", "nameLocation": "5908:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5900:11:30", "stateVariable": false, "storageLocation": "default", @@ -7359,7 +8294,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30974, + "id": 32025, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5900:7:30", @@ -7372,12 +8307,12 @@ }, { "constant": false, - "id": 30977, + "id": 32028, "mutability": "mutable", "name": "max", "nameLocation": "5921:3:30", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5913:11:30", "stateVariable": false, "storageLocation": "default", @@ -7386,7 +8321,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30976, + "id": 32027, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5913:7:30", @@ -7401,17 +8336,17 @@ "src": "5886:39:30" }, "returnParameters": { - "id": 30981, + "id": 32032, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30980, + "id": 32031, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 30990, + "scope": 32041, "src": "5947:7:30", "stateVariable": false, "storageLocation": "default", @@ -7420,7 +8355,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30979, + "id": 32030, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5947:7:30", @@ -7434,19 +8369,21 @@ ], "src": "5946:9:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "pure", "virtual": false, "visibility": "public" }, { - "id": 31028, + "id": 32079, "nodeType": "FunctionDefinition", "src": "6028:291:30", + "nodes": [], "body": { - "id": 31027, + "id": 32078, "nodeType": "Block", "src": "6137:182:30", + "nodes": [], "statements": [ { "condition": { @@ -7454,7 +8391,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 31008, + "id": 32059, "isConstant": false, "isLValue": false, "isPure": false, @@ -7464,17 +8401,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31005, + "id": 32056, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31003, + "id": 32054, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30992, + "referencedDeclaration": 32043, "src": "6157:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7485,7 +8422,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 31004, + "id": 32055, "isConstant": false, "isLValue": false, "isPure": true, @@ -7508,7 +8445,7 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 31007, + "id": 32058, "isConstant": false, "isLValue": false, "isPure": false, @@ -7518,11 +8455,11 @@ "prefix": true, "src": "6169:8:30", "subExpression": { - "id": 31006, + "id": 32057, "name": "nonZero", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30998, + "referencedDeclaration": 32049, "src": "6170:7:30", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7546,17 +8483,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31013, + "id": 32064, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31011, + "id": 32062, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6207:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7566,11 +8503,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 31012, + "id": 32063, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6214:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7589,7 +8526,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31023, + "id": 32074, "isConstant": false, "isLValue": false, "isPure": false, @@ -7599,17 +8536,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31021, + "id": 32072, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31016, + "id": 32067, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30992, + "referencedDeclaration": 32043, "src": "6288:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7625,17 +8562,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31019, + "id": 32070, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31017, + "id": 32068, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6295:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7645,11 +8582,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 31018, + "id": 32069, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6301:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7663,7 +8600,7 @@ } } ], - "id": 31020, + "id": 32071, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -7685,11 +8622,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 31022, + "id": 32073, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30994, + "referencedDeclaration": 32045, "src": "6308:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7702,40 +8639,40 @@ "typeString": "uint256" } }, - "functionReturnParameters": 31002, - "id": 31024, + "functionReturnParameters": 32053, + "id": 32075, "nodeType": "Return", "src": "6281:30:30" }, - "id": 31025, + "id": 32076, "nodeType": "IfStatement", "src": "6203:108:30", "trueBody": { "expression": { - "id": 31014, + "id": 32065, "name": "max", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30996, + "referencedDeclaration": 32047, "src": "6236:3:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 31002, - "id": 31015, + "functionReturnParameters": 32053, + "id": 32066, "nodeType": "Return", "src": "6229:10:30" } }, - "id": 31026, + "id": 32077, "nodeType": "IfStatement", "src": "6148:163:30", "trueBody": { "expression": { "hexValue": "30", - "id": 31009, + "id": 32060, "isConstant": false, "isLValue": false, "isPure": true, @@ -7749,8 +8686,8 @@ }, "value": "0" }, - "functionReturnParameters": 31002, - "id": 31010, + "functionReturnParameters": 32053, + "id": 32061, "nodeType": "Return", "src": "6179:8:30" } @@ -7764,17 +8701,17 @@ "name": "constrictToRange", "nameLocation": "6037:16:30", "parameters": { - "id": 30999, + "id": 32050, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30992, + "id": 32043, "mutability": "mutable", "name": "val", "nameLocation": "6062:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6054:11:30", "stateVariable": false, "storageLocation": "default", @@ -7783,7 +8720,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30991, + "id": 32042, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6054:7:30", @@ -7796,12 +8733,12 @@ }, { "constant": false, - "id": 30994, + "id": 32045, "mutability": "mutable", "name": "min", "nameLocation": "6075:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6067:11:30", "stateVariable": false, "storageLocation": "default", @@ -7810,7 +8747,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30993, + "id": 32044, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6067:7:30", @@ -7823,12 +8760,12 @@ }, { "constant": false, - "id": 30996, + "id": 32047, "mutability": "mutable", "name": "max", "nameLocation": "6088:3:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6080:11:30", "stateVariable": false, "storageLocation": "default", @@ -7837,7 +8774,7 @@ "typeString": "uint256" }, "typeName": { - "id": 30995, + "id": 32046, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6080:7:30", @@ -7850,12 +8787,12 @@ }, { "constant": false, - "id": 30998, + "id": 32049, "mutability": "mutable", "name": "nonZero", "nameLocation": "6098:7:30", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6093:12:30", "stateVariable": false, "storageLocation": "default", @@ -7864,7 +8801,7 @@ "typeString": "bool" }, "typeName": { - "id": 30997, + "id": 32048, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6093:4:30", @@ -7879,17 +8816,17 @@ "src": "6053:53:30" }, "returnParameters": { - "id": 31002, + "id": 32053, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 31001, + "id": 32052, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 31028, + "scope": 32079, "src": "6128:7:30", "stateVariable": false, "storageLocation": "default", @@ -7898,7 +8835,7 @@ "typeString": "uint256" }, "typeName": { - "id": 31000, + "id": 32051, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6128:7:30", @@ -7912,7 +8849,7 @@ ], "src": "6127:9:30" }, - "scope": 31029, + "scope": 32080, "stateMutability": "pure", "virtual": false, "visibility": "public" @@ -7922,30 +8859,33 @@ "baseContracts": [ { "baseName": { - "id": 30507, + "id": 31558, "name": "DSTest", + "nameLocations": [ + "469:6:30" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, "src": "469:6:30" }, - "id": 30508, + "id": 31559, "nodeType": "InheritanceSpecifier", "src": "469:6:30" } ], "canonicalName": "Utility", "contractDependencies": [ - 30364 + 30379 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 31029, + 32080, 1786 ], "name": "Utility", "nameLocation": "458:7:30", - "scope": 31030, + "scope": 32081, "usedErrors": [] } ], diff --git a/out/Vesting.sol/Vesting.json b/out/Vesting.sol/Vesting.json index 11e48c2..3085eec 100644 --- a/out/Vesting.sol/Vesting.json +++ b/out/Vesting.sol/Vesting.json @@ -388,16 +388,16 @@ } ], "bytecode": { - "object": "0x60a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "sourceMap": "490:10064:16:-:0;;;1761:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;955:17:18;998:18;;-1:-1:-1;;;;;;998:18:18;699:10:17;998:18:18;;;;;1032:43;;699:10:17;;;;-1:-1:-1;;;;;;;;;;;1032:43:18;955:17;;1032:43;-1:-1:-1;;;;;;1821:24:16;;;;1856:25;1874:6;1856:17;:25::i;:::-;1761:128;;490:10064;;2118:244:18;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;696:2:28;1376:68:18;;;678:21:28;;;715:18;;;708:30;774:34;754:18;;;747:62;826:18;;1376:68:18;;;;;;;;;-1:-1:-1;;;;;2207:22:18;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:18;;1057:2:28;2199:73:18::1;::::0;::::1;1039:21:28::0;1096:2;1076:18;;;1069:30;1135:34;1115:18;;;1108:62;-1:-1:-1;;;1186:18:28;;;1179:36;1232:19;;2199:73:18::1;855:402:28::0;2199:73:18::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:18;;::::1;::::0;2309:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;2288:38:18;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:18::1;-1:-1:-1::0;;;;;2337:17:18;;;::::1;::::0;;;::::1;::::0;;2118:244::o;14:177:28:-;93:13;;-1:-1:-1;;;;;135:31:28;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:293::-;275:6;283;336:2;324:9;315:7;311:23;307:32;304:52;;;352:1;349;342:12;304:52;375:40;405:9;375:40;:::i;:::-;365:50;;434:49;479:2;468:9;464:18;434:49;:::i;:::-;424:59;;196:293;;;;;:::o;855:402::-;490:10064:16;;;;;;;;;;;;;;;;;;;;;;", + "object": "0x60a06040523480156200001157600080fd5b5060405162001962380380620019628339810160408190526200003491620001b2565b600080546001600160a01b0319163390811782556040519091829160008051602062001942833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194283398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161172e62000214600039600081816101d7015281816108320152610be5015261172e6000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160d565b90506000606461035384600861162f565b61035d919061160d565b610367908361162f565b606461037485600c61162f565b61037e919061160d565b6103889190611646565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611659565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d61168e565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116a4565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b906000526020600020906003020160020160008282546109479190611646565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611659565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611659565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611659565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116c6565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116a4565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611659565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff8142611646565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611659565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c5908490611646565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611659565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116df565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115611607576116076115de565b92915050565b60008261162a57634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417611607576116076115de565b80820180821115611607576116076115de565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116b657600080fd5b8151801515811461151c57600080fd5b6000602082840312156116d857600080fd5b5051919050565b6000600182016116f1576116f16115de565b506001019056fea2646970667358221220d2355449aa619c52df97b3ae1052a171b8fa5fa41104c173bef64d6cc1fd6c1b64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "sourceMap": "490:10064:18:-:0;;;1761:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;955:17:20;998:18;;-1:-1:-1;;;;;;998:18:20;699:10:19;998:18:20;;;;;1032:43;;699:10:19;;;;-1:-1:-1;;;;;;;;;;;1032:43:20;955:17;;1032:43;-1:-1:-1;;;;;;1821:24:18;;;;1856:25;1874:6;1856:17;:25::i;:::-;1761:128;;490:10064;;2118:244:20;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;696:2:32;1376:68:20;;;678:21:32;;;715:18;;;708:30;774:34;754:18;;;747:62;826:18;;1376:68:20;;;;;;;;;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;1057:2:32;2199:73:20::1;::::0;::::1;1039:21:32::0;1096:2;1076:18;;;1069:30;1135:34;1115:18;;;1108:62;-1:-1:-1;;;1186:18:32;;;1179:36;1232:19;;2199:73:20::1;855:402:32::0;2199:73:20::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6;::::1;::::0;-1:-1:-1;;;;;;;;;;;2288:38:20;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:20::1;-1:-1:-1::0;;;;;2337:17:20;;;::::1;::::0;;;::::1;::::0;;2118:244::o;14:177:32:-;93:13;;-1:-1:-1;;;;;135:31:32;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:293::-;275:6;283;336:2;324:9;315:7;311:23;307:32;304:52;;;352:1;349;342:12;304:52;375:40;405:9;375:40;:::i;:::-;365:50;;434:49;479:2;468:9;464:18;434:49;:::i;:::-;424:59;;196:293;;;;;:::o;855:402::-;490:10064:18;;;;;;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f0033", - "sourceMap": "490:10064:16:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7390:105;7470:17;;7390:105;;;160:25:28;;;148:2;133:18;7390:105:16;;;;;;;;7696:949;;;;;;:::i;:::-;;:::i;5411:529::-;;;;;;:::i;:::-;;:::i;:::-;;3567:699;;;:::i;10440:111::-;;;:::i;:::-;;;;;;;:::i;6108:261::-;;;:::i;1329:41::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1608:14:28;;1601:22;1583:41;;1571:2;1556:18;1329:41:16;1443:187:28;1815:148:18;;;:::i;777:26:16:-;;;;;;;;;601:35;;;;;;;;-1:-1:-1;;;;;1799:32:28;;;1781:51;;1769:2;1754:18;601:35:16;1635:203:28;9349:286:16;;;;;;:::i;:::-;;:::i;1164:87:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;1164:87;;857:32:16;;;;;;6556:636;;;;;;:::i;:::-;;:::i;8846:290::-;;;;;;:::i;:::-;;:::i;2444:226:18:-;;;;;;:::i;:::-;;:::i;4652:595:16:-;;;;;;:::i;:::-;;:::i;684:31::-;;;;;;2118:244:18;;;;;;:::i;:::-;;:::i;7696:949:16:-;-1:-1:-1;;;;;7785:19:16;;7761:7;7785:19;;;:9;:19;;;;;;;;:37;;;;-1:-1:-1;7808:14:16;;;;7785:37;7781:857;;;7841:11;7855:24;7870:8;7855:14;:24::i;:::-;7841:38;;7896:17;7916:25;7932:8;7916:15;:25::i;:::-;7896:45;;8000:12;7962:15;7978:3;7962:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:50;7958:99;;-1:-1:-1;8040:1:16;;7696:949;-1:-1:-1;;;7696:949:16:o;7958:99::-;8073:17;8133:7;8113:16;;8095:15;:34;;;;:::i;:::-;8094:46;;;;:::i;:::-;8073:68;-1:-1:-1;8157:18:16;8242:3;8223:16;:12;8238:1;8223:16;:::i;:::-;:22;;;;:::i;:::-;8207:39;;:12;:39;:::i;:::-;8199:3;8179:17;:12;8194:2;8179:17;:::i;:::-;:23;;;;:::i;:::-;8178:69;;;;:::i;:::-;8157:90;;8284:12;8268:13;:28;:50;;;;8316:2;8300:12;:18;;8268:50;8264:276;;;8370:15;8386:3;8370:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8355:12;:49;;;;:::i;:::-;8339:65;;8264:276;;;8490:15;8506:3;8490:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8474:13;:50;;;;:::i;:::-;8458:66;;8264:276;8563:13;7696:949;-1:-1:-1;;;;;7696:949:16:o;7781:857::-;-1:-1:-1;8625:1:16;;7696:949;-1:-1:-1;7696:949:16:o;7781:857::-;7696:949;;;:::o;5411:529::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;5493:22:16;::::1;5485:93;;;::::0;-1:-1:-1;;;5485:93:16;;3772:2:28;5485:93:16::1;::::0;::::1;3754:21:28::0;3811:2;3791:18;;;3784:30;3850:34;3830:18;;;3823:62;3921:28;3901:18;;;3894:56;3967:19;;5485:93:16::1;3570:422:28::0;5485:93:16::1;5591:11;5605:24;5620:8;5605:14;:24::i;:::-;5591:38;;5642:20;5665:15;5681:3;5665:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;5642:43:::1;::::0;;::::1;::::0;::::1;::::0;;5665:20:::1;::::0;;::::1;::::0;;::::1;5642:43:::0;;-1:-1:-1;;;;;5642:43:16::1;::::0;;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;;;;;5719:15:::1;5735:22:::0;;5642:43;;-1:-1:-1;5719:15:16;5735:24:::1;::::0;::::1;:::i;:::-;5719:41;;;;;;;;:::i;:::-;;;;;;;;;;;5696:15;5712:3;5696:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;:64;;:20:::1;::::0;;::::1;;:64:::0;;-1:-1:-1;;;;;;5696:64:16::1;-1:-1:-1::0;;;;;5696:64:16;;::::1;::::0;;;::::1;::::0;;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;::::1;::::0;;;;::::1;::::0;;;;5771:15:::1;5787:22:::0;;5815:4;;5787:24:::1;::::0;::::1;:::i;:::-;5771:41;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;:48;;:41:::1;::::0;;;::::1;;:48:::0;;-1:-1:-1;;;;;;5771:48:16::1;-1:-1:-1::0;;;;;5771:48:16;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;-1:-1:-1;5771:48:16;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;::::1;::::0;5830:15:::1;:21:::0;;;::::1;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;-1:-1:-1::0;;5830:21:16;;;;;::::1;;::::0;;-1:-1:-1;;;;;;5830:21:16::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;;::::0;;;;;;;-1:-1:-1;;;;;5862:19:16;::::1;::::0;;;:9:::1;:19:::0;;;;;;;:27;;-1:-1:-1;;5862:27:16::1;::::0;;5907:25;5862:19;;5907:25:::1;::::0;::::1;5474:466;;5411:529:::0;:::o;3567:699::-;2070:10;2060:21;;;;:9;:21;;;;;;;;:29;;:21;:29;2052:100;;;;-1:-1:-1;;;2052:100:16;;4331:2:28;2052:100:16;;;4313:21:28;4370:2;4350:18;;;4343:30;4409:34;4389:18;;;4382:62;4480:28;4460:18;;;4453:56;4526:19;;2052:100:16;4129:422:28;2052:100:16;3627:14:::1;::::0;::::1;;3619:70;;;::::0;-1:-1:-1;;;3619:70:16;;4758:2:28;3619:70:16::1;::::0;::::1;4740:21:28::0;4797:2;4777:18;;;4770:30;4836:34;4816:18;;;4809:62;-1:-1:-1;;;4887:18:28;;;4880:41;4938:19;;3619:70:16::1;4556:407:28::0;3619:70:16::1;3700:21;3724:28;3741:10;3724:16;:28::i;:::-;3700:52;;3787:1;3771:13;:17;3763:82;;;::::0;-1:-1:-1;;;3763:82:16;;5170:2:28;3763:82:16::1;::::0;::::1;5152:21:28::0;5209:2;5189:18;;;5182:30;5248:34;5228:18;;;5221:62;-1:-1:-1;;;5299:18:28;;;5292:50;5359:19;;3763:82:16::1;4968:416:28::0;3763:82:16::1;3898:54;::::0;-1:-1:-1;;;3898:54:16;;3926:10:::1;3898:54;::::0;::::1;5563:51:28::0;5630:18;;;5623:34;;;3905:10:16::1;-1:-1:-1::0;;;;;3898:27:16::1;::::0;::::1;::::0;5536:18:28;;3898:54:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3890:109;;;::::0;-1:-1:-1;;;3890:109:16;;6152:2:28;3890:109:16::1;::::0;::::1;6134:21:28::0;6191:2;6171:18;;;6164:30;6230:34;6210:18;;;6203:62;-1:-1:-1;;;6281:18:28;;;6274:40;6331:19;;3890:109:16::1;5950:406:28::0;3890:109:16::1;4055:11;4069:26;4084:10;4069:14;:26::i;:::-;4055:40;;4188:13;4150:15;4166:3;4150:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:51;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4219:39:16::1;::::0;;4232:10:::1;5563:51:28::0;;5645:2;5630:18;;5623:34;;;4219:39:16::1;::::0;5536:18:28;4219:39:16::1;;;;;;;3608:658;;3567:699::o:0;10440:111::-;10491:17;10528:15;10521:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10521:22:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10440:111;:::o;6108:261::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;6174:14:16::1;::::0;::::1;;6173:15;6165:83;;;::::0;-1:-1:-1;;;6165:83:16;;6563:2:28;6165:83:16::1;::::0;::::1;6545:21:28::0;6602:2;6582:18;;;6575:30;6641:34;6621:18;;;6614:62;6712:25;6692:18;;;6685:53;6755:19;;6165:83:16::1;6361:419:28::0;6165:83:16::1;6261:14;:21:::0;;-1:-1:-1;;6261:21:16::1;6278:4;6261:21;::::0;;6312:15:::1;6293:16;:34:::0;6345:16:::1;::::0;::::1;::::0;6261:14:::1;::::0;6345:16:::1;6108:261::o:0;1815:148:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;1922:1:::1;1906:6:::0;;1885:40:::1;::::0;-1:-1:-1;;;;;1906:6:18;;::::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1953:1;1936:19:::0;;-1:-1:-1;;;;;;1936:19:18::1;::::0;;1815:148::o;9349:286:16:-;-1:-1:-1;;;;;9437:19:16;;9413:7;9437:19;;;:9;:19;;;;;;;;9433:195;;;9473:11;9487:24;9502:8;9487:14;:24::i;:::-;9473:38;;9533:15;9549:3;9533:20;;;;;;;;:::i;:::-;;;;;;;;;;;:33;;;9526:40;;;9349:286;;;:::o;6556:636::-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;6643:10:16::1;-1:-1:-1::0;;;;;6634:19:16::1;:5;-1:-1:-1::0;;;;;6634:19:16::1;::::0;6626:89:::1;;;::::0;-1:-1:-1;;;6626:89:16;;6987:2:28;6626:89:16::1;::::0;::::1;6969:21:28::0;7026:2;7006:18;;;6999:30;7065:34;7045:18;;;7038:62;7136:27;7116:18;;;7109:55;7181:19;;6626:89:16::1;6785:421:28::0;6626:89:16::1;-1:-1:-1::0;;;;;6734:19:16;::::1;6726:87;;;::::0;-1:-1:-1;;;6726:87:16;;7413:2:28;6726:87:16::1;::::0;::::1;7395:21:28::0;7452:2;7432:18;;;7425:30;7491:34;7471:18;;;7464:62;7562:25;7542:18;;;7535:53;7605:19;;6726:87:16::1;7211:419:28::0;6726:87:16::1;6844:38;::::0;-1:-1:-1;;;6844:38:16;;6876:4:::1;6844:38;::::0;::::1;1781:51:28::0;6826:15:16::1;::::0;-1:-1:-1;;;;;6844:23:16;::::1;::::0;::::1;::::0;1754:18:28;;6844:38:16::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6826:56;;6911:1;6901:7;:11;6893:79;;;::::0;-1:-1:-1;;;6893:79:16;;8026:2:28;6893:79:16::1;::::0;::::1;8008:21:28::0;8065:2;8045:18;;;8038:30;8104:34;8084:18;;;8077:62;8175:25;8155:18;;;8148:53;8218:19;;6893:79:16::1;7824:419:28::0;6893:79:16::1;6985:12;7007:5;-1:-1:-1::0;;;;;7000:22:16::1;;7023:7;1210::18::0;1237:6;-1:-1:-1;;;;;1237:6:18;;1164:87;7023:7:16::1;7000:40;::::0;-1:-1:-1;;;;;;7000:40:16::1;::::0;;;;;;-1:-1:-1;;;;;5581:32:28;;;7000:40:16::1;::::0;::::1;5563:51:28::0;5630:18;;;5623:34;;;5536:18;;7000:40:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6985:55;;7059:7;7051:70;;;::::0;-1:-1:-1;;;7051:70:16;;8450:2:28;7051:70:16::1;::::0;::::1;8432:21:28::0;8489:2;8469:18;;;8462:30;8528:34;8508:18;;;8501:62;-1:-1:-1;;;8579:18:28;;;8572:48;8637:19;;7051:70:16::1;8248:414:28::0;7051:70:16::1;7139:45;7160:5;7167:7;7176;1210::18::0;1237:6;-1:-1:-1;;;;;1237:6:18;;1164:87;7176:7:16::1;7139:45;::::0;;-1:-1:-1;;;;;8925:15:28;;;8907:34;;8972:2;8957:18;;8950:34;;;;9020:15;;9000:18;;;8993:43;7139:45:16;;;;;;8857:2:28;7139:45:16;;::::1;6615:577;;6556:636:::0;:::o;8846:290::-;-1:-1:-1;;;;;8935:19:16;;8911:7;8935:19;;;:9;:19;;;;;;;;8931:198;;;8973:11;8987:24;9002:8;8987:14;:24::i;:::-;8973:38;;9033:15;9049:3;9033:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;9026:41;;;8846:290;;;:::o;2444:226:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;2525:6:::1;::::0;;;2508:23;;-1:-1:-1;;;;;;2508:23:18;;::::1;-1:-1:-1::0;;;;;2525:6:18;::::1;2508:23;::::0;;;2542:19:::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2659:1:::1;2643:6:::0;;2622:40:::1;::::0;-1:-1:-1;;;;;2643:6:18;;::::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;4652:595:16:-;1210:7:18;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;-1:-1:-1;;;;;4754:19:16;::::1;;::::0;;;:9:::1;:19;::::0;;;;;::::1;;:28;4746:93;;;::::0;-1:-1:-1;;;4746:93:16;;9249:2:28;4746:93:16::1;::::0;::::1;9231:21:28::0;9288:2;9268:18;;;9261:30;9327:34;9307:18;;;9300:62;-1:-1:-1;;;9378:18:28;;;9371:50;9438:19;;4746:93:16::1;9047:416:28::0;4746:93:16::1;-1:-1:-1::0;;;;;4858:22:16;::::1;4850:91;;;::::0;-1:-1:-1;;;4850:91:16;;9670:2:28;4850:91:16::1;::::0;::::1;9652:21:28::0;9709:2;9689:18;;;9682:30;9748:34;9728:18;;;9721:62;9819:26;9799:18;;;9792:54;9863:19;;4850:91:16::1;9468:420:28::0;4850:91:16::1;4976:1;4960:13;:17;4952:83;;;::::0;-1:-1:-1;;;4952:83:16;;10095:2:28;4952:83:16::1;::::0;::::1;10077:21:28::0;10134:2;10114:18;;;10107:30;10173:34;10153:18;;;10146:62;-1:-1:-1;;;10224:18:28;;;10217:51;10285:19;;4952:83:16::1;9893:417:28::0;4952:83:16::1;-1:-1:-1::0;;;;;5048:19:16;;::::1;;::::0;;;:9:::1;:19;::::0;;;;;;;:26;;5070:4:::1;-1:-1:-1::0;;5048:26:16;;::::1;::::0;::::1;::::0;;;5106:36;;::::1;::::0;::::1;::::0;;;;;;;::::1;::::0;;;;;;;;;5085:15:::1;:58:::0;;;;::::1;::::0;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;;;;;5085:58:16::1;::::0;;;::::1;;::::0;;;;;;;;;;;;;;;;;;;5156:17:::1;:34:::0;;5106:36;;5048:19;5156:34:::1;::::0;5106:36;;5156:34:::1;:::i;:::-;::::0;;;-1:-1:-1;;5216:23:16::1;::::0;-1:-1:-1;;;;;5216:23:16;::::1;::::0;::::1;::::0;;;::::1;4652:595:::0;;:::o;2118:244:18:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:18;699:10:17;1384:23:18;1376:68;;;;-1:-1:-1;;;1376:68:18;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:18;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:18;;10517:2:28;2199:73:18::1;::::0;::::1;10499:21:28::0;10556:2;10536:18;;;10529:30;10595:34;10575:18;;;10568:62;-1:-1:-1;;;10646:18:28;;;10639:36;10692:19;;2199:73:18::1;10315:402:28::0;2199:73:18::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:18;;::::1;::::0;2309:6;::::1;::::0;2288:38:::1;::::0;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:18::1;-1:-1:-1::0;;;;;2337:17:18;;;::::1;::::0;;;::::1;::::0;;2118:244::o;9862:438:16:-;-1:-1:-1;;;;;9955:19:16;;9927:7;9955:19;;;:9;:19;;;;;;;;:27;;:19;:27;9947:96;;;;-1:-1:-1;;;9947:96:16;;10924:2:28;9947:96:16;;;10906:21:28;10963:2;10943:18;;;10936:30;11002:34;10982:18;;;10975:62;11073:26;11053:18;;;11046:54;11117:19;;9947:96:16;10722:420:28;9947:96:16;10056:11;;10080:190;10104:15;:22;10100:26;;10080:190;;;10182:8;-1:-1:-1;;;;;10152:38:16;:15;10168:1;10152:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:26;-1:-1:-1;;;;;10152:26:16;:38;10148:111;;10217:1;10211:7;;10238:5;;10148:111;10128:3;;;;:::i;:::-;;;;10080:190;;;-1:-1:-1;10289:3:16;9862:438;-1:-1:-1;;9862:438:16:o;196:173:28:-;264:20;;-1:-1:-1;;;;;313:31:28;;303:42;;293:70;;359:1;356;349:12;374:186;433:6;486:2;474:9;465:7;461:23;457:32;454:52;;;502:1;499;492:12;454:52;525:29;544:9;525:29;:::i;:::-;515:39;374:186;-1:-1:-1;;;374:186:28:o;565:873::-;790:2;842:21;;;912:13;;815:18;;;934:22;;;761:4;;790:2;975;;993:18;;;;1034:15;;;761:4;1077:335;1091:6;1088:1;1085:13;1077:335;;;1150:13;;1192:9;;-1:-1:-1;;;;;1188:35:28;1176:48;;1264:11;;;1258:18;1244:12;;;1237:40;1317:11;;1311:18;1297:12;;;1290:40;1359:4;1350:14;;;;1387:15;;;;1220:1;1106:9;1077:335;;;-1:-1:-1;1429:3:28;;565:873;-1:-1:-1;;;;;;;565:873:28:o;1843:180::-;1902:6;1955:2;1943:9;1934:7;1930:23;1926:32;1923:52;;;1971:1;1968;1961:12;1923:52;-1:-1:-1;1994:23:28;;1843:180;-1:-1:-1;1843:180:28:o;2028:254::-;2096:6;2104;2157:2;2145:9;2136:7;2132:23;2128:32;2125:52;;;2173:1;2170;2163:12;2125:52;2196:29;2215:9;2196:29;:::i;:::-;2186:39;2272:2;2257:18;;;;2244:32;;-1:-1:-1;;;2028:254:28:o;2287:127::-;2348:10;2343:3;2339:20;2336:1;2329:31;2379:4;2376:1;2369:15;2403:4;2400:1;2393:15;2419:127;2480:10;2475:3;2471:20;2468:1;2461:31;2511:4;2508:1;2501:15;2535:4;2532:1;2525:15;2551:125;2591:4;2619:1;2616;2613:8;2610:34;;;2624:18;;:::i;:::-;-1:-1:-1;2661:9:28;;2551:125::o;2681:217::-;2721:1;2747;2737:132;;2791:10;2786:3;2782:20;2779:1;2772:31;2826:4;2823:1;2816:15;2854:4;2851:1;2844:15;2737:132;-1:-1:-1;2883:9:28;;2681:217::o;2903:168::-;2943:7;3009:1;3005;3001:6;2997:14;2994:1;2991:21;2986:1;2979:9;2972:17;2968:45;2965:71;;;3016:18;;:::i;:::-;-1:-1:-1;3056:9:28;;2903:168::o;3076:128::-;3116:3;3147:1;3143:6;3140:1;3137:13;3134:39;;;3153:18;;:::i;:::-;-1:-1:-1;3189:9:28;;3076:128::o;3209:356::-;3411:2;3393:21;;;3430:18;;;3423:30;3489:34;3484:2;3469:18;;3462:62;3556:2;3541:18;;3209:356::o;3997:127::-;4058:10;4053:3;4049:20;4046:1;4039:31;4089:4;4086:1;4079:15;4113:4;4110:1;4103:15;5668:277;5735:6;5788:2;5776:9;5767:7;5763:23;5759:32;5756:52;;;5804:1;5801;5794:12;5756:52;5836:9;5830:16;5889:5;5882:13;5875:21;5868:5;5865:32;5855:60;;5911:1;5908;5901:12;7635:184;7705:6;7758:2;7746:9;7737:7;7733:23;7729:32;7726:52;;;7774:1;7771;7764:12;7726:52;-1:-1:-1;7797:16:28;;7635:184;-1:-1:-1;7635:184:28:o;11147:135::-;11186:3;11207:17;;;11204:43;;11227:18;;:::i;:::-;-1:-1:-1;11274:1:28;11263:13;;11147:135::o", + "object": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160d565b90506000606461035384600861162f565b61035d919061160d565b610367908361162f565b606461037485600c61162f565b61037e919061160d565b6103889190611646565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611659565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d61168e565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116a4565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b906000526020600020906003020160020160008282546109479190611646565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611659565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611659565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611659565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116c6565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116a4565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611659565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff8142611646565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611659565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c5908490611646565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611659565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116df565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115611607576116076115de565b92915050565b60008261162a57634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417611607576116076115de565b80820180821115611607576116076115de565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116b657600080fd5b8151801515811461151c57600080fd5b6000602082840312156116d857600080fd5b5051919050565b6000600182016116f1576116f16115de565b506001019056fea2646970667358221220d2355449aa619c52df97b3ae1052a171b8fa5fa41104c173bef64d6cc1fd6c1b64736f6c63430008110033", + "sourceMap": "490:10064:18:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7390:105;7470:17;;7390:105;;;160:25:32;;;148:2;133:18;7390:105:18;;;;;;;;7696:949;;;;;;:::i;:::-;;:::i;5411:529::-;;;;;;:::i;:::-;;:::i;:::-;;3567:699;;;:::i;10440:111::-;;;:::i;:::-;;;;;;;:::i;6108:261::-;;;:::i;1329:41::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1608:14:32;;1601:22;1583:41;;1571:2;1556:18;1329:41:18;1443:187:32;1815:148:20;;;:::i;777:26:18:-;;;;;;;;;601:35;;;;;;;;-1:-1:-1;;;;;1799:32:32;;;1781:51;;1769:2;1754:18;601:35:18;1635:203:32;9349:286:18;;;;;;:::i;:::-;;:::i;1164:87:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;1164:87;;857:32:18;;;;;;6556:636;;;;;;:::i;:::-;;:::i;8846:290::-;;;;;;:::i;:::-;;:::i;2444:226:20:-;;;;;;:::i;:::-;;:::i;4652:595:18:-;;;;;;:::i;:::-;;:::i;684:31::-;;;;;;2118:244:20;;;;;;:::i;:::-;;:::i;7696:949:18:-;-1:-1:-1;;;;;7785:19:18;;7761:7;7785:19;;;:9;:19;;;;;;;;:37;;;;-1:-1:-1;7808:14:18;;;;7785:37;7781:857;;;7841:11;7855:24;7870:8;7855:14;:24::i;:::-;7841:38;;7896:17;7916:25;7932:8;7916:15;:25::i;:::-;7896:45;;8000:12;7962:15;7978:3;7962:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:50;7958:99;;-1:-1:-1;8040:1:18;;7696:949;-1:-1:-1;;;7696:949:18:o;7958:99::-;8073:17;8133:7;8113:16;;8095:15;:34;;;;:::i;:::-;8094:46;;;;:::i;:::-;8073:68;-1:-1:-1;8157:18:18;8242:3;8223:16;:12;8238:1;8223:16;:::i;:::-;:22;;;;:::i;:::-;8207:39;;:12;:39;:::i;:::-;8199:3;8179:17;:12;8194:2;8179:17;:::i;:::-;:23;;;;:::i;:::-;8178:69;;;;:::i;:::-;8157:90;;8284:12;8268:13;:28;:50;;;;8316:2;8300:12;:18;;8268:50;8264:276;;;8370:15;8386:3;8370:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8355:12;:49;;;;:::i;:::-;8339:65;;8264:276;;;8490:15;8506:3;8490:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;8474:13;:50;;;;:::i;:::-;8458:66;;8264:276;8563:13;7696:949;-1:-1:-1;;;;;7696:949:18:o;7781:857::-;-1:-1:-1;8625:1:18;;7696:949;-1:-1:-1;7696:949:18:o;7781:857::-;7696:949;;;:::o;5411:529::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;5493:22:18;::::1;5485:93;;;::::0;-1:-1:-1;;;5485:93:18;;3772:2:32;5485:93:18::1;::::0;::::1;3754:21:32::0;3811:2;3791:18;;;3784:30;3850:34;3830:18;;;3823:62;3921:28;3901:18;;;3894:56;3967:19;;5485:93:18::1;3570:422:32::0;5485:93:18::1;5591:11;5605:24;5620:8;5605:14;:24::i;:::-;5591:38;;5642:20;5665:15;5681:3;5665:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;5642:43:::1;::::0;;::::1;::::0;::::1;::::0;;5665:20:::1;::::0;;::::1;::::0;;::::1;5642:43:::0;;-1:-1:-1;;;;;5642:43:18::1;::::0;;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;;;;;5719:15:::1;5735:22:::0;;5642:43;;-1:-1:-1;5719:15:18;5735:24:::1;::::0;::::1;:::i;:::-;5719:41;;;;;;;;:::i;:::-;;;;;;;;;;;5696:15;5712:3;5696:20;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;:64;;:20:::1;::::0;;::::1;;:64:::0;;-1:-1:-1;;;;;;5696:64:18::1;-1:-1:-1::0;;;;;5696:64:18;;::::1;::::0;;;::::1;::::0;;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;::::1;::::0;;;;::::1;::::0;;;;5771:15:::1;5787:22:::0;;5815:4;;5787:24:::1;::::0;::::1;:::i;:::-;5771:41;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;:48;;:41:::1;::::0;;;::::1;;:48:::0;;-1:-1:-1;;;;;;5771:48:18::1;-1:-1:-1::0;;;;;5771:48:18;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;-1:-1:-1;5771:48:18;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;::::1;::::0;5830:15:::1;:21:::0;;;::::1;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;-1:-1:-1::0;;5830:21:18;;;;;::::1;;::::0;;-1:-1:-1;;;;;;5830:21:18::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;;::::0;;;;;;;-1:-1:-1;;;;;5862:19:18;::::1;::::0;;;:9:::1;:19:::0;;;;;;;:27;;-1:-1:-1;;5862:27:18::1;::::0;;5907:25;5862:19;;5907:25:::1;::::0;::::1;5474:466;;5411:529:::0;:::o;3567:699::-;2070:10;2060:21;;;;:9;:21;;;;;;;;:29;;:21;:29;2052:100;;;;-1:-1:-1;;;2052:100:18;;4331:2:32;2052:100:18;;;4313:21:32;4370:2;4350:18;;;4343:30;4409:34;4389:18;;;4382:62;4480:28;4460:18;;;4453:56;4526:19;;2052:100:18;4129:422:32;2052:100:18;3627:14:::1;::::0;::::1;;3619:70;;;::::0;-1:-1:-1;;;3619:70:18;;4758:2:32;3619:70:18::1;::::0;::::1;4740:21:32::0;4797:2;4777:18;;;4770:30;4836:34;4816:18;;;4809:62;-1:-1:-1;;;4887:18:32;;;4880:41;4938:19;;3619:70:18::1;4556:407:32::0;3619:70:18::1;3700:21;3724:28;3741:10;3724:16;:28::i;:::-;3700:52;;3787:1;3771:13;:17;3763:82;;;::::0;-1:-1:-1;;;3763:82:18;;5170:2:32;3763:82:18::1;::::0;::::1;5152:21:32::0;5209:2;5189:18;;;5182:30;5248:34;5228:18;;;5221:62;-1:-1:-1;;;5299:18:32;;;5292:50;5359:19;;3763:82:18::1;4968:416:32::0;3763:82:18::1;3898:54;::::0;-1:-1:-1;;;3898:54:18;;3926:10:::1;3898:54;::::0;::::1;5563:51:32::0;5630:18;;;5623:34;;;3905:10:18::1;-1:-1:-1::0;;;;;3898:27:18::1;::::0;::::1;::::0;5536:18:32;;3898:54:18::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3890:109;;;::::0;-1:-1:-1;;;3890:109:18;;6152:2:32;3890:109:18::1;::::0;::::1;6134:21:32::0;6191:2;6171:18;;;6164:30;6230:34;6210:18;;;6203:62;-1:-1:-1;;;6281:18:32;;;6274:40;6331:19;;3890:109:18::1;5950:406:32::0;3890:109:18::1;4055:11;4069:26;4084:10;4069:14;:26::i;:::-;4055:40;;4188:13;4150:15;4166:3;4150:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;:51;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4219:39:18::1;::::0;;4232:10:::1;5563:51:32::0;;5645:2;5630:18;;5623:34;;;4219:39:18::1;::::0;5536:18:32;4219:39:18::1;;;;;;;3608:658;;3567:699::o:0;10440:111::-;10491:17;10528:15;10521:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10521:22:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10440:111;:::o;6108:261::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;6174:14:18::1;::::0;::::1;;6173:15;6165:83;;;::::0;-1:-1:-1;;;6165:83:18;;6563:2:32;6165:83:18::1;::::0;::::1;6545:21:32::0;6602:2;6582:18;;;6575:30;6641:34;6621:18;;;6614:62;6712:25;6692:18;;;6685:53;6755:19;;6165:83:18::1;6361:419:32::0;6165:83:18::1;6261:14;:21:::0;;-1:-1:-1;;6261:21:18::1;6278:4;6261:21;::::0;;6312:15:::1;6293:16;:34:::0;6345:16:::1;::::0;::::1;::::0;6261:14:::1;::::0;6345:16:::1;6108:261::o:0;1815:148:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;1922:1:::1;1906:6:::0;;1885:40:::1;::::0;-1:-1:-1;;;;;1906:6:20;;::::1;::::0;1885:40:::1;::::0;1922:1;;1885:40:::1;1953:1;1936:19:::0;;-1:-1:-1;;;;;;1936:19:20::1;::::0;;1815:148::o;9349:286:18:-;-1:-1:-1;;;;;9437:19:18;;9413:7;9437:19;;;:9;:19;;;;;;;;9433:195;;;9473:11;9487:24;9502:8;9487:14;:24::i;:::-;9473:38;;9533:15;9549:3;9533:20;;;;;;;;:::i;:::-;;;;;;;;;;;:33;;;9526:40;;;9349:286;;;:::o;6556:636::-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;6643:10:18::1;-1:-1:-1::0;;;;;6634:19:18::1;:5;-1:-1:-1::0;;;;;6634:19:18::1;::::0;6626:89:::1;;;::::0;-1:-1:-1;;;6626:89:18;;6987:2:32;6626:89:18::1;::::0;::::1;6969:21:32::0;7026:2;7006:18;;;6999:30;7065:34;7045:18;;;7038:62;7136:27;7116:18;;;7109:55;7181:19;;6626:89:18::1;6785:421:32::0;6626:89:18::1;-1:-1:-1::0;;;;;6734:19:18;::::1;6726:87;;;::::0;-1:-1:-1;;;6726:87:18;;7413:2:32;6726:87:18::1;::::0;::::1;7395:21:32::0;7452:2;7432:18;;;7425:30;7491:34;7471:18;;;7464:62;7562:25;7542:18;;;7535:53;7605:19;;6726:87:18::1;7211:419:32::0;6726:87:18::1;6844:38;::::0;-1:-1:-1;;;6844:38:18;;6876:4:::1;6844:38;::::0;::::1;1781:51:32::0;6826:15:18::1;::::0;-1:-1:-1;;;;;6844:23:18;::::1;::::0;::::1;::::0;1754:18:32;;6844:38:18::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6826:56;;6911:1;6901:7;:11;6893:79;;;::::0;-1:-1:-1;;;6893:79:18;;8026:2:32;6893:79:18::1;::::0;::::1;8008:21:32::0;8065:2;8045:18;;;8038:30;8104:34;8084:18;;;8077:62;8175:25;8155:18;;;8148:53;8218:19;;6893:79:18::1;7824:419:32::0;6893:79:18::1;6985:12;7007:5;-1:-1:-1::0;;;;;7000:22:18::1;;7023:7;1210::20::0;1237:6;-1:-1:-1;;;;;1237:6:20;;1164:87;7023:7:18::1;7000:40;::::0;-1:-1:-1;;;;;;7000:40:18::1;::::0;;;;;;-1:-1:-1;;;;;5581:32:32;;;7000:40:18::1;::::0;::::1;5563:51:32::0;5630:18;;;5623:34;;;5536:18;;7000:40:18::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6985:55;;7059:7;7051:70;;;::::0;-1:-1:-1;;;7051:70:18;;8450:2:32;7051:70:18::1;::::0;::::1;8432:21:32::0;8489:2;8469:18;;;8462:30;8528:34;8508:18;;;8501:62;-1:-1:-1;;;8579:18:32;;;8572:48;8637:19;;7051:70:18::1;8248:414:32::0;7051:70:18::1;7139:45;7160:5;7167:7;7176;1210::20::0;1237:6;-1:-1:-1;;;;;1237:6:20;;1164:87;7176:7:18::1;7139:45;::::0;;-1:-1:-1;;;;;8925:15:32;;;8907:34;;8972:2;8957:18;;8950:34;;;;9020:15;;9000:18;;;8993:43;7139:45:18;;;;;;8857:2:32;7139:45:18;;::::1;6615:577;;6556:636:::0;:::o;8846:290::-;-1:-1:-1;;;;;8935:19:18;;8911:7;8935:19;;;:9;:19;;;;;;;;8931:198;;;8973:11;8987:24;9002:8;8987:14;:24::i;:::-;8973:38;;9033:15;9049:3;9033:20;;;;;;;;:::i;:::-;;;;;;;;;;;:34;;;9026:41;;;8846:290;;;:::o;2444:226:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;2525:6:::1;::::0;;;2508:23;;-1:-1:-1;;;;;;2508:23:20;;::::1;-1:-1:-1::0;;;;;2525:6:20;::::1;2508:23;::::0;;;2542:19:::1;::::0;;2584:22:::1;2602:4:::0;2584:15:::1;:22;:::i;:::-;2572:9;:34:::0;2659:1:::1;2643:6:::0;;2622:40:::1;::::0;-1:-1:-1;;;;;2643:6:20;;::::1;::::0;2622:40:::1;::::0;2659:1;;2622:40:::1;2444:226:::0;:::o;4652:595:18:-;1210:7:20;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;4754:19:18;::::1;;::::0;;;:9:::1;:19;::::0;;;;;::::1;;:28;4746:93;;;::::0;-1:-1:-1;;;4746:93:18;;9249:2:32;4746:93:18::1;::::0;::::1;9231:21:32::0;9288:2;9268:18;;;9261:30;9327:34;9307:18;;;9300:62;-1:-1:-1;;;9378:18:32;;;9371:50;9438:19;;4746:93:18::1;9047:416:32::0;4746:93:18::1;-1:-1:-1::0;;;;;4858:22:18;::::1;4850:91;;;::::0;-1:-1:-1;;;4850:91:18;;9670:2:32;4850:91:18::1;::::0;::::1;9652:21:32::0;9709:2;9689:18;;;9682:30;9748:34;9728:18;;;9721:62;9819:26;9799:18;;;9792:54;9863:19;;4850:91:18::1;9468:420:32::0;4850:91:18::1;4976:1;4960:13;:17;4952:83;;;::::0;-1:-1:-1;;;4952:83:18;;10095:2:32;4952:83:18::1;::::0;::::1;10077:21:32::0;10134:2;10114:18;;;10107:30;10173:34;10153:18;;;10146:62;-1:-1:-1;;;10224:18:32;;;10217:51;10285:19;;4952:83:18::1;9893:417:32::0;4952:83:18::1;-1:-1:-1::0;;;;;5048:19:18;;::::1;;::::0;;;:9:::1;:19;::::0;;;;;;;:26;;5070:4:::1;-1:-1:-1::0;;5048:26:18;;::::1;::::0;::::1;::::0;;;5106:36;;::::1;::::0;::::1;::::0;;;;;;;::::1;::::0;;;;;;;;;5085:15:::1;:58:::0;;;;::::1;::::0;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;;;;;5085:58:18::1;::::0;;;::::1;;::::0;;;;;;;;;;;;;;;;;;;5156:17:::1;:34:::0;;5106:36;;5048:19;5156:34:::1;::::0;5106:36;;5156:34:::1;:::i;:::-;::::0;;;-1:-1:-1;;5216:23:18::1;::::0;-1:-1:-1;;;;;5216:23:18;::::1;::::0;::::1;::::0;;;::::1;4652:595:::0;;:::o;2118:244:20:-;1210:7;1237:6;-1:-1:-1;;;;;1237:6:20;699:10:19;1384:23:20;1376:68;;;;-1:-1:-1;;;1376:68:20;;;;;;;:::i;:::-;-1:-1:-1;;;;;2207:22:20;::::1;2199:73;;;::::0;-1:-1:-1;;;2199:73:20;;10517:2:32;2199:73:20::1;::::0;::::1;10499:21:32::0;10556:2;10536:18;;;10529:30;10595:34;10575:18;;;10568:62;-1:-1:-1;;;10646:18:32;;;10639:36;10692:19;;2199:73:20::1;10315:402:32::0;2199:73:20::1;2309:6;::::0;;2288:38:::1;::::0;-1:-1:-1;;;;;2288:38:20;;::::1;::::0;2309:6;::::1;::::0;2288:38:::1;::::0;::::1;2337:6;:17:::0;;-1:-1:-1;;;;;;2337:17:20::1;-1:-1:-1::0;;;;;2337:17:20;;;::::1;::::0;;;::::1;::::0;;2118:244::o;9862:438:18:-;-1:-1:-1;;;;;9955:19:18;;9927:7;9955:19;;;:9;:19;;;;;;;;:27;;:19;:27;9947:96;;;;-1:-1:-1;;;9947:96:18;;10924:2:32;9947:96:18;;;10906:21:32;10963:2;10943:18;;;10936:30;11002:34;10982:18;;;10975:62;11073:26;11053:18;;;11046:54;11117:19;;9947:96:18;10722:420:32;9947:96:18;10056:11;;10080:190;10104:15;:22;10100:26;;10080:190;;;10182:8;-1:-1:-1;;;;;10152:38:18;:15;10168:1;10152:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:26;-1:-1:-1;;;;;10152:26:18;:38;10148:111;;10217:1;10211:7;;10238:5;;10148:111;10128:3;;;;:::i;:::-;;;;10080:190;;;-1:-1:-1;10289:3:18;9862:438;-1:-1:-1;;9862:438:18:o;196:173:32:-;264:20;;-1:-1:-1;;;;;313:31:32;;303:42;;293:70;;359:1;356;349:12;374:186;433:6;486:2;474:9;465:7;461:23;457:32;454:52;;;502:1;499;492:12;454:52;525:29;544:9;525:29;:::i;:::-;515:39;374:186;-1:-1:-1;;;374:186:32:o;565:873::-;790:2;842:21;;;912:13;;815:18;;;934:22;;;761:4;;790:2;975;;993:18;;;;1034:15;;;761:4;1077:335;1091:6;1088:1;1085:13;1077:335;;;1150:13;;1192:9;;-1:-1:-1;;;;;1188:35:32;1176:48;;1264:11;;;1258:18;1244:12;;;1237:40;1317:11;;1311:18;1297:12;;;1290:40;1359:4;1350:14;;;;1387:15;;;;1220:1;1106:9;1077:335;;;-1:-1:-1;1429:3:32;;565:873;-1:-1:-1;;;;;;;565:873:32:o;1843:180::-;1902:6;1955:2;1943:9;1934:7;1930:23;1926:32;1923:52;;;1971:1;1968;1961:12;1923:52;-1:-1:-1;1994:23:32;;1843:180;-1:-1:-1;1843:180:32:o;2028:254::-;2096:6;2104;2157:2;2145:9;2136:7;2132:23;2128:32;2125:52;;;2173:1;2170;2163:12;2125:52;2196:29;2215:9;2196:29;:::i;:::-;2186:39;2272:2;2257:18;;;;2244:32;;-1:-1:-1;;;2028:254:32:o;2287:127::-;2348:10;2343:3;2339:20;2336:1;2329:31;2379:4;2376:1;2369:15;2403:4;2400:1;2393:15;2419:127;2480:10;2475:3;2471:20;2468:1;2461:31;2511:4;2508:1;2501:15;2535:4;2532:1;2525:15;2551:128;2618:9;;;2639:11;;;2636:37;;;2653:18;;:::i;:::-;2551:128;;;;:::o;2684:217::-;2724:1;2750;2740:132;;2794:10;2789:3;2785:20;2782:1;2775:31;2829:4;2826:1;2819:15;2857:4;2854:1;2847:15;2740:132;-1:-1:-1;2886:9:32;;2684:217::o;2906:168::-;2979:9;;;3010;;3027:15;;;3021:22;;3007:37;2997:71;;3048:18;;:::i;3079:125::-;3144:9;;;3165:10;;;3162:36;;;3178:18;;:::i;3209:356::-;3411:2;3393:21;;;3430:18;;;3423:30;3489:34;3484:2;3469:18;;3462:62;3556:2;3541:18;;3209:356::o;3997:127::-;4058:10;4053:3;4049:20;4046:1;4039:31;4089:4;4086:1;4079:15;4113:4;4110:1;4103:15;5668:277;5735:6;5788:2;5776:9;5767:7;5763:23;5759:32;5756:52;;;5804:1;5801;5794:12;5756:52;5836:9;5830:16;5889:5;5882:13;5875:21;5868:5;5865:32;5855:60;;5911:1;5908;5901:12;7635:184;7705:6;7758:2;7746:9;7737:7;7733:23;7729:32;7726:52;;;7774:1;7771;7764:12;7726:52;-1:-1:-1;7797:16:32;;7635:184;-1:-1:-1;7635:184:32:o;11147:135::-;11186:3;11207:17;;;11204:43;;11227:18;;:::i;:::-;-1:-1:-1;11274:1:32;11263:13;;11147:135::o", "linkReferences": {}, "immutableReferences": { - "27449": [ + "27505": [ { "start": 471, "length": 32 @@ -434,30 +434,592 @@ "vestingStartUnix()": "f02c6d8f", "withdrawErc20(address)": "c7e42b1b" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_proveToken\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_admin\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"Erc20TokensWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"InvestorAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"InvestorRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amountClaimed\",\"type\":\"uint256\"}],\"name\":\"ProveClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"VestingEnabled\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_tokensToVest\",\"type\":\"uint256\"}],\"name\":\"addInvestor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"claim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enableVesting\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllVestedTokens\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"getAmountClaimed\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"getAmountToClaim\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getInvestorLibrary\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokensToVest\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"tokensClaimed\",\"type\":\"uint256\"}],\"internalType\":\"struct Vesting.Investor[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"getTokensToVest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"investors\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"lock\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proveToken\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"removeInvestor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalTokensToVest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"vestingEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"vestingStartUnix\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"withdrawErc20\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Erc20TokensWithdrawn(address,uint256,address)\":{\"params\":{\"amount\":\"tokens withdrawn.\",\"receiver\":\"address of msg.sender.\",\"token\":\"address of Erc20 token.\"}},\"InvestorAdded(address)\":{\"params\":{\"account\":\"is the wallet address of investor that was added to the investorLibrary.\"}},\"InvestorRemoved(address)\":{\"params\":{\"account\":\"is the wallet address of investor that was added to the investorLibrary.\"}},\"ProveClaimed(address,uint256)\":{\"params\":{\"account\":\"is the wallet address of msg.sender.\",\"amountClaimed\":\"is the amount of tokens the account claimed.\"}}},\"kind\":\"dev\",\"methods\":{\"addInvestor(address,uint256)\":{\"params\":{\"_account\":\"the wallet address of investor being added.\",\"_tokensToVest\":\"the amount of $PROVE that is being vested for that investor.\"}},\"claim()\":{\"details\":\"msg.sender must be the investor address\"},\"enableVesting()\":{\"details\":\"will set start time to vestingStartUnix. will set vestingEnabled to true.\"},\"getAllVestedTokens()\":{\"returns\":{\"_0\":\"uint256 total amount of tokens to vest.\"}},\"getAmountClaimed(address)\":{\"params\":{\"_account\":\"address of investor.\"},\"returns\":{\"_0\":\"uint256 amount of tokens claimed by account.\"}},\"getAmountToClaim(address)\":{\"params\":{\"_account\":\"address of investor.\"},\"returns\":{\"_0\":\"uint256 amount of tokens to claim.\"}},\"getInvestorLibrary()\":{\"returns\":{\"_0\":\"Investor[] memory the array of investor structs \"}},\"getTokensToVest(address)\":{\"params\":{\"_account\":\"address of investor\"},\"returns\":{\"_0\":\"uint256 investor's tokensToVest\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"removeInvestor(address)\":{\"params\":{\"_account\":\"the wallet address of investor that is being removed.\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdrawErc20(address)\":{\"details\":\"token address cannot be $PROVE\",\"params\":{\"token\":\"contract address of token we wish to remove.\"}}},\"version\":1},\"userdoc\":{\"events\":{\"Erc20TokensWithdrawn(address,uint256,address)\":{\"notice\":\"This event is emitted when withdrawErc20() is executed.\"},\"InvestorAdded(address)\":{\"notice\":\"This event is emitted when addInvestor() is successfully executed.\"},\"InvestorRemoved(address)\":{\"notice\":\"This event is emitted when removeInvestor() is successfully executed.\"},\"ProveClaimed(address,uint256)\":{\"notice\":\"This event is emitted when claim() is successfully executed.\"},\"VestingEnabled()\":{\"notice\":\"This event is emitted when enableVesting() is executed. Should only be executed once.\"}},\"kind\":\"user\",\"methods\":{\"addInvestor(address,uint256)\":{\"notice\":\"This function sets an address as true in the investors mapping and also pushes a new investor element to the Investor array.\"},\"claim()\":{\"notice\":\"Used to claim vested tokens.\"},\"constructor\":{\"notice\":\"Mapping to track investor addresses.\"},\"enableVesting()\":{\"notice\":\"This function starts the vesting period.\"},\"getAllVestedTokens()\":{\"notice\":\"This function returns the amount of total tokens this contract will vest\"},\"getAmountClaimed(address)\":{\"notice\":\"This function returns the amount of tokens an investor HAS claimed.\"},\"getAmountToClaim(address)\":{\"notice\":\"This function returns the amount of tokens to claim for a specified investor.\"},\"getInvestorLibrary()\":{\"notice\":\"This function returns the investor library array\"},\"getTokensToVest(address)\":{\"notice\":\"This function returns an investors tokensToVest (amount of $PROVE allocated to that investor)\"},\"removeInvestor(address)\":{\"notice\":\"This function removes an investor from the investorLibrary.\"},\"totalTokensToVest()\":{\"notice\":\"vesting enabled when true.\"},\"vestingEnabled()\":{\"notice\":\"block timestamp of when vesting has begun\"},\"vestingStartUnix()\":{\"notice\":\"The vested token address.\"},\"withdrawErc20(address)\":{\"notice\":\"Is used to remove ERC20 tokens from the contract.\"}},\"notice\":\"This contract will hold $PROVE tokens in escrow This contract will facilitate the private sale investor vesting tokens This contract will follow a strict vesting schedule This contract will follow a claim model\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/Vesting.sol\":\"Vesting\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/Vesting.sol\":{\"keccak256\":\"0x3fb59f7d29ccc67ec5aa7b9c064b73734c50c7a68a5f4cac138df7922dfc3356\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://0fc8b6e747264c821ede1849cc1c257d97de3006a78b5de396a3837d81377907\",\"dweb:/ipfs/QmU4HUzVvgQGUSS2vknorfoLMvfqvz1F5Whr4mW9x46w7w\"]},\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_proveToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": false + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "address", + "name": "receiver", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "Erc20TokensWithdrawn", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "InvestorAdded", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "InvestorRemoved", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "previousOwner", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "newOwner", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "OwnershipTransferred", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address", + "indexed": false + }, + { + "internalType": "uint256", + "name": "amountClaimed", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "ProveClaimed", + "anonymous": false + }, + { + "inputs": [], + "type": "event", + "name": "VestingEnabled", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_tokensToVest", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "addInvestor" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "claim" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "enableVesting" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "getAllVestedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getAmountClaimed", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getAmountToClaim", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "getInvestorLibrary", + "outputs": [ + { + "internalType": "struct Vesting.Investor[]", + "name": "", + "type": "tuple[]", + "components": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensToVest", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensClaimed", + "type": "uint256" + } + ] + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getTokensToVest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "investors", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "lock" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "proveToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeInvestor" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "renounceOwnership" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "totalTokensToVest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transferOwnership" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "vestingEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "vestingStartUnix", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withdrawErc20" + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "addInvestor(address,uint256)": { + "params": { + "_account": "the wallet address of investor being added.", + "_tokensToVest": "the amount of $PROVE that is being vested for that investor." + } + }, + "claim()": { + "details": "msg.sender must be the investor address" + }, + "enableVesting()": { + "details": "will set start time to vestingStartUnix. will set vestingEnabled to true." + }, + "getAllVestedTokens()": { + "returns": { + "_0": "uint256 total amount of tokens to vest." + } + }, + "getAmountClaimed(address)": { + "params": { + "_account": "address of investor." + }, + "returns": { + "_0": "uint256 amount of tokens claimed by account." + } + }, + "getAmountToClaim(address)": { + "params": { + "_account": "address of investor." + }, + "returns": { + "_0": "uint256 amount of tokens to claim." + } + }, + "getInvestorLibrary()": { + "returns": { + "_0": "Investor[] memory the array of investor structs " + } + }, + "getTokensToVest(address)": { + "params": { + "_account": "address of investor" + }, + "returns": { + "_0": "uint256 investor's tokensToVest" + } + }, + "owner()": { + "details": "Returns the address of the current owner." + }, + "removeInvestor(address)": { + "params": { + "_account": "the wallet address of investor that is being removed." + } + }, + "renounceOwnership()": { + "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + }, + "transferOwnership(address)": { + "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." + }, + "withdrawErc20(address)": { + "details": "token address cannot be $PROVE", + "params": { + "token": "contract address of token we wish to remove." + } + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": { + "addInvestor(address,uint256)": { + "notice": "This function sets an address as true in the investors mapping and also pushes a new investor element to the Investor array." + }, + "claim()": { + "notice": "Used to claim vested tokens." + }, + "constructor": { + "notice": "Mapping to track investor addresses." + }, + "enableVesting()": { + "notice": "This function starts the vesting period." + }, + "getAllVestedTokens()": { + "notice": "This function returns the amount of total tokens this contract will vest" + }, + "getAmountClaimed(address)": { + "notice": "This function returns the amount of tokens an investor HAS claimed." + }, + "getAmountToClaim(address)": { + "notice": "This function returns the amount of tokens to claim for a specified investor." + }, + "getInvestorLibrary()": { + "notice": "This function returns the investor library array" + }, + "getTokensToVest(address)": { + "notice": "This function returns an investors tokensToVest (amount of $PROVE allocated to that investor)" + }, + "removeInvestor(address)": { + "notice": "This function removes an investor from the investorLibrary." + }, + "totalTokensToVest()": { + "notice": "vesting enabled when true." + }, + "vestingEnabled()": { + "notice": "block timestamp of when vesting has begun" + }, + "vestingStartUnix()": { + "notice": "The vested token address." + }, + "withdrawErc20(address)": { + "notice": "Is used to remove ERC20 tokens from the contract." + } + }, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "src/Vesting.sol": "Vesting" + }, + "libraries": {} + }, + "sources": { + "src/Vesting.sol": { + "keccak256": "0x3fb59f7d29ccc67ec5aa7b9c064b73734c50c7a68a5f4cac138df7922dfc3356", + "urls": [ + "bzz-raw://0fc8b6e747264c821ede1849cc1c257d97de3006a78b5de396a3837d81377907", + "dweb:/ipfs/QmU4HUzVvgQGUSS2vknorfoLMvfqvz1F5Whr4mW9x46w7w" + ], + "license": "UNLICENSED" + }, + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/extensions/Ownable.sol": { + "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", + "urls": [ + "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", + "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" + ], + "license": "MIT" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "src/Vesting.sol", - "id": 28041, + "id": 28097, "exportedSymbols": { "Context": [ - 28066 + 28122 ], "IERC20": [ - 29102 + 29158 ], "Ownable": [ - 28214 + 28270 ], "Vesting": [ - 28040 + 28096 ] }, "nodeType": "SourceUnit", - "src": "40:10516:16", + "src": "40:10516:18", "nodes": [ { - "id": 27441, + "id": 27497, "nodeType": "PragmaDirective", - "src": "40:24:16", + "src": "40:24:18", + "nodes": [], "literals": [ "solidity", "^", @@ -466,35 +1028,37 @@ ] }, { - "id": 27442, + "id": 27498, "nodeType": "ImportDirective", - "src": "68:34:16", + "src": "68:34:18", + "nodes": [], "absolutePath": "src/extensions/Ownable.sol", "file": "./extensions/Ownable.sol", "nameLocation": "-1:-1:-1", - "scope": 28041, - "sourceUnit": 28215, + "scope": 28097, + "sourceUnit": 28271, "symbolAliases": [], "unitAlias": "" }, { - "id": 27444, + "id": 27500, "nodeType": "ImportDirective", - "src": "104:47:16", + "src": "104:47:18", + "nodes": [], "absolutePath": "src/interfaces/IERC20.sol", "file": "./interfaces/IERC20.sol", "nameLocation": "-1:-1:-1", - "scope": 28041, - "sourceUnit": 29111, + "scope": 28097, + "sourceUnit": 29167, "symbolAliases": [ { "foreign": { - "id": 27443, + "id": 27499, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "112:6:16", + "referencedDeclaration": 29158, + "src": "112:6:18", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" @@ -503,20 +1067,21 @@ "unitAlias": "" }, { - "id": 28040, + "id": 28096, "nodeType": "ContractDefinition", - "src": "490:10064:16", + "src": "490:10064:18", "nodes": [ { - "id": 27449, + "id": 27505, "nodeType": "VariableDeclaration", - "src": "601:35:16", + "src": "601:35:18", + "nodes": [], "constant": false, "functionSelector": "85d4cad3", "mutability": "immutable", "name": "proveToken", - "nameLocation": "626:10:16", - "scope": 28040, + "nameLocation": "626:10:18", + "scope": 28096, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -524,10 +1089,10 @@ "typeString": "address" }, "typeName": { - "id": 27448, + "id": 27504, "name": "address", "nodeType": "ElementaryTypeName", - "src": "601:7:16", + "src": "601:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -537,21 +1102,22 @@ "visibility": "public" }, { - "id": 27452, + "id": 27508, "nodeType": "VariableDeclaration", - "src": "684:31:16", + "src": "684:31:18", + "nodes": [], "constant": false, "documentation": { - "id": 27450, + "id": 27506, "nodeType": "StructuredDocumentation", - "src": "639:39:16", + "src": "639:39:18", "text": "@notice The vested token address." }, "functionSelector": "f02c6d8f", "mutability": "mutable", "name": "vestingStartUnix", - "nameLocation": "699:16:16", - "scope": 28040, + "nameLocation": "699:16:18", + "scope": 28096, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -559,10 +1125,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27451, + "id": 27507, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "684:7:16", + "src": "684:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -571,21 +1137,22 @@ "visibility": "public" }, { - "id": 27455, + "id": 27511, "nodeType": "VariableDeclaration", - "src": "777:26:16", + "src": "777:26:18", + "nodes": [], "constant": false, "documentation": { - "id": 27453, + "id": 27509, "nodeType": "StructuredDocumentation", - "src": "718:53:16", + "src": "718:53:18", "text": "@notice block timestamp of when vesting has begun" }, "functionSelector": "7f87bbd6", "mutability": "mutable", "name": "vestingEnabled", - "nameLocation": "789:14:16", - "scope": 28040, + "nameLocation": "789:14:18", + "scope": 28096, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -593,10 +1160,10 @@ "typeString": "bool" }, "typeName": { - "id": 27454, + "id": 27510, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "777:4:16", + "src": "777:4:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -605,21 +1172,22 @@ "visibility": "public" }, { - "id": 27458, + "id": 27514, "nodeType": "VariableDeclaration", - "src": "857:32:16", + "src": "857:32:18", + "nodes": [], "constant": false, "documentation": { - "id": 27456, + "id": 27512, "nodeType": "StructuredDocumentation", - "src": "811:40:16", + "src": "811:40:18", "text": "@notice vesting enabled when true." }, "functionSelector": "a145f1b5", "mutability": "mutable", "name": "totalTokensToVest", - "nameLocation": "872:17:16", - "scope": 28040, + "nameLocation": "872:17:18", + "scope": 28096, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -627,10 +1195,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27457, + "id": 27513, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "857:7:16", + "src": "857:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -639,63 +1207,68 @@ "visibility": "public" }, { - "id": 27462, + "id": 27518, "nodeType": "VariableDeclaration", - "src": "898:26:16", + "src": "898:26:18", + "nodes": [], "constant": false, "mutability": "mutable", "name": "investorLibrary", - "nameLocation": "909:15:16", - "scope": 28040, + "nameLocation": "909:15:18", + "scope": 28096, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 27460, + "id": 27516, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27459, + "id": 27515, "name": "Investor", + "nameLocations": [ + "898:8:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27469, - "src": "898:8:16" + "referencedDeclaration": 27525, + "src": "898:8:18" }, - "referencedDeclaration": 27469, - "src": "898:8:16", + "referencedDeclaration": 27525, + "src": "898:8:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 27461, + "id": 27517, "nodeType": "ArrayTypeName", - "src": "898:10:16", + "src": "898:10:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" }, { - "id": 27469, + "id": 27525, "nodeType": "StructDefinition", - "src": "1208:113:16", + "src": "1208:113:18", + "nodes": [], "canonicalName": "Vesting.Investor", "members": [ { "constant": false, - "id": 27464, + "id": 27520, "mutability": "mutable", "name": "account", - "nameLocation": "1243:7:16", + "nameLocation": "1243:7:18", "nodeType": "VariableDeclaration", - "scope": 27469, - "src": "1235:15:16", + "scope": 27525, + "src": "1235:15:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -703,10 +1276,10 @@ "typeString": "address" }, "typeName": { - "id": 27463, + "id": 27519, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1235:7:16", + "src": "1235:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -717,13 +1290,13 @@ }, { "constant": false, - "id": 27466, + "id": 27522, "mutability": "mutable", "name": "tokensToVest", - "nameLocation": "1269:12:16", + "nameLocation": "1269:12:18", "nodeType": "VariableDeclaration", - "scope": 27469, - "src": "1261:20:16", + "scope": 27525, + "src": "1261:20:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -731,10 +1304,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27465, + "id": 27521, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1261:7:16", + "src": "1261:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -744,13 +1317,13 @@ }, { "constant": false, - "id": 27468, + "id": 27524, "mutability": "mutable", "name": "tokensClaimed", - "nameLocation": "1300:13:16", + "nameLocation": "1300:13:18", "nodeType": "VariableDeclaration", - "scope": 27469, - "src": "1292:21:16", + "scope": 27525, + "src": "1292:21:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -758,10 +1331,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27467, + "id": 27523, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1292:7:16", + "src": "1292:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -771,20 +1344,21 @@ } ], "name": "Investor", - "nameLocation": "1215:8:16", - "scope": 28040, + "nameLocation": "1215:8:18", + "scope": 28096, "visibility": "public" }, { - "id": 27473, + "id": 27529, "nodeType": "VariableDeclaration", - "src": "1329:41:16", + "src": "1329:41:18", + "nodes": [], "constant": false, "functionSelector": "6f7bc9be", "mutability": "mutable", "name": "investors", - "nameLocation": "1361:9:16", - "scope": 28040, + "nameLocation": "1361:9:18", + "scope": 28096, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -792,28 +1366,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 27472, + "id": 27528, "keyType": { - "id": 27470, + "id": 27526, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1337:7:16", + "src": "1337:7:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1329:24:16", + "src": "1329:24:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 27471, + "id": 27527, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1348:4:16", + "src": "1348:4:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -823,28 +1397,30 @@ "visibility": "public" }, { - "id": 27490, + "id": 27546, "nodeType": "FunctionDefinition", - "src": "1761:128:16", + "src": "1761:128:18", + "nodes": [], "body": { - "id": 27489, + "id": 27545, "nodeType": "Block", - "src": "1810:79:16", + "src": "1810:79:18", + "nodes": [], "statements": [ { "expression": { - "id": 27483, + "id": 27539, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27481, + "id": 27537, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27449, - "src": "1821:10:16", + "referencedDeclaration": 27505, + "src": "1821:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -853,37 +1429,37 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27482, + "id": 27538, "name": "_proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27476, - "src": "1834:11:16", + "referencedDeclaration": 27532, + "src": "1834:11:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1821:24:16", + "src": "1821:24:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 27484, + "id": 27540, "nodeType": "ExpressionStatement", - "src": "1821:24:16" + "src": "1821:24:18" }, { "expression": { "arguments": [ { - "id": 27486, + "id": 27542, "name": "_admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27478, - "src": "1874:6:16", + "referencedDeclaration": 27534, + "src": "1874:6:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -897,42 +1473,43 @@ "typeString": "address" } ], - "id": 27485, + "id": 27541, "name": "transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28179, - "src": "1856:17:16", + "referencedDeclaration": 28235, + "src": "1856:17:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 27487, + "id": 27543, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1856:25:16", + "src": "1856:25:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27488, + "id": 27544, "nodeType": "ExpressionStatement", - "src": "1856:25:16" + "src": "1856:25:18" } ] }, "documentation": { - "id": 27474, + "id": 27530, "nodeType": "StructuredDocumentation", - "src": "1379:48:16", + "src": "1379:48:18", "text": "@notice Mapping to track investor addresses." }, "implemented": true, @@ -941,18 +1518,18 @@ "name": "", "nameLocation": "-1:-1:-1", "parameters": { - "id": 27479, + "id": 27535, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27476, + "id": 27532, "mutability": "mutable", "name": "_proveToken", - "nameLocation": "1781:11:16", + "nameLocation": "1781:11:18", "nodeType": "VariableDeclaration", - "scope": 27490, - "src": "1773:19:16", + "scope": 27546, + "src": "1773:19:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -960,10 +1537,10 @@ "typeString": "address" }, "typeName": { - "id": 27475, + "id": 27531, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1773:7:16", + "src": "1773:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -974,13 +1551,13 @@ }, { "constant": false, - "id": 27478, + "id": 27534, "mutability": "mutable", "name": "_admin", - "nameLocation": "1802:6:16", + "nameLocation": "1802:6:18", "nodeType": "VariableDeclaration", - "scope": 27490, - "src": "1794:14:16", + "scope": 27546, + "src": "1794:14:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -988,10 +1565,10 @@ "typeString": "address" }, "typeName": { - "id": 27477, + "id": 27533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1794:7:16", + "src": "1794:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1001,27 +1578,29 @@ "visibility": "internal" } ], - "src": "1772:37:16" + "src": "1772:37:18" }, "returnParameters": { - "id": 27480, + "id": 27536, "nodeType": "ParameterList", "parameters": [], - "src": "1810:0:16" + "src": "1810:0:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 27505, + "id": 27561, "nodeType": "ModifierDefinition", - "src": "2017:155:16", + "src": "2017:155:18", + "nodes": [], "body": { - "id": 27504, + "id": 27560, "nodeType": "Block", - "src": "2041:131:16", + "src": "2041:131:18", + "nodes": [], "statements": [ { "expression": { @@ -1031,46 +1610,47 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27499, + "id": 27555, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 27494, + "id": 27550, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "2060:9:16", + "referencedDeclaration": 27529, + "src": "2060:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27497, + "id": 27553, "indexExpression": { "expression": { - "id": 27495, + "id": 27551, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "2070:3:16", + "src": "2070:3:18", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 27496, + "id": 27552, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2074:6:18", "memberName": "sender", "nodeType": "MemberAccess", - "src": "2070:10:16", + "src": "2070:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1081,7 +1661,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2060:21:16", + "src": "2060:21:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1091,21 +1671,21 @@ "operator": "==", "rightExpression": { "hexValue": "74727565", - "id": 27498, + "id": 27554, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2085:4:16", + "src": "2085:4:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "2060:29:16", + "src": "2060:29:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1113,14 +1693,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e73656e646572206d75737420626520616e20696e766573746f72", - "id": 27500, + "id": 27556, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2091:60:16", + "src": "2091:60:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_04c0e7337b94cd08ab709ab9e01a52972b8997f541f0ec03cfdf895720fa5020", "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" @@ -1139,7 +1719,7 @@ "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" } ], - "id": 27493, + "id": 27549, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1147,83 +1727,85 @@ -18 ], "referencedDeclaration": -18, - "src": "2052:7:16", + "src": "2052:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27501, + "id": 27557, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2052:100:16", + "src": "2052:100:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27502, + "id": 27558, "nodeType": "ExpressionStatement", - "src": "2052:100:16" + "src": "2052:100:18" }, { - "id": 27503, + "id": 27559, "nodeType": "PlaceholderStatement", - "src": "2163:1:16" + "src": "2163:1:18" } ] }, "documentation": { - "id": 27491, + "id": 27547, "nodeType": "StructuredDocumentation", - "src": "1955:56:16", + "src": "1955:56:18", "text": "@dev modifier to check if msg.sender is an investor." }, "name": "onlyInvestor", - "nameLocation": "2026:12:16", + "nameLocation": "2026:12:18", "parameters": { - "id": 27492, + "id": 27548, "nodeType": "ParameterList", "parameters": [], - "src": "2038:2:16" + "src": "2038:2:18" }, "virtual": false, "visibility": "internal" }, { - "id": 27512, + "id": 27568, "nodeType": "EventDefinition", - "src": "2443:59:16", + "src": "2443:59:18", + "nodes": [], "anonymous": false, "documentation": { - "id": 27506, + "id": 27562, "nodeType": "StructuredDocumentation", - "src": "2229:208:16", + "src": "2229:208:18", "text": "@notice This event is emitted when claim() is successfully executed.\n @param account is the wallet address of msg.sender.\n @param amountClaimed is the amount of tokens the account claimed." }, "eventSelector": "c9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d", "name": "ProveClaimed", - "nameLocation": "2449:12:16", + "nameLocation": "2449:12:18", "parameters": { - "id": 27511, + "id": 27567, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27508, + "id": 27564, "indexed": false, "mutability": "mutable", "name": "account", - "nameLocation": "2470:7:16", + "nameLocation": "2470:7:18", "nodeType": "VariableDeclaration", - "scope": 27512, - "src": "2462:15:16", + "scope": 27568, + "src": "2462:15:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1231,10 +1813,10 @@ "typeString": "address" }, "typeName": { - "id": 27507, + "id": 27563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2462:7:16", + "src": "2462:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1245,14 +1827,14 @@ }, { "constant": false, - "id": 27510, + "id": 27566, "indexed": false, "mutability": "mutable", "name": "amountClaimed", - "nameLocation": "2487:13:16", + "nameLocation": "2487:13:18", "nodeType": "VariableDeclaration", - "scope": 27512, - "src": "2479:21:16", + "scope": 27568, + "src": "2479:21:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1260,10 +1842,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27509, + "id": 27565, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2479:7:16", + "src": "2479:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1272,37 +1854,38 @@ "visibility": "internal" } ], - "src": "2461:40:16" + "src": "2461:40:18" } }, { - "id": 27517, + "id": 27573, "nodeType": "EventDefinition", - "src": "2691:45:16", + "src": "2691:45:18", + "nodes": [], "anonymous": false, "documentation": { - "id": 27513, + "id": 27569, "nodeType": "StructuredDocumentation", - "src": "2510:175:16", + "src": "2510:175:18", "text": "@notice This event is emitted when addInvestor() is successfully executed.\n @param account is the wallet address of investor that was added to the investorLibrary." }, "eventSelector": "62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f", "name": "InvestorAdded", - "nameLocation": "2697:13:16", + "nameLocation": "2697:13:18", "parameters": { - "id": 27516, + "id": 27572, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27515, + "id": 27571, "indexed": true, "mutability": "mutable", "name": "account", - "nameLocation": "2727:7:16", + "nameLocation": "2727:7:18", "nodeType": "VariableDeclaration", - "scope": 27517, - "src": "2711:23:16", + "scope": 27573, + "src": "2711:23:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1310,10 +1893,10 @@ "typeString": "address" }, "typeName": { - "id": 27514, + "id": 27570, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2711:7:16", + "src": "2711:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1323,37 +1906,38 @@ "visibility": "internal" } ], - "src": "2710:25:16" + "src": "2710:25:18" } }, { - "id": 27522, + "id": 27578, "nodeType": "EventDefinition", - "src": "2928:47:16", + "src": "2928:47:18", + "nodes": [], "anonymous": false, "documentation": { - "id": 27518, + "id": 27574, "nodeType": "StructuredDocumentation", - "src": "2744:178:16", + "src": "2744:178:18", "text": "@notice This event is emitted when removeInvestor() is successfully executed.\n @param account is the wallet address of investor that was added to the investorLibrary." }, "eventSelector": "ba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d", "name": "InvestorRemoved", - "nameLocation": "2934:15:16", + "nameLocation": "2934:15:18", "parameters": { - "id": 27521, + "id": 27577, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27520, + "id": 27576, "indexed": true, "mutability": "mutable", "name": "account", - "nameLocation": "2966:7:16", + "nameLocation": "2966:7:18", "nodeType": "VariableDeclaration", - "scope": 27522, - "src": "2950:23:16", + "scope": 27578, + "src": "2950:23:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1361,10 +1945,10 @@ "typeString": "address" }, "typeName": { - "id": 27519, + "id": 27575, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2950:7:16", + "src": "2950:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1374,37 +1958,38 @@ "visibility": "internal" } ], - "src": "2949:25:16" + "src": "2949:25:18" } }, { - "id": 27531, + "id": 27587, "nodeType": "EventDefinition", - "src": "3191:76:16", + "src": "3191:76:18", + "nodes": [], "anonymous": false, "documentation": { - "id": 27523, + "id": 27579, "nodeType": "StructuredDocumentation", - "src": "2983:202:16", + "src": "2983:202:18", "text": "@notice This event is emitted when withdrawErc20() is executed.\n @param token address of Erc20 token.\n @param amount tokens withdrawn.\n @param receiver address of msg.sender." }, "eventSelector": "3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f", "name": "Erc20TokensWithdrawn", - "nameLocation": "3197:20:16", + "nameLocation": "3197:20:18", "parameters": { - "id": 27530, + "id": 27586, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27525, + "id": 27581, "indexed": false, "mutability": "mutable", "name": "token", - "nameLocation": "3226:5:16", + "nameLocation": "3226:5:18", "nodeType": "VariableDeclaration", - "scope": 27531, - "src": "3218:13:16", + "scope": 27587, + "src": "3218:13:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1412,10 +1997,10 @@ "typeString": "address" }, "typeName": { - "id": 27524, + "id": 27580, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3218:7:16", + "src": "3218:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1426,14 +2011,14 @@ }, { "constant": false, - "id": 27527, + "id": 27583, "indexed": false, "mutability": "mutable", "name": "amount", - "nameLocation": "3241:6:16", + "nameLocation": "3241:6:18", "nodeType": "VariableDeclaration", - "scope": 27531, - "src": "3233:14:16", + "scope": 27587, + "src": "3233:14:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1441,10 +2026,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27526, + "id": 27582, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3233:7:16", + "src": "3233:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1454,14 +2039,14 @@ }, { "constant": false, - "id": 27529, + "id": 27585, "indexed": false, "mutability": "mutable", "name": "receiver", - "nameLocation": "3257:8:16", + "nameLocation": "3257:8:18", "nodeType": "VariableDeclaration", - "scope": 27531, - "src": "3249:16:16", + "scope": 27587, + "src": "3249:16:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1469,10 +2054,10 @@ "typeString": "address" }, "typeName": { - "id": 27528, + "id": 27584, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3249:7:16", + "src": "3249:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1482,49 +2067,52 @@ "visibility": "internal" } ], - "src": "3217:49:16" + "src": "3217:49:18" } }, { - "id": 27534, + "id": 27590, "nodeType": "EventDefinition", - "src": "3378:23:16", + "src": "3378:23:18", + "nodes": [], "anonymous": false, "documentation": { - "id": 27532, + "id": 27588, "nodeType": "StructuredDocumentation", - "src": "3275:97:16", + "src": "3275:97:18", "text": "@notice This event is emitted when enableVesting() is executed. Should only be executed once." }, "eventSelector": "f78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa3", "name": "VestingEnabled", - "nameLocation": "3384:14:16", + "nameLocation": "3384:14:18", "parameters": { - "id": 27533, + "id": 27589, "nodeType": "ParameterList", "parameters": [], - "src": "3398:2:16" + "src": "3398:2:18" } }, { - "id": 27592, + "id": 27648, "nodeType": "FunctionDefinition", - "src": "3567:699:16", + "src": "3567:699:18", + "nodes": [], "body": { - "id": 27591, + "id": 27647, "nodeType": "Block", - "src": "3608:658:16", + "src": "3608:658:18", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 27541, + "id": 27597, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27455, - "src": "3627:14:16", + "referencedDeclaration": 27511, + "src": "3627:14:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1532,14 +2120,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a636c61696d28292076657374696e67206973206e6f7420656e61626c6564", - "id": 27542, + "id": 27598, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3643:45:16", + "src": "3643:45:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_34ce9ff9fcf1e453c578e481f1424d1ad92317cc4ad3678a8839da76e7fbb7d6", "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" @@ -1558,7 +2146,7 @@ "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" } ], - "id": 27540, + "id": 27596, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1566,45 +2154,46 @@ -18 ], "referencedDeclaration": -18, - "src": "3619:7:16", + "src": "3619:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27543, + "id": 27599, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3619:70:16", + "src": "3619:70:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27544, + "id": 27600, "nodeType": "ExpressionStatement", - "src": "3619:70:16" + "src": "3619:70:18" }, { "assignments": [ - 27546 + 27602 ], "declarations": [ { "constant": false, - "id": 27546, + "id": 27602, "mutability": "mutable", "name": "amountToClaim", - "nameLocation": "3708:13:16", + "nameLocation": "3708:13:18", "nodeType": "VariableDeclaration", - "scope": 27591, - "src": "3700:21:16", + "scope": 27647, + "src": "3700:21:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1612,10 +2201,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27545, + "id": 27601, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3700:7:16", + "src": "3700:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1624,30 +2213,31 @@ "visibility": "internal" } ], - "id": 27551, + "id": 27607, "initialValue": { "arguments": [ { "expression": { - "id": 27548, + "id": 27604, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "3741:3:16", + "src": "3741:3:18", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 27549, + "id": 27605, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3745:6:18", "memberName": "sender", "nodeType": "MemberAccess", - "src": "3741:10:16", + "src": "3741:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1661,26 +2251,27 @@ "typeString": "address" } ], - "id": 27547, + "id": 27603, "name": "getAmountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27923, - "src": "3724:16:16", + "referencedDeclaration": 27979, + "src": "3724:16:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 27550, + "id": 27606, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3724:28:16", + "src": "3724:28:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1688,7 +2279,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "3700:52:16" + "src": "3700:52:18" }, { "expression": { @@ -1698,18 +2289,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27555, + "id": 27611, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27553, + "id": 27609, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27546, - "src": "3771:13:16", + "referencedDeclaration": 27602, + "src": "3771:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1719,21 +2310,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 27554, + "id": 27610, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3787:1:16", + "src": "3787:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3771:17:16", + "src": "3771:17:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1741,14 +2332,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686173206e6f20746f6b656e7320746f20636c61696d", - "id": 27556, + "id": 27612, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3790:54:16", + "src": "3790:54:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_7fe10741cbe6c2a9cecbadf80743676cd6f5fd9119dd5a58d21ffa6d6e330a51", "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" @@ -1767,7 +2358,7 @@ "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" } ], - "id": 27552, + "id": 27608, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1775,30 +2366,31 @@ -18 ], "referencedDeclaration": -18, - "src": "3763:7:16", + "src": "3763:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27557, + "id": 27613, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3763:82:16", + "src": "3763:82:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27558, + "id": 27614, "nodeType": "ExpressionStatement", - "src": "3763:82:16" + "src": "3763:82:18" }, { "expression": { @@ -1807,37 +2399,38 @@ "arguments": [ { "expression": { - "id": 27564, + "id": 27620, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "3926:3:16", + "src": "3926:3:18", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 27565, + "id": 27621, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3930:6:18", "memberName": "sender", "nodeType": "MemberAccess", - "src": "3926:10:16", + "src": "3926:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27566, + "id": 27622, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27546, - "src": "3938:13:16", + "referencedDeclaration": 27602, + "src": "3938:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1858,12 +2451,12 @@ "expression": { "arguments": [ { - "id": 27561, + "id": 27617, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27449, - "src": "3905:10:16", + "referencedDeclaration": 27505, + "src": "3905:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1877,55 +2470,58 @@ "typeString": "address" } ], - "id": 27560, + "id": 27616, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "3898:6:16", + "referencedDeclaration": 29158, + "src": "3898:6:18", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 27562, + "id": 27618, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3898:18:16", + "src": "3898:18:18", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 27563, + "id": 27619, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3917:8:18", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 29051, - "src": "3898:27:16", + "referencedDeclaration": 29107, + "src": "3898:27:18", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 27567, + "id": 27623, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3898:54:16", + "src": "3898:54:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1934,14 +2530,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e7375636365737366756c", - "id": 27568, + "id": 27624, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3954:44:16", + "src": "3954:44:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1582297afdf7bee42b6ca3b96d51a42caca872f6fd9c2b28e52da0c647e180a4", "typeString": "literal_string \"Vesting.sol::claim() transfer unsuccessful\"" @@ -1960,7 +2556,7 @@ "typeString": "literal_string \"Vesting.sol::claim() transfer unsuccessful\"" } ], - "id": 27559, + "id": 27615, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1968,45 +2564,46 @@ -18 ], "referencedDeclaration": -18, - "src": "3890:7:16", + "src": "3890:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27569, + "id": 27625, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3890:109:16", + "src": "3890:109:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27570, + "id": 27626, "nodeType": "ExpressionStatement", - "src": "3890:109:16" + "src": "3890:109:18" }, { "assignments": [ - 27572 + 27628 ], "declarations": [ { "constant": false, - "id": 27572, + "id": 27628, "mutability": "mutable", "name": "idx", - "nameLocation": "4063:3:16", + "nameLocation": "4063:3:18", "nodeType": "VariableDeclaration", - "scope": 27591, - "src": "4055:11:16", + "scope": 27647, + "src": "4055:11:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2014,10 +2611,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27571, + "id": 27627, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4055:7:16", + "src": "4055:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2026,30 +2623,31 @@ "visibility": "internal" } ], - "id": 27577, + "id": 27633, "initialValue": { "arguments": [ { "expression": { - "id": 27574, + "id": 27630, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "4084:3:16", + "src": "4084:3:18", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 27575, + "id": 27631, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4088:6:18", "memberName": "sender", "nodeType": "MemberAccess", - "src": "4084:10:16", + "src": "4084:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2063,26 +2661,27 @@ "typeString": "address" } ], - "id": 27573, + "id": 27629, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28028, - "src": "4069:14:16", + "referencedDeclaration": 28084, + "src": "4069:14:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 27576, + "id": 27632, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4069:26:16", + "src": "4069:26:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2090,11 +2689,11 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "4055:40:16" + "src": "4055:40:18" }, { "expression": { - "id": 27583, + "id": 27639, "isConstant": false, "isLValue": false, "isPure": false, @@ -2102,25 +2701,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 27578, + "id": 27634, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "4150:15:16", + "referencedDeclaration": 27518, + "src": "4150:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27580, + "id": 27636, "indexExpression": { - "id": 27579, + "id": 27635, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27572, - "src": "4166:3:16", + "referencedDeclaration": 27628, + "src": "4166:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2131,21 +2730,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4150:20:16", + "src": "4150:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27581, + "id": 27637, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, + "memberLocation": "4171:13:18", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "4150:34:16", + "referencedDeclaration": 27524, + "src": "4150:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2154,63 +2754,64 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 27582, + "id": 27638, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27546, - "src": "4188:13:16", + "referencedDeclaration": 27602, + "src": "4188:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4150:51:16", + "src": "4150:51:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27584, + "id": 27640, "nodeType": "ExpressionStatement", - "src": "4150:51:16" + "src": "4150:51:18" }, { "eventCall": { "arguments": [ { "expression": { - "id": 27586, + "id": 27642, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, - "src": "4232:3:16", + "src": "4232:3:18", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 27587, + "id": 27643, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4236:6:18", "memberName": "sender", "nodeType": "MemberAccess", - "src": "4232:10:16", + "src": "4232:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27588, + "id": 27644, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27546, - "src": "4244:13:16", + "referencedDeclaration": 27602, + "src": "4244:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2228,42 +2829,43 @@ "typeString": "uint256" } ], - "id": 27585, + "id": 27641, "name": "ProveClaimed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27512, - "src": "4219:12:16", + "referencedDeclaration": 27568, + "src": "4219:12:18", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 27589, + "id": 27645, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4219:39:16", + "src": "4219:39:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27590, + "id": 27646, "nodeType": "EmitStatement", - "src": "4214:44:16" + "src": "4214:44:18" } ] }, "documentation": { - "id": 27535, + "id": 27591, "nodeType": "StructuredDocumentation", - "src": "3467:94:16", + "src": "3467:94:18", "text": "@notice Used to claim vested tokens.\n @dev msg.sender must be the investor address" }, "functionSelector": "4e71d92d", @@ -2272,46 +2874,51 @@ "modifiers": [ { "arguments": [], - "id": 27538, + "id": 27594, "kind": "modifierInvocation", "modifierName": { - "id": 27537, + "id": 27593, "name": "onlyInvestor", + "nameLocations": [ + "3593:12:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27505, - "src": "3593:12:16" + "referencedDeclaration": 27561, + "src": "3593:12:18" }, "nodeType": "ModifierInvocation", - "src": "3593:14:16" + "src": "3593:14:18" } ], "name": "claim", - "nameLocation": "3576:5:16", + "nameLocation": "3576:5:18", "parameters": { - "id": 27536, + "id": 27592, "nodeType": "ParameterList", "parameters": [], - "src": "3581:2:16" + "src": "3581:2:18" }, "returnParameters": { - "id": 27539, + "id": 27595, "nodeType": "ParameterList", "parameters": [], - "src": "3608:0:16" + "src": "3608:0:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27653, + "id": 27709, "nodeType": "FunctionDefinition", - "src": "4652:595:16", + "src": "4652:595:18", + "nodes": [], "body": { - "id": 27652, + "id": 27708, "nodeType": "Block", - "src": "4735:512:16", + "src": "4735:512:18", + "nodes": [], "statements": [ { "expression": { @@ -2321,32 +2928,32 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27607, + "id": 27663, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 27603, + "id": 27659, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "4754:9:16", + "referencedDeclaration": 27529, + "src": "4754:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27605, + "id": 27661, "indexExpression": { - "id": 27604, + "id": 27660, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27595, - "src": "4764:8:16", + "referencedDeclaration": 27651, + "src": "4764:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2357,7 +2964,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4754:19:16", + "src": "4754:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2367,21 +2974,21 @@ "operator": "==", "rightExpression": { "hexValue": "66616c7365", - "id": 27606, + "id": 27662, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "4777:5:16", + "src": "4777:5:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "src": "4754:28:16", + "src": "4754:28:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2389,14 +2996,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f72282920696e766573746f7220697320616c7265616479206164646564", - "id": 27608, + "id": 27664, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4784:54:16", + "src": "4784:54:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ac8b3365ec58116f79763809b4a76f0b400571fe8055cd18bc01fd9ea666875f", "typeString": "literal_string \"Vesting.sol::addInvestor() investor is already added\"" @@ -2415,7 +3022,7 @@ "typeString": "literal_string \"Vesting.sol::addInvestor() investor is already added\"" } ], - "id": 27602, + "id": 27658, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2423,30 +3030,31 @@ -18 ], "referencedDeclaration": -18, - "src": "4746:7:16", + "src": "4746:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27609, + "id": 27665, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4746:93:16", + "src": "4746:93:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27610, + "id": 27666, "nodeType": "ExpressionStatement", - "src": "4746:93:16" + "src": "4746:93:18" }, { "expression": { @@ -2456,18 +3064,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 27617, + "id": 27673, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27612, + "id": 27668, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27595, - "src": "4858:8:16", + "referencedDeclaration": 27651, + "src": "4858:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2479,14 +3087,14 @@ "arguments": [ { "hexValue": "30", - "id": 27615, + "id": 27671, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4878:1:16", + "src": "4878:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -2501,41 +3109,42 @@ "typeString": "int_const 0" } ], - "id": 27614, + "id": 27670, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4870:7:16", + "src": "4870:7:18", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27613, + "id": 27669, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4870:7:16", + "src": "4870:7:18", "typeDescriptions": {} } }, - "id": 27616, + "id": 27672, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4870:10:16", + "src": "4870:10:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4858:22:16", + "src": "4858:22:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2543,14 +3152,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f756e742063616e6e6f742062652061646472657373283029", - "id": 27618, + "id": 27674, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4882:58:16", + "src": "4882:58:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_43a7576cc71999d5991f16be987a98bc7d178f59df62ec343336a603751a8636", "typeString": "literal_string \"Vesting.sol::addInvestor() _account cannot be address(0)\"" @@ -2569,7 +3178,7 @@ "typeString": "literal_string \"Vesting.sol::addInvestor() _account cannot be address(0)\"" } ], - "id": 27611, + "id": 27667, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2577,30 +3186,31 @@ -18 ], "referencedDeclaration": -18, - "src": "4850:7:16", + "src": "4850:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27619, + "id": 27675, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4850:91:16", + "src": "4850:91:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27620, + "id": 27676, "nodeType": "ExpressionStatement", - "src": "4850:91:16" + "src": "4850:91:18" }, { "expression": { @@ -2610,18 +3220,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27624, + "id": 27680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27622, + "id": 27678, "name": "_tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27597, - "src": "4960:13:16", + "referencedDeclaration": 27653, + "src": "4960:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2631,21 +3241,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 27623, + "id": 27679, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4976:1:16", + "src": "4976:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4960:17:16", + "src": "4960:17:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2653,14 +3263,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b656e73546f56657374206d7573742062652067742030", - "id": 27625, + "id": 27681, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4979:55:16", + "src": "4979:55:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6c29cccc352d3a7eba90af13be2b3943b9e81df521048af1ca34057bc8661bb8", "typeString": "literal_string \"Vesting.sol::addInvestor() _tokensToVest must be gt 0\"" @@ -2679,7 +3289,7 @@ "typeString": "literal_string \"Vesting.sol::addInvestor() _tokensToVest must be gt 0\"" } ], - "id": 27621, + "id": 27677, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2687,59 +3297,60 @@ -18 ], "referencedDeclaration": -18, - "src": "4952:7:16", + "src": "4952:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27626, + "id": 27682, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4952:83:16", + "src": "4952:83:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27627, + "id": 27683, "nodeType": "ExpressionStatement", - "src": "4952:83:16" + "src": "4952:83:18" }, { "expression": { - "id": 27632, + "id": 27688, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 27628, + "id": 27684, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "5048:9:16", + "referencedDeclaration": 27529, + "src": "5048:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27630, + "id": 27686, "indexExpression": { - "id": 27629, + "id": 27685, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27595, - "src": "5058:8:16", + "referencedDeclaration": 27651, + "src": "5058:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2750,7 +3361,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5048:19:16", + "src": "5048:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2760,29 +3371,29 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 27631, + "id": 27687, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5070:4:16", + "src": "5070:4:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "5048:26:16", + "src": "5048:26:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 27633, + "id": 27689, "nodeType": "ExpressionStatement", - "src": "5048:26:16" + "src": "5048:26:18" }, { "expression": { @@ -2790,24 +3401,24 @@ { "arguments": [ { - "id": 27638, + "id": 27694, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27595, - "src": "5115:8:16", + "referencedDeclaration": 27651, + "src": "5115:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27639, + "id": 27695, "name": "_tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27597, - "src": "5125:13:16", + "referencedDeclaration": 27653, + "src": "5125:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2815,14 +3426,14 @@ }, { "hexValue": "30", - "id": 27640, + "id": 27696, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5140:1:16", + "src": "5140:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -2845,29 +3456,30 @@ "typeString": "int_const 0" } ], - "id": 27637, + "id": 27693, "name": "Investor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27469, - "src": "5106:8:16", + "referencedDeclaration": 27525, + "src": "5106:8:18", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Investor_$27469_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Investor_$27525_storage_ptr_$", "typeString": "type(struct Vesting.Investor storage pointer)" } }, - "id": 27641, + "id": 27697, "isConstant": false, "isLValue": false, "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5106:36:16", + "src": "5106:36:18", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } } @@ -2875,68 +3487,70 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } ], "expression": { - "id": 27634, + "id": 27690, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5085:15:16", + "referencedDeclaration": 27518, + "src": "5085:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27636, + "id": 27692, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5101:4:18", "memberName": "push", "nodeType": "MemberAccess", - "src": "5085:20:16", + "src": "5085:20:18", "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$_t_struct$_Investor_$27469_storage_$returns$__$bound_to$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$", + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr_$_t_struct$_Investor_$27525_storage_$returns$__$bound_to$_t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr_$", "typeString": "function (struct Vesting.Investor storage ref[] storage pointer,struct Vesting.Investor storage ref)" } }, - "id": 27642, + "id": 27698, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5085:58:16", + "src": "5085:58:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27643, + "id": 27699, "nodeType": "ExpressionStatement", - "src": "5085:58:16" + "src": "5085:58:18" }, { "expression": { - "id": 27646, + "id": 27702, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27644, + "id": 27700, "name": "totalTokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27458, - "src": "5156:17:16", + "referencedDeclaration": 27514, + "src": "5156:17:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2945,37 +3559,37 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 27645, + "id": 27701, "name": "_tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27597, - "src": "5177:13:16", + "referencedDeclaration": 27653, + "src": "5177:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5156:34:16", + "src": "5156:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27647, + "id": 27703, "nodeType": "ExpressionStatement", - "src": "5156:34:16" + "src": "5156:34:18" }, { "eventCall": { "arguments": [ { - "id": 27649, + "id": 27705, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27595, - "src": "5230:8:16", + "referencedDeclaration": 27651, + "src": "5230:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2989,42 +3603,43 @@ "typeString": "address" } ], - "id": 27648, + "id": 27704, "name": "InvestorAdded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27517, - "src": "5216:13:16", + "referencedDeclaration": 27573, + "src": "5216:13:18", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 27650, + "id": 27706, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5216:23:16", + "src": "5216:23:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27651, + "id": 27707, "nodeType": "EmitStatement", - "src": "5211:28:16" + "src": "5211:28:18" } ] }, "documentation": { - "id": 27593, + "id": 27649, "nodeType": "StructuredDocumentation", - "src": "4350:296:16", + "src": "4350:296:18", "text": "@notice This function sets an address as true in the investors mapping and also pushes a new investor element to the Investor array.\n @param _account the wallet address of investor being added.\n @param _tokensToVest the amount of $PROVE that is being vested for that investor." }, "functionSelector": "ec20b457", @@ -3033,34 +3648,37 @@ "modifiers": [ { "arguments": [], - "id": 27600, + "id": 27656, "kind": "modifierInvocation", "modifierName": { - "id": 27599, + "id": 27655, "name": "onlyOwner", + "nameLocations": [ + "4723:9:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28129, - "src": "4723:9:16" + "referencedDeclaration": 28185, + "src": "4723:9:18" }, "nodeType": "ModifierInvocation", - "src": "4723:11:16" + "src": "4723:11:18" } ], "name": "addInvestor", - "nameLocation": "4661:11:16", + "nameLocation": "4661:11:18", "parameters": { - "id": 27598, + "id": 27654, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27595, + "id": 27651, "mutability": "mutable", "name": "_account", - "nameLocation": "4681:8:16", + "nameLocation": "4681:8:18", "nodeType": "VariableDeclaration", - "scope": 27653, - "src": "4673:16:16", + "scope": 27709, + "src": "4673:16:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3068,10 +3686,10 @@ "typeString": "address" }, "typeName": { - "id": 27594, + "id": 27650, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4673:7:16", + "src": "4673:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3082,13 +3700,13 @@ }, { "constant": false, - "id": 27597, + "id": 27653, "mutability": "mutable", "name": "_tokensToVest", - "nameLocation": "4699:13:16", + "nameLocation": "4699:13:18", "nodeType": "VariableDeclaration", - "scope": 27653, - "src": "4691:21:16", + "scope": 27709, + "src": "4691:21:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3096,10 +3714,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27596, + "id": 27652, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4691:7:16", + "src": "4691:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3108,27 +3726,29 @@ "visibility": "internal" } ], - "src": "4672:41:16" + "src": "4672:41:18" }, "returnParameters": { - "id": 27601, + "id": 27657, "nodeType": "ParameterList", "parameters": [], - "src": "4735:0:16" + "src": "4735:0:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27720, + "id": 27776, "nodeType": "FunctionDefinition", - "src": "5411:529:16", + "src": "5411:529:18", + "nodes": [], "body": { - "id": 27719, + "id": 27775, "nodeType": "Block", - "src": "5474:466:16", + "src": "5474:466:18", + "nodes": [], "statements": [ { "expression": { @@ -3138,18 +3758,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 27667, + "id": 27723, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27662, + "id": 27718, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27656, - "src": "5493:8:16", + "referencedDeclaration": 27712, + "src": "5493:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3161,14 +3781,14 @@ "arguments": [ { "hexValue": "30", - "id": 27665, + "id": 27721, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5513:1:16", + "src": "5513:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -3183,41 +3803,42 @@ "typeString": "int_const 0" } ], - "id": 27664, + "id": 27720, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5505:7:16", + "src": "5505:7:18", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27663, + "id": 27719, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5505:7:16", + "src": "5505:7:18", "typeDescriptions": {} } }, - "id": 27666, + "id": 27722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5505:10:16", + "src": "5505:10:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "5493:22:16", + "src": "5493:22:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3225,14 +3846,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a72656d6f7665496e766573746f722829206163636f756e742063616e6e6f742062652061646472657373283029", - "id": 27668, + "id": 27724, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5517:60:16", + "src": "5517:60:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6b2ef8fa4a278f0c633eee5173cf5b45c06af3207fcf59338db6e0d4ebe3ce85", "typeString": "literal_string \"Vesting.sol::removeInvestor() account cannot be address(0)\"" @@ -3251,7 +3872,7 @@ "typeString": "literal_string \"Vesting.sol::removeInvestor() account cannot be address(0)\"" } ], - "id": 27661, + "id": 27717, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3259,45 +3880,46 @@ -18 ], "referencedDeclaration": -18, - "src": "5485:7:16", + "src": "5485:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27669, + "id": 27725, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5485:93:16", + "src": "5485:93:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27670, + "id": 27726, "nodeType": "ExpressionStatement", - "src": "5485:93:16" + "src": "5485:93:18" }, { "assignments": [ - 27672 + 27728 ], "declarations": [ { "constant": false, - "id": 27672, + "id": 27728, "mutability": "mutable", "name": "idx", - "nameLocation": "5599:3:16", + "nameLocation": "5599:3:18", "nodeType": "VariableDeclaration", - "scope": 27719, - "src": "5591:11:16", + "scope": 27775, + "src": "5591:11:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3305,10 +3927,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27671, + "id": 27727, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5591:7:16", + "src": "5591:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3317,16 +3939,16 @@ "visibility": "internal" } ], - "id": 27676, + "id": 27732, "initialValue": { "arguments": [ { - "id": 27674, + "id": 27730, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27656, - "src": "5620:8:16", + "referencedDeclaration": 27712, + "src": "5620:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3340,26 +3962,27 @@ "typeString": "address" } ], - "id": 27673, + "id": 27729, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28028, - "src": "5605:14:16", + "referencedDeclaration": 28084, + "src": "5605:14:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 27675, + "id": 27731, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5605:24:16", + "src": "5605:24:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3367,70 +3990,73 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "5591:38:16" + "src": "5591:38:18" }, { "assignments": [ - 27679 + 27735 ], "declarations": [ { "constant": false, - "id": 27679, + "id": 27735, "mutability": "mutable", "name": "temp", - "nameLocation": "5658:4:16", + "nameLocation": "5658:4:18", "nodeType": "VariableDeclaration", - "scope": 27719, - "src": "5642:20:16", + "scope": 27775, + "src": "5642:20:18", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor" }, "typeName": { - "id": 27678, + "id": 27734, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 27677, + "id": 27733, "name": "Investor", + "nameLocations": [ + "5642:8:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27469, - "src": "5642:8:16" + "referencedDeclaration": 27525, + "src": "5642:8:18" }, - "referencedDeclaration": 27469, - "src": "5642:8:16", + "referencedDeclaration": 27525, + "src": "5642:8:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_storage_ptr", "typeString": "struct Vesting.Investor" } }, "visibility": "internal" } ], - "id": 27683, + "id": 27739, "initialValue": { "baseExpression": { - "id": 27680, + "id": 27736, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5665:15:16", + "referencedDeclaration": 27518, + "src": "5665:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27682, + "id": 27738, "indexExpression": { - "id": 27681, + "id": 27737, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27672, - "src": "5681:3:16", + "referencedDeclaration": 27728, + "src": "5681:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3441,43 +4067,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5665:20:16", + "src": "5665:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5642:43:16" + "src": "5642:43:18" }, { "expression": { - "id": 27693, + "id": 27749, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 27684, + "id": 27740, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5696:15:16", + "referencedDeclaration": 27518, + "src": "5696:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27686, + "id": 27742, "indexExpression": { - "id": 27685, + "id": 27741, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27672, - "src": "5712:3:16", + "referencedDeclaration": 27728, + "src": "5712:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3488,9 +4114,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5696:20:16", + "src": "5696:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, @@ -3498,49 +4124,50 @@ "operator": "=", "rightHandSide": { "baseExpression": { - "id": 27687, + "id": 27743, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5719:15:16", + "referencedDeclaration": 27518, + "src": "5719:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27692, + "id": 27748, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27691, + "id": 27747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 27688, + "id": 27744, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5735:15:16", + "referencedDeclaration": 27518, + "src": "5735:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27689, + "id": 27745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5751:6:18", "memberName": "length", "nodeType": "MemberAccess", - "src": "5735:22:16", + "src": "5735:22:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3550,21 +4177,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 27690, + "id": 27746, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5758:1:16", + "src": "5758:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "5735:24:16", + "src": "5735:24:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3575,74 +4202,75 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5719:41:16", + "src": "5719:41:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "src": "5696:64:16", + "src": "5696:64:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27694, + "id": 27750, "nodeType": "ExpressionStatement", - "src": "5696:64:16" + "src": "5696:64:18" }, { "expression": { - "id": 27702, + "id": 27758, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 27695, + "id": 27751, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5771:15:16", + "referencedDeclaration": 27518, + "src": "5771:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27700, + "id": 27756, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27699, + "id": 27755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 27696, + "id": 27752, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5787:15:16", + "referencedDeclaration": 27518, + "src": "5787:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27697, + "id": 27753, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5803:6:18", "memberName": "length", "nodeType": "MemberAccess", - "src": "5787:22:16", + "src": "5787:22:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3652,21 +4280,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 27698, + "id": 27754, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5810:1:16", + "src": "5810:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "5787:24:16", + "src": "5787:24:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3677,35 +4305,35 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5771:41:16", + "src": "5771:41:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 27701, + "id": 27757, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27679, - "src": "5815:4:16", + "referencedDeclaration": 27735, + "src": "5815:4:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "src": "5771:48:16", + "src": "5771:48:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27703, + "id": 27759, "nodeType": "ExpressionStatement", - "src": "5771:48:16" + "src": "5771:48:18" }, { "expression": { @@ -3713,77 +4341,79 @@ "expression": { "argumentTypes": [], "expression": { - "id": 27704, + "id": 27760, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "5830:15:16", + "referencedDeclaration": 27518, + "src": "5830:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27706, + "id": 27762, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5846:3:18", "memberName": "pop", "nodeType": "MemberAccess", - "src": "5830:19:16", + "src": "5830:19:18", "typeDescriptions": { - "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr_$", + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr_$", "typeString": "function (struct Vesting.Investor storage ref[] storage pointer)" } }, - "id": 27707, + "id": 27763, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5830:21:16", + "src": "5830:21:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27708, + "id": 27764, "nodeType": "ExpressionStatement", - "src": "5830:21:16" + "src": "5830:21:18" }, { "expression": { - "id": 27713, + "id": 27769, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 27709, + "id": 27765, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "5862:9:16", + "referencedDeclaration": 27529, + "src": "5862:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27711, + "id": 27767, "indexExpression": { - "id": 27710, + "id": 27766, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27656, - "src": "5872:8:16", + "referencedDeclaration": 27712, + "src": "5872:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3794,7 +4424,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5862:19:16", + "src": "5862:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3804,40 +4434,40 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 27712, + "id": 27768, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5884:5:16", + "src": "5884:5:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "src": "5862:27:16", + "src": "5862:27:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 27714, + "id": 27770, "nodeType": "ExpressionStatement", - "src": "5862:27:16" + "src": "5862:27:18" }, { "eventCall": { "arguments": [ { - "id": 27716, + "id": 27772, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27656, - "src": "5923:8:16", + "referencedDeclaration": 27712, + "src": "5923:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3851,42 +4481,43 @@ "typeString": "address" } ], - "id": 27715, + "id": 27771, "name": "InvestorRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27522, - "src": "5907:15:16", + "referencedDeclaration": 27578, + "src": "5907:15:18", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 27717, + "id": 27773, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5907:25:16", + "src": "5907:25:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27718, + "id": 27774, "nodeType": "EmitStatement", - "src": "5902:30:16" + "src": "5902:30:18" } ] }, "documentation": { - "id": 27654, + "id": 27710, "nodeType": "StructuredDocumentation", - "src": "5255:150:16", + "src": "5255:150:18", "text": "@notice This function removes an investor from the investorLibrary.\n @param _account the wallet address of investor that is being removed." }, "functionSelector": "42714978", @@ -3895,34 +4526,37 @@ "modifiers": [ { "arguments": [], - "id": 27659, + "id": 27715, "kind": "modifierInvocation", "modifierName": { - "id": 27658, + "id": 27714, "name": "onlyOwner", + "nameLocations": [ + "5462:9:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28129, - "src": "5462:9:16" + "referencedDeclaration": 28185, + "src": "5462:9:18" }, "nodeType": "ModifierInvocation", - "src": "5462:11:16" + "src": "5462:11:18" } ], "name": "removeInvestor", - "nameLocation": "5420:14:16", + "nameLocation": "5420:14:18", "parameters": { - "id": 27657, + "id": 27713, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27656, + "id": 27712, "mutability": "mutable", "name": "_account", - "nameLocation": "5443:8:16", + "nameLocation": "5443:8:18", "nodeType": "VariableDeclaration", - "scope": 27720, - "src": "5435:16:16", + "scope": 27776, + "src": "5435:16:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3930,10 +4564,10 @@ "typeString": "address" }, "typeName": { - "id": 27655, + "id": 27711, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5435:7:16", + "src": "5435:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3943,33 +4577,35 @@ "visibility": "internal" } ], - "src": "5434:18:16" + "src": "5434:18:18" }, "returnParameters": { - "id": 27660, + "id": 27716, "nodeType": "ParameterList", "parameters": [], - "src": "5474:0:16" + "src": "5474:0:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27745, + "id": 27801, "nodeType": "FunctionDefinition", - "src": "6108:261:16", + "src": "6108:261:18", + "nodes": [], "body": { - "id": 27744, + "id": 27800, "nodeType": "Block", - "src": "6154:215:16", + "src": "6154:215:18", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 27728, + "id": 27784, "isConstant": false, "isLValue": false, "isPure": false, @@ -3977,14 +4613,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6173:15:16", + "src": "6173:15:18", "subExpression": { - "id": 27727, + "id": 27783, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27455, - "src": "6174:14:16", + "referencedDeclaration": 27511, + "src": "6174:14:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3997,14 +4633,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657374696e6720697320616c726561647920656e61626c6564", - "id": 27729, + "id": 27785, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6190:57:16", + "src": "6190:57:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_b81e7806853eebb1dd20d036cf5def1e03a3259047e4c17a645085fd705441b0", "typeString": "literal_string \"Vesting.sol::enableVesting() vesting is already enabled\"" @@ -4023,7 +4659,7 @@ "typeString": "literal_string \"Vesting.sol::enableVesting() vesting is already enabled\"" } ], - "id": 27726, + "id": 27782, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4031,45 +4667,46 @@ -18 ], "referencedDeclaration": -18, - "src": "6165:7:16", + "src": "6165:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27730, + "id": 27786, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6165:83:16", + "src": "6165:83:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27731, + "id": 27787, "nodeType": "ExpressionStatement", - "src": "6165:83:16" + "src": "6165:83:18" }, { "expression": { - "id": 27734, + "id": 27790, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27732, + "id": 27788, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27455, - "src": "6261:14:16", + "referencedDeclaration": 27511, + "src": "6261:14:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4079,44 +4716,44 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 27733, + "id": 27789, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6278:4:16", + "src": "6278:4:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "6261:21:16", + "src": "6261:21:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 27735, + "id": 27791, "nodeType": "ExpressionStatement", - "src": "6261:21:16" + "src": "6261:21:18" }, { "expression": { - "id": 27739, + "id": 27795, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27736, + "id": 27792, "name": "vestingStartUnix", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27452, - "src": "6293:16:16", + "referencedDeclaration": 27508, + "src": "6293:16:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4126,81 +4763,83 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 27737, + "id": 27793, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "6312:5:16", + "src": "6312:5:18", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 27738, + "id": 27794, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6318:9:18", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "6312:15:16", + "src": "6312:15:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6293:34:16", + "src": "6293:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27740, + "id": 27796, "nodeType": "ExpressionStatement", - "src": "6293:34:16" + "src": "6293:34:18" }, { "eventCall": { "arguments": [], "expression": { "argumentTypes": [], - "id": 27741, + "id": 27797, "name": "VestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27534, - "src": "6345:14:16", + "referencedDeclaration": 27590, + "src": "6345:14:18", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 27742, + "id": 27798, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6345:16:16", + "src": "6345:16:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27743, + "id": 27799, "nodeType": "EmitStatement", - "src": "6340:21:16" + "src": "6340:21:18" } ] }, "documentation": { - "id": 27721, + "id": 27777, "nodeType": "StructuredDocumentation", - "src": "5948:154:16", + "src": "5948:154:18", "text": "@notice This function starts the vesting period.\n @dev will set start time to vestingStartUnix.\n will set vestingEnabled to true." }, "functionSelector": "5b904cb7", @@ -4209,46 +4848,51 @@ "modifiers": [ { "arguments": [], - "id": 27724, + "id": 27780, "kind": "modifierInvocation", "modifierName": { - "id": 27723, + "id": 27779, "name": "onlyOwner", + "nameLocations": [ + "6142:9:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28129, - "src": "6142:9:16" + "referencedDeclaration": 28185, + "src": "6142:9:18" }, "nodeType": "ModifierInvocation", - "src": "6142:11:16" + "src": "6142:11:18" } ], "name": "enableVesting", - "nameLocation": "6117:13:16", + "nameLocation": "6117:13:18", "parameters": { - "id": 27722, + "id": 27778, "nodeType": "ParameterList", "parameters": [], - "src": "6130:2:16" + "src": "6130:2:18" }, "returnParameters": { - "id": 27725, + "id": 27781, "nodeType": "ParameterList", "parameters": [], - "src": "6154:0:16" + "src": "6154:0:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27813, + "id": 27869, "nodeType": "FunctionDefinition", - "src": "6556:636:16", + "src": "6556:636:18", + "nodes": [], "body": { - "id": 27812, + "id": 27868, "nodeType": "Block", - "src": "6615:577:16", + "src": "6615:577:18", + "nodes": [], "statements": [ { "expression": { @@ -4258,18 +4902,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 27756, + "id": 27812, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27754, + "id": 27810, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27748, - "src": "6634:5:16", + "referencedDeclaration": 27804, + "src": "6634:5:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4278,18 +4922,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 27755, + "id": 27811, "name": "proveToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27449, - "src": "6643:10:16", + "referencedDeclaration": 27505, + "src": "6643:10:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6634:19:16", + "src": "6634:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4297,14 +4941,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a7769746864726177457263323028292063616e6e6f74207769746864726177202450524f564520746f6b656e", - "id": 27757, + "id": 27813, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6655:59:16", + "src": "6655:59:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_75db5b4aa55e9f0b03e4a8c070f8f66290a98338aaae1576bb806eef1f0080d2", "typeString": "literal_string \"Vesting.sol::withdrawErc20() cannot withdraw $PROVE token\"" @@ -4323,7 +4967,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() cannot withdraw $PROVE token\"" } ], - "id": 27753, + "id": 27809, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4331,30 +4975,31 @@ -18 ], "referencedDeclaration": -18, - "src": "6626:7:16", + "src": "6626:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27758, + "id": 27814, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6626:89:16", + "src": "6626:89:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27759, + "id": 27815, "nodeType": "ExpressionStatement", - "src": "6626:89:16" + "src": "6626:89:18" }, { "expression": { @@ -4364,18 +5009,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 27766, + "id": 27822, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27761, + "id": 27817, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27748, - "src": "6734:5:16", + "referencedDeclaration": 27804, + "src": "6734:5:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4387,14 +5032,14 @@ "arguments": [ { "hexValue": "30", - "id": 27764, + "id": 27820, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6751:1:16", + "src": "6751:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -4409,41 +5054,42 @@ "typeString": "int_const 0" } ], - "id": 27763, + "id": 27819, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6743:7:16", + "src": "6743:7:18", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27762, + "id": 27818, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6743:7:16", + "src": "6743:7:18", "typeDescriptions": {} } }, - "id": 27765, + "id": 27821, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6743:10:16", + "src": "6743:10:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6734:19:16", + "src": "6734:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4451,14 +5097,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b656e2063616e6e6f742062652061646472657373283029", - "id": 27767, + "id": 27823, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6755:57:16", + "src": "6755:57:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_29e76f784f984a6a07713ea53163c68fa39fa9a65b7a983cda7f9b66495bef31", "typeString": "literal_string \"Vesting.sol::withdrawErc20() token cannot be address(0)\"" @@ -4477,7 +5123,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() token cannot be address(0)\"" } ], - "id": 27760, + "id": 27816, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4485,45 +5131,46 @@ -18 ], "referencedDeclaration": -18, - "src": "6726:7:16", + "src": "6726:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27768, + "id": 27824, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6726:87:16", + "src": "6726:87:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27769, + "id": 27825, "nodeType": "ExpressionStatement", - "src": "6726:87:16" + "src": "6726:87:18" }, { "assignments": [ - 27771 + 27827 ], "declarations": [ { "constant": false, - "id": 27771, + "id": 27827, "mutability": "mutable", "name": "balance", - "nameLocation": "6834:7:16", + "nameLocation": "6834:7:18", "nodeType": "VariableDeclaration", - "scope": 27812, - "src": "6826:15:16", + "scope": 27868, + "src": "6826:15:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4531,10 +5178,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27770, + "id": 27826, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6826:7:16", + "src": "6826:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4543,20 +5190,20 @@ "visibility": "internal" } ], - "id": 27781, + "id": 27837, "initialValue": { "arguments": [ { "arguments": [ { - "id": 27778, + "id": 27834, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, - "src": "6876:4:16", + "src": "6876:4:18", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -4564,38 +5211,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 27777, + "id": 27833, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6868:7:16", + "src": "6868:7:18", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 27776, + "id": 27832, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6868:7:16", + "src": "6868:7:18", "typeDescriptions": {} } }, - "id": 27779, + "id": 27835, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6868:13:16", + "src": "6868:13:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4613,12 +5261,12 @@ "expression": { "arguments": [ { - "id": 27773, + "id": 27829, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27748, - "src": "6851:5:16", + "referencedDeclaration": 27804, + "src": "6851:5:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4632,55 +5280,58 @@ "typeString": "address" } ], - "id": 27772, + "id": 27828, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "6844:6:16", + "referencedDeclaration": 29158, + "src": "6844:6:18", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 27774, + "id": 27830, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6844:13:16", + "src": "6844:13:18", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 27775, + "id": 27831, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6858:9:18", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "6844:23:16", + "referencedDeclaration": 29097, + "src": "6844:23:18", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 27780, + "id": 27836, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6844:38:16", + "src": "6844:38:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4688,7 +5339,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "6826:56:16" + "src": "6826:56:18" }, { "expression": { @@ -4698,18 +5349,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27785, + "id": 27841, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27783, + "id": 27839, "name": "balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27771, - "src": "6901:7:16", + "referencedDeclaration": 27827, + "src": "6901:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4719,21 +5370,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 27784, + "id": 27840, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6911:1:16", + "src": "6911:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6901:11:16", + "src": "6901:11:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4741,14 +5392,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a77697468647261774572633230282920696e73756666696369656e7420746f6b656e2062616c616e6365", - "id": 27786, + "id": 27842, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6914:57:16", + "src": "6914:57:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_85892f03ec8e97515a01b84c9239dbced7e62306353ae22f1c016c668c87f26e", "typeString": "literal_string \"Vesting.sol::withdrawErc20() insufficient token balance\"" @@ -4767,7 +5418,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() insufficient token balance\"" } ], - "id": 27782, + "id": 27838, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4775,45 +5426,46 @@ -18 ], "referencedDeclaration": -18, - "src": "6893:7:16", + "src": "6893:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27787, + "id": 27843, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6893:79:16", + "src": "6893:79:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27788, + "id": 27844, "nodeType": "ExpressionStatement", - "src": "6893:79:16" + "src": "6893:79:18" }, { "assignments": [ - 27790 + 27846 ], "declarations": [ { "constant": false, - "id": 27790, + "id": 27846, "mutability": "mutable", "name": "success", - "nameLocation": "6990:7:16", + "nameLocation": "6990:7:18", "nodeType": "VariableDeclaration", - "scope": 27812, - "src": "6985:12:16", + "scope": 27868, + "src": "6985:12:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4821,10 +5473,10 @@ "typeString": "bool" }, "typeName": { - "id": 27789, + "id": 27845, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6985:4:16", + "src": "6985:4:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4833,33 +5485,34 @@ "visibility": "internal" } ], - "id": 27799, + "id": 27855, "initialValue": { "arguments": [ { "arguments": [], "expression": { "argumentTypes": [], - "id": 27795, + "id": 27851, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, - "src": "7023:5:16", + "referencedDeclaration": 28171, + "src": "7023:5:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 27796, + "id": 27852, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7023:7:16", + "src": "7023:7:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4867,12 +5520,12 @@ } }, { - "id": 27797, + "id": 27853, "name": "balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27771, - "src": "7032:7:16", + "referencedDeclaration": 27827, + "src": "7032:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4893,12 +5546,12 @@ "expression": { "arguments": [ { - "id": 27792, + "id": 27848, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27748, - "src": "7007:5:16", + "referencedDeclaration": 27804, + "src": "7007:5:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4912,55 +5565,58 @@ "typeString": "address" } ], - "id": 27791, + "id": 27847, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "7000:6:16", + "referencedDeclaration": 29158, + "src": "7000:6:18", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 27793, + "id": 27849, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7000:13:16", + "src": "7000:13:18", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 27794, + "id": 27850, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7014:8:18", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 29051, - "src": "7000:22:16", + "referencedDeclaration": 29107, + "src": "7000:22:18", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 27798, + "id": 27854, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7000:40:16", + "src": "7000:40:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4968,18 +5624,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "6985:55:16" + "src": "6985:55:18" }, { "expression": { "arguments": [ { - "id": 27801, + "id": 27857, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27790, - "src": "7059:7:16", + "referencedDeclaration": 27846, + "src": "7059:7:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4987,14 +5643,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a776974686472617745726332302829207472616e7366657220756e7375636365737366756c", - "id": 27802, + "id": 27858, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7068:52:16", + "src": "7068:52:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_15e8b103591986e2799c2dc971bdc5cdfd784ab9acde7b421a1ef4ce4227abca", "typeString": "literal_string \"Vesting.sol::withdrawErc20() transfer unsuccessful\"" @@ -5013,7 +5669,7 @@ "typeString": "literal_string \"Vesting.sol::withdrawErc20() transfer unsuccessful\"" } ], - "id": 27800, + "id": 27856, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5021,53 +5677,54 @@ -18 ], "referencedDeclaration": -18, - "src": "7051:7:16", + "src": "7051:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27803, + "id": 27859, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7051:70:16", + "src": "7051:70:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27804, + "id": 27860, "nodeType": "ExpressionStatement", - "src": "7051:70:16" + "src": "7051:70:18" }, { "eventCall": { "arguments": [ { - "id": 27806, + "id": 27862, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27748, - "src": "7160:5:16", + "referencedDeclaration": 27804, + "src": "7160:5:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 27807, + "id": 27863, "name": "balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27771, - "src": "7167:7:16", + "referencedDeclaration": 27827, + "src": "7167:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5077,26 +5734,27 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 27808, + "id": 27864, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28115, - "src": "7176:5:16", + "referencedDeclaration": 28171, + "src": "7176:5:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 27809, + "id": 27865, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7176:7:16", + "src": "7176:7:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5119,42 +5777,43 @@ "typeString": "address" } ], - "id": 27805, + "id": 27861, "name": "Erc20TokensWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27531, - "src": "7139:20:16", + "referencedDeclaration": 27587, + "src": "7139:20:18", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (address,uint256,address)" } }, - "id": 27810, + "id": 27866, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7139:45:16", + "src": "7139:45:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27811, + "id": 27867, "nodeType": "EmitStatement", - "src": "7134:50:16" + "src": "7134:50:18" } ] }, "documentation": { - "id": 27746, + "id": 27802, "nodeType": "StructuredDocumentation", - "src": "6377:173:16", + "src": "6377:173:18", "text": "@notice Is used to remove ERC20 tokens from the contract.\n @dev token address cannot be $PROVE\n @param token contract address of token we wish to remove." }, "functionSelector": "c7e42b1b", @@ -5163,34 +5822,37 @@ "modifiers": [ { "arguments": [], - "id": 27751, + "id": 27807, "kind": "modifierInvocation", "modifierName": { - "id": 27750, + "id": 27806, "name": "onlyOwner", + "nameLocations": [ + "6603:9:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28129, - "src": "6603:9:16" + "referencedDeclaration": 28185, + "src": "6603:9:18" }, "nodeType": "ModifierInvocation", - "src": "6603:11:16" + "src": "6603:11:18" } ], "name": "withdrawErc20", - "nameLocation": "6565:13:16", + "nameLocation": "6565:13:18", "parameters": { - "id": 27749, + "id": 27805, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27748, + "id": 27804, "mutability": "mutable", "name": "token", - "nameLocation": "6587:5:16", + "nameLocation": "6587:5:18", "nodeType": "VariableDeclaration", - "scope": 27813, - "src": "6579:13:16", + "scope": 27869, + "src": "6579:13:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5198,10 +5860,10 @@ "typeString": "address" }, "typeName": { - "id": 27747, + "id": 27803, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6579:7:16", + "src": "6579:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5211,52 +5873,54 @@ "visibility": "internal" } ], - "src": "6578:15:16" + "src": "6578:15:18" }, "returnParameters": { - "id": 27752, + "id": 27808, "nodeType": "ParameterList", "parameters": [], - "src": "6615:0:16" + "src": "6615:0:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { - "id": 27822, + "id": 27878, "nodeType": "FunctionDefinition", - "src": "7390:105:16", + "src": "7390:105:18", + "nodes": [], "body": { - "id": 27821, + "id": 27877, "nodeType": "Block", - "src": "7452:43:16", + "src": "7452:43:18", + "nodes": [], "statements": [ { "expression": { - "id": 27819, + "id": 27875, "name": "totalTokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27458, - "src": "7470:17:16", + "referencedDeclaration": 27514, + "src": "7470:17:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27818, - "id": 27820, + "functionReturnParameters": 27874, + "id": 27876, "nodeType": "Return", - "src": "7463:24:16" + "src": "7463:24:18" } ] }, "documentation": { - "id": 27814, + "id": 27870, "nodeType": "StructuredDocumentation", - "src": "7243:141:16", + "src": "7243:141:18", "text": "@notice This function returns the amount of total tokens this contract will vest\n @return uint256 total amount of tokens to vest." }, "functionSelector": "08ac7624", @@ -5264,26 +5928,26 @@ "kind": "function", "modifiers": [], "name": "getAllVestedTokens", - "nameLocation": "7399:18:16", + "nameLocation": "7399:18:18", "parameters": { - "id": 27815, + "id": 27871, "nodeType": "ParameterList", "parameters": [], - "src": "7417:2:16" + "src": "7417:2:18" }, "returnParameters": { - "id": 27818, + "id": 27874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27817, + "id": 27873, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27822, - "src": "7443:7:16", + "scope": 27878, + "src": "7443:7:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5291,10 +5955,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27816, + "id": 27872, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7443:7:16", + "src": "7443:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5303,21 +5967,23 @@ "visibility": "internal" } ], - "src": "7442:9:16" + "src": "7442:9:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "view", "virtual": false, "visibility": "external" }, { - "id": 27923, + "id": 27979, "nodeType": "FunctionDefinition", - "src": "7696:949:16", + "src": "7696:949:18", + "nodes": [], "body": { - "id": 27922, + "id": 27978, "nodeType": "Block", - "src": "7770:875:16", + "src": "7770:875:18", + "nodes": [], "statements": [ { "condition": { @@ -5325,32 +5991,32 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27834, + "id": 27890, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 27830, + "id": 27886, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "7785:9:16", + "referencedDeclaration": 27529, + "src": "7785:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27832, + "id": 27888, "indexExpression": { - "id": 27831, + "id": 27887, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "7795:8:16", + "referencedDeclaration": 27881, + "src": "7795:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5361,7 +6027,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7785:19:16", + "src": "7785:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5370,74 +6036,74 @@ "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { - "id": 27833, + "id": 27889, "name": "vestingEnabled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27455, - "src": "7808:14:16", + "referencedDeclaration": 27511, + "src": "7808:14:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7785:37:16", + "src": "7785:37:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 27920, + "id": 27976, "nodeType": "Block", - "src": "8603:35:16", + "src": "8603:35:18", "statements": [ { "expression": { "hexValue": "30", - "id": 27918, + "id": 27974, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8625:1:16", + "src": "8625:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 27829, - "id": 27919, + "functionReturnParameters": 27885, + "id": 27975, "nodeType": "Return", - "src": "8618:8:16" + "src": "8618:8:18" } ] }, - "id": 27921, + "id": 27977, "nodeType": "IfStatement", - "src": "7781:857:16", + "src": "7781:857:18", "trueBody": { - "id": 27917, + "id": 27973, "nodeType": "Block", - "src": "7824:764:16", + "src": "7824:764:18", "statements": [ { "assignments": [ - 27836 + 27892 ], "declarations": [ { "constant": false, - "id": 27836, + "id": 27892, "mutability": "mutable", "name": "idx", - "nameLocation": "7849:3:16", + "nameLocation": "7849:3:18", "nodeType": "VariableDeclaration", - "scope": 27917, - "src": "7841:11:16", + "scope": 27973, + "src": "7841:11:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5445,10 +6111,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27835, + "id": 27891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7841:7:16", + "src": "7841:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5457,16 +6123,16 @@ "visibility": "internal" } ], - "id": 27840, + "id": 27896, "initialValue": { "arguments": [ { - "id": 27838, + "id": 27894, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "7870:8:16", + "referencedDeclaration": 27881, + "src": "7870:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5480,26 +6146,27 @@ "typeString": "address" } ], - "id": 27837, + "id": 27893, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28028, - "src": "7855:14:16", + "referencedDeclaration": 28084, + "src": "7855:14:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 27839, + "id": 27895, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7855:24:16", + "src": "7855:24:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5507,22 +6174,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "7841:38:16" + "src": "7841:38:18" }, { "assignments": [ - 27842 + 27898 ], "declarations": [ { "constant": false, - "id": 27842, + "id": 27898, "mutability": "mutable", "name": "tokensToVest", - "nameLocation": "7901:12:16", + "nameLocation": "7901:12:18", "nodeType": "VariableDeclaration", - "scope": 27917, - "src": "7896:17:16", + "scope": 27973, + "src": "7896:17:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5530,10 +6197,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27841, + "id": 27897, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7896:4:16", + "src": "7896:4:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5542,16 +6209,16 @@ "visibility": "internal" } ], - "id": 27846, + "id": 27902, "initialValue": { "arguments": [ { - "id": 27844, + "id": 27900, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27825, - "src": "7932:8:16", + "referencedDeclaration": 27881, + "src": "7932:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5565,26 +6232,27 @@ "typeString": "address" } ], - "id": 27843, + "id": 27899, "name": "getTokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27979, - "src": "7916:15:16", + "referencedDeclaration": 28035, + "src": "7916:15:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 27845, + "id": 27901, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7916:25:16", + "src": "7916:25:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5592,7 +6260,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "7896:45:16" + "src": "7896:45:18" }, { "condition": { @@ -5600,7 +6268,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27852, + "id": 27908, "isConstant": false, "isLValue": false, "isPure": false, @@ -5608,25 +6276,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 27847, + "id": 27903, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "7962:15:16", + "referencedDeclaration": 27518, + "src": "7962:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27849, + "id": 27905, "indexExpression": { - "id": 27848, + "id": 27904, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27836, - "src": "7978:3:16", + "referencedDeclaration": 27892, + "src": "7978:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5637,21 +6305,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7962:20:16", + "src": "7962:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27850, + "id": 27906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7983:13:18", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "7962:34:16", + "referencedDeclaration": 27524, + "src": "7962:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5660,70 +6329,70 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 27851, + "id": 27907, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27842, - "src": "8000:12:16", + "referencedDeclaration": 27898, + "src": "8000:12:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7962:50:16", + "src": "7962:50:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 27856, + "id": 27912, "nodeType": "IfStatement", - "src": "7958:99:16", + "src": "7958:99:18", "trueBody": { - "id": 27855, + "id": 27911, "nodeType": "Block", - "src": "8014:43:16", + "src": "8014:43:18", "statements": [ { "expression": { "hexValue": "30", - "id": 27853, + "id": 27909, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8040:1:16", + "src": "8040:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 27829, - "id": 27854, + "functionReturnParameters": 27885, + "id": 27910, "nodeType": "Return", - "src": "8033:8:16" + "src": "8033:8:18" } ] } }, { "assignments": [ - 27858 + 27914 ], "declarations": [ { "constant": false, - "id": 27858, + "id": 27914, "mutability": "mutable", "name": "monthsPassed", - "nameLocation": "8078:12:16", + "nameLocation": "8078:12:18", "nodeType": "VariableDeclaration", - "scope": 27917, - "src": "8073:17:16", + "scope": 27973, + "src": "8073:17:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5731,10 +6400,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27857, + "id": 27913, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8073:4:16", + "src": "8073:4:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5743,7 +6412,7 @@ "visibility": "internal" } ], - "id": 27867, + "id": 27923, "initialValue": { "components": [ { @@ -5751,7 +6420,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27865, + "id": 27921, "isConstant": false, "isLValue": false, "isPure": false, @@ -5763,32 +6432,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27862, + "id": 27918, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 27859, + "id": 27915, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "8095:5:16", + "src": "8095:5:18", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 27860, + "id": 27916, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8101:9:18", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "8095:15:16", + "src": "8095:15:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5797,32 +6467,32 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 27861, + "id": 27917, "name": "vestingStartUnix", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27452, - "src": "8113:16:16", + "referencedDeclaration": 27508, + "src": "8113:16:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8095:34:16", + "src": "8095:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27863, + "id": 27919, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "8094:36:16", + "src": "8094:36:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5832,14 +6502,14 @@ "operator": "/", "rightExpression": { "hexValue": "34", - "id": 27864, + "id": 27920, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8133:7:16", + "src": "8133:7:18", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -5847,43 +6517,43 @@ }, "value": "4" }, - "src": "8094:46:16", + "src": "8094:46:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27866, + "id": 27922, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "8093:48:16", + "src": "8093:48:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8073:68:16" + "src": "8073:68:18" }, { "assignments": [ - 27869 + 27925 ], "declarations": [ { "constant": false, - "id": 27869, + "id": 27925, "mutability": "mutable", "name": "amountToClaim", - "nameLocation": "8162:13:16", + "nameLocation": "8162:13:18", "nodeType": "VariableDeclaration", - "scope": 27917, - "src": "8157:18:16", + "scope": 27973, + "src": "8157:18:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5891,10 +6561,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27868, + "id": 27924, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8157:4:16", + "src": "8157:4:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5903,13 +6573,13 @@ "visibility": "internal" } ], - "id": 27886, + "id": 27942, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27885, + "id": 27941, "isConstant": false, "isLValue": false, "isPure": false, @@ -5921,7 +6591,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27874, + "id": 27930, "isConstant": false, "isLValue": false, "isPure": false, @@ -5931,18 +6601,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27872, + "id": 27928, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27870, + "id": 27926, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27842, - "src": "8179:12:16", + "referencedDeclaration": 27898, + "src": "8179:12:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5952,21 +6622,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 27871, + "id": 27927, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8194:2:16", + "src": "8194:2:18", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "8179:17:16", + "src": "8179:17:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5976,35 +6646,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 27873, + "id": 27929, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8199:3:16", + "src": "8199:3:18", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "8179:23:16", + "src": "8179:23:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27875, + "id": 27931, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "8178:25:16", + "src": "8178:25:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6019,18 +6689,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27883, + "id": 27939, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27876, + "id": 27932, "name": "monthsPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27858, - "src": "8207:12:16", + "referencedDeclaration": 27914, + "src": "8207:12:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6045,7 +6715,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27881, + "id": 27937, "isConstant": false, "isLValue": false, "isPure": false, @@ -6055,18 +6725,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27879, + "id": 27935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27877, + "id": 27933, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27842, - "src": "8223:12:16", + "referencedDeclaration": 27898, + "src": "8223:12:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6076,21 +6746,21 @@ "operator": "*", "rightExpression": { "hexValue": "38", - "id": 27878, + "id": 27934, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8238:1:16", + "src": "8238:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "8223:16:16", + "src": "8223:16:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6100,68 +6770,68 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 27880, + "id": 27936, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8242:3:16", + "src": "8242:3:18", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "8223:22:16", + "src": "8223:22:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27882, + "id": 27938, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "8222:24:16", + "src": "8222:24:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8207:39:16", + "src": "8207:39:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 27884, + "id": 27940, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "8206:41:16", + "src": "8206:41:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8178:69:16", + "src": "8178:69:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8157:90:16" + "src": "8157:90:18" }, { "condition": { @@ -6169,7 +6839,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27893, + "id": 27949, "isConstant": false, "isLValue": false, "isPure": false, @@ -6179,18 +6849,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27889, + "id": 27945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27887, + "id": 27943, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27869, - "src": "8268:13:16", + "referencedDeclaration": 27925, + "src": "8268:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6199,18 +6869,18 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 27888, + "id": 27944, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27842, - "src": "8284:12:16", + "referencedDeclaration": 27898, + "src": "8284:12:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8268:28:16", + "src": "8268:28:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6223,18 +6893,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27892, + "id": 27948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27890, + "id": 27946, "name": "monthsPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27858, - "src": "8300:12:16", + "referencedDeclaration": 27914, + "src": "8300:12:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6244,51 +6914,51 @@ "operator": ">=", "rightExpression": { "hexValue": "3131", - "id": 27891, + "id": 27947, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8316:2:16", + "src": "8316:2:18", "typeDescriptions": { "typeIdentifier": "t_rational_11_by_1", "typeString": "int_const 11" }, "value": "11" }, - "src": "8300:18:16", + "src": "8300:18:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "8268:50:16", + "src": "8268:50:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 27913, + "id": 27969, "nodeType": "Block", - "src": "8439:101:16", + "src": "8439:101:18", "statements": [ { "expression": { - "id": 27911, + "id": 27967, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27904, + "id": 27960, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27869, - "src": "8458:13:16", + "referencedDeclaration": 27925, + "src": "8458:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6301,18 +6971,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27910, + "id": 27966, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27905, + "id": 27961, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27869, - "src": "8474:13:16", + "referencedDeclaration": 27925, + "src": "8474:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6323,25 +6993,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 27906, + "id": 27962, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "8490:15:16", + "referencedDeclaration": 27518, + "src": "8490:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27908, + "id": 27964, "indexExpression": { - "id": 27907, + "id": 27963, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27836, - "src": "8506:3:16", + "referencedDeclaration": 27892, + "src": "8506:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6352,66 +7022,67 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8490:20:16", + "src": "8490:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27909, + "id": 27965, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8511:13:18", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "8490:34:16", + "referencedDeclaration": 27524, + "src": "8490:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8474:50:16", + "src": "8474:50:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8458:66:16", + "src": "8458:66:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27912, + "id": 27968, "nodeType": "ExpressionStatement", - "src": "8458:66:16" + "src": "8458:66:18" } ] }, - "id": 27914, + "id": 27970, "nodeType": "IfStatement", - "src": "8264:276:16", + "src": "8264:276:18", "trueBody": { - "id": 27903, + "id": 27959, "nodeType": "Block", - "src": "8320:100:16", + "src": "8320:100:18", "statements": [ { "expression": { - "id": 27901, + "id": 27957, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 27894, + "id": 27950, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27869, - "src": "8339:13:16", + "referencedDeclaration": 27925, + "src": "8339:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6424,18 +7095,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 27900, + "id": 27956, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 27895, + "id": 27951, "name": "tokensToVest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27842, - "src": "8355:12:16", + "referencedDeclaration": 27898, + "src": "8355:12:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6446,25 +7117,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 27896, + "id": 27952, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "8370:15:16", + "referencedDeclaration": 27518, + "src": "8370:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27898, + "id": 27954, "indexExpression": { - "id": 27897, + "id": 27953, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27836, - "src": "8386:3:16", + "referencedDeclaration": 27892, + "src": "8386:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6475,62 +7146,63 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8370:20:16", + "src": "8370:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27899, + "id": 27955, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8391:13:18", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "8370:34:16", + "referencedDeclaration": 27524, + "src": "8370:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8355:49:16", + "src": "8355:49:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8339:65:16", + "src": "8339:65:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 27902, + "id": 27958, "nodeType": "ExpressionStatement", - "src": "8339:65:16" + "src": "8339:65:18" } ] } }, { "expression": { - "id": 27915, + "id": 27971, "name": "amountToClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27869, - "src": "8563:13:16", + "referencedDeclaration": 27925, + "src": "8563:13:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27829, - "id": 27916, + "functionReturnParameters": 27885, + "id": 27972, "nodeType": "Return", - "src": "8556:20:16" + "src": "8556:20:18" } ] } @@ -6538,9 +7210,9 @@ ] }, "documentation": { - "id": 27823, + "id": 27879, "nodeType": "StructuredDocumentation", - "src": "7503:187:16", + "src": "7503:187:18", "text": "@notice This function returns the amount of tokens to claim for a specified investor.\n @param _account address of investor.\n @return uint256 amount of tokens to claim." }, "functionSelector": "0bca8bcd", @@ -6548,20 +7220,20 @@ "kind": "function", "modifiers": [], "name": "getAmountToClaim", - "nameLocation": "7705:16:16", + "nameLocation": "7705:16:18", "parameters": { - "id": 27826, + "id": 27882, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27825, + "id": 27881, "mutability": "mutable", "name": "_account", - "nameLocation": "7730:8:16", + "nameLocation": "7730:8:18", "nodeType": "VariableDeclaration", - "scope": 27923, - "src": "7722:16:16", + "scope": 27979, + "src": "7722:16:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6569,10 +7241,10 @@ "typeString": "address" }, "typeName": { - "id": 27824, + "id": 27880, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7722:7:16", + "src": "7722:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6582,21 +7254,21 @@ "visibility": "internal" } ], - "src": "7721:18:16" + "src": "7721:18:18" }, "returnParameters": { - "id": 27829, + "id": 27885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27828, + "id": 27884, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27923, - "src": "7761:7:16", + "scope": 27979, + "src": "7761:7:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6604,10 +7276,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27827, + "id": 27883, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7761:7:16", + "src": "7761:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6616,44 +7288,46 @@ "visibility": "internal" } ], - "src": "7760:9:16" + "src": "7760:9:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "view", "virtual": false, "visibility": "public" }, { - "id": 27951, + "id": 28007, "nodeType": "FunctionDefinition", - "src": "8846:290:16", + "src": "8846:290:18", + "nodes": [], "body": { - "id": 27950, + "id": 28006, "nodeType": "Block", - "src": "8920:216:16", + "src": "8920:216:18", + "nodes": [], "statements": [ { "condition": { "baseExpression": { - "id": 27931, + "id": 27987, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "8935:9:16", + "referencedDeclaration": 27529, + "src": "8935:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27933, + "id": 27989, "indexExpression": { - "id": 27932, + "id": 27988, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27926, - "src": "8945:8:16", + "referencedDeclaration": 27982, + "src": "8945:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6664,63 +7338,63 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8935:19:16", + "src": "8935:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 27948, + "id": 28004, "nodeType": "Block", - "src": "9094:35:16", + "src": "9094:35:18", "statements": [ { "expression": { "hexValue": "30", - "id": 27946, + "id": 28002, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9116:1:16", + "src": "9116:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 27930, - "id": 27947, + "functionReturnParameters": 27986, + "id": 28003, "nodeType": "Return", - "src": "9109:8:16" + "src": "9109:8:18" } ] }, - "id": 27949, + "id": 28005, "nodeType": "IfStatement", - "src": "8931:198:16", + "src": "8931:198:18", "trueBody": { - "id": 27945, + "id": 28001, "nodeType": "Block", - "src": "8956:123:16", + "src": "8956:123:18", "statements": [ { "assignments": [ - 27935 + 27991 ], "declarations": [ { "constant": false, - "id": 27935, + "id": 27991, "mutability": "mutable", "name": "idx", - "nameLocation": "8981:3:16", + "nameLocation": "8981:3:18", "nodeType": "VariableDeclaration", - "scope": 27945, - "src": "8973:11:16", + "scope": 28001, + "src": "8973:11:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6728,10 +7402,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27934, + "id": 27990, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8973:7:16", + "src": "8973:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6740,16 +7414,16 @@ "visibility": "internal" } ], - "id": 27939, + "id": 27995, "initialValue": { "arguments": [ { - "id": 27937, + "id": 27993, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27926, - "src": "9002:8:16", + "referencedDeclaration": 27982, + "src": "9002:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6763,26 +7437,27 @@ "typeString": "address" } ], - "id": 27936, + "id": 27992, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28028, - "src": "8987:14:16", + "referencedDeclaration": 28084, + "src": "8987:14:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 27938, + "id": 27994, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8987:24:16", + "src": "8987:24:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6790,31 +7465,31 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "8973:38:16" + "src": "8973:38:18" }, { "expression": { "expression": { "baseExpression": { - "id": 27940, + "id": 27996, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "9033:15:16", + "referencedDeclaration": 27518, + "src": "9033:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27942, + "id": 27998, "indexExpression": { - "id": 27941, + "id": 27997, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27935, - "src": "9049:3:16", + "referencedDeclaration": 27991, + "src": "9049:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6825,30 +7500,31 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9033:20:16", + "src": "9033:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27943, + "id": 27999, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9054:13:18", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "9033:34:16", + "referencedDeclaration": 27524, + "src": "9033:34:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27930, - "id": 27944, + "functionReturnParameters": 27986, + "id": 28000, "nodeType": "Return", - "src": "9026:41:16" + "src": "9026:41:18" } ] } @@ -6856,9 +7532,9 @@ ] }, "documentation": { - "id": 27924, + "id": 27980, "nodeType": "StructuredDocumentation", - "src": "8653:187:16", + "src": "8653:187:18", "text": "@notice This function returns the amount of tokens an investor HAS claimed.\n @param _account address of investor.\n @return uint256 amount of tokens claimed by account." }, "functionSelector": "d36862e8", @@ -6866,20 +7542,20 @@ "kind": "function", "modifiers": [], "name": "getAmountClaimed", - "nameLocation": "8855:16:16", + "nameLocation": "8855:16:18", "parameters": { - "id": 27927, + "id": 27983, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27926, + "id": 27982, "mutability": "mutable", "name": "_account", - "nameLocation": "8880:8:16", + "nameLocation": "8880:8:18", "nodeType": "VariableDeclaration", - "scope": 27951, - "src": "8872:16:16", + "scope": 28007, + "src": "8872:16:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6887,10 +7563,10 @@ "typeString": "address" }, "typeName": { - "id": 27925, + "id": 27981, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8872:7:16", + "src": "8872:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6900,21 +7576,21 @@ "visibility": "internal" } ], - "src": "8871:18:16" + "src": "8871:18:18" }, "returnParameters": { - "id": 27930, + "id": 27986, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27929, + "id": 27985, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27951, - "src": "8911:7:16", + "scope": 28007, + "src": "8911:7:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6922,10 +7598,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27928, + "id": 27984, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8911:7:16", + "src": "8911:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6934,44 +7610,46 @@ "visibility": "internal" } ], - "src": "8910:9:16" + "src": "8910:9:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "view", "virtual": false, "visibility": "public" }, { - "id": 27979, + "id": 28035, "nodeType": "FunctionDefinition", - "src": "9349:286:16", + "src": "9349:286:18", + "nodes": [], "body": { - "id": 27978, + "id": 28034, "nodeType": "Block", - "src": "9422:213:16", + "src": "9422:213:18", + "nodes": [], "statements": [ { "condition": { "baseExpression": { - "id": 27959, + "id": 28015, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "9437:9:16", + "referencedDeclaration": 27529, + "src": "9437:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27961, + "id": 28017, "indexExpression": { - "id": 27960, + "id": 28016, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27954, - "src": "9447:8:16", + "referencedDeclaration": 28010, + "src": "9447:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6982,63 +7660,63 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9437:19:16", + "src": "9437:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 27976, + "id": 28032, "nodeType": "Block", - "src": "9593:35:16", + "src": "9593:35:18", "statements": [ { "expression": { "hexValue": "30", - "id": 27974, + "id": 28030, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9615:1:16", + "src": "9615:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "functionReturnParameters": 27958, - "id": 27975, + "functionReturnParameters": 28014, + "id": 28031, "nodeType": "Return", - "src": "9608:8:16" + "src": "9608:8:18" } ] }, - "id": 27977, + "id": 28033, "nodeType": "IfStatement", - "src": "9433:195:16", + "src": "9433:195:18", "trueBody": { - "id": 27973, + "id": 28029, "nodeType": "Block", - "src": "9458:120:16", + "src": "9458:120:18", "statements": [ { "assignments": [ - 27963 + 28019 ], "declarations": [ { "constant": false, - "id": 27963, + "id": 28019, "mutability": "mutable", "name": "idx", - "nameLocation": "9481:3:16", + "nameLocation": "9481:3:18", "nodeType": "VariableDeclaration", - "scope": 27973, - "src": "9473:11:16", + "scope": 28029, + "src": "9473:11:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7046,10 +7724,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27962, + "id": 28018, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9473:7:16", + "src": "9473:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7058,16 +7736,16 @@ "visibility": "internal" } ], - "id": 27967, + "id": 28023, "initialValue": { "arguments": [ { - "id": 27965, + "id": 28021, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27954, - "src": "9502:8:16", + "referencedDeclaration": 28010, + "src": "9502:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7081,26 +7759,27 @@ "typeString": "address" } ], - "id": 27964, + "id": 28020, "name": "locateInvestor", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28028, - "src": "9487:14:16", + "referencedDeclaration": 28084, + "src": "9487:14:18", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 27966, + "id": 28022, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9487:24:16", + "src": "9487:24:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7108,31 +7787,31 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "9473:38:16" + "src": "9473:38:18" }, { "expression": { "expression": { "baseExpression": { - "id": 27968, + "id": 28024, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "9533:15:16", + "referencedDeclaration": 27518, + "src": "9533:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 27970, + "id": 28026, "indexExpression": { - "id": 27969, + "id": 28025, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27963, - "src": "9549:3:16", + "referencedDeclaration": 28019, + "src": "9549:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7143,30 +7822,31 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9533:20:16", + "src": "9533:20:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 27971, + "id": 28027, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9554:12:18", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "9533:33:16", + "referencedDeclaration": 27522, + "src": "9533:33:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27958, - "id": 27972, + "functionReturnParameters": 28014, + "id": 28028, "nodeType": "Return", - "src": "9526:40:16" + "src": "9526:40:18" } ] } @@ -7174,9 +7854,9 @@ ] }, "documentation": { - "id": 27952, + "id": 28008, "nodeType": "StructuredDocumentation", - "src": "9144:199:16", + "src": "9144:199:18", "text": "@notice This function returns an investors tokensToVest (amount of $PROVE allocated to that investor)\n @param _account address of investor\n @return uint256 investor's tokensToVest" }, "functionSelector": "88a772ef", @@ -7184,20 +7864,20 @@ "kind": "function", "modifiers": [], "name": "getTokensToVest", - "nameLocation": "9358:15:16", + "nameLocation": "9358:15:18", "parameters": { - "id": 27955, + "id": 28011, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27954, + "id": 28010, "mutability": "mutable", "name": "_account", - "nameLocation": "9382:8:16", + "nameLocation": "9382:8:18", "nodeType": "VariableDeclaration", - "scope": 27979, - "src": "9374:16:16", + "scope": 28035, + "src": "9374:16:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7205,10 +7885,10 @@ "typeString": "address" }, "typeName": { - "id": 27953, + "id": 28009, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9374:7:16", + "src": "9374:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7218,21 +7898,21 @@ "visibility": "internal" } ], - "src": "9373:18:16" + "src": "9373:18:18" }, "returnParameters": { - "id": 27958, + "id": 28014, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27957, + "id": 28013, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 27979, - "src": "9413:7:16", + "scope": 28035, + "src": "9413:7:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7240,10 +7920,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27956, + "id": 28012, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9413:7:16", + "src": "9413:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7252,21 +7932,23 @@ "visibility": "internal" } ], - "src": "9412:9:16" + "src": "9412:9:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "view", "virtual": false, "visibility": "public" }, { - "id": 28028, + "id": 28084, "nodeType": "FunctionDefinition", - "src": "9862:438:16", + "src": "9862:438:18", + "nodes": [], "body": { - "id": 28027, + "id": 28083, "nodeType": "Block", - "src": "9936:364:16", + "src": "9936:364:18", + "nodes": [], "statements": [ { "expression": { @@ -7276,32 +7958,32 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 27992, + "id": 28048, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 27988, + "id": 28044, "name": "investors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27473, - "src": "9955:9:16", + "referencedDeclaration": 27529, + "src": "9955:9:18", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 27990, + "id": 28046, "indexExpression": { - "id": 27989, + "id": 28045, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27982, - "src": "9965:8:16", + "referencedDeclaration": 28038, + "src": "9965:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7312,7 +7994,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9955:19:16", + "src": "9955:19:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7322,21 +8004,21 @@ "operator": "==", "rightExpression": { "hexValue": "74727565", - "id": 27991, + "id": 28047, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9978:4:16", + "src": "9978:4:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "9955:27:16", + "src": "9955:27:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7344,14 +8026,14 @@ }, { "hexValue": "56657374696e672e736f6c3a3a6c6f63617465496e766573746f722829206163636f756e74206973206e6f7420616e20696e766573746f72", - "id": 27993, + "id": 28049, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9984:58:16", + "src": "9984:58:18", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c7d5b975a38bc7e0b558417843062c4383bc48f01017af3fb1a433530c55d36", "typeString": "literal_string \"Vesting.sol::locateInvestor() account is not an investor\"" @@ -7370,7 +8052,7 @@ "typeString": "literal_string \"Vesting.sol::locateInvestor() account is not an investor\"" } ], - "id": 27987, + "id": 28043, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7378,45 +8060,46 @@ -18 ], "referencedDeclaration": -18, - "src": "9947:7:16", + "src": "9947:7:18", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 27994, + "id": 28050, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9947:96:16", + "src": "9947:96:18", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 27995, + "id": 28051, "nodeType": "ExpressionStatement", - "src": "9947:96:16" + "src": "9947:96:18" }, { "assignments": [ - 27997 + 28053 ], "declarations": [ { "constant": false, - "id": 27997, + "id": 28053, "mutability": "mutable", "name": "idx", - "nameLocation": "10064:3:16", + "nameLocation": "10064:3:18", "nodeType": "VariableDeclaration", - "scope": 28027, - "src": "10056:11:16", + "scope": 28083, + "src": "10056:11:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7424,10 +8107,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27996, + "id": 28052, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10056:7:16", + "src": "10056:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7436,15 +8119,15 @@ "visibility": "internal" } ], - "id": 27998, + "id": 28054, "nodeType": "VariableDeclarationStatement", - "src": "10056:11:16" + "src": "10056:11:18" }, { "body": { - "id": 28023, + "id": 28079, "nodeType": "Block", - "src": "10133:137:16", + "src": "10133:137:18", "statements": [ { "condition": { @@ -7452,7 +8135,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 28015, + "id": 28071, "isConstant": false, "isLValue": false, "isPure": false, @@ -7460,25 +8143,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 28010, + "id": 28066, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "10152:15:16", + "referencedDeclaration": 27518, + "src": "10152:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 28012, + "id": 28068, "indexExpression": { - "id": 28011, + "id": 28067, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28000, - "src": "10168:1:16", + "referencedDeclaration": 28056, + "src": "10168:1:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7489,21 +8172,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10152:18:16", + "src": "10152:18:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage", + "typeIdentifier": "t_struct$_Investor_$27525_storage", "typeString": "struct Vesting.Investor storage ref" } }, - "id": 28013, + "id": 28069, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "10171:7:18", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "10152:26:16", + "referencedDeclaration": 27520, + "src": "10152:26:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7512,45 +8196,45 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 28014, + "id": 28070, "name": "_account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27982, - "src": "10182:8:16", + "referencedDeclaration": 28038, + "src": "10182:8:18", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "10152:38:16", + "src": "10152:38:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 28022, + "id": 28078, "nodeType": "IfStatement", - "src": "10148:111:16", + "src": "10148:111:18", "trueBody": { - "id": 28021, + "id": 28077, "nodeType": "Block", - "src": "10192:67:16", + "src": "10192:67:18", "statements": [ { "expression": { - "id": 28018, + "id": 28074, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 28016, + "id": 28072, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27997, - "src": "10211:3:16", + "referencedDeclaration": 28053, + "src": "10211:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7559,31 +8243,31 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 28017, + "id": 28073, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28000, - "src": "10217:1:16", + "referencedDeclaration": 28056, + "src": "10217:1:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10211:7:16", + "src": "10211:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 28019, + "id": 28075, "nodeType": "ExpressionStatement", - "src": "10211:7:16" + "src": "10211:7:18" }, { - "id": 28020, + "id": 28076, "nodeType": "Break", - "src": "10238:5:16" + "src": "10238:5:18" } ] } @@ -7595,18 +8279,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 28006, + "id": 28062, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 28003, + "id": 28059, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28000, - "src": "10100:1:16", + "referencedDeclaration": 28056, + "src": "10100:1:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7616,51 +8300,52 @@ "operator": "<", "rightExpression": { "expression": { - "id": 28004, + "id": 28060, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "10104:15:16", + "referencedDeclaration": 27518, + "src": "10104:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "id": 28005, + "id": 28061, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10120:6:18", "memberName": "length", "nodeType": "MemberAccess", - "src": "10104:22:16", + "src": "10104:22:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10100:26:16", + "src": "10100:26:18", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 28024, + "id": 28080, "initializationExpression": { "assignments": [ - 28000 + 28056 ], "declarations": [ { "constant": false, - "id": 28000, + "id": 28056, "mutability": "mutable", "name": "i", - "nameLocation": "10093:1:16", + "nameLocation": "10093:1:18", "nodeType": "VariableDeclaration", - "scope": 28024, - "src": "10085:9:16", + "scope": 28080, + "src": "10085:9:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7668,10 +8353,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27999, + "id": 28055, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10085:7:16", + "src": "10085:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7680,17 +8365,17 @@ "visibility": "internal" } ], - "id": 28002, + "id": 28058, "initialValue": { "hexValue": "30", - "id": 28001, + "id": 28057, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10097:1:16", + "src": "10097:1:18", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -7698,11 +8383,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "10085:13:16" + "src": "10085:13:18" }, "loopExpression": { "expression": { - "id": 28008, + "id": 28064, "isConstant": false, "isLValue": false, "isPure": false, @@ -7710,14 +8395,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "10128:3:16", + "src": "10128:3:18", "subExpression": { - "id": 28007, + "id": 28063, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28000, - "src": "10128:1:16", + "referencedDeclaration": 28056, + "src": "10128:1:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7728,57 +8413,57 @@ "typeString": "uint256" } }, - "id": 28009, + "id": 28065, "nodeType": "ExpressionStatement", - "src": "10128:3:16" + "src": "10128:3:18" }, "nodeType": "ForStatement", - "src": "10080:190:16" + "src": "10080:190:18" }, { "expression": { - "id": 28025, + "id": 28081, "name": "idx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27997, - "src": "10289:3:16", + "referencedDeclaration": 28053, + "src": "10289:3:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 27986, - "id": 28026, + "functionReturnParameters": 28042, + "id": 28082, "nodeType": "Return", - "src": "10282:10:16" + "src": "10282:10:18" } ] }, "documentation": { - "id": 27980, + "id": 28036, "nodeType": "StructuredDocumentation", - "src": "9643:213:16", + "src": "9643:213:18", "text": "@notice This function returns the index location of an account in the investor library array\n @param _account address of investor\n @return uint256 investor's index in the investor library array" }, "implemented": true, "kind": "function", "modifiers": [], "name": "locateInvestor", - "nameLocation": "9871:14:16", + "nameLocation": "9871:14:18", "parameters": { - "id": 27983, + "id": 28039, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27982, + "id": 28038, "mutability": "mutable", "name": "_account", - "nameLocation": "9894:8:16", + "nameLocation": "9894:8:18", "nodeType": "VariableDeclaration", - "scope": 28028, - "src": "9886:16:16", + "scope": 28084, + "src": "9886:16:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7786,10 +8471,10 @@ "typeString": "address" }, "typeName": { - "id": 27981, + "id": 28037, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9886:7:16", + "src": "9886:7:18", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7799,21 +8484,21 @@ "visibility": "internal" } ], - "src": "9885:18:16" + "src": "9885:18:18" }, "returnParameters": { - "id": 27986, + "id": 28042, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 27985, + "id": 28041, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28028, - "src": "9927:7:16", + "scope": 28084, + "src": "9927:7:18", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7821,10 +8506,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27984, + "id": 28040, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9927:7:16", + "src": "9927:7:18", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7833,46 +8518,48 @@ "visibility": "internal" } ], - "src": "9926:9:16" + "src": "9926:9:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "view", "virtual": false, "visibility": "internal" }, { - "id": 28039, + "id": 28095, "nodeType": "FunctionDefinition", - "src": "10440:111:16", + "src": "10440:111:18", + "nodes": [], "body": { - "id": 28038, + "id": 28094, "nodeType": "Block", - "src": "10510:41:16", + "src": "10510:41:18", + "nodes": [], "statements": [ { "expression": { - "id": 28036, + "id": 28092, "name": "investorLibrary", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 27462, - "src": "10528:15:16", + "referencedDeclaration": 27518, + "src": "10528:15:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage", "typeString": "struct Vesting.Investor storage ref[] storage ref" } }, - "functionReturnParameters": 28035, - "id": 28037, + "functionReturnParameters": 28091, + "id": 28093, "nodeType": "Return", - "src": "10521:22:16" + "src": "10521:22:18" } ] }, "documentation": { - "id": 28029, + "id": 28085, "nodeType": "StructuredDocumentation", - "src": "10308:126:16", + "src": "10308:126:18", "text": "@notice This function returns the investor library array\n @return Investor[] memory the array of investor structs " }, "functionSelector": "50ad827a", @@ -7880,64 +8567,67 @@ "kind": "function", "modifiers": [], "name": "getInvestorLibrary", - "nameLocation": "10449:18:16", + "nameLocation": "10449:18:18", "parameters": { - "id": 28030, + "id": 28086, "nodeType": "ParameterList", "parameters": [], - "src": "10467:2:16" + "src": "10467:2:18" }, "returnParameters": { - "id": 28035, + "id": 28091, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 28034, + "id": 28090, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 28039, - "src": "10491:17:16", + "scope": 28095, + "src": "10491:17:18", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 28032, + "id": 28088, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 28031, + "id": 28087, "name": "Investor", + "nameLocations": [ + "10491:8:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27469, - "src": "10491:8:16" + "referencedDeclaration": 27525, + "src": "10491:8:18" }, - "referencedDeclaration": 27469, - "src": "10491:8:16", + "referencedDeclaration": 27525, + "src": "10491:8:18", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 28033, + "id": 28089, "nodeType": "ArrayTypeName", - "src": "10491:10:16", + "src": "10491:10:18", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "src": "10490:19:16" + "src": "10490:19:18" }, - "scope": 28040, + "scope": 28096, "stateMutability": "view", "virtual": false, "visibility": "public" @@ -7947,39 +8637,42 @@ "baseContracts": [ { "baseName": { - "id": 27446, + "id": 27502, "name": "Ownable", + "nameLocations": [ + "510:7:18" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28214, - "src": "510:7:16" + "referencedDeclaration": 28270, + "src": "510:7:18" }, - "id": 27447, + "id": 27503, "nodeType": "InheritanceSpecifier", - "src": "510:7:16" + "src": "510:7:18" } ], "canonicalName": "Vesting", "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 27445, + "id": 27501, "nodeType": "StructuredDocumentation", - "src": "227:263:16", + "src": "227:263:18", "text": "@notice This contract will hold $PROVE tokens in escrow\n This contract will facilitate the private sale investor vesting tokens\n This contract will follow a strict vesting schedule\n This contract will follow a claim model" }, "fullyImplemented": true, "linearizedBaseContracts": [ - 28040, - 28214, - 28066 + 28096, + 28270, + 28122 ], "name": "Vesting", - "nameLocation": "499:7:16", - "scope": 28041, + "nameLocation": "499:7:18", + "scope": 28097, "usedErrors": [] } ], "license": "UNLICENSED" }, - "id": 16 + "id": 18 } \ No newline at end of file diff --git a/out/Vesting.t.sol/VestingTest.json b/out/Vesting.t.sol/VestingTest.json index abbaeb8..0944c95 100644 --- a/out/Vesting.t.sol/VestingTest.json +++ b/out/Vesting.t.sol/VestingTest.json @@ -856,13 +856,13 @@ } ], "bytecode": { - "object": "0x60806040526000805460ff191660011790553480156200001e57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b031990911617905561a76b806200005b6000396000f3fe60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000911565b6200024c6200029336600462007e5d565b62000c17565b6200024c620002aa36600462007e5d565b62000d8d565b62000261600b81565b62000261600281565b6200024c62000e9d565b6200024c62000fc7565b6200024c620011a0565b6200024c62001385565b6200024c62001e3a565b6200024c62002280565b620003156200030f36600462007e99565b620027d4565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007ef3565b62002832565b6200024c620029eb565b62000261600a81565b6200024c6200036836600462007f2e565b62003019565b62000261600481565b6200024c62003886565b6200024c62003df3565b6200024c62004042565b6200024c62004735565b620003a96200481b565b60405190151581526020016200026f565b62000315620003cb36600462007e5d565b6200494c565b6200024c620003e236600462007f2e565b62004967565b62000261600381565b6200024c6200512f565b6200024c62005446565b62000261600081565b6200024c62005cb7565b6200024c62005f10565b600054620003a99060ff1681565b6200043a62004735565b6200044462005cb7565b60025460405173853d955acef822db058eb8505911ed77f175b99e916001600160a01b031690620004759062007e0c565b6200048292919062007f48565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007f62565b600062006123565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b991908101906200801f565b9050620005c981516000620062ac565b6018546040805163022b1d8960e21b8152905162000644926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063c9190620080fa565b6000620062ac565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200068b9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620006ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006d1919062007f62565b620006e057620006e062008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000763929190911690636f7bc9be906024015b602060405180830381865afa15801562000735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200075b919062007f62565b600162006123565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620007b7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620007e191908101906200801f565b9050620007f181516001620062ac565b62000829816000815181106200080b576200080b6200814e565b6020908102919091010151516001546001600160a01b03166200636f565b6200085e816000815181106200084357620008436200814e565b602002602001015160200151678ac7230489e80000620062ac565b6200088c816000815181106200087857620008786200814e565b6020026020010151604001516000620062ac565b6018546040805163022b1d8960e21b815290516200090e926001600160a01b0316916308ac76249160048083019260209291908290030181865afa158015620008d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008ff9190620080fa565b678ac7230489e80000620062ac565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620009589390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562000978573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099e919062007f62565b620009ad57620009ad62008138565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620009e9929190911690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000a33573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000a5d91908101906200801f565b905062000a6d81516001620062ac565b62000a87816000815181106200080b576200080b6200814e565b62000aa1816000815181106200084357620008436200814e565b62000abb816000815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362000af8939082169291169060040162007f48565b6020604051808303816000875af115801562000b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b3e919062007f62565b62000b4d5762000b4d62008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000b89929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000bdd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c0791908101906200801f565b90506200090e81516000620062ac565b600082841162000c335762000c2d84846200817a565b62000c3f565b62000c3f83856200817a565b90508060000362000c505750505050565b6000841562000c60578462000c62565b835b9050600062000c7384600a62008291565b62000c8b906b033b2e3c9fd0803ce8000000620082b5565b8262000ca46b033b2e3c9fd0803ce800000086620082cc565b62000cb09190620082b5565b1090508062000d8557604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528660405162000d4b9190620082ee565b60405180910390a16000805160206200a7168339815191528560405162000d73919062008327565b60405180910390a162000d8562006469565b505050505050565b600082841162000da95762000da384846200817a565b62000db5565b62000db583856200817a565b9050818111158062000e9657604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528560405162000e5c9190620082ee565b60405180910390a16000805160206200a7168339815191528460405162000e84919062008327565b60405180910390a162000e9662006469565b5050505050565b601854604080516385d4cad360e01b8152905162000f2b926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000eea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f10919062008352565b73853d955acef822db058eb8505911ed77f175b99e6200636f565b6018546040805163f02c6d8f60e01b8152905162000f78926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200100f93908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af11580156200102f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001055919062007f62565b62001064576200106462008138565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152620010b9929190911690630bca8bcd906024015b602060405180830381865afa15801562000616573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200112e919062007f62565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200116b929190911690630bca8bcd906024016200109b565b601854604051630bca8bcd60e01b81526000600482015262000fc5916001600160a01b031690630bca8bcd906024016200109b565b6018546040805163f02c6d8f60e01b81529051620011ed926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200123a926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001289573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012af919062007f62565b620012be57620012be62008138565b6018546040805163f02c6d8f60e01b8152905162001338926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200130b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013319190620080fa565b42620062ac565b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000735573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905169d3c21bcecceda1000000926200141a926001600160a01b03909116916385d4cad3916004808201926020929091908290030181865afa158015620013e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001407919062008352565b6018546001600160a01b0316836200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200146f57600080fd5b505af115801562001484573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc9450620014c8939283169290911690869060040162008114565b6020604051808303816000875af1158015620014e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200150e919062007f62565b6200151d576200151d62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200156c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001592919062007f62565b620015a157620015a162008138565b601854604080516385d4cad360e01b8152905162001646926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001614919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024016200109b565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001695573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016bb919062007f62565b620016ca57620016ca62008138565b601854604080516385d4cad360e01b81529051620017ce926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001717573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200173d919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001787573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017ad9190620080fa565b6064620017bc84600c620082cc565b620017c89190620082b5565b620062ac565b620017dc6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200182b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001851919062007f62565b62001860576200186062008138565b601854604080516385d4cad360e01b8152905162001952926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620018ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018d3919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200191d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019439190620080fa565b6064620017bc846014620082cc565b620019606224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620019af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019d5919062007f62565b620019e457620019e462008138565b601854604080516385d4cad360e01b8152905162001ad6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a57919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001aa1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ac79190620080fa565b6064620017bc84601c620082cc565b62001ae4626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b33573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b59919062007f62565b62001b685762001b6862008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001bb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bdb919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c4b9190620080fa565b6064620017bc846034620082cc565b62001c6862dd7c0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001cb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cdd919062007f62565b62001cec5762001cec62008138565b601854604080516385d4cad360e01b8152905162001dd7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001d39573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d5f919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001daa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001dd09190620080fa565b82620062ac565b6000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e2557600080fd5b505af115801562000e96573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001e869291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001ea6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ecc919062007f62565b1562001edc5762001edc62008138565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001f289291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001f48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f6e919062007f62565b1562001f7e5762001f7e62008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001fca9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001fea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002010919062007f62565b1562002020576200202062008138565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562002078573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200209e919062008352565b6040518363ffffffff1660e01b8152600401620020bd92919062007f48565b6020604051808303816000875af1158015620020dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002103919062007f62565b1562002113576200211362008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200214c9291169060009060040162007f48565b6020604051808303816000875af11580156200216c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002192919062007f62565b15620021a257620021a262008138565b601854620021df9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6200656d565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200222b9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af11580156200224b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002271919062007f62565b62000fc55762000fc562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620022c79390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620022e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200230d919062007f62565b6200231c576200231c62008138565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002359939082169291169060040162007f48565b6020604051808303816000875af115801562002379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200239f919062007f62565b15620023af57620023af62008138565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620023e792911690849060040162007f48565b6020604051808303816000875af115801562002407573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200242d919062007f62565b156200243d576200243d62008138565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200247a939082169291169060040162007f48565b6020604051808303816000875af11580156200249a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024c0919062007f62565b620024cf57620024cf62008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200252457600080fd5b505af115801562002539573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620025d957600080fd5b505af1158015620025ee573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200263c57600080fd5b505af115801562002651573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620026f157600080fd5b505af115801562002706573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200275257600080fd5b505af115801562002767573d6000803e3d6000fd5b505050506000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620027b957600080fd5b505af1158015620027ce573d6000803e3d6000fd5b50505050565b600084158015620027e3575081155b15620027f2575060006200282a565b838303620028025750816200282a565b836200280f81856200817a565b6200281b908762008372565b62002827919062008389565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562002897573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028bd9190620080fa565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620028f09089908790602001620083a4565b60405160208183030381529060405280519060200120878562002914919062008389565b6040516001600160e01b031960e086901b1681526200293993929190600401620083bd565b600060405180830381600087803b1580156200295457600080fd5b505af115801562002969573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000d859350861691506370a0823190602401602060405180830381865afa158015620029b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029df9190620080fa565b620017c8868462008389565b601854604080516385d4cad360e01b8152905162002a7c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a5e919062008352565b6018546001600160a01b03166a0422ca8b0a00a4250000006200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562002ad157600080fd5b505af115801562002ae6573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002b8657600080fd5b505af115801562002b9b573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002bf057600080fd5b505af115801562002c05573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002c5393928316929091169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562002c73573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c99919062007f62565b62002ca85762002ca862008138565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a6d68339815191529063f28dceb390608401600060405180830381600087803b15801562002d3257600080fd5b505af115801562002d47573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d9c57600080fd5b505af115801562002db1573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002e04573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e2a919062007f62565b62002e395762002e3962008138565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002e8a57600080fd5b505af115801562002e9f573d6000803e3d6000fd5b5050505062002eb26301dfe20062006581565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002f0357600080fd5b505af115801562002f18573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002faf57600080fd5b505af115801562002fc4573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200275257600080fd5b6200303b8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062003095601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620013e1573d6000803e3d6000fd5b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b158015620030ea57600080fd5b505af1158015620030ff573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062003143939283169290911690869060040162008114565b6020604051808303816000875af115801562003163573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003189919062007f62565b62003198576200319862008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620031e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200320d919062007f62565b6200321c576200321c62008138565b601854604080516385d4cad360e01b8152905162003269926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032de919062007f62565b620032ed57620032ed62008138565b601854604080516385d4cad360e01b81529051620033fa926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003360919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620033aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033d09190620080fa565b6064620033df84600c620082cc565b620033eb9190620082b5565b670de0b6b3a764000062000d8d565b620034086224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003457573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200347d919062007f62565b6200348c576200348c62008138565b601854604080516385d4cad360e01b815290516200357e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034ff919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003549573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200356f9190620080fa565b6064620033df846014620082cc565b6200358c6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003601919062007f62565b62003610576200361062008138565b601854604080516385d4cad360e01b8152905162003702926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200365d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003683919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036f39190620080fa565b6064620033df84601c620082cc565b62003710626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200375f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003785919062007f62565b62003794576200379462008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620037e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003807919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003851573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620038779190620080fa565b6064620033df846034620082cc565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038cd9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620038ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003913919062007f62565b1562003923576200392362008138565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262003965929116908490678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003985573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620039ab919062007f62565b15620039bb57620039bb62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003a029390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003a22573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003a48919062007f62565b62003a575762003a5762008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562003aac57600080fd5b505af115801562003ac1573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003b5857600080fd5b505af115801562003b6d573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003bb29290911690678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003bcd57600080fd5b505af115801562003be2573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003c8257600080fd5b505af115801562003c97573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003cd890600090678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003cf357600080fd5b505af115801562003d08573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003da057600080fd5b505af115801562003db5573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b4579350620027379290911690600090600401620083a4565b60185462003e2a9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ec39073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003e8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003eb39190620080fa565b620017c8620f42406064620082cc565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003f0d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003f599291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562003f79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f9f919062007f62565b62003fae5762003fae62008138565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ff89073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000fc59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003e6f565b6000604051620040529062007e1a565b604051809103906000f0801580156200406f573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc93620040b8938116921690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620040d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620040fe919062007f62565b6200410d576200410d62008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200415593908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af115801562004175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200419b919062007f62565b620041aa57620041aa62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620041ed9291169085906801a055690d9db800009060040162008114565b6020604051808303816000875af11580156200420d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004233919062007f62565b62004242576200424262008138565b6018546001546040516337bde4df60e11b81526001600160a01b0391821660048201526200427e929190911690636f7bc9be9060240162000717565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620042ba929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b038381166004830152620042f0921690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200433a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200436491908101906200801f565b90506200437481516003620062ac565b6200438e816000815181106200080b576200080b6200814e565b620043a8816000815181106200084357620008436200814e565b620043c2816000815181106200087857620008786200814e565b620043fa81600181518110620043dc57620043dc6200814e565b6020908102919091010151516003546001600160a01b03166200636f565b62004430816001815181106200441457620044146200814e565b6020026020010151602001516801158e460913d00000620062ac565b6200444a816001815181106200087857620008786200814e565b62004477816002815181106200446457620044646200814e565b602002602001015160000151836200636f565b620044ad816002815181106200449157620044916200814e565b6020026020010151602001516801a055690d9db80000620062ac565b620044c7816002815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004504939082169291169060040162007f48565b6020604051808303816000875af115801562004524573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200454a919062007f62565b62004559576200455962008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262004595929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620045d1929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b03848116600483015262004607921690636f7bc9be9060240162000717565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200465b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200468591908101906200801f565b90506200469581516002620062ac565b620046af816000815181106200446457620044646200814e565b620046c9816000815181106200449157620044916200814e565b620046e3816000815181106200087857620008786200814e565b620046fd81600181518110620043dc57620043dc6200814e565b62004717816001815181106200441457620044146200814e565b62004731816001815181106200087857620008786200814e565b5050565b604051620047439062007e1a565b604051809103906000f08015801562004760573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b03929092169190911790556040516200478f9062007e1a565b604051809103906000f080158015620047ac573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620047db9062007e1a565b604051809103906000f080158015620047f8573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200483c5750600054610100900460ff1690565b60006000805160206200a6d68339815191523b1562004947576040516000906000805160206200a6d6833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620048a99083906519985a5b195960d21b90602001620083a4565b60408051601f1981840301815290829052620048c992916020016200840d565b60408051601f1981840301815290829052620048e59162008440565b6000604051808303816000865af19150503d806000811462004924576040519150601f19603f3d011682016040523d82523d6000602084013e62004929565b606091505b509150508080602001905181019062004943919062007f62565b9150505b919050565b60006200495d8484846000620027d4565b90505b9392505050565b620049898169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062004a22601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620049e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a09919062008352565b6018546001600160a01b0316620021d9846003620082cc565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004a71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a97919062007f62565b62004aa65762004aa662008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004ae59390821692911690869060040162008114565b6020604051808303816000875af115801562004b05573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004b2b919062007f62565b62004b3a5762004b3a62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004b799390821692911690869060040162008114565b6020604051808303816000875af115801562004b99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bbf919062007f62565b62004bce5762004bce62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262004c08929116908490869060040162008114565b6020604051808303816000875af115801562004c28573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c4e919062007f62565b62004c5d5762004c5d62008138565b62004c6b6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004cba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ce0919062007f62565b62004cef5762004cef62008138565b601854604080516385d4cad360e01b8152905162004d3c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b62004d4a62cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004dbf919062007f62565b62004dce5762004dce62008138565b601854604080516385d4cad360e01b8152905162004ec0926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e41919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004e8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004eb19190620080fa565b6064620033df84603c620082cc565b62004ece62b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004f1d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004f43919062007f62565b62004f525762004f5262008138565b601854604080516385d4cad360e01b8152905162004ff7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004f9f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fc5919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b620050066301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005055573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200507b919062007f62565b6200508a576200508a62008138565b601854604080516385d4cad360e01b815290516200090e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620050d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620050fd919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc936200517993918316921690869060040162008114565b6020604051808303816000875af115801562005199573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620051bf919062007f62565b620051ce57620051ce62008138565b6018546003546040516388a772ef60e01b81526001600160a01b0391821660048201526200520a9291909116906388a772ef9060240162001d8c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200527f919062007f62565b6200528e576200528e62008138565b6200529c626ebe0062006581565b60006064620052ad836008620082cc565b620052b99190620082b5565b620052c6906003620082cc565b6064620052d584600c620082cc565b620052e19190620082b5565b620052ed919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200532a92911690630bca8bcd9060240162001d8c565b62005339630127500062006581565b606462005348836008620082cc565b620053549190620082b5565b6200536190600b620082cc565b60646200537084600c620082cc565b6200537c9190620082b5565b62005388919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620053c592911690630bca8bcd9060240162001d8c565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004731929190911690630bca8bcd90602401602060405180830381865afa15801562005419573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200543f9190620080fa565b83620062ac565b601854604080516385d4cad360e01b8152905162005493926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620054e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005508919062007f62565b62005517576200551762008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362005560939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562005580573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055a6919062007f62565b620055b557620055b562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620055fe939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af11580156200561e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005644919062007f62565b62005653576200565362008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200569792911690849069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af1158015620056b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056dd919062007f62565b620056ec57620056ec62008138565b620056fa6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005749573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200576f919062007f62565b6200577e576200577e62008138565b601854604080516385d4cad360e01b8152905162005872926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620057cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057f1919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200583b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058619190620080fa565b691969368974c05b000000620062ac565b6200588062cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620058cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058f5919062007f62565b62005904576200590462008138565b601854604080516385d4cad360e01b81529051620059f8926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005951573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005977919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620059c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e79190620080fa565b697f0e10af47c1c7000000620062ac565b62005a0662b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005a55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a7b919062007f62565b62005a8a5762005a8a62008138565b601854604080516385d4cad360e01b8152905162005b7f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005ad7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005afd919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005b48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005b6e9190620080fa565b69d3c21bcecceda1000000620062ac565b62005b8e6301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005bdd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c03919062007f62565b62005c125762005c1262008138565b601854604080516385d4cad360e01b8152905162000fc5926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005c5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c85919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005b2a565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005f5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005f85919062007f62565b1562005f955762005f9562008138565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005fe4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200600a919062007f62565b156200601a576200601a62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562006069573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200608f919062007f62565b6200609e576200609e62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620060ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006113919062007f62565b1562000fc55762000fc562008138565b8015158215151462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200619a9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620061ed576040518060400160405280600581526020016466616c736560d81b8152506200620b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200621a91906200848c565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200626d576040518060400160405280600581526020016466616c736560d81b8152506200628b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200629a9190620084cb565b60405180910390a16200473162006469565b80821462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200631f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a71683398151915281604051620063479190620082ee565b60405180910390a16000805160206200a716833981519152826040516200629a919062008327565b806001600160a01b0316826001600160a01b03161462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620063f79060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620064309190620084f6565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f826040516200629a91906200853b565b6000805160206200a6d68339815191523b156200655c576040516000906000805160206200a6d6833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620064d79083906519985a5b195960d21b90600190602001620083bd565b60408051601f1981840301815290829052620064f792916020016200840d565b60408051601f1981840301815290829052620065139162008440565b6000604051808303816000865af19150503d806000811462006552576040519150601f19603f3d011682016040523d82523d6000602084013e62006557565b606091505b505050505b6000805461ff001916610100179055565b6200657c83838360006200661d565b505050565b6000805160206200a6d683398151915263e5d6bf02620065a2834262008389565b6040518263ffffffff1660e01b8152600401620065c191815260200190565b600060405180830381600087803b15801562001e2557600080fd5b6000620065eb84848462006826565b9050620049606040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262006a1d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620066739162008440565b6000604051808303816000865af19150503d8060008114620066b2576040519150601f19603f3d011682016040523d82523d6000602084013e620066b7565b606091505b50915050600081806020019051810190620066d39190620080fa565b90506200670d846200670687620066ff6370a0823160e01b620066f8600a8d62006abd565b9062006ae7565b9062006b05565b9062006b2e565b821562000d855760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006758919062008440565b6000604051808303816000865af19150503d806000811462006797576040519150601f19603f3d011682016040523d82523d6000602084013e6200679c565b606091505b50915050600081806020019051810190620067b89190620080fa565b905082861015620067e357620067cf86846200817a565b620067db90826200817a565b9050620067fe565b620067ef83876200817a565b620067fb908262008389565b90505b6200681c81620067066318160ddd60e01b620066f8600a8d62006abd565b5050505050505050565b600081831115620068a45760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620068b55750818411155b15620068c357508262004960565b6000620068d184846200817a565b620068de90600162008389565b905060038511158015620068f157508481115b156200690c5762006903858562008389565b91505062004960565b6200691b60036000196200817a565b851015801562006937575062006934856000196200817a565b81115b1562006957576200694b856000196200817a565b6200690390846200817a565b82851115620069b95760006200696e84876200817a565b905060006200697e838362008372565b905080600003620069955784935050505062004960565b6001620069a3828862008389565b620069af91906200817a565b9350505062006a15565b8385101562006a15576000620069d086866200817a565b90506000620069e0838362008372565b905080600003620069f75785935050505062004960565b62006a0381866200817a565b62006a1090600162008389565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162006a4992919062008566565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162006a80919062008440565b600060405180830381855afa9150503d806000811462000d85576040519150601f19603f3d011682016040523d82523d6000602084013e62000d85565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c17905560008262006ade565b6002820180546001810182556000918252602082206001600160a01b0384169101558262006ade565b620047318282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b946000939092909183018282801562006ba757602002820191906000526020600020905b81548152602001906001019080831162006b92575b5050505050905060008362006bbc8362006e9b565b60405160200162006bcf9291906200840d565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006c239186918891016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006c5e5762006c5c8762006f4f565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006c9f9187918991016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ce6919062008440565b600060405180830381855afa9150503d806000811462006d23576040519150601f19603f3d011682016040523d82523d6000602084013e62006d28565b606091505b50915062006d4590508162006d3f886020620082cc565b62006f5c565b604051630667f9d760e41b8152909250600091506000805160206200a6d68339815191529063667f9d709062006d82908b908790600401620083a4565b602060405180830381865afa15801562006da0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006dc69190620080fa565b905080821462006dea5760405162461bcd60e51b81526004016200689b90620085c6565b6040516370ca10bb60e01b81526000805160206200a6d6833981519152906370ca10bb9062006e22908b9087908e90600401620083bd565b600060405180830381600087803b15801562006e3d57600080fd5b505af115801562006e52573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006e8760028b01600062007e28565b896004016000905550505050505050505050565b606060008251602062006eaf9190620082cc565b67ffffffffffffffff81111562006eca5762006eca62007f82565b6040519080825280601f01601f19166020018201604052801562006ef5576020820181803683370190505b50905060005b835181101562006f4857600084828151811062006f1c5762006f1c6200814e565b60200260200101519050808260200260200184015250808062006f3f9062008661565b91505062006efb565b5092915050565b600062006ae18262006fe6565b6000806000602085511162006f7357845162006f76565b60205b905060005b8181101562006fdc5762006f91816008620082cc565b8662006f9e838862008389565b8151811062006fb15762006fb16200814e565b01602001516001600160f81b031916901c92909217918062006fd38162008661565b91505062006f7b565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156200705857602002820191906000526020600020905b81548152602001906001019080831162007043575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905195965094919350620070a4925085918791016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562007143576001600160a01b0384166000908152602087815260408083206001600160e01b03198716845282528083209051909291620071139185918791016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b600083620071518362007cdf565b604051602001620071649291906200840d565b60405160208183030381529060405290506000805160206200a6f683398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620071c357600080fd5b505af1158015620071d8573d6000803e3d6000fd5b50505050600080866001600160a01b031683604051620071f9919062008440565b600060405180830381855afa9150503d806000811462007236576040519150601f19603f3d011682016040523d82523d6000602084013e6200723b565b606091505b5091506200725890508162007252876020620082cc565b62007d8c565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a6d6833981519152906365bc9481906024016000604051808303816000875af1158015620072b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620072df9190810190620086ea565b5090508051600103620075a65760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d7089846000815181106200732657620073266200814e565b60200260200101516040518363ffffffff1660e01b81526004016200734d929190620083a4565b602060405180830381865afa1580156200736b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620073919190620080fa565b905080620073f5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620073d157620073d16200814e565b602002602001015160001c604051620073ec929190620083a4565b60405180910390a15b808314620074175760405162461bcd60e51b81526004016200689b90620085c6565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200744f9291906200858a565b60405160208183030381529060405280519060200120856000815181106200747b576200747b6200814e565b602002602001015160001c60405162007498949392919062008755565b60405180910390a181600081518110620074b657620074b66200814e565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262007501918a918c91016200858a565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200756b918a918c91016200858a565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007b62565b60018151111562007af15760005b815181101562007aea5760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d708a858581518110620075f757620075f76200814e565b60200260200101516040518363ffffffff1660e01b81526004016200761e929190620083a4565b602060405180830381865afa1580156200763c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620076629190620080fa565b905080620076c5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110620076a157620076a16200814e565b602002602001015160001c604051620076bc929190620083a4565b60405180910390a15b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8a858581518110620076fc57620076fc6200814e565b602002602001015161133760f01b6040518463ffffffff1660e01b81526004016200772a93929190620083bd565b600060405180830381600087803b1580156200774557600080fd5b505af11580156200775a573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200777c919062008440565b600060405180830381855afa9150503d8060008114620077b9576040519150601f19603f3d011682016040523d82523d6000602084013e620077be565b606091505b509092509050620077d681620072528b6020620082cc565b9550818015620077ea575061133760f01b86145b1562007a3d577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620078289291906200858a565b604051602081830303815290604052805190602001208888815181106200785357620078536200814e565b602002602001015160001c60405162007870949392919062008755565b60405180910390a18484815181106200788d576200788d6200814e565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620078d8918d918f91016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620079659291906200858a565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c878781518110620079d757620079d76200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a0093929190620083bd565b600060405180830381600087803b15801562007a1b57600080fd5b505af115801562007a30573d6000803e3d6000fd5b5050505050505062007aea565b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c87878151811062007a745762007a746200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a9d93929190620083bd565b600060405180830381600087803b15801562007ab857600080fd5b505af115801562007acd573d6000803e3d6000fd5b50505050505050808062007ae19062008661565b915050620075b4565b5062007b62565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200689b565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929162007ba69188918a91016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007c355760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200689b565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007c6660028a01600062007e28565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007cac9188918a91016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007cf39190620082cc565b67ffffffffffffffff81111562007d0e5762007d0e62007f82565b6040519080825280601f01601f19166020018201604052801562007d39576020820181803683370190505b50905060005b835181101562006f4857600084828151811062007d605762007d606200814e565b60200260200101519050808260200260200184015250808062007d839062008661565b91505062007d3f565b6000806000602085511162007da357845162007da6565b60205b905060005b8181101562006fdc5762007dc1816008620082cc565b8662007dce838862008389565b8151811062007de15762007de16200814e565b01602001516001600160f81b031916901c92909217918062007e038162008661565b91505062007dab565b61196d806200878683390190565b6105e3806200a0f383390190565b50805460008255906000526020600020908101906200090e91905b8082111562007e59576000815560010162007e43565b5090565b60008060006060848603121562007e7357600080fd5b505081359360208301359350604090920135919050565b80151581146200090e57600080fd5b6000806000806080858703121562007eb057600080fd5b843593506020850135925060408501359150606085013562007ed28162007e8a565b939692955090935050565b6001600160a01b03811681146200090e57600080fd5b60008060006060848603121562007f0957600080fd5b83359250602084013562007f1d8162007edd565b929592945050506040919091013590565b60006020828403121562007f4157600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007f7557600080fd5b8151620049608162007e8a565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007fbe5762007fbe62007f82565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007ff05762007ff062007f82565b604052919050565b600067ffffffffffffffff82111562008015576200801562007f82565b5060051b60200190565b600060208083850312156200803357600080fd5b825167ffffffffffffffff8111156200804b57600080fd5b8301601f810185136200805d57600080fd5b8051620080746200806e8262007ff8565b62007fc4565b818152606091820283018401918482019190888411156200809457600080fd5b938501935b83851015620080ee5780858a031215620080b35760008081fd5b620080bd62007f98565b8551620080ca8162007edd565b81528587015187820152604080870151908201528352938401939185019162008099565b50979650505050505050565b6000602082840312156200810d57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000828210156200818f576200818f62008164565b500390565b600181815b80851115620081d5578160001904821115620081b957620081b962008164565b80851615620081c757918102915b93841c939080029062008199565b509250929050565b600082620081ee5750600162006ae1565b81620081fd5750600062006ae1565b8160018114620082165760028114620082215762008241565b600191505062006ae1565b60ff84111562008235576200823562008164565b50506001821b62006ae1565b5060208310610133831016604e8410600b841016171562008266575081810a62006ae1565b62008272838362008194565b806000190482111562008289576200828962008164565b029392505050565b600062006ade8383620081dd565b634e487b7160e01b600052601260045260246000fd5b600082620082c757620082c76200829f565b500490565b6000816000190483118215151615620082e957620082e962008164565b500290565b6040815260006200831960408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200831960408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200836557600080fd5b8151620049608162007edd565b6000826200838457620083846200829f565b500690565b600082198211156200839f576200839f62008164565b500190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620083fb578181015183820152602001620083e1565b83811115620027ce5750506000910152565b6001600160e01b031983168152815160009062008432816004850160208701620083de565b919091016004019392505050565b6000825162008454818460208701620083de565b9190910192915050565b6000815180845262008478816020860160208601620083de565b601f01601f19169290920160200192915050565b604081526000620084b760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200282a81856200845e565b604081526000620084b760408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200852160408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200852160408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200857b60408301856200845e565b90508260208301529392505050565b825160009082906020808701845b83811015620085b65781518552938201939082019060010162008598565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b60006001820162008676576200867662008164565b5060010190565b600082601f8301126200868f57600080fd5b81516020620086a26200806e8362007ff8565b82815260059290921b84018101918181019086841115620086c257600080fd5b8286015b84811015620086df5780518352918301918301620086c6565b509695505050505050565b60008060408385031215620086fe57600080fd5b825167ffffffffffffffff808211156200871757600080fd5b62008725868387016200867d565b935060208501519150808211156200873c57600080fd5b506200874b858286016200867d565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f00330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220726833ddff7edfeffbe5c061c7811a419087855e87d5b044001d8511efb20c6c64736f6c634300080f0033", - "sourceMap": "208:21101:27:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;208:21101:27;;;;;;;;;-1:-1:-1;3122:37:26;3086:77;;;-1:-1:-1;;;;;;3086:77:26;;;;;;208:21101:27;;;;;;", + "object": "0x60806040526000805460ff191660011790553480156200001e57600080fd5b5060008054757109709ecfa91a80626ff3989d68f67f5b1dd12d000062010000600160b01b031990911617905561a73a806200005b6000396000f3fe60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000911565b6200024c6200029336600462007e5d565b62000c17565b6200024c620002aa36600462007e5d565b62000d8d565b62000261600b81565b62000261600281565b6200024c62000e9d565b6200024c62000fc7565b6200024c620011a0565b6200024c62001385565b6200024c62001e3a565b6200024c62002280565b620003156200030f36600462007e99565b620027d4565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007ef3565b62002832565b6200024c620029eb565b62000261600a81565b6200024c6200036836600462007f2e565b62003019565b62000261600481565b6200024c62003886565b6200024c62003df3565b6200024c62004042565b6200024c62004735565b620003a96200481b565b60405190151581526020016200026f565b62000315620003cb36600462007e5d565b6200494c565b6200024c620003e236600462007f2e565b62004967565b62000261600381565b6200024c6200512f565b6200024c62005446565b62000261600081565b6200024c62005cb7565b6200024c62005f10565b600054620003a99060ff1681565b6200043a62004735565b6200044462005cb7565b60025460405173853d955acef822db058eb8505911ed77f175b99e916001600160a01b031690620004759062007e0c565b6200048292919062007f48565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007f62565b600062006123565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b991908101906200801f565b9050620005c981516000620062ac565b6018546040805163022b1d8960e21b8152905162000644926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063c9190620080fa565b6000620062ac565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200068b9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620006ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006d1919062007f62565b620006e057620006e062008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000763929190911690636f7bc9be906024015b602060405180830381865afa15801562000735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200075b919062007f62565b600162006123565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620007b7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620007e191908101906200801f565b9050620007f181516001620062ac565b62000829816000815181106200080b576200080b6200814e565b6020908102919091010151516001546001600160a01b03166200636f565b6200085e816000815181106200084357620008436200814e565b602002602001015160200151678ac7230489e80000620062ac565b6200088c816000815181106200087857620008786200814e565b6020026020010151604001516000620062ac565b6018546040805163022b1d8960e21b815290516200090e926001600160a01b0316916308ac76249160048083019260209291908290030181865afa158015620008d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008ff9190620080fa565b678ac7230489e80000620062ac565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620009589390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562000978573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099e919062007f62565b620009ad57620009ad62008138565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620009e9929190911690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000a33573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000a5d91908101906200801f565b905062000a6d81516001620062ac565b62000a87816000815181106200080b576200080b6200814e565b62000aa1816000815181106200084357620008436200814e565b62000abb816000815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362000af8939082169291169060040162007f48565b6020604051808303816000875af115801562000b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b3e919062007f62565b62000b4d5762000b4d62008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000b89929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000bdd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c0791908101906200801f565b90506200090e81516000620062ac565b600082841162000c335762000c2d84846200817a565b62000c3f565b62000c3f83856200817a565b90508060000362000c505750505050565b6000841562000c60578462000c62565b835b9050600062000c7384600a6200828d565b62000c8b906b033b2e3c9fd0803ce8000000620082b1565b8262000ca46b033b2e3c9fd0803ce800000086620082c8565b62000cb09190620082b1565b1090508062000d8557604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a6e58339815191529181900360a00190a16000805160206200a6e58339815191528660405162000d4b9190620082e2565b60405180910390a16000805160206200a6e58339815191528560405162000d7391906200831b565b60405180910390a162000d8562006469565b505050505050565b600082841162000da95762000da384846200817a565b62000db5565b62000db583856200817a565b9050818111158062000e9657604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a6e58339815191529181900360a00190a16000805160206200a6e58339815191528560405162000e5c9190620082e2565b60405180910390a16000805160206200a6e58339815191528460405162000e8491906200831b565b60405180910390a162000e9662006469565b5050505050565b601854604080516385d4cad360e01b8152905162000f2b926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000eea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f10919062008346565b73853d955acef822db058eb8505911ed77f175b99e6200636f565b6018546040805163f02c6d8f60e01b8152905162000f78926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200100f93908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af11580156200102f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001055919062007f62565b62001064576200106462008138565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152620010b9929190911690630bca8bcd906024015b602060405180830381865afa15801562000616573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200112e919062007f62565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200116b929190911690630bca8bcd906024016200109b565b601854604051630bca8bcd60e01b81526000600482015262000fc5916001600160a01b031690630bca8bcd906024016200109b565b6018546040805163f02c6d8f60e01b81529051620011ed926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200123a926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001289573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012af919062007f62565b620012be57620012be62008138565b6018546040805163f02c6d8f60e01b8152905162001338926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200130b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013319190620080fa565b42620062ac565b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000735573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905169d3c21bcecceda1000000926200141a926001600160a01b03909116916385d4cad3916004808201926020929091908290030181865afa158015620013e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001407919062008346565b6018546001600160a01b0316836200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b1580156200146f57600080fd5b505af115801562001484573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc9450620014c8939283169290911690869060040162008114565b6020604051808303816000875af1158015620014e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200150e919062007f62565b6200151d576200151d62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200156c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001592919062007f62565b620015a157620015a162008138565b601854604080516385d4cad360e01b8152905162001646926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001614919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024016200109b565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001695573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016bb919062007f62565b620016ca57620016ca62008138565b601854604080516385d4cad360e01b81529051620017ce926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001717573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200173d919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001787573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017ad9190620080fa565b6064620017bc84600c620082c8565b620017c89190620082b1565b620062ac565b620017dc6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200182b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001851919062007f62565b62001860576200186062008138565b601854604080516385d4cad360e01b8152905162001952926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620018ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018d3919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200191d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019439190620080fa565b6064620017bc846014620082c8565b620019606224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620019af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019d5919062007f62565b620019e457620019e462008138565b601854604080516385d4cad360e01b8152905162001ad6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a57919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001aa1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ac79190620080fa565b6064620017bc84601c620082c8565b62001ae4626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b33573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b59919062007f62565b62001b685762001b6862008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001bb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bdb919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c4b9190620080fa565b6064620017bc846034620082c8565b62001c6862dd7c0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001cb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cdd919062007f62565b62001cec5762001cec62008138565b601854604080516385d4cad360e01b8152905162001dd7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001d39573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d5f919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001daa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001dd09190620080fa565b82620062ac565b6000805160206200a6c583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e2557600080fd5b505af115801562000e96573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001e869291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001ea6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ecc919062007f62565b1562001edc5762001edc62008138565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001f289291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001f48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f6e919062007f62565b1562001f7e5762001f7e62008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001fca9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001fea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002010919062007f62565b1562002020576200202062008138565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562002078573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200209e919062008346565b6040518363ffffffff1660e01b8152600401620020bd92919062007f48565b6020604051808303816000875af1158015620020dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002103919062007f62565b1562002113576200211362008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200214c9291169060009060040162007f48565b6020604051808303816000875af11580156200216c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002192919062007f62565b15620021a257620021a262008138565b601854620021df9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082c8565b6200656d565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200222b9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af11580156200224b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002271919062007f62565b62000fc55762000fc562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620022c79390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620022e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200230d919062007f62565b6200231c576200231c62008138565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002359939082169291169060040162007f48565b6020604051808303816000875af115801562002379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200239f919062007f62565b15620023af57620023af62008138565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620023e792911690849060040162007f48565b6020604051808303816000875af115801562002407573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200242d919062007f62565b156200243d576200243d62008138565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200247a939082169291169060040162007f48565b6020604051808303816000875af11580156200249a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024c0919062007f62565b620024cf57620024cf62008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b1580156200252457600080fd5b505af115801562002539573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b158015620025d957600080fd5b505af1158015620025ee573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200263c57600080fd5b505af115801562002651573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b158015620026f157600080fd5b505af115801562002706573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200275257600080fd5b505af115801562002767573d6000803e3d6000fd5b505050506000805160206200a6c583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620027b957600080fd5b505af1158015620027ce573d6000803e3d6000fd5b50505050565b600084158015620027e3575081155b15620027f2575060006200282a565b838303620028025750816200282a565b836200280f81856200817a565b6200281b908762008366565b6200282791906200837d565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562002897573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028bd9190620080fa565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620028f0908990879060200162008393565b6040516020818303038152906040528051906020012087856200291491906200837d565b6040516001600160e01b031960e086901b1681526200293993929190600401620083ac565b600060405180830381600087803b1580156200295457600080fd5b505af115801562002969573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000d859350861691506370a0823190602401602060405180830381865afa158015620029b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029df9190620080fa565b620017c886846200837d565b601854604080516385d4cad360e01b8152905162002a7c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a5e919062008346565b6018546001600160a01b03166a0422ca8b0a00a4250000006200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b15801562002ad157600080fd5b505af115801562002ae6573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562002b8657600080fd5b505af115801562002b9b573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002bf057600080fd5b505af115801562002c05573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002c5393928316929091169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562002c73573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c99919062007f62565b62002ca85762002ca862008138565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a6a58339815191529063f28dceb390608401600060405180830381600087803b15801562002d3257600080fd5b505af115801562002d47573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d9c57600080fd5b505af115801562002db1573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002e04573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e2a919062007f62565b62002e395762002e3962008138565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002e8a57600080fd5b505af115801562002e9f573d6000803e3d6000fd5b5050505062002eb26301dfe20062006581565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002f0357600080fd5b505af115801562002f18573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562002faf57600080fd5b505af115801562002fc4573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200275257600080fd5b6200303b8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062003095601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620013e1573d6000803e3d6000fd5b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b158015620030ea57600080fd5b505af1158015620030ff573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062003143939283169290911690869060040162008114565b6020604051808303816000875af115801562003163573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003189919062007f62565b62003198576200319862008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620031e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200320d919062007f62565b6200321c576200321c62008138565b601854604080516385d4cad360e01b8152905162003269926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032de919062007f62565b620032ed57620032ed62008138565b601854604080516385d4cad360e01b81529051620033fa926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003360919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620033aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033d09190620080fa565b6064620033df84600c620082c8565b620033eb9190620082b1565b670de0b6b3a764000062000d8d565b620034086224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003457573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200347d919062007f62565b6200348c576200348c62008138565b601854604080516385d4cad360e01b815290516200357e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034ff919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003549573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200356f9190620080fa565b6064620033df846014620082c8565b6200358c6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003601919062007f62565b62003610576200361062008138565b601854604080516385d4cad360e01b8152905162003702926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200365d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003683919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036f39190620080fa565b6064620033df84601c620082c8565b62003710626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200375f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003785919062007f62565b62003794576200379462008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620037e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003807919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003851573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620038779190620080fa565b6064620033df846034620082c8565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038cd9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620038ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003913919062007f62565b1562003923576200392362008138565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262003965929116908490678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003985573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620039ab919062007f62565b15620039bb57620039bb62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003a029390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003a22573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003a48919062007f62565b62003a575762003a5762008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b15801562003aac57600080fd5b505af115801562003ac1573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562003b5857600080fd5b505af115801562003b6d573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003bb29290911690678ac7230489e800009060040162008393565b600060405180830381600087803b15801562003bcd57600080fd5b505af115801562003be2573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562003c8257600080fd5b505af115801562003c97573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003cd890600090678ac7230489e800009060040162008393565b600060405180830381600087803b15801562003cf357600080fd5b505af115801562003d08573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562003da057600080fd5b505af115801562003db5573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062002737929091169060009060040162008393565b60185462003e2a9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082c8565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ec39073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003e8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003eb39190620080fa565b620017c8620f42406064620082c8565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003f0d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003f599291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562003f79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f9f919062007f62565b62003fae5762003fae62008138565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ff89073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000fc59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003e6f565b6000604051620040529062007e1a565b604051809103906000f0801580156200406f573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc93620040b8938116921690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620040d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620040fe919062007f62565b6200410d576200410d62008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200415593908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af115801562004175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200419b919062007f62565b620041aa57620041aa62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620041ed9291169085906801a055690d9db800009060040162008114565b6020604051808303816000875af11580156200420d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004233919062007f62565b62004242576200424262008138565b6018546001546040516337bde4df60e11b81526001600160a01b0391821660048201526200427e929190911690636f7bc9be9060240162000717565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620042ba929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b038381166004830152620042f0921690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200433a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200436491908101906200801f565b90506200437481516003620062ac565b6200438e816000815181106200080b576200080b6200814e565b620043a8816000815181106200084357620008436200814e565b620043c2816000815181106200087857620008786200814e565b620043fa81600181518110620043dc57620043dc6200814e565b6020908102919091010151516003546001600160a01b03166200636f565b62004430816001815181106200441457620044146200814e565b6020026020010151602001516801158e460913d00000620062ac565b6200444a816001815181106200087857620008786200814e565b62004477816002815181106200446457620044646200814e565b602002602001015160000151836200636f565b620044ad816002815181106200449157620044916200814e565b6020026020010151602001516801a055690d9db80000620062ac565b620044c7816002815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004504939082169291169060040162007f48565b6020604051808303816000875af115801562004524573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200454a919062007f62565b62004559576200455962008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262004595929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620045d1929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b03848116600483015262004607921690636f7bc9be9060240162000717565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200465b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200468591908101906200801f565b90506200469581516002620062ac565b620046af816000815181106200446457620044646200814e565b620046c9816000815181106200449157620044916200814e565b620046e3816000815181106200087857620008786200814e565b620046fd81600181518110620043dc57620043dc6200814e565b62004717816001815181106200441457620044146200814e565b62004731816001815181106200087857620008786200814e565b5050565b604051620047439062007e1a565b604051809103906000f08015801562004760573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b03929092169190911790556040516200478f9062007e1a565b604051809103906000f080158015620047ac573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620047db9062007e1a565b604051809103906000f080158015620047f8573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200483c5750600054610100900460ff1690565b60006000805160206200a6a58339815191523b1562004947576040516000906000805160206200a6a5833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620048a99083906519985a5b195960d21b9060200162008393565b60408051601f1981840301815290829052620048c99291602001620083f3565b60408051601f1981840301815290829052620048e59162008426565b6000604051808303816000865af19150503d806000811462004924576040519150601f19603f3d011682016040523d82523d6000602084013e62004929565b606091505b509150508080602001905181019062004943919062007f62565b9150505b919050565b60006200495d8484846000620027d4565b90505b9392505050565b620049898169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062004a22601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620049e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a09919062008346565b6018546001600160a01b0316620021d9846003620082c8565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004a71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a97919062007f62565b62004aa65762004aa662008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004ae59390821692911690869060040162008114565b6020604051808303816000875af115801562004b05573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004b2b919062007f62565b62004b3a5762004b3a62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004b799390821692911690869060040162008114565b6020604051808303816000875af115801562004b99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bbf919062007f62565b62004bce5762004bce62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262004c08929116908490869060040162008114565b6020604051808303816000875af115801562004c28573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c4e919062007f62565b62004c5d5762004c5d62008138565b62004c6b6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004cba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ce0919062007f62565b62004cef5762004cef62008138565b601854604080516385d4cad360e01b8152905162004d3c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b62004d4a62cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004dbf919062007f62565b62004dce5762004dce62008138565b601854604080516385d4cad360e01b8152905162004ec0926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e41919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004e8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004eb19190620080fa565b6064620033df84603c620082c8565b62004ece62b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004f1d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004f43919062007f62565b62004f525762004f5262008138565b601854604080516385d4cad360e01b8152905162004ff7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004f9f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fc5919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b620050066301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005055573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200507b919062007f62565b6200508a576200508a62008138565b601854604080516385d4cad360e01b815290516200090e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620050d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620050fd919062008346565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc936200517993918316921690869060040162008114565b6020604051808303816000875af115801562005199573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620051bf919062007f62565b620051ce57620051ce62008138565b6018546003546040516388a772ef60e01b81526001600160a01b0391821660048201526200520a9291909116906388a772ef9060240162001d8c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200527f919062007f62565b6200528e576200528e62008138565b6200529c626ebe0062006581565b60006064620052ad836008620082c8565b620052b99190620082b1565b620052c6906003620082c8565b6064620052d584600c620082c8565b620052e19190620082b1565b620052ed91906200837d565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200532a92911690630bca8bcd9060240162001d8c565b62005339630127500062006581565b606462005348836008620082c8565b620053549190620082b1565b6200536190600b620082c8565b60646200537084600c620082c8565b6200537c9190620082b1565b6200538891906200837d565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620053c592911690630bca8bcd9060240162001d8c565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004731929190911690630bca8bcd90602401602060405180830381865afa15801562005419573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200543f9190620080fa565b83620062ac565b601854604080516385d4cad360e01b8152905162005493926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620054e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005508919062007f62565b62005517576200551762008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362005560939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562005580573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055a6919062007f62565b620055b557620055b562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620055fe939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af11580156200561e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005644919062007f62565b62005653576200565362008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200569792911690849069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af1158015620056b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056dd919062007f62565b620056ec57620056ec62008138565b620056fa6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005749573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200576f919062007f62565b6200577e576200577e62008138565b601854604080516385d4cad360e01b8152905162005872926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620057cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057f1919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200583b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058619190620080fa565b691969368974c05b000000620062ac565b6200588062cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620058cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058f5919062007f62565b62005904576200590462008138565b601854604080516385d4cad360e01b81529051620059f8926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005951573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005977919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620059c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e79190620080fa565b697f0e10af47c1c7000000620062ac565b62005a0662b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005a55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a7b919062007f62565b62005a8a5762005a8a62008138565b601854604080516385d4cad360e01b8152905162005b7f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005ad7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005afd919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005b48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005b6e9190620080fa565b69d3c21bcecceda1000000620062ac565b62005b8e6301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005bdd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c03919062007f62565b62005c125762005c1262008138565b601854604080516385d4cad360e01b8152905162000fc5926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005c5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c85919062008346565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005b2a565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005f5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005f85919062007f62565b1562005f955762005f9562008138565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005fe4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200600a919062007f62565b156200601a576200601a62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562006069573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200608f919062007f62565b6200609e576200609e62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620060ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006113919062007f62565b1562000fc55762000fc562008138565b8015158215151462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200619a9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620061ed576040518060400160405280600581526020016466616c736560d81b8152506200620b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200621a919062008472565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200626d576040518060400160405280600581526020016466616c736560d81b8152506200628b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200629a9190620084b1565b60405180910390a16200473162006469565b80821462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200631f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a6e583398151915281604051620063479190620082e2565b60405180910390a16000805160206200a6e5833981519152826040516200629a91906200831b565b806001600160a01b0316826001600160a01b03161462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620063f79060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620064309190620084dc565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f826040516200629a919062008521565b6000805160206200a6a58339815191523b156200655c576040516000906000805160206200a6a5833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620064d79083906519985a5b195960d21b90600190602001620083ac565b60408051601f1981840301815290829052620064f79291602001620083f3565b60408051601f1981840301815290829052620065139162008426565b6000604051808303816000865af19150503d806000811462006552576040519150601f19603f3d011682016040523d82523d6000602084013e62006557565b606091505b505050505b6000805461ff001916610100179055565b6200657c83838360006200661d565b505050565b6000805160206200a6a583398151915263e5d6bf02620065a283426200837d565b6040518263ffffffff1660e01b8152600401620065c191815260200190565b600060405180830381600087803b15801562001e2557600080fd5b6000620065eb84848462006826565b9050620049606040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262006a1d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620066739162008426565b6000604051808303816000865af19150503d8060008114620066b2576040519150601f19603f3d011682016040523d82523d6000602084013e620066b7565b606091505b50915050600081806020019051810190620066d39190620080fa565b90506200670d846200670687620066ff6370a0823160e01b620066f8600a8d62006abd565b9062006ae7565b9062006b05565b9062006b2e565b821562000d855760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006758919062008426565b6000604051808303816000865af19150503d806000811462006797576040519150601f19603f3d011682016040523d82523d6000602084013e6200679c565b606091505b50915050600081806020019051810190620067b89190620080fa565b905082861015620067e357620067cf86846200817a565b620067db90826200817a565b9050620067fe565b620067ef83876200817a565b620067fb90826200837d565b90505b6200681c81620067066318160ddd60e01b620066f8600a8d62006abd565b5050505050505050565b600081831115620068a45760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620068b55750818411155b15620068c357508262004960565b6000620068d184846200817a565b620068de9060016200837d565b905060038511158015620068f157508481115b156200690c576200690385856200837d565b91505062004960565b6200691b60036000196200817a565b851015801562006937575062006934856000196200817a565b81115b1562006957576200694b856000196200817a565b6200690390846200817a565b82851115620069b95760006200696e84876200817a565b905060006200697e838362008366565b905080600003620069955784935050505062004960565b6001620069a382886200837d565b620069af91906200817a565b9350505062006a15565b8385101562006a15576000620069d086866200817a565b90506000620069e0838362008366565b905080600003620069f75785935050505062004960565b62006a0381866200817a565b62006a109060016200837d565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162006a499291906200854c565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162006a80919062008426565b600060405180830381855afa9150503d806000811462000d85576040519150601f19603f3d011682016040523d82523d6000602084013e62000d85565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c17905560008262006ade565b6002820180546001810182556000918252602082206001600160a01b0384169101558262006ade565b620047318282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b946000939092909183018282801562006ba757602002820191906000526020600020905b81548152602001906001019080831162006b92575b5050505050905060008362006bbc8362006e9b565b60405160200162006bcf929190620083f3565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006c2391869188910162008570565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006c5e5762006c5c8762006f4f565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006c9f91879189910162008570565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ce6919062008426565b600060405180830381855afa9150503d806000811462006d23576040519150601f19603f3d011682016040523d82523d6000602084013e62006d28565b606091505b50915062006d4590508162006d3f886020620082c8565b62006f5c565b604051630667f9d760e41b8152909250600091506000805160206200a6a58339815191529063667f9d709062006d82908b90879060040162008393565b602060405180830381865afa15801562006da0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006dc69190620080fa565b905080821462006dea5760405162461bcd60e51b81526004016200689b90620085ac565b6040516370ca10bb60e01b81526000805160206200a6a5833981519152906370ca10bb9062006e22908b9087908e90600401620083ac565b600060405180830381600087803b15801562006e3d57600080fd5b505af115801562006e52573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006e8760028b01600062007e28565b896004016000905550505050505050505050565b606060008251602062006eaf9190620082c8565b67ffffffffffffffff81111562006eca5762006eca62007f82565b6040519080825280601f01601f19166020018201604052801562006ef5576020820181803683370190505b50905060005b835181101562006f4857600084828151811062006f1c5762006f1c6200814e565b60200260200101519050808260200260200184015250808062006f3f9062008647565b91505062006efb565b5092915050565b600062006ae18262006fe6565b6000806000602085511162006f7357845162006f76565b60205b905060005b8181101562006fdc5762006f91816008620082c8565b8662006f9e83886200837d565b8151811062006fb15762006fb16200814e565b01602001516001600160f81b031916901c92909217918062006fd38162008647565b91505062006f7b565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156200705857602002820191906000526020600020905b81548152602001906001019080831162007043575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905195965094919350620070a49250859187910162008570565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562007143576001600160a01b0384166000908152602087815260408083206001600160e01b031987168452825280832090519092916200711391859187910162008570565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b600083620071518362007cdf565b60405160200162007164929190620083f3565b60405160208183030381529060405290506000805160206200a6c583398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620071c357600080fd5b505af1158015620071d8573d6000803e3d6000fd5b50505050600080866001600160a01b031683604051620071f9919062008426565b600060405180830381855afa9150503d806000811462007236576040519150601f19603f3d011682016040523d82523d6000602084013e6200723b565b606091505b5091506200725890508162007252876020620082c8565b62007d8c565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a6a5833981519152906365bc9481906024016000604051808303816000875af1158015620072b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620072df9190810190620086d0565b5090508051600103620075a65760006000805160206200a6c583398151915260001c6001600160a01b031663667f9d7089846000815181106200732657620073266200814e565b60200260200101516040518363ffffffff1660e01b81526004016200734d92919062008393565b602060405180830381865afa1580156200736b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620073919190620080fa565b905080620073f5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620073d157620073d16200814e565b602002602001015160001c604051620073ec92919062008393565b60405180910390a15b808314620074175760405162461bcd60e51b81526004016200689b90620085ac565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200744f92919062008570565b60405160208183030381529060405280519060200120856000815181106200747b576200747b6200814e565b602002602001015160001c6040516200749894939291906200873b565b60405180910390a181600081518110620074b657620074b66200814e565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262007501918a918c910162008570565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200756b918a918c910162008570565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007b62565b60018151111562007af15760005b815181101562007aea5760006000805160206200a6c583398151915260001c6001600160a01b031663667f9d708a858581518110620075f757620075f76200814e565b60200260200101516040518363ffffffff1660e01b81526004016200761e92919062008393565b602060405180830381865afa1580156200763c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620076629190620080fa565b905080620076c5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110620076a157620076a16200814e565b602002602001015160001c604051620076bc92919062008393565b60405180910390a15b6000805160206200a6c583398151915260001c6001600160a01b03166370ca10bb8a858581518110620076fc57620076fc6200814e565b602002602001015161133760f01b6040518463ffffffff1660e01b81526004016200772a93929190620083ac565b600060405180830381600087803b1580156200774557600080fd5b505af11580156200775a573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200777c919062008426565b600060405180830381855afa9150503d8060008114620077b9576040519150601f19603f3d011682016040523d82523d6000602084013e620077be565b606091505b509092509050620077d681620072528b6020620082c8565b9550818015620077ea575061133760f01b86145b1562007a3d577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c6040516020016200782892919062008570565b604051602081830303815290604052805190602001208888815181106200785357620078536200814e565b602002602001015160001c6040516200787094939291906200873b565b60405180910390a18484815181106200788d576200788d6200814e565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620078d8918d918f910162008570565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c6040516020016200796592919062008570565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a6c583398151915260001c6001600160a01b03166370ca10bb8c878781518110620079d757620079d76200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a0093929190620083ac565b600060405180830381600087803b15801562007a1b57600080fd5b505af115801562007a30573d6000803e3d6000fd5b5050505050505062007aea565b6000805160206200a6c583398151915260001c6001600160a01b03166370ca10bb8c87878151811062007a745762007a746200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a9d93929190620083ac565b600060405180830381600087803b15801562007ab857600080fd5b505af115801562007acd573d6000803e3d6000fd5b50505050505050808062007ae19062008647565b915050620075b4565b5062007b62565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200689b565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929162007ba69188918a910162008570565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007c355760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200689b565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007c6660028a01600062007e28565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007cac9188918a910162008570565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007cf39190620082c8565b67ffffffffffffffff81111562007d0e5762007d0e62007f82565b6040519080825280601f01601f19166020018201604052801562007d39576020820181803683370190505b50905060005b835181101562006f4857600084828151811062007d605762007d606200814e565b60200260200101519050808260200260200184015250808062007d839062008647565b91505062007d3f565b6000806000602085511162007da357845162007da6565b60205b905060005b8181101562006fdc5762007dc1816008620082c8565b8662007dce83886200837d565b8151811062007de15762007de16200814e565b01602001516001600160f81b031916901c92909217918062007e038162008647565b91505062007dab565b611962806200876c83390190565b6105d7806200a0ce83390190565b50805460008255906000526020600020908101906200090e91905b8082111562007e59576000815560010162007e43565b5090565b60008060006060848603121562007e7357600080fd5b505081359360208301359350604090920135919050565b80151581146200090e57600080fd5b6000806000806080858703121562007eb057600080fd5b843593506020850135925060408501359150606085013562007ed28162007e8a565b939692955090935050565b6001600160a01b03811681146200090e57600080fd5b60008060006060848603121562007f0957600080fd5b83359250602084013562007f1d8162007edd565b929592945050506040919091013590565b60006020828403121562007f4157600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007f7557600080fd5b8151620049608162007e8a565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007fbe5762007fbe62007f82565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007ff05762007ff062007f82565b604052919050565b600067ffffffffffffffff82111562008015576200801562007f82565b5060051b60200190565b600060208083850312156200803357600080fd5b825167ffffffffffffffff8111156200804b57600080fd5b8301601f810185136200805d57600080fd5b8051620080746200806e8262007ff8565b62007fc4565b818152606091820283018401918482019190888411156200809457600080fd5b938501935b83851015620080ee5780858a031215620080b35760008081fd5b620080bd62007f98565b8551620080ca8162007edd565b81528587015187820152604080870151908201528352938401939185019162008099565b50979650505050505050565b6000602082840312156200810d57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8181038181111562006ae15762006ae162008164565b600181815b80851115620081d1578160001904821115620081b557620081b562008164565b80851615620081c357918102915b93841c939080029062008195565b509250929050565b600082620081ea5750600162006ae1565b81620081f95750600062006ae1565b81600181146200821257600281146200821d576200823d565b600191505062006ae1565b60ff84111562008231576200823162008164565b50506001821b62006ae1565b5060208310610133831016604e8410600b841016171562008262575081810a62006ae1565b6200826e838362008190565b806000190482111562008285576200828562008164565b029392505050565b600062006ade8383620081d9565b634e487b7160e01b600052601260045260246000fd5b600082620082c357620082c36200829b565b500490565b808202811582820484141762006ae15762006ae162008164565b6040815260006200830d60408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200830d60408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200835957600080fd5b8151620049608162007edd565b6000826200837857620083786200829b565b500690565b8082018082111562006ae15762006ae162008164565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620083ea578181015183820152602001620083d0565b50506000910152565b6001600160e01b031983168152815160009062008418816004850160208701620083cd565b919091016004019392505050565b600082516200843a818460208701620083cd565b9190910192915050565b600081518084526200845e816020860160208601620083cd565b601f01601f19169290920160200192915050565b6040815260006200849d60408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200282a818562008444565b6040815260006200849d60408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200850760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200850760408301600a815269080808081058dd1d585b60b21b602082015260400190565b60408152600062008561604083018562008444565b90508260208301529392505050565b825160009082906020808701845b838110156200859c578151855293820193908201906001016200857e565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b6000600182016200865c576200865c62008164565b5060010190565b600082601f8301126200867557600080fd5b81516020620086886200806e8362007ff8565b82815260059290921b84018101918181019086841115620086a857600080fd5b8286015b84811015620086c55780518352918301918301620086ac565b509695505050505050565b60008060408385031215620086e457600080fd5b825167ffffffffffffffff80821115620086fd57600080fd5b6200870b8683870162008663565b935060208501519150808211156200872257600080fd5b50620087318582860162008663565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b5060405162001962380380620019628339810160408190526200003491620001b2565b600080546001600160a01b0319163390811782556040519091829160008051602062001942833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194283398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161172e62000214600039600081816101d7015281816108320152610be5015261172e6000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160d565b90506000606461035384600861162f565b61035d919061160d565b610367908361162f565b606461037485600c61162f565b61037e919061160d565b6103889190611646565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611659565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d61168e565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116a4565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b906000526020600020906003020160020160008282546109479190611646565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611659565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611659565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611659565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116c6565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116a4565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611659565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff8142611646565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611659565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c5908490611646565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611659565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116df565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115611607576116076115de565b92915050565b60008261162a57634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417611607576116076115de565b80820180821115611607576116076115de565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116b657600080fd5b8151801515811461151c57600080fd5b6000602082840312156116d857600080fd5b5051919050565b6000600182016116f1576116f16115de565b506001019056fea2646970667358221220d2355449aa619c52df97b3ae1052a171b8fa5fa41104c173bef64d6cc1fd6c1b64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c634300081100330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220faefc6049f6baf75498faadfa89c918363fa3341a30b822502f8fa223dfe862364736f6c63430008110033", + "sourceMap": "208:21101:31:-:0;;;1572:26:0;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;208:21101:31;;;;;;;;;-1:-1:-1;3122:37:30;3086:77;;;-1:-1:-1;;;;;;3086:77:30;;;;;;208:21101:31;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000911565b6200024c6200029336600462007e5d565b62000c17565b6200024c620002aa36600462007e5d565b62000d8d565b62000261600b81565b62000261600281565b6200024c62000e9d565b6200024c62000fc7565b6200024c620011a0565b6200024c62001385565b6200024c62001e3a565b6200024c62002280565b620003156200030f36600462007e99565b620027d4565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007ef3565b62002832565b6200024c620029eb565b62000261600a81565b6200024c6200036836600462007f2e565b62003019565b62000261600481565b6200024c62003886565b6200024c62003df3565b6200024c62004042565b6200024c62004735565b620003a96200481b565b60405190151581526020016200026f565b62000315620003cb36600462007e5d565b6200494c565b6200024c620003e236600462007f2e565b62004967565b62000261600381565b6200024c6200512f565b6200024c62005446565b62000261600081565b6200024c62005cb7565b6200024c62005f10565b600054620003a99060ff1681565b6200043a62004735565b6200044462005cb7565b60025460405173853d955acef822db058eb8505911ed77f175b99e916001600160a01b031690620004759062007e0c565b6200048292919062007f48565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007f62565b600062006123565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b991908101906200801f565b9050620005c981516000620062ac565b6018546040805163022b1d8960e21b8152905162000644926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063c9190620080fa565b6000620062ac565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200068b9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620006ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006d1919062007f62565b620006e057620006e062008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000763929190911690636f7bc9be906024015b602060405180830381865afa15801562000735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200075b919062007f62565b600162006123565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620007b7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620007e191908101906200801f565b9050620007f181516001620062ac565b62000829816000815181106200080b576200080b6200814e565b6020908102919091010151516001546001600160a01b03166200636f565b6200085e816000815181106200084357620008436200814e565b602002602001015160200151678ac7230489e80000620062ac565b6200088c816000815181106200087857620008786200814e565b6020026020010151604001516000620062ac565b6018546040805163022b1d8960e21b815290516200090e926001600160a01b0316916308ac76249160048083019260209291908290030181865afa158015620008d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008ff9190620080fa565b678ac7230489e80000620062ac565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620009589390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562000978573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099e919062007f62565b620009ad57620009ad62008138565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620009e9929190911690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000a33573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000a5d91908101906200801f565b905062000a6d81516001620062ac565b62000a87816000815181106200080b576200080b6200814e565b62000aa1816000815181106200084357620008436200814e565b62000abb816000815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362000af8939082169291169060040162007f48565b6020604051808303816000875af115801562000b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b3e919062007f62565b62000b4d5762000b4d62008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000b89929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000bdd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c0791908101906200801f565b90506200090e81516000620062ac565b600082841162000c335762000c2d84846200817a565b62000c3f565b62000c3f83856200817a565b90508060000362000c505750505050565b6000841562000c60578462000c62565b835b9050600062000c7384600a62008291565b62000c8b906b033b2e3c9fd0803ce8000000620082b5565b8262000ca46b033b2e3c9fd0803ce800000086620082cc565b62000cb09190620082b5565b1090508062000d8557604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528660405162000d4b9190620082ee565b60405180910390a16000805160206200a7168339815191528560405162000d73919062008327565b60405180910390a162000d8562006469565b505050505050565b600082841162000da95762000da384846200817a565b62000db5565b62000db583856200817a565b9050818111158062000e9657604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a7168339815191529181900360a00190a16000805160206200a7168339815191528560405162000e5c9190620082ee565b60405180910390a16000805160206200a7168339815191528460405162000e84919062008327565b60405180910390a162000e9662006469565b5050505050565b601854604080516385d4cad360e01b8152905162000f2b926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000eea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f10919062008352565b73853d955acef822db058eb8505911ed77f175b99e6200636f565b6018546040805163f02c6d8f60e01b8152905162000f78926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200100f93908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af11580156200102f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001055919062007f62565b62001064576200106462008138565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152620010b9929190911690630bca8bcd906024015b602060405180830381865afa15801562000616573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200112e919062007f62565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200116b929190911690630bca8bcd906024016200109b565b601854604051630bca8bcd60e01b81526000600482015262000fc5916001600160a01b031690630bca8bcd906024016200109b565b6018546040805163f02c6d8f60e01b81529051620011ed926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200123a926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001289573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012af919062007f62565b620012be57620012be62008138565b6018546040805163f02c6d8f60e01b8152905162001338926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200130b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013319190620080fa565b42620062ac565b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000735573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905169d3c21bcecceda1000000926200141a926001600160a01b03909116916385d4cad3916004808201926020929091908290030181865afa158015620013e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001407919062008352565b6018546001600160a01b0316836200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200146f57600080fd5b505af115801562001484573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc9450620014c8939283169290911690869060040162008114565b6020604051808303816000875af1158015620014e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200150e919062007f62565b6200151d576200151d62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200156c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001592919062007f62565b620015a157620015a162008138565b601854604080516385d4cad360e01b8152905162001646926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001614919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024016200109b565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001695573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016bb919062007f62565b620016ca57620016ca62008138565b601854604080516385d4cad360e01b81529051620017ce926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001717573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200173d919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001787573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017ad9190620080fa565b6064620017bc84600c620082cc565b620017c89190620082b5565b620062ac565b620017dc6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200182b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001851919062007f62565b62001860576200186062008138565b601854604080516385d4cad360e01b8152905162001952926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620018ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018d3919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200191d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019439190620080fa565b6064620017bc846014620082cc565b620019606224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620019af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019d5919062007f62565b620019e457620019e462008138565b601854604080516385d4cad360e01b8152905162001ad6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a57919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001aa1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ac79190620080fa565b6064620017bc84601c620082cc565b62001ae4626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b33573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b59919062007f62565b62001b685762001b6862008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001bb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bdb919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c4b9190620080fa565b6064620017bc846034620082cc565b62001c6862dd7c0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001cb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cdd919062007f62565b62001cec5762001cec62008138565b601854604080516385d4cad360e01b8152905162001dd7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001d39573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d5f919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001daa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001dd09190620080fa565b82620062ac565b6000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e2557600080fd5b505af115801562000e96573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001e869291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001ea6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ecc919062007f62565b1562001edc5762001edc62008138565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001f289291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001f48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f6e919062007f62565b1562001f7e5762001f7e62008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001fca9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001fea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002010919062007f62565b1562002020576200202062008138565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562002078573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200209e919062008352565b6040518363ffffffff1660e01b8152600401620020bd92919062007f48565b6020604051808303816000875af1158015620020dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002103919062007f62565b1562002113576200211362008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200214c9291169060009060040162007f48565b6020604051808303816000875af11580156200216c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002192919062007f62565b15620021a257620021a262008138565b601854620021df9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6200656d565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200222b9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af11580156200224b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002271919062007f62565b62000fc55762000fc562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620022c79390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620022e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200230d919062007f62565b6200231c576200231c62008138565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002359939082169291169060040162007f48565b6020604051808303816000875af115801562002379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200239f919062007f62565b15620023af57620023af62008138565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620023e792911690849060040162007f48565b6020604051808303816000875af115801562002407573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200242d919062007f62565b156200243d576200243d62008138565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200247a939082169291169060040162007f48565b6020604051808303816000875af11580156200249a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024c0919062007f62565b620024cf57620024cf62008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b1580156200252457600080fd5b505af115801562002539573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620025d957600080fd5b505af1158015620025ee573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200263c57600080fd5b505af115801562002651573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b158015620026f157600080fd5b505af115801562002706573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200275257600080fd5b505af115801562002767573d6000803e3d6000fd5b505050506000805160206200a6f683398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620027b957600080fd5b505af1158015620027ce573d6000803e3d6000fd5b50505050565b600084158015620027e3575081155b15620027f2575060006200282a565b838303620028025750816200282a565b836200280f81856200817a565b6200281b908762008372565b62002827919062008389565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562002897573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028bd9190620080fa565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620028f09089908790602001620083a4565b60405160208183030381529060405280519060200120878562002914919062008389565b6040516001600160e01b031960e086901b1681526200293993929190600401620083bd565b600060405180830381600087803b1580156200295457600080fd5b505af115801562002969573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000d859350861691506370a0823190602401602060405180830381865afa158015620029b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029df9190620080fa565b620017c8868462008389565b601854604080516385d4cad360e01b8152905162002a7c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a5e919062008352565b6018546001600160a01b03166a0422ca8b0a00a4250000006200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562002ad157600080fd5b505af115801562002ae6573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002b8657600080fd5b505af115801562002b9b573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002bf057600080fd5b505af115801562002c05573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002c5393928316929091169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562002c73573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c99919062007f62565b62002ca85762002ca862008138565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a6d68339815191529063f28dceb390608401600060405180830381600087803b15801562002d3257600080fd5b505af115801562002d47573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d9c57600080fd5b505af115801562002db1573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002e04573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e2a919062007f62565b62002e395762002e3962008138565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002e8a57600080fd5b505af115801562002e9f573d6000803e3d6000fd5b5050505062002eb26301dfe20062006581565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002f0357600080fd5b505af115801562002f18573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562002faf57600080fd5b505af115801562002fc4573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200275257600080fd5b6200303b8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062003095601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620013e1573d6000803e3d6000fd5b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b158015620030ea57600080fd5b505af1158015620030ff573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062003143939283169290911690869060040162008114565b6020604051808303816000875af115801562003163573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003189919062007f62565b62003198576200319862008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620031e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200320d919062007f62565b6200321c576200321c62008138565b601854604080516385d4cad360e01b8152905162003269926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032de919062007f62565b620032ed57620032ed62008138565b601854604080516385d4cad360e01b81529051620033fa926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003360919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620033aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033d09190620080fa565b6064620033df84600c620082cc565b620033eb9190620082b5565b670de0b6b3a764000062000d8d565b620034086224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003457573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200347d919062007f62565b6200348c576200348c62008138565b601854604080516385d4cad360e01b815290516200357e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034ff919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003549573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200356f9190620080fa565b6064620033df846014620082cc565b6200358c6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003601919062007f62565b62003610576200361062008138565b601854604080516385d4cad360e01b8152905162003702926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200365d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003683919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036f39190620080fa565b6064620033df84601c620082cc565b62003710626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200375f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003785919062007f62565b62003794576200379462008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620037e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003807919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003851573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620038779190620080fa565b6064620033df846034620082cc565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038cd9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620038ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003913919062007f62565b1562003923576200392362008138565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262003965929116908490678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003985573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620039ab919062007f62565b15620039bb57620039bb62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003a029390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003a22573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003a48919062007f62565b62003a575762003a5762008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6d6833981519152906306447d5690602401600060405180830381600087803b15801562003aac57600080fd5b505af115801562003ac1573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003b5857600080fd5b505af115801562003b6d573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003bb29290911690678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003bcd57600080fd5b505af115801562003be2573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003c8257600080fd5b505af115801562003c97573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003cd890600090678ac7230489e8000090600401620083a4565b600060405180830381600087803b15801562003cf357600080fd5b505af115801562003d08573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a6d6833981519152925063f28dceb39150608401600060405180830381600087803b15801562003da057600080fd5b505af115801562003db5573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b4579350620027379290911690600090600401620083a4565b60185462003e2a9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082cc565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ec39073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003e8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003eb39190620080fa565b620017c8620f42406064620082cc565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003f0d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003f599291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562003f79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f9f919062007f62565b62003fae5762003fae62008138565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ff89073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000fc59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003e6f565b6000604051620040529062007e1a565b604051809103906000f0801580156200406f573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc93620040b8938116921690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620040d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620040fe919062007f62565b6200410d576200410d62008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200415593908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af115801562004175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200419b919062007f62565b620041aa57620041aa62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620041ed9291169085906801a055690d9db800009060040162008114565b6020604051808303816000875af11580156200420d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004233919062007f62565b62004242576200424262008138565b6018546001546040516337bde4df60e11b81526001600160a01b0391821660048201526200427e929190911690636f7bc9be9060240162000717565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620042ba929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b038381166004830152620042f0921690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200433a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200436491908101906200801f565b90506200437481516003620062ac565b6200438e816000815181106200080b576200080b6200814e565b620043a8816000815181106200084357620008436200814e565b620043c2816000815181106200087857620008786200814e565b620043fa81600181518110620043dc57620043dc6200814e565b6020908102919091010151516003546001600160a01b03166200636f565b62004430816001815181106200441457620044146200814e565b6020026020010151602001516801158e460913d00000620062ac565b6200444a816001815181106200087857620008786200814e565b62004477816002815181106200446457620044646200814e565b602002602001015160000151836200636f565b620044ad816002815181106200449157620044916200814e565b6020026020010151602001516801a055690d9db80000620062ac565b620044c7816002815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004504939082169291169060040162007f48565b6020604051808303816000875af115801562004524573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200454a919062007f62565b62004559576200455962008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262004595929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620045d1929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b03848116600483015262004607921690636f7bc9be9060240162000717565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200465b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200468591908101906200801f565b90506200469581516002620062ac565b620046af816000815181106200446457620044646200814e565b620046c9816000815181106200449157620044916200814e565b620046e3816000815181106200087857620008786200814e565b620046fd81600181518110620043dc57620043dc6200814e565b62004717816001815181106200441457620044146200814e565b62004731816001815181106200087857620008786200814e565b5050565b604051620047439062007e1a565b604051809103906000f08015801562004760573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b03929092169190911790556040516200478f9062007e1a565b604051809103906000f080158015620047ac573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620047db9062007e1a565b604051809103906000f080158015620047f8573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200483c5750600054610100900460ff1690565b60006000805160206200a6d68339815191523b1562004947576040516000906000805160206200a6d6833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620048a99083906519985a5b195960d21b90602001620083a4565b60408051601f1981840301815290829052620048c992916020016200840d565b60408051601f1981840301815290829052620048e59162008440565b6000604051808303816000865af19150503d806000811462004924576040519150601f19603f3d011682016040523d82523d6000602084013e62004929565b606091505b509150508080602001905181019062004943919062007f62565b9150505b919050565b60006200495d8484846000620027d4565b90505b9392505050565b620049898169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062004a22601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620049e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a09919062008352565b6018546001600160a01b0316620021d9846003620082cc565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004a71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a97919062007f62565b62004aa65762004aa662008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004ae59390821692911690869060040162008114565b6020604051808303816000875af115801562004b05573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004b2b919062007f62565b62004b3a5762004b3a62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004b799390821692911690869060040162008114565b6020604051808303816000875af115801562004b99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bbf919062007f62565b62004bce5762004bce62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262004c08929116908490869060040162008114565b6020604051808303816000875af115801562004c28573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c4e919062007f62565b62004c5d5762004c5d62008138565b62004c6b6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004cba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ce0919062007f62565b62004cef5762004cef62008138565b601854604080516385d4cad360e01b8152905162004d3c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b62004d4a62cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004dbf919062007f62565b62004dce5762004dce62008138565b601854604080516385d4cad360e01b8152905162004ec0926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e41919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004e8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004eb19190620080fa565b6064620033df84603c620082cc565b62004ece62b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004f1d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004f43919062007f62565b62004f525762004f5262008138565b601854604080516385d4cad360e01b8152905162004ff7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004f9f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fc5919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b620050066301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005055573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200507b919062007f62565b6200508a576200508a62008138565b601854604080516385d4cad360e01b815290516200090e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620050d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620050fd919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc936200517993918316921690869060040162008114565b6020604051808303816000875af115801562005199573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620051bf919062007f62565b620051ce57620051ce62008138565b6018546003546040516388a772ef60e01b81526001600160a01b0391821660048201526200520a9291909116906388a772ef9060240162001d8c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200527f919062007f62565b6200528e576200528e62008138565b6200529c626ebe0062006581565b60006064620052ad836008620082cc565b620052b99190620082b5565b620052c6906003620082cc565b6064620052d584600c620082cc565b620052e19190620082b5565b620052ed919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200532a92911690630bca8bcd9060240162001d8c565b62005339630127500062006581565b606462005348836008620082cc565b620053549190620082b5565b6200536190600b620082cc565b60646200537084600c620082cc565b6200537c9190620082b5565b62005388919062008389565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620053c592911690630bca8bcd9060240162001d8c565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004731929190911690630bca8bcd90602401602060405180830381865afa15801562005419573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200543f9190620080fa565b83620062ac565b601854604080516385d4cad360e01b8152905162005493926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620054e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005508919062007f62565b62005517576200551762008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362005560939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562005580573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055a6919062007f62565b620055b557620055b562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620055fe939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af11580156200561e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005644919062007f62565b62005653576200565362008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200569792911690849069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af1158015620056b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056dd919062007f62565b620056ec57620056ec62008138565b620056fa6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005749573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200576f919062007f62565b6200577e576200577e62008138565b601854604080516385d4cad360e01b8152905162005872926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620057cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057f1919062008352565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200583b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058619190620080fa565b691969368974c05b000000620062ac565b6200588062cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620058cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058f5919062007f62565b62005904576200590462008138565b601854604080516385d4cad360e01b81529051620059f8926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005951573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005977919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620059c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e79190620080fa565b697f0e10af47c1c7000000620062ac565b62005a0662b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005a55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a7b919062007f62565b62005a8a5762005a8a62008138565b601854604080516385d4cad360e01b8152905162005b7f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005ad7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005afd919062008352565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005b48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005b6e9190620080fa565b69d3c21bcecceda1000000620062ac565b62005b8e6301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005bdd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c03919062007f62565b62005c125762005c1262008138565b601854604080516385d4cad360e01b8152905162000fc5926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005c5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c85919062008352565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005b2a565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005f5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005f85919062007f62565b1562005f955762005f9562008138565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005fe4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200600a919062007f62565b156200601a576200601a62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562006069573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200608f919062007f62565b6200609e576200609e62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620060ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006113919062007f62565b1562000fc55762000fc562008138565b8015158215151462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200619a9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620061ed576040518060400160405280600581526020016466616c736560d81b8152506200620b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200621a91906200848c565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200626d576040518060400160405280600581526020016466616c736560d81b8152506200628b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200629a9190620084cb565b60405180910390a16200473162006469565b80821462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200631f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a71683398151915281604051620063479190620082ee565b60405180910390a16000805160206200a716833981519152826040516200629a919062008327565b806001600160a01b0316826001600160a01b03161462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620063f79060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620064309190620084f6565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f826040516200629a91906200853b565b6000805160206200a6d68339815191523b156200655c576040516000906000805160206200a6d6833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620064d79083906519985a5b195960d21b90600190602001620083bd565b60408051601f1981840301815290829052620064f792916020016200840d565b60408051601f1981840301815290829052620065139162008440565b6000604051808303816000865af19150503d806000811462006552576040519150601f19603f3d011682016040523d82523d6000602084013e62006557565b606091505b505050505b6000805461ff001916610100179055565b6200657c83838360006200661d565b505050565b6000805160206200a6d683398151915263e5d6bf02620065a2834262008389565b6040518263ffffffff1660e01b8152600401620065c191815260200190565b600060405180830381600087803b15801562001e2557600080fd5b6000620065eb84848462006826565b9050620049606040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262006a1d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620066739162008440565b6000604051808303816000865af19150503d8060008114620066b2576040519150601f19603f3d011682016040523d82523d6000602084013e620066b7565b606091505b50915050600081806020019051810190620066d39190620080fa565b90506200670d846200670687620066ff6370a0823160e01b620066f8600a8d62006abd565b9062006ae7565b9062006b05565b9062006b2e565b821562000d855760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006758919062008440565b6000604051808303816000865af19150503d806000811462006797576040519150601f19603f3d011682016040523d82523d6000602084013e6200679c565b606091505b50915050600081806020019051810190620067b89190620080fa565b905082861015620067e357620067cf86846200817a565b620067db90826200817a565b9050620067fe565b620067ef83876200817a565b620067fb908262008389565b90505b6200681c81620067066318160ddd60e01b620066f8600a8d62006abd565b5050505050505050565b600081831115620068a45760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620068b55750818411155b15620068c357508262004960565b6000620068d184846200817a565b620068de90600162008389565b905060038511158015620068f157508481115b156200690c5762006903858562008389565b91505062004960565b6200691b60036000196200817a565b851015801562006937575062006934856000196200817a565b81115b1562006957576200694b856000196200817a565b6200690390846200817a565b82851115620069b95760006200696e84876200817a565b905060006200697e838362008372565b905080600003620069955784935050505062004960565b6001620069a3828862008389565b620069af91906200817a565b9350505062006a15565b8385101562006a15576000620069d086866200817a565b90506000620069e0838362008372565b905080600003620069f75785935050505062004960565b62006a0381866200817a565b62006a1090600162008389565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162006a4992919062008566565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162006a80919062008440565b600060405180830381855afa9150503d806000811462000d85576040519150601f19603f3d011682016040523d82523d6000602084013e62000d85565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c17905560008262006ade565b6002820180546001810182556000918252602082206001600160a01b0384169101558262006ade565b620047318282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b946000939092909183018282801562006ba757602002820191906000526020600020905b81548152602001906001019080831162006b92575b5050505050905060008362006bbc8362006e9b565b60405160200162006bcf9291906200840d565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006c239186918891016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006c5e5762006c5c8762006f4f565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006c9f9187918991016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ce6919062008440565b600060405180830381855afa9150503d806000811462006d23576040519150601f19603f3d011682016040523d82523d6000602084013e62006d28565b606091505b50915062006d4590508162006d3f886020620082cc565b62006f5c565b604051630667f9d760e41b8152909250600091506000805160206200a6d68339815191529063667f9d709062006d82908b908790600401620083a4565b602060405180830381865afa15801562006da0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006dc69190620080fa565b905080821462006dea5760405162461bcd60e51b81526004016200689b90620085c6565b6040516370ca10bb60e01b81526000805160206200a6d6833981519152906370ca10bb9062006e22908b9087908e90600401620083bd565b600060405180830381600087803b15801562006e3d57600080fd5b505af115801562006e52573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006e8760028b01600062007e28565b896004016000905550505050505050505050565b606060008251602062006eaf9190620082cc565b67ffffffffffffffff81111562006eca5762006eca62007f82565b6040519080825280601f01601f19166020018201604052801562006ef5576020820181803683370190505b50905060005b835181101562006f4857600084828151811062006f1c5762006f1c6200814e565b60200260200101519050808260200260200184015250808062006f3f9062008661565b91505062006efb565b5092915050565b600062006ae18262006fe6565b6000806000602085511162006f7357845162006f76565b60205b905060005b8181101562006fdc5762006f91816008620082cc565b8662006f9e838862008389565b8151811062006fb15762006fb16200814e565b01602001516001600160f81b031916901c92909217918062006fd38162008661565b91505062006f7b565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156200705857602002820191906000526020600020905b81548152602001906001019080831162007043575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905195965094919350620070a4925085918791016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562007143576001600160a01b0384166000908152602087815260408083206001600160e01b03198716845282528083209051909291620071139185918791016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b600083620071518362007cdf565b604051602001620071649291906200840d565b60405160208183030381529060405290506000805160206200a6f683398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620071c357600080fd5b505af1158015620071d8573d6000803e3d6000fd5b50505050600080866001600160a01b031683604051620071f9919062008440565b600060405180830381855afa9150503d806000811462007236576040519150601f19603f3d011682016040523d82523d6000602084013e6200723b565b606091505b5091506200725890508162007252876020620082cc565b62007d8c565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a6d6833981519152906365bc9481906024016000604051808303816000875af1158015620072b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620072df9190810190620086ea565b5090508051600103620075a65760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d7089846000815181106200732657620073266200814e565b60200260200101516040518363ffffffff1660e01b81526004016200734d929190620083a4565b602060405180830381865afa1580156200736b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620073919190620080fa565b905080620073f5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620073d157620073d16200814e565b602002602001015160001c604051620073ec929190620083a4565b60405180910390a15b808314620074175760405162461bcd60e51b81526004016200689b90620085c6565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200744f9291906200858a565b60405160208183030381529060405280519060200120856000815181106200747b576200747b6200814e565b602002602001015160001c60405162007498949392919062008755565b60405180910390a181600081518110620074b657620074b66200814e565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262007501918a918c91016200858a565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200756b918a918c91016200858a565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007b62565b60018151111562007af15760005b815181101562007aea5760006000805160206200a6f683398151915260001c6001600160a01b031663667f9d708a858581518110620075f757620075f76200814e565b60200260200101516040518363ffffffff1660e01b81526004016200761e929190620083a4565b602060405180830381865afa1580156200763c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620076629190620080fa565b905080620076c5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110620076a157620076a16200814e565b602002602001015160001c604051620076bc929190620083a4565b60405180910390a15b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8a858581518110620076fc57620076fc6200814e565b602002602001015161133760f01b6040518463ffffffff1660e01b81526004016200772a93929190620083bd565b600060405180830381600087803b1580156200774557600080fd5b505af11580156200775a573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200777c919062008440565b600060405180830381855afa9150503d8060008114620077b9576040519150601f19603f3d011682016040523d82523d6000602084013e620077be565b606091505b509092509050620077d681620072528b6020620082cc565b9550818015620077ea575061133760f01b86145b1562007a3d577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620078289291906200858a565b604051602081830303815290604052805190602001208888815181106200785357620078536200814e565b602002602001015160001c60405162007870949392919062008755565b60405180910390a18484815181106200788d576200788d6200814e565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620078d8918d918f91016200858a565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620079659291906200858a565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c878781518110620079d757620079d76200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a0093929190620083bd565b600060405180830381600087803b15801562007a1b57600080fd5b505af115801562007a30573d6000803e3d6000fd5b5050505050505062007aea565b6000805160206200a6f683398151915260001c6001600160a01b03166370ca10bb8c87878151811062007a745762007a746200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a9d93929190620083bd565b600060405180830381600087803b15801562007ab857600080fd5b505af115801562007acd573d6000803e3d6000fd5b50505050505050808062007ae19062008661565b915050620075b4565b5062007b62565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200689b565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929162007ba69188918a91016200858a565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007c355760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200689b565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007c6660028a01600062007e28565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007cac9188918a91016200858a565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007cf39190620082cc565b67ffffffffffffffff81111562007d0e5762007d0e62007f82565b6040519080825280601f01601f19166020018201604052801562007d39576020820181803683370190505b50905060005b835181101562006f4857600084828151811062007d605762007d606200814e565b60200260200101519050808260200260200184015250808062007d839062008661565b91505062007d3f565b6000806000602085511162007da357845162007da6565b60205b905060005b8181101562006fdc5762007dc1816008620082cc565b8662007dce838862008389565b8151811062007de15762007de16200814e565b01602001516001600160f81b031916901c92909217918062007e038162008661565b91505062007dab565b61196d806200878683390190565b6105e3806200a0f383390190565b50805460008255906000526020600020908101906200090e91905b8082111562007e59576000815560010162007e43565b5090565b60008060006060848603121562007e7357600080fd5b505081359360208301359350604090920135919050565b80151581146200090e57600080fd5b6000806000806080858703121562007eb057600080fd5b843593506020850135925060408501359150606085013562007ed28162007e8a565b939692955090935050565b6001600160a01b03811681146200090e57600080fd5b60008060006060848603121562007f0957600080fd5b83359250602084013562007f1d8162007edd565b929592945050506040919091013590565b60006020828403121562007f4157600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007f7557600080fd5b8151620049608162007e8a565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007fbe5762007fbe62007f82565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007ff05762007ff062007f82565b604052919050565b600067ffffffffffffffff82111562008015576200801562007f82565b5060051b60200190565b600060208083850312156200803357600080fd5b825167ffffffffffffffff8111156200804b57600080fd5b8301601f810185136200805d57600080fd5b8051620080746200806e8262007ff8565b62007fc4565b818152606091820283018401918482019190888411156200809457600080fd5b938501935b83851015620080ee5780858a031215620080b35760008081fd5b620080bd62007f98565b8551620080ca8162007edd565b81528587015187820152604080870151908201528352938401939185019162008099565b50979650505050505050565b6000602082840312156200810d57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000828210156200818f576200818f62008164565b500390565b600181815b80851115620081d5578160001904821115620081b957620081b962008164565b80851615620081c757918102915b93841c939080029062008199565b509250929050565b600082620081ee5750600162006ae1565b81620081fd5750600062006ae1565b8160018114620082165760028114620082215762008241565b600191505062006ae1565b60ff84111562008235576200823562008164565b50506001821b62006ae1565b5060208310610133831016604e8410600b841016171562008266575081810a62006ae1565b62008272838362008194565b806000190482111562008289576200828962008164565b029392505050565b600062006ade8383620081dd565b634e487b7160e01b600052601260045260246000fd5b600082620082c757620082c76200829f565b500490565b6000816000190483118215151615620082e957620082e962008164565b500290565b6040815260006200831960408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200831960408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200836557600080fd5b8151620049608162007edd565b6000826200838457620083846200829f565b500690565b600082198211156200839f576200839f62008164565b500190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620083fb578181015183820152602001620083e1565b83811115620027ce5750506000910152565b6001600160e01b031983168152815160009062008432816004850160208701620083de565b919091016004019392505050565b6000825162008454818460208701620083de565b9190910192915050565b6000815180845262008478816020860160208601620083de565b601f01601f19169290920160200192915050565b604081526000620084b760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200282a81856200845e565b604081526000620084b760408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200852160408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200852160408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200857b60408301856200845e565b90508260208301529392505050565b825160009082906020808701845b83811015620085b65781518552938201939082019060010162008598565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b60006001820162008676576200867662008164565b5060010190565b600082601f8301126200868f57600080fd5b81516020620086a26200806e8362007ff8565b82815260059290921b84018101918181019086841115620086c257600080fd5b8286015b84811015620086df5780518352918301918301620086c6565b509695505050505050565b60008060408385031215620086fe57600080fd5b825167ffffffffffffffff808211156200871757600080fd5b62008725868387016200867d565b935060208501519150808211156200873c57600080fd5b506200874b858286016200867d565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b506040516200196d3803806200196d8339810160408190526200003491620001b2565b600080546001600160a01b031916339081178255604051909182916000805160206200194d833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194d83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161173962000214600039600081816101d7015281816108320152610be501526117396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160b565b90506000606461035384600861162d565b61035d919061160b565b610367908361162d565b606461037485600c61162d565b61037e919061160b565b610388919061164c565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611664565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d611699565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116af565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b90600052602060002090600302016002016000828254610947919061164c565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611664565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611664565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611664565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116d1565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116af565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611664565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff814261164c565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611664565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c590849061164c565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611664565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116ea565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015611606576116066115de565b500390565b60008261162857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611647576116476115de565b500290565b6000821982111561165f5761165f6115de565b500190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116c157600080fd5b8151801515811461151c57600080fd5b6000602082840312156116e357600080fd5b5051919050565b6000600182016116fc576116fc6115de565b506001019056fea2646970667358221220563f05f594a9a0e01b9e33f22923ff2263a40f5c7f50f2a4edee03c5df1032d664736f6c634300080f00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610571565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610571565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610571565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610571565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b8381111561056b576000848401525b50505050565b60008251610583818460208701610541565b919091019291505056fea2646970667358221220727ec6aae13cf9292ff3da0f3a07a0ec02c9e90e12bed8cd3f60912c6ff582e264736f6c634300080f00330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220726833ddff7edfeffbe5c061c7811a419087855e87d5b044001d8511efb20c6c64736f6c634300080f0033", - "sourceMap": "208:21101:27:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;277:210;;;:::i;:::-;;4921:861;;;:::i;1745:36:26:-;;1780:1;1745:36;;;;;186:4:28;174:17;;;156:36;;144:2;129:18;1745:36:26;;;;;;;;7044:881:27;;;:::i;4740:583:26:-;;;;;;:::i;:::-;;:::i;5374:479::-;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;523:207:27;;;:::i;10097:627::-;;;:::i;1481:443::-;;;:::i;13092:1902::-;;;:::i;2019:967::-;;;:::i;5880:1102::-;;;:::i;6028:291:26:-;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:28;;;1232:2;1217:18;6028:291:26;1098:177:28;2262:45:26;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;11947:1092:27:-;;;:::i;2092:45:26:-;;2135:2;2092:45;;17163:1984:27;;;;;;:::i;:::-;;:::i;2005:36:26:-;;2040:1;2005:36;;3699:1165:27;;;:::i;3046:563::-;;;:::i;8020:1974::-;;;:::i;3312:184:26:-;;;:::i;1819:584:0:-;;;:::i;:::-;;;2154:14:28;;2147:22;2129:41;;2117:2;2102:18;1819:584:0;1989:187:28;5861:159:26;;;;;;:::i;:::-;;:::i;19211:2093:27:-;;;;;;:::i;:::-;;:::i;1916:36:26:-;;1951:1;1916:36;;10774:1093:27;;;:::i;15044:2052::-;;;:::i;1655:36:26:-;;1690:1;1655:36;;3620:551;;;:::i;825:596:27:-;;;:::i;1572:26:0:-;;;;;;;;;277:210:27;312:14;:12;:14::i;:::-;337:13;:11;:13::i;:::-;464:3;;409:70;;1136:42:26;;-1:-1:-1;;;;;464:3:27;;409:70;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;399:7:27;:80;;-1:-1:-1;;;;;;399:80:27;-1:-1:-1;;;;;399:80:27;;;;;;;;;;277:210::o;4921:861::-;5027:7;;;5053:3;5027:31;;-1:-1:-1;;;5027:31:27;;-1:-1:-1;;;;;5053:3:27;;;5027:31;;;2636:51:28;5018:53:27;;5027:7;;;;;:17;;2609:18:28;;5027:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5065:5;5018:8;:53::i;:::-;5118:7;;:28;;;-1:-1:-1;;;5118:28:27;;;;5082:33;;-1:-1:-1;;;;;5118:7:27;;:26;;:28;;;;;5082:33;;5118:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5118:28:27;;;;;;;;;;;;:::i;:::-;5082:64;;5157:36;5166:7;:14;5191:1;5157:8;:36::i;:::-;5213:7;;:28;;;-1:-1:-1;;;5213:28:27;;;;5204:41;;-1:-1:-1;;;;;5213:7:27;;:26;;:28;;;;;;;;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5243:1;5204:8;:41::i;:::-;5297:3;;5325:7;;5297:3;5343;5297:61;;-1:-1:-1;;;5297:61:27;;-1:-1:-1;;;;;5297:3:27;;;;:19;;:61;;5325:7;;;;5343:3;;;5349:8;;5297:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5290:69;;;;:::i;:::-;5411:7;;;5437:3;5411:31;;-1:-1:-1;;;5411:31:27;;-1:-1:-1;;;;;5437:3:27;;;5411:31;;;2636:51:28;5402:52:27;;5411:7;;;;;:17;;2609:18:28;;5411:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5449:4;5402:8;:52::i;:::-;5475:7;;;;;;;;;-1:-1:-1;;;;;5475:7:27;-1:-1:-1;;;;;5475:26:27;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5475:28:27;;;;;;;;;;;;:::i;:::-;5465:38;;5514:37;5523:7;:14;5549:1;5514:8;:37::i;:::-;5562:48;5571:7;5579:1;5571:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;5605:3;;-1:-1:-1;;;;;5605:3:27;5562:8;:48::i;:::-;5621:44;5630:7;5638:1;5630:10;;;;;;;;:::i;:::-;;;;;;;:23;;;5656:8;5621;:44::i;:::-;5676:37;5685:7;5693:1;5685:10;;;;;;;;:::i;:::-;;;;;;;:24;;;5711:1;5676:8;:37::i;:::-;5735:7;;:28;;;-1:-1:-1;;;5735:28:27;;;;5726:48;;-1:-1:-1;;;;;5735:7:27;;:26;;:28;;;;;;;;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5765:8;5726;:48::i;:::-;4978:804;4921:861::o;7044:881::-;7176:3;;7204:7;;7176:3;7222;7176:61;;-1:-1:-1;;;7176:61:27;;-1:-1:-1;;;;;7176:3:27;;;;:19;;:61;;7204:7;;;;7222:3;;;7228:8;;7176:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7169:69;;;;:::i;:::-;7289:7;;;7315:3;7289:31;;-1:-1:-1;;;7289:31:27;;-1:-1:-1;;;;;7315:3:27;;;7289:31;;;2636:51:28;7280:52:27;;7289:7;;;;;:17;;2609:18:28;;7289:31:27;2490:203:28;7280:52:27;7379:7;;:28;;;-1:-1:-1;;;7379:28:27;;;;7343:33;;-1:-1:-1;;;;;7379:7:27;;:26;;:28;;;;;7343:33;;7379:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7379:28:27;;;;;;;;;;;;:::i;:::-;7343:64;;7418:36;7427:7;:14;7452:1;7418:8;:36::i;:::-;7465:48;7474:7;7482:1;7474:10;;;;;;;;:::i;7465:48::-;7524:44;7533:7;7541:1;7533:10;;;;;;;;:::i;7524:44::-;7579:37;7588:7;7596:1;7588:10;;;;;;;;:::i;7579:37::-;7670:3;;7701:7;;7670:3;7719;7670:54;;-1:-1:-1;;;7670:54:27;;-1:-1:-1;;;;;7670:3:27;;;;:22;;:54;;7701:7;;;;7719:3;;;7670:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7663:62;;;;:::i;:::-;7777:7;;;7803:3;7777:31;;-1:-1:-1;;;7777:31:27;;-1:-1:-1;;;;;7803:3:27;;;7777:31;;;2636:51:28;7768:53:27;;7777:7;;;;;:17;;2609:18:28;;7777:31:27;2490:203:28;7768:53:27;7842:7;;;;;;;;;-1:-1:-1;;;;;7842:7:27;-1:-1:-1;;;;;7842:26:27;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7842:28:27;;;;;;;;;;;;:::i;:::-;7832:38;;7881:36;7890:7;:14;7915:1;7881:8;:36::i;4740:583:26:-;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:26;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;8325:21:28;;;8382:2;8362:18;;;8355:30;8421:34;8416:2;8401:18;;8394:62;-1:-1:-1;;;8487:3:28;8472:19;;8465:51;8583:4;8568:20;;8561:36;;;5095:80:26;;-1:-1:-1;;;;;;;;;;;5095:80:26;;;;8548:3:28;5095:80:26;;;-1:-1:-1;;;;;;;;;;;5224:4:26;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:26;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:26;;;;;5585:261;;5617:88;;;9854:21:28;;;9911:2;9891:18;;;9884:30;9950:34;9945:2;9930:18;;9923:62;10022:26;10016:3;10001:19;;9994:55;10116:4;10101:20;;10094:36;;;5617:88:26;;-1:-1:-1;;;;;;;;;;;5617:88:26;;;;10081:3:28;5617:88:26;;;-1:-1:-1;;;;;;;;;;;5754:4:26;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:26;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;523:207:27:-;585:7;;:20;;;-1:-1:-1;;;585:20:27;;;;576:42;;-1:-1:-1;;;;;585:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1136:42:26;576:8:27;:42::i;:::-;638:7;;:26;;;-1:-1:-1;;;638:26:27;;;;629:39;;-1:-1:-1;;;;;638:7:27;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;629:39;688:7;;:24;;;-1:-1:-1;;;688:24:27;;;;679:43;;-1:-1:-1;;;;;688:7:27;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;679:43;523:207::o;10097:627::-;10208:3;;10236:7;;10254:3;;10208:61;;-1:-1:-1;;;10208:61:27;;-1:-1:-1;;;;;10208:3:27;;;;:19;;:61;;10236:7;;;;10254:3;;;10260:8;;10208:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10201:69;;;;:::i;:::-;10361:7;;10394:3;;10361:38;;-1:-1:-1;;;10361:38:27;;-1:-1:-1;;;;;10394:3:27;;;10361:38;;;2636:51:28;10352::27;;10361:7;;;;;:24;;2609:18:28;;10361:38:27;;;;;;;;;;;;;;;;;;;;;;;10352:51;10443:3;;10473:7;;10443:39;;-1:-1:-1;;;10443:39:27;;-1:-1:-1;;;;;10473:7:27;;;10443:39;;;2636:51:28;10443:3:27;;;:21;;2609:18:28;;10443:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10572:7:27;;;10605:3;10572:38;;-1:-1:-1;;;10572:38:27;;-1:-1:-1;;;;;10605:3:27;;;10572:38;;;2636:51:28;10563::27;;10572:7;;;;;:24;;2609:18:28;;10572:38:27;2490:203:28;10563:51:27;10676:7;;:36;;-1:-1:-1;;;10676:36:27;;:7;:36;;;2636:51:28;10667:49:27;;-1:-1:-1;;;;;10676:7:27;;:24;;2609:18:28;;10676:36:27;2490:203:28;1481:443:27;1589:7;;:26;;;-1:-1:-1;;;1589:26:27;;;;1580:39;;-1:-1:-1;;;;;1589:7:27;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;1580:39;1639:7;;:24;;;-1:-1:-1;;;1639:24:27;;;;1630:43;;-1:-1:-1;;;;;1639:7:27;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;1630:43;1727:3;;1757:7;;1727:39;;-1:-1:-1;;;1727:39:27;;-1:-1:-1;;;;;1757:7:27;;;1727:39;;;2636:51:28;1727:3:27;;;:21;;2609:18:28;;1727:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1720:47;;;;:::i;:::-;1819:7;;:26;;;-1:-1:-1;;;1819:26:27;;;;1810:53;;-1:-1:-1;;;;;1819:7:27;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1847:15;1810:8;:53::i;:::-;1883:7;;:24;;;-1:-1:-1;;;1883:24:27;;;;1874:42;;-1:-1:-1;;;;;1883:7:27;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;13092:1902;13261:7;;:20;;;-1:-1:-1;;;13261:20:27;;;;13169:15;;13256:53;;-1:-1:-1;;;;;13261:7:27;;;;:18;;:20;;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13291:7;;-1:-1:-1;;;;;13291:7:27;13301;13256:4;:53::i;:::-;13378:3;;13356:27;;-1:-1:-1;;;13356:27:27;;-1:-1:-1;;;;;13378:3:27;;;13356:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;13356:13:27;;;2609:18:28;;13356:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13434:3:27;;13462:7;;13480:3;;13434:60;;-1:-1:-1;;;13434:60:27;;-1:-1:-1;;;;;13434:3:27;;;;-1:-1:-1;13434:19:27;;-1:-1:-1;13434:60:27;;13462:7;;;;13480:3;;;;13486:7;;13434:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13427:68;;;;:::i;:::-;13541:3;;13571:7;;13541:39;;-1:-1:-1;;;13541:39:27;;-1:-1:-1;;;;;13571:7:27;;;13541:39;;;2636:51:28;13541:3:27;;;:21;;2609:18:28;;13541:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13534:47;;;;:::i;:::-;13638:7;;:20;;;-1:-1:-1;;;13638:20:27;;;;13622:65;;-1:-1:-1;;;;;13638:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13678:3;;13631:52;;-1:-1:-1;;;13631:52:27;;-1:-1:-1;;;;;13678:3:27;;;13631:52;;;2636:51:28;13631:38:27;;;;;2609:18:28;;13631:52:27;2490:203:28;13622:65:27;13746:3;;13768:7;;13746:31;;-1:-1:-1;;;13746:31:27;;-1:-1:-1;;;;;13768:7:27;;;13746:31;;;2636:51:28;13746:3:27;;;:13;;2609:18:28;;13746:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13739:39;;;;:::i;:::-;13836:7;;:20;;;-1:-1:-1;;;13836:20:27;;;;13820:82;;-1:-1:-1;;;;;13836:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13876:3;;13829:52;;-1:-1:-1;;;13829:52:27;;-1:-1:-1;;;;;13876:3:27;;;13829:52;;;2636:51:28;13829:38:27;;;;;2609:18:28;;13829:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13898:3;13883:12;:7;13893:2;13883:12;:::i;:::-;:18;;;;:::i;:::-;13820:8;:82::i;:::-;13940:13;13945:7;13940:4;:13::i;:::-;14012:3;;14034:7;;14012:31;;-1:-1:-1;;;14012:31:27;;-1:-1:-1;;;;;14034:7:27;;;14012:31;;;2636:51:28;14012:3:27;;;:13;;2609:18:28;;14012:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14005:39;;;;:::i;:::-;14102:7;;:20;;;-1:-1:-1;;;14102:20:27;;;;14086:82;;-1:-1:-1;;;;;14102:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14142:3;;14095:52;;-1:-1:-1;;;14095:52:27;;-1:-1:-1;;;;;14142:3:27;;;14095:52;;;2636:51:28;14095:38:27;;;;;2609:18:28;;14095:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14164:3;14149:12;:7;14159:2;14149:12;:::i;14086:82::-;14206:13;14211:7;14206:4;:13::i;:::-;14278:3;;14300:7;;14278:31;;-1:-1:-1;;;14278:31:27;;-1:-1:-1;;;;;14300:7:27;;;14278:31;;;2636:51:28;14278:3:27;;;:13;;2609:18:28;;14278:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14271:39;;;;:::i;:::-;14368:7;;:20;;;-1:-1:-1;;;14368:20:27;;;;14352:82;;-1:-1:-1;;;;;14368:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14408:3;;14361:52;;-1:-1:-1;;;14361:52:27;;-1:-1:-1;;;;;14408:3:27;;;14361:52;;;2636:51:28;14361:38:27;;;;;2609:18:28;;14361:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14430:3;14415:12;:7;14425:2;14415:12;:::i;14352:82::-;14473:14;14478:8;14473:4;:14::i;:::-;14546:3;;14568:7;;14546:31;;-1:-1:-1;;;14546:31:27;;-1:-1:-1;;;;;14568:7:27;;;14546:31;;;2636:51:28;14546:3:27;;;:13;;2609:18:28;;14546:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14539:39;;;;:::i;:::-;14636:7;;:20;;;-1:-1:-1;;;14636:20:27;;;;14620:82;;-1:-1:-1;;;;;14636:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14676:3;;14629:52;;-1:-1:-1;;;14629:52:27;;-1:-1:-1;;;;;14676:3:27;;;14629:52;;;2636:51:28;14629:38:27;;;;;2609:18:28;;14629:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14698:3;14683:12;:7;14693:2;14683:12;:::i;14620:82::-;14741:14;14746:8;14741:4;:14::i;:::-;14814:3;;14836:7;;14814:31;;-1:-1:-1;;;14814:31:27;;-1:-1:-1;;;;;14836:7:27;;;14814:31;;;2636:51:28;14814:3:27;;;:13;;2609:18:28;;14814:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14807:39;;;;:::i;:::-;14904:7;;:20;;;-1:-1:-1;;;14904:20:27;;;;14888:71;;-1:-1:-1;;;;;14904:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14944:3;;14897:52;;-1:-1:-1;;;14897:52:27;;-1:-1:-1;;;;;14944:3:27;;;14897:52;;;2636:51:28;14897:38:27;;;;;2609:18:28;;14897:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14951:7;14888:8;:71::i;:::-;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;14972:12:27;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2019:967;2155:3;;2185:7;;2155:45;;-1:-1:-1;;;2155:45:27;;-1:-1:-1;;;;;2155:3:27;;;;:21;;:45;;2185:7;;;840:42:26;;2155:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2154:46;2147:54;;;;:::i;:::-;2281:3;;2311:7;;2281:45;;-1:-1:-1;;;2281:45:27;;-1:-1:-1;;;;;2281:3:27;;;;:21;;:45;;2311:7;;;840:42:26;;2281:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2280:46;2273:54;;;;:::i;:::-;2412:3;;2442:7;;2412:45;;-1:-1:-1;;;2412:45:27;;-1:-1:-1;;;;;2412:3:27;;;;:21;;:45;;2442:7;;;840:42:26;;2412:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2411:46;2404:54;;;;:::i;:::-;2539:3;;2569:7;;2579:20;;;-1:-1:-1;;;2579:20:27;;;;-1:-1:-1;;;;;2539:3:27;;;;:21;;2569:7;;;;2579:18;;:20;;;;;;;;;;;;;;;2569:7;2579:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2539:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2538:62;2531:70;;;;:::i;:::-;2680:3;;2710:7;;2680:51;;-1:-1:-1;;;2680:51:27;;-1:-1:-1;;;;;2680:3:27;;;;:21;;:51;;2710:7;;;2680:3;;:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2679:52;2672:60;;;;:::i;:::-;2814:7;;2795:39;;840:42:26;;-1:-1:-1;;;;;2814:7:27;2824:9;2371:7:26;2824:3:27;:9;:::i;:::-;2795:4;:39::i;:::-;2932:3;;2962:7;;2932:45;;-1:-1:-1;;;2932:45:27;;-1:-1:-1;;;;;2932:3:27;;;;:21;;:45;;2962:7;;;840:42:26;;2932:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2925:53;;;;:::i;5880:1102::-;6011:3;;6039:7;;6011:3;6057;6011:61;;-1:-1:-1;;;6011:61:27;;-1:-1:-1;;;;;6011:3:27;;;;:19;;:61;;6039:7;;;;6057:3;;;6063:8;;6011:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6004:69;;;;:::i;:::-;6164:3;;6195:7;;6164:3;6213;6164:54;;-1:-1:-1;;;6164:54:27;;-1:-1:-1;;;;;6164:3:27;;;;:22;;:54;;6195:7;;;;6213:3;;;6164:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6163:55;6156:63;;;;:::i;:::-;6309:3;;6340:7;;6309:54;;-1:-1:-1;;;6309:54:27;;-1:-1:-1;;;;;6309:3:27;;;;:22;;:54;;6340:7;;;6309:3;;:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6308:55;6301:63;;;;:::i;:::-;6440:3;;6471:7;;6440:3;6489;6440:54;;-1:-1:-1;;;6440:54:27;;-1:-1:-1;;;;;6440:3:27;;;;:22;;:54;;6471:7;;;;6489:3;;;6440:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6433:62;;;;:::i;:::-;6530:3;;6508:27;;-1:-1:-1;;;6508:27:27;;-1:-1:-1;;;;;6530:3:27;;;6508:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;6508:13:27;;;2609:18:28;;6508:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6627:75:27;;-1:-1:-1;;;6627:75:27;;11385:2:28;6627:75:27;;;11367:21:28;11424:2;11404:18;;;11397:30;11463:34;11443:18;;;11436:62;11534:26;11514:18;;;11507:54;-1:-1:-1;;;;;;;;;;;6627:15:27;-1:-1:-1;6627:15:27;;-1:-1:-1;11578:19:28;;6627:75:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6713:7:27;;6744:3;;6713:36;;-1:-1:-1;;;6713:36:27;;-1:-1:-1;;;;;6744:3:27;;;6713:36;;;2636:51:28;6713:7:27;;;-1:-1:-1;6713:22:27;;-1:-1:-1;2609:18:28;;6713:36:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6825:77:27;;-1:-1:-1;;;6825:77:27;;11809:2:28;6825:77:27;;;11791:21:28;11848:2;11828:18;;;11821:30;11887:34;11867:18;;;11860:62;11958:28;11938:18;;;11931:56;-1:-1:-1;;;;;;;;;;;6825:15:27;-1:-1:-1;6825:15:27;;-1:-1:-1;12004:19:28;;6825:77:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6913:7:27;;:34;;-1:-1:-1;;;6913:34:27;;:7;:34;;;2636:51:28;-1:-1:-1;;;;;6913:7:27;;;;-1:-1:-1;6913:22:27;;-1:-1:-1;2609:18:28;;6913:34:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;6960:12:27;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5880:1102::o;6028:291:26:-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:26;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:26;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:26;;-1:-1:-1;;;;;2654:32:28;;;4404:31:26;;;2636:51:28;;;;4314:19:26;;;4360;;4314;;4404:22;;2609:18:28;;4404:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;4390:45;;-1:-1:-1;4448:4:26;;;-1:-1:-1;;;;;4448:4:26;;:10;;4473:4;;4502:25;;4513:7;;4522:4;;4502:25;;;:::i;:::-;;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;-1:-1:-1;;;;;;4448:139:26;;;;;;;;;;;4558:18;4448:139;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:26;;-1:-1:-1;;;4609:31:26;;-1:-1:-1;;;;;2654:32:28;;;4609:31:26;;;2636:51:28;4600:52:26;;-1:-1:-1;4609:22:26;;;-1:-1:-1;4609:22:26;;2609:18:28;;4609:31:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;11947:1092:27:-;12072:7;;:20;;;-1:-1:-1;;;12072:20:27;;;;12067:61;;-1:-1:-1;;;;;12072:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12102:7;;-1:-1:-1;;;;;12102:7:27;12112:15;12067:4;:61::i;:::-;12198:3;;12176:27;;-1:-1:-1;;;12176:27:27;;-1:-1:-1;;;;;12198:3:27;;;12176:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;12176:13:27;;;2609:18:28;;12176:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12269:77:27;;-1:-1:-1;;;12269:77:27;;13114:2:28;12269:77:27;;;13096:21:28;13153:2;13133:18;;;13126:30;13192:34;13172:18;;;13165:62;13263:28;13243:18;;;13236:56;-1:-1:-1;;;;;;;;;;;12269:15:27;-1:-1:-1;12269:15:27;;-1:-1:-1;13309:19:28;;12269:77:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12357:7;;;;;;;;;-1:-1:-1;;;;;12357:7:27;-1:-1:-1;;;;;12357:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12424:3:27;;12452:7;;12470:3;;12424:68;;-1:-1:-1;;;12424:68:27;;-1:-1:-1;;;;;12424:3:27;;;;-1:-1:-1;12424:19:27;;-1:-1:-1;12424:68:27;;12452:7;;;;12470:3;;;;12476:15;;12424:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12417:76;;;;:::i;:::-;12559:62;;-1:-1:-1;;;12559:62:27;;13952:2:28;12559:62:27;;;13934:21:28;13991:2;13971:18;;;13964:30;14030:34;14010:18;;;14003:62;-1:-1:-1;;;14081:18:28;;;14074:41;-1:-1:-1;;;;;;;;;;;12559:15:27;;;14132:19:28;;12559:62:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12632:7;;;;;;;;;-1:-1:-1;;;;;12632:7:27;-1:-1:-1;;;;;12632:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12694:3:27;;12724:7;;12694:39;;-1:-1:-1;;;12694:39:27;;-1:-1:-1;;;;;12724:7:27;;;12694:39;;;2636:51:28;12694:3:27;;;-1:-1:-1;12694:21:27;;-1:-1:-1;2609:18:28;;12694:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12687:47;;;;:::i;:::-;12784:7;;;;;;;;;-1:-1:-1;;;;;12784:7:27;-1:-1:-1;;;;;12784:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12812:14;12817:8;12812:4;:14::i;:::-;12877:7;;;;;;;;;-1:-1:-1;;;;;12877:7:27;-1:-1:-1;;;;;12877:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12905:71:27;;-1:-1:-1;;;12905:71:27;;14363:2:28;12905:71:27;;;14345:21:28;14402:2;14382:18;;;14375:30;14441:34;14421:18;;;14414:62;-1:-1:-1;;;14492:18:28;;;14485:50;-1:-1:-1;;;;;;;;;;;12905:15:27;-1:-1:-1;12905:15:27;;-1:-1:-1;14552:19:28;;12905:71:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12987:7;;;;;;;;;-1:-1:-1;;;;;12987:7:27;-1:-1:-1;;;;;12987:13:27;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17163:1984;17245:48;17251:7;17260:13;17275:17;17245:5;:48::i;:::-;17235:58;;17365:53;17370:7;;;;;;;;;-1:-1:-1;;;;;17370:7:27;-1:-1:-1;;;;;17370:18:27;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17365:53;17487:3;;17465:27;;-1:-1:-1;;;17465:27:27;;-1:-1:-1;;;;;17487:3:27;;;17465:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;17465:13:27;;;2609:18:28;;17465:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17543:3:27;;17571:7;;17589:3;;17543:60;;-1:-1:-1;;;17543:60:27;;-1:-1:-1;;;;;17543:3:27;;;;-1:-1:-1;17543:19:27;;-1:-1:-1;17543:60:27;;17571:7;;;;17589:3;;;;17595:7;;17543:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17536:68;;;;:::i;:::-;17650:3;;17680:7;;17650:39;;-1:-1:-1;;;17650:39:27;;-1:-1:-1;;;;;17680:7:27;;;17650:39;;;2636:51:28;17650:3:27;;;:21;;2609:18:28;;17650:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17643:47;;;;:::i;:::-;17747:7;;:20;;;-1:-1:-1;;;17747:20:27;;;;17731:65;;-1:-1:-1;;;;;17747:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;17731:65;17855:3;;17877:7;;17855:31;;-1:-1:-1;;;17855:31:27;;-1:-1:-1;;;;;17877:7:27;;;17855:31;;;2636:51:28;17855:3:27;;;:13;;2609:18:28;;17855:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17848:39;;;;:::i;:::-;17947:7;;:20;;;-1:-1:-1;;;17947:20:27;;;;17929:93;;-1:-1:-1;;;;;17947:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17987:3;;17940:52;;-1:-1:-1;;;17940:52:27;;-1:-1:-1;;;;;17987:3:27;;;17940:52;;;2636:51:28;17940:38:27;;;;;2609:18:28;;17940:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18009:3;17994:12;:7;18004:2;17994:12;:::i;:::-;:18;;;;:::i;:::-;18014:7;17929:10;:93::i;:::-;18060:13;18065:7;18060:4;:13::i;:::-;18132:3;;18154:7;;18132:31;;-1:-1:-1;;;18132:31:27;;-1:-1:-1;;;;;18154:7:27;;;18132:31;;;2636:51:28;18132:3:27;;;:13;;2609:18:28;;18132:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18125:39;;;;:::i;:::-;18224:7;;:20;;;-1:-1:-1;;;18224:20:27;;;;18206:93;;-1:-1:-1;;;;;18224:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18264:3;;18217:52;;-1:-1:-1;;;18217:52:27;;-1:-1:-1;;;;;18264:3:27;;;18217:52;;;2636:51:28;18217:38:27;;;;;2609:18:28;;18217:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18286:3;18271:12;:7;18281:2;18271:12;:::i;18206:93::-;18337:13;18342:7;18337:4;:13::i;:::-;18409:3;;18431:7;;18409:31;;-1:-1:-1;;;18409:31:27;;-1:-1:-1;;;;;18431:7:27;;;18409:31;;;2636:51:28;18409:3:27;;;:13;;2609:18:28;;18409:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18402:39;;;;:::i;:::-;18501:7;;:20;;;-1:-1:-1;;;18501:20:27;;;;18483:93;;-1:-1:-1;;;;;18501:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18541:3;;18494:52;;-1:-1:-1;;;18494:52:27;;-1:-1:-1;;;;;18541:3:27;;;18494:52;;;2636:51:28;18494:38:27;;;;;2609:18:28;;18494:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18563:3;18548:12;:7;18558:2;18548:12;:::i;18483:93::-;18615:14;18620:8;18615:4;:14::i;:::-;18688:3;;18710:7;;18688:31;;-1:-1:-1;;;18688:31:27;;-1:-1:-1;;;;;18710:7:27;;;18688:31;;;2636:51:28;18688:3:27;;;:13;;2609:18:28;;18688:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18681:39;;;;:::i;:::-;18780:7;;:20;;;-1:-1:-1;;;18780:20:27;;;;18762:93;;-1:-1:-1;;;;;18780:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18820:3;;18773:52;;-1:-1:-1;;;18773:52:27;;-1:-1:-1;;;;;18820:3:27;;;18773:52;;;2636:51:28;18773:38:27;;;;;2609:18:28;;18773:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18842:3;18827:12;:7;18837:2;18827:12;:::i;3699:1165::-;3841:3;;3869:7;;3841:3;3887;3841:61;;-1:-1:-1;;;3841:61:27;;-1:-1:-1;;;;;3841:3:27;;;;:19;;:61;;3869:7;;;;3887:3;;;3893:8;;3841:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3840:62;3833:70;;;;:::i;:::-;3990:3;;4018:7;;3990:61;;-1:-1:-1;;;3990:61:27;;-1:-1:-1;;;;;3990:3:27;;;;:19;;:61;;4018:7;;;3990:3;;4042:8;;3990:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3989:62;3982:70;;;;:::i;:::-;4125:3;;4153:7;;4125:3;4171;4125:61;;-1:-1:-1;;;4125:61:27;;-1:-1:-1;;;;;4125:3:27;;;;:19;;:61;;4153:7;;;;4171:3;;;4177:8;;4125:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4118:69;;;;:::i;:::-;4222:3;;4200:27;;-1:-1:-1;;;4200:27:27;;-1:-1:-1;;;;;4222:3:27;;;4200:27;;;2636:51:28;-1:-1:-1;;;;;;;;;;;4200:13:27;;;2609:18:28;;4200:27:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4306:71:27;;-1:-1:-1;;;4306:71:27;;14783:2:28;4306:71:27;;;14765:21:28;14822:2;14802:18;;;14795:30;14861:34;14841:18;;;14834:62;-1:-1:-1;;;14912:18:28;;;14905:50;-1:-1:-1;;;;;;;;;;;4306:15:27;-1:-1:-1;4306:15:27;;-1:-1:-1;14972:19:28;;4306:71:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4388:7:27;;;4416:3;4388:43;;-1:-1:-1;;;4388:43:27;;-1:-1:-1;;;;;4388:7:27;;;;-1:-1:-1;4388:19:27;;-1:-1:-1;4388:43:27;;4416:3;;;;4422:8;;4388:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4508:75:27;;-1:-1:-1;;;4508:75:27;;15509:2:28;4508:75:27;;;15491:21:28;15548:2;15528:18;;;15521:30;15587:34;15567:18;;;15560:62;15658:26;15638:18;;;15631:54;-1:-1:-1;;;;;;;;;;;4508:15:27;-1:-1:-1;4508:15:27;;-1:-1:-1;15702:19:28;;4508:75:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4594:7:27;;:41;;-1:-1:-1;;;4594:41:27;;-1:-1:-1;;;;;4594:7:27;;;;-1:-1:-1;4594:19:27;;-1:-1:-1;4594:41:27;;:7;;4626:8;;4594:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4710:72:27;;-1:-1:-1;;;4710:72:27;;15933:2:28;4710:72:27;;;15915:21:28;15972:2;15952:18;;;15945:30;16011:34;15991:18;;;15984:62;-1:-1:-1;;;16062:18:28;;;16055:51;-1:-1:-1;;;;;;;;;;;4710:15:27;-1:-1:-1;4710:15:27;;-1:-1:-1;16123:19:28;;4710:72:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4793:7:27;;4821:3;;4793:36;;-1:-1:-1;;;4793:36:27;;-1:-1:-1;;;;;4793:7:27;;;;-1:-1:-1;4793:19:27;;-1:-1:-1;4793:36:27;;4821:3;;;;4793:7;;:36;;;:::i;3046:563::-;3135:7;;3116:39;;840:42:26;;-1:-1:-1;;;;;3135:7:27;3145:9;2371:7:26;3145:3:27;:9;:::i;3116:39::-;3236:7;;3205:40;;-1:-1:-1;;;3205:40:27;;-1:-1:-1;;;;;3236:7:27;;;3205:40;;;2636:51:28;3196:61:27;;840:42:26;;3205:22:27;;2609:18:28;;3205:40:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3247:9;2371:7:26;3247:3:27;:9;:::i;3196:61::-;3308:3;;3277:36;;-1:-1:-1;;;3277:36:27;;-1:-1:-1;;;;;3308:3:27;;;3277:36;;;2636:51:28;3268:53:27;;840:42:26;;3277:22:27;;2609:18:28;;3277:36:27;2490:203:28;3268:53:27;3388:3;;3418:7;;3388:45;;-1:-1:-1;;;3388:45:27;;-1:-1:-1;;;;;3388:3:27;;;;:21;;:45;;3418:7;;;840:42:26;;3388:45:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3381:53;;;;:::i;:::-;3516:7;;3485:40;;-1:-1:-1;;;3485:40:27;;-1:-1:-1;;;;;3516:7:27;;;3485:40;;;2636:51:28;3476:53:27;;840:42:26;;3485:22:27;;2609:18:28;;3485:40:27;2490:203:28;3476:53:27;3580:3;;3549:36;;-1:-1:-1;;;3549:36:27;;-1:-1:-1;;;;;3580:3:27;;;3549:36;;;2636:51:28;3540:61:27;;840:42:26;;3549:22:27;;2609:18:28;;3549:36:27;2490:203:28;8020:1974:27;8088:9;8100:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8185:3:27;;8213:7;;8185:3;8231;8185:61;;-1:-1:-1;;;8185:61:27;;8088:23;;-1:-1:-1;;;;;;8185:3:27;;;;:19;;:61;;8213:7;;;8231:3;;8237:8;;8185:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8178:69;;;;:::i;:::-;8265:3;;8293:7;;8311:3;;8265:61;;-1:-1:-1;;;8265:61:27;;-1:-1:-1;;;;;8265:3:27;;;;:19;;:61;;8293:7;;;;8311:3;;;8317:8;;8265:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8258:69;;;;:::i;:::-;8345:3;;8373:7;;8345:61;;-1:-1:-1;;;8345:61:27;;-1:-1:-1;;;;;8345:3:27;;;;:19;;:61;;8373:7;;;8391:3;;8397:8;;8345:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8338:69;;;;:::i;:::-;8458:7;;;8484:3;8458:31;;-1:-1:-1;;;8458:31:27;;-1:-1:-1;;;;;8484:3:27;;;8458:31;;;2636:51:28;8449:52:27;;8458:7;;;;;:17;;2609:18:28;;8458:31:27;2490:203:28;8449:52:27;8521:7;;8547:3;;8521:31;;-1:-1:-1;;;8521:31:27;;-1:-1:-1;;;;;8547:3:27;;;8521:31;;;2636:51:28;8512:52:27;;8521:7;;;;;:17;;2609:18:28;;8521:31:27;2490:203:28;8512:52:27;8584:7;;:31;;-1:-1:-1;;;8584:31:27;;-1:-1:-1;;;;;2654:32:28;;;8584:31:27;;;2636:51:28;8575:52:27;;8584:7;;:17;;2609:18:28;;8584:31:27;2490:203:28;8575:52:27;8674:7;;:28;;;-1:-1:-1;;;8674:28:27;;;;8638:33;;-1:-1:-1;;;;;8674:7:27;;:26;;:28;;;;;8638:33;;8674:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8674:28:27;;;;;;;;;;;;:::i;:::-;8638:64;;8713:36;8722:7;:14;8747:1;8713:8;:36::i;:::-;8760:48;8769:7;8777:1;8769:10;;;;;;;;:::i;8760:48::-;8819:44;8828:7;8836:1;8828:10;;;;;;;;:::i;8819:44::-;8874:37;8883:7;8891:1;8883:10;;;;;;;;:::i;8874:37::-;8922:48;8931:7;8939:1;8931:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;8965:3;;-1:-1:-1;;;;;8965:3:27;8922:8;:48::i;:::-;8981:44;8990:7;8998:1;8990:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9016:8;8981;:44::i;:::-;9036:37;9045:7;9053:1;9045:10;;;;;;;;:::i;9036:37::-;9084:48;9093:7;9101:1;9093:10;;;;;;;;:::i;:::-;;;;;;;:18;;;9127:3;9084:8;:48::i;:::-;9143:44;9152:7;9160:1;9152:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9178:8;9143;:44::i;:::-;9198:37;9207:7;9215:1;9207:10;;;;;;;;:::i;9198:37::-;9289:3;;9320:7;;9289:3;9338;9289:54;;-1:-1:-1;;;9289:54:27;;-1:-1:-1;;;;;9289:3:27;;;;:22;;:54;;9320:7;;;;9338:3;;;9289:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9282:62;;;;:::i;:::-;9396:7;;;9422:3;9396:31;;-1:-1:-1;;;9396:31:27;;-1:-1:-1;;;;;9422:3:27;;;9396:31;;;2636:51:28;9387:53:27;;9396:7;;;;;:17;;2609:18:28;;9396:31:27;2490:203:28;9387:53:27;9460:7;;9486:3;;9460:31;;-1:-1:-1;;;9460:31:27;;-1:-1:-1;;;;;9486:3:27;;;9460:31;;;2636:51:28;9451:52:27;;9460:7;;;;;:17;;2609:18:28;;9460:31:27;2490:203:28;9451:52:27;9523:7;;:31;;-1:-1:-1;;;9523:31:27;;-1:-1:-1;;;;;2654:32:28;;;9523:31:27;;;2636:51:28;9514:52:27;;9523:7;;:17;;2609:18:28;;9523:31:27;2490:203:28;9514:52:27;9587:7;;;;;;;;;-1:-1:-1;;;;;9587:7:27;-1:-1:-1;;;;;9587:26:27;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9587:28:27;;;;;;;;;;;;:::i;:::-;9577:38;;9626:36;9635:7;:14;9660:1;9626:8;:36::i;:::-;9673:48;9682:7;9690:1;9682:10;;;;;;;;:::i;9673:48::-;9732:44;9741:7;9749:1;9741:10;;;;;;;;:::i;9732:44::-;9787:37;9796:7;9804:1;9796:10;;;;;;;;:::i;9787:37::-;9835:48;9844:7;9852:1;9844:10;;;;;;;;:::i;9835:48::-;9894:44;9903:7;9911:1;9903:10;;;;;;;;:::i;9894:44::-;9949:37;9958:7;9966:1;9958:10;;;;;;;;:::i;9949:37::-;8077:1917;;8020:1974::o;3312:184:26:-;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:26;:17;;-1:-1:-1;;;;;;3354:17:26;-1:-1:-1;;;;;3354:17:26;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:26;:17;;-1:-1:-1;;;;;;3395:17:26;-1:-1:-1;;;;;3395:17:26;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:26;:17;;-1:-1:-1;;;;;;3462:17:26;-1:-1:-1;;;;;3462:17:26;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;1980:374;;2196:43;;2023:20;;-1:-1:-1;;;;;;;;;;;1671:64:0;2135:34;;2196:43;;1671:64;;-1:-1:-1;;;2221:17:0;2196:43;;;:::i;:::-;;;;-1:-1:-1;;2196:43:0;;;;;;;;;;2086:175;;;2196:43;2086:175;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:26:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;:::-;5967:45;;5861:159;;;;;;:::o;19211:2093:27:-;19293:48;19299:7;19308:13;19323:17;19293:5;:48::i;:::-;19283:58;;19413:57;19418:7;;;;;;;;;-1:-1:-1;;;;;19418:7:27;-1:-1:-1;;;;;19418:18:27;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19448:7;;-1:-1:-1;;;;;19448:7:27;19458:11;:7;19468:1;19458:11;:::i;19413:57::-;19516:3;;19546:7;;19516:39;;-1:-1:-1;;;19516:39:27;;-1:-1:-1;;;;;19546:7:27;;;19516:39;;;2636:51:28;19516:3:27;;;:21;;2609:18:28;;19516:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19509:47;;;;:::i;:::-;19665:3;;19693:7;;19711:3;;19665:60;;-1:-1:-1;;;19665:60:27;;-1:-1:-1;;;;;19665:3:27;;;;:19;;:60;;19693:7;;;;19711:3;;;19717:7;;19665:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19658:68;;;;:::i;:::-;19778:3;;19806:7;;19778:3;19824;19778:60;;-1:-1:-1;;;19778:60:27;;-1:-1:-1;;;;;19778:3:27;;;;:19;;:60;;19806:7;;;;19824:3;;;19830:7;;19778:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19771:68;;;;:::i;:::-;19891:3;;19919:7;;19891:60;;-1:-1:-1;;;19891:60:27;;-1:-1:-1;;;;;19891:3:27;;;;:19;;:60;;19919:7;;;19891:3;;19943:7;;19891:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19884:68;;;;:::i;:::-;20027:13;20032:7;20027:4;:13::i;:::-;20058:3;;20080:7;;20058:31;;-1:-1:-1;;;20058:31:27;;-1:-1:-1;;;;;20080:7:27;;;20058:31;;;2636:51:28;20058:3:27;;;:13;;2609:18:28;;20058:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20051:39;;;;:::i;:::-;20185:7;;:20;;;-1:-1:-1;;;20185:20:27;;;;20167:95;;-1:-1:-1;;;;;20185:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;20167:95;20327:14;20332:8;20327:4;:14::i;:::-;20413:3;;20435:7;;20413:31;;-1:-1:-1;;;20413:31:27;;-1:-1:-1;;;;;20435:7:27;;;20413:31;;;2636:51:28;20413:3:27;;;:13;;2609:18:28;;20413:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20406:39;;;;:::i;:::-;20540:7;;:20;;;-1:-1:-1;;;20540:20:27;;;;20522:95;;-1:-1:-1;;;;;20540:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20580:3;;20533:52;;-1:-1:-1;;;20533:52:27;;-1:-1:-1;;;;;20580:3:27;;;20533:52;;;2636:51:28;20533:38:27;;;;;2609:18:28;;20533:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20603:3;20588:12;:7;20598:2;20588:12;:::i;20522:95::-;20683:14;20688:8;20683:4;:14::i;:::-;20795:3;;20817:7;;20795:31;;-1:-1:-1;;;20795:31:27;;-1:-1:-1;;;;;20817:7:27;;;20795:31;;;2636:51:28;20795:3:27;;;:13;;2609:18:28;;20795:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20788:39;;;;:::i;:::-;20909:7;;:20;;;-1:-1:-1;;;20909:20:27;;;;20893:71;;-1:-1:-1;;;;;20909:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20949:3;;20902:52;;-1:-1:-1;;;20902:52:27;;-1:-1:-1;;;;;20949:3:27;;;20902:52;;;2636:51:28;20902:38:27;;;;;2609:18:28;;20902:52:27;2490:203:28;20893:71:27;21009:14;21014:8;21009:4;:14::i;:::-;21117:3;;21139:7;;21117:31;;-1:-1:-1;;;21117:31:27;;-1:-1:-1;;;;;21139:7:27;;;21117:31;;;2636:51:28;21117:3:27;;;:13;;2609:18:28;;21117:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21110:39;;;;:::i;:::-;21239:7;;:20;;;-1:-1:-1;;;21239:20:27;;;;21223:71;;-1:-1:-1;;;;;21239:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21279:3;;21232:52;;-1:-1:-1;;;21232:52:27;;-1:-1:-1;;;;;21279:3:27;;;21232:52;;;2636:51:28;21232:38:27;;;;;2609:18:28;;21232:52:27;2490:203:28;10774:1093:27;10981:3;;11009:7;;11027:3;;10981:60;;-1:-1:-1;;;10981:60:27;;10917:15;;-1:-1:-1;;;;;10981:3:27;;;;:19;;:60;;11009:7;;;;11027:3;;10917:15;;10981:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10974:68;;;;:::i;:::-;11107:7;;11139:3;;11107:37;;-1:-1:-1;;;11107:37:27;;-1:-1:-1;;;;;11139:3:27;;;11107:37;;;2636:51:28;11098:56:27;;11107:7;;;;;:23;;2609:18:28;;11107:37:27;2490:203:28;11098:56:27;11201:3;;11231:7;;11201:39;;-1:-1:-1;;;11201:39:27;;-1:-1:-1;;;;;11231:7:27;;;11201:39;;;2636:51:28;11201:3:27;;;:21;;2609:18:28;;11201:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11194:47;;;;:::i;:::-;11280:14;11285:8;11280:4;:14::i;:::-;11360:15;11421:3;11407:11;:7;11417:1;11407:11;:::i;:::-;:17;;;;:::i;:::-;11402:23;;:1;:23;:::i;:::-;11394:3;11379:12;:7;11389:2;11379:12;:::i;:::-;:18;;;;:::i;:::-;11378:48;;;;:::i;:::-;11446:7;;11479:3;;11446:38;;-1:-1:-1;;;11446:38:27;;-1:-1:-1;;;;;11479:3:27;;;11446:38;;;2636:51:28;11360:66:27;;-1:-1:-1;11437:57:27;;11446:7;;;:24;;2609:18:28;;11446:38:27;2490:203:28;11437:57:27;11583:14;11588:8;11583:4;:14::i;:::-;11718:3;11704:11;:7;11714:1;11704:11;:::i;:::-;:17;;;;:::i;:::-;11698:24;;:2;:24;:::i;:::-;11690:3;11675:12;:7;11685:2;11675:12;:::i;:::-;:18;;;;:::i;:::-;11674:49;;;;:::i;:::-;11743:7;;11776:3;;11743:38;;-1:-1:-1;;;11743:38:27;;-1:-1:-1;;;;;11776:3:27;;;11743:38;;;2636:51:28;11664:59:27;;-1:-1:-1;11734:57:27;;11743:7;;;:24;;2609:18:28;;11743:38:27;2490:203:28;11734:57:27;11811:7;;11844:3;;11811:38;;-1:-1:-1;;;11811:38:27;;-1:-1:-1;;;;;11844:3:27;;;11811:38;;;2636:51:28;11802:57:27;;11811:7;;;;;:24;;2609:18:28;;11811:38:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11851:7;11802:8;:57::i;15044:2052::-;15167:7;;:20;;;-1:-1:-1;;;15167:20:27;;;;15162:61;;-1:-1:-1;;;;;15167:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;15162:61;15269:3;;15299:7;;15269:39;;-1:-1:-1;;;15269:39:27;;-1:-1:-1;;;;;15299:7:27;;;15269:39;;;2636:51:28;15269:3:27;;;:21;;2609:18:28;;15269:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15262:47;;;;:::i;:::-;15418:3;;15446:7;;15464:3;;15418:68;;-1:-1:-1;;;15418:68:27;;-1:-1:-1;;;;;15418:3:27;;;;:19;;:68;;15446:7;;;;15464:3;;;15470:15;;15418:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15411:76;;;;:::i;:::-;15539:3;;15567:7;;15539:3;15585;15539:68;;-1:-1:-1;;;15539:68:27;;-1:-1:-1;;;;;15539:3:27;;;;:19;;:68;;15567:7;;;;15585:3;;;15591:15;;15539:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15532:76;;;;:::i;:::-;15660:3;;15688:7;;15660:68;;-1:-1:-1;;;15660:68:27;;-1:-1:-1;;;;;15660:3:27;;;;:19;;:68;;15688:7;;;15660:3;;15712:15;;15660:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15653:76;;;;:::i;:::-;15804:13;15809:7;15804:4;:13::i;:::-;15835:3;;15857:7;;15835:31;;-1:-1:-1;;;15835:31:27;;-1:-1:-1;;;;;15857:7:27;;;15835:31;;;2636:51:28;15835:3:27;;;:13;;2609:18:28;;15835:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15828:39;;;;:::i;:::-;15960:7;;:20;;;-1:-1:-1;;;15960:20:27;;;;15944:93;;-1:-1:-1;;;;;15960:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16000:3;;15953:52;;-1:-1:-1;;;15953:52:27;;-1:-1:-1;;;;;16000:3:27;;;15953:52;;;2636:51:28;15953:38:27;;;;;2609:18:28;;15953:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16008:26;15944:8;:93::i;:::-;16102:14;16107:8;16102:4;:14::i;:::-;16188:3;;16210:7;;16188:31;;-1:-1:-1;;;16188:31:27;;-1:-1:-1;;;;;16210:7:27;;;16188:31;;;2636:51:28;16188:3:27;;;:13;;2609:18:28;;16188:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16181:39;;;;:::i;:::-;16313:7;;:20;;;-1:-1:-1;;;16313:20:27;;;;16297:92;;-1:-1:-1;;;;;16313:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16353:3;;16306:52;;-1:-1:-1;;;16306:52:27;;-1:-1:-1;;;;;16353:3:27;;;16306:52;;;2636:51:28;16306:38:27;;;;;2609:18:28;;16306:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16361:26;16297:8;:92::i;:::-;16455:14;16460:8;16455:4;:14::i;:::-;16567:3;;16589:7;;16567:31;;-1:-1:-1;;;16567:31:27;;-1:-1:-1;;;;;16589:7:27;;;16567:31;;;2636:51:28;16567:3:27;;;:13;;2609:18:28;;16567:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16560:39;;;;:::i;:::-;16681:7;;:20;;;-1:-1:-1;;;16681:20:27;;;;16665:81;;-1:-1:-1;;;;;16681:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16721:3;;16674:52;;-1:-1:-1;;;16674:52:27;;-1:-1:-1;;;;;16721:3:27;;;16674:52;;;2636:51:28;16674:38:27;;;;;2609:18:28;;16674:52:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16729:15;16665:8;:81::i;:::-;16791:14;16796:8;16791:4;:14::i;:::-;16899:3;;16921:7;;16899:31;;-1:-1:-1;;;16899:31:27;;-1:-1:-1;;;;;16921:7:27;;;16899:31;;;2636:51:28;16899:3:27;;;:13;;2609:18:28;;16899:31:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16892:39;;;;:::i;:::-;17021:7;;:20;;;-1:-1:-1;;;17021:20:27;;;;17005:81;;-1:-1:-1;;;;;17021:7:27;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17061:3;;17014:52;;-1:-1:-1;;;17014:52:27;;-1:-1:-1;;;;;17061:3:27;;;17014:52;;;2636:51:28;17014:38:27;;;;;2609:18:28;;17014:52:27;2490:203:28;3620:551:26;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:26;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:26;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551::o;825:596:27:-;961:3;;991:7;;961:39;;-1:-1:-1;;;961:39:27;;-1:-1:-1;;;;;991:7:27;;;961:39;;;2636:51:28;961:3:27;;;:21;;2609:18:28;;961:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;960:40;953:48;;;;:::i;:::-;1081:3;;1111:7;;1081:39;;-1:-1:-1;;;1081:39:27;;-1:-1:-1;;;;;1111:7:27;;;1081:39;;;2636:51:28;1081:3:27;;;:21;;2609:18:28;;1081:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1080:40;1073:48;;;;:::i;:::-;1216:3;;1246:7;;1216:39;;-1:-1:-1;;;1216:39:27;;-1:-1:-1;;;;;1246:7:27;;;1216:39;;;2636:51:28;1216:3:27;;;:21;;2609:18:28;;1216:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1209:47;;;;:::i;:::-;1373:3;;1403:7;;1373:39;;-1:-1:-1;;;1373:39:27;;-1:-1:-1;;;;;1403:7:27;;;1373:39;;;2636:51:28;1373:3:27;;;:21;;2609:18:28;;1373:39:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1372:40;1365:48;;;;:::i;789:312:2:-;859:1;854:6;;:1;:6;;;850:245;;881:41;;;;;18246:2:28;18228:21;;;18285:2;18265:18;;;18258:30;18324:34;18319:2;18304:18;;18297:62;-1:-1:-1;;;18390:2:28;18375:18;;18368:32;18432:3;18417:19;;18044:398;881:41:2;;;;;;;;941:52;972:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:2;;;;941:52;;;;;;:::i;:::-;;;;;;;;1012;1043:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:2;;;;1012:52;;;;;;:::i;:::-;;;;;;;;1078:6;:4;:6::i;5202:262:0:-;5264:1;5259;:6;5255:203;;5286:41;;;;;19802:2:28;19784:21;;;19841:2;19821:18;;;19814:30;19880:34;19875:2;19860:18;;19853:62;-1:-1:-1;;;19946:2:28;19931:18;;19924:32;19988:3;19973:19;;19600:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:0;:1;-1:-1:-1;;;;;3678:6:0;;3674:212;;3705:44;;;;;20205:2:28;20187:21;;;20244:2;20224:18;;;20217:30;20283:34;20278:2;20263:18;;20256:62;-1:-1:-1;;;20349:2:28;20334:18;;20327:35;20394:3;20379:19;;20003:401;3705:44:0;;;;;;;;3768:34;3800:1;3768:34;;;;;;:::i;:::-;;;;;;;;3821;3853:1;3821:34;;;;;;:::i;2410:424::-;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;2445:359;;2645:67;;2482:11;;-1:-1:-1;;;;;;;;;;;1671:64:0;2579:43;;2645:67;;1671:64;;-1:-1:-1;;;2670:17:0;2705:4;;2645:67;;;:::i;:::-;;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;19453:117:4:-;19535:28;19540:5;19547:2;19551:4;19557:5;19535:4;:28::i;:::-;19453:117;;;:::o;17530:93::-;-1:-1:-1;;;;;;;;;;;17585:7:4;17593:22;17611:4;17593:15;:22;:::i;:::-;17585:31;;;;;;;;;;;;;1244:25:28;;1232:2;1217:18;;1098:177;17585:31:4;;;;;;;;;;;;;;;;;;;;1880:190:9;1963:14;1998:19;2005:1;2008:3;2013;1998:6;:19::i;:::-;1989:28;;2027:36;;;;;;;;;;;;;;-1:-1:-1;;;2027:36:9;;;2056:6;2027:12;:36::i;19576:825:4:-;19740:38;;;-1:-1:-1;;;;;2654:32:28;;;19740:38:4;;;;2636:51:28;;;;19740:38:4;;;;;;;;;;2609:18:28;;;;19740:38:4;;;;;;;-1:-1:-1;;;;;19740:38:4;-1:-1:-1;;;19740:38:4;;;19729:50;;19705:20;;19729:10;;;:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19702:77;;;19789:15;19818:7;19807:30;;;;;;;;;;;;:::i;:::-;19789:48;-1:-1:-1;19874:71:4;19940:4;19874:51;19922:2;19874:38;-1:-1:-1;;;19874:22:4;:8;19890:5;19874:15;:22::i;:::-;:26;;:38::i;:::-;:47;;:51::i;:::-;:65;;:71::i;:::-;19991:6;19987:408;;;20054:34;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20054:34:4;-1:-1:-1;;;20054:34:4;;;20043:46;;20016:23;;-1:-1:-1;;;;;20043:10:4;;;:46;;20054:34;20043:46;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20013:76;;;20103:14;20131:10;20120:33;;;;;;;;;;;;:::i;:::-;20103:50;;20178:7;20171:4;:14;20167:144;;;20216:14;20226:4;20216:7;:14;:::i;:::-;20205:26;;;;:::i;:::-;;;20167:144;;;20281:14;20288:7;20281:4;:14;:::i;:::-;20270:26;;;;:::i;:::-;;;20167:144;20324:60;20377:6;20324:38;-1:-1:-1;;;20324:22:4;:8;20340:5;20324:15;:22::i;:60::-;19999:396;;19661:740;;19576:825;;;;:::o;611:1263:9:-;695:14;736:3;729;:10;;721:85;;;;-1:-1:-1;;;721:85:9;;21369:2:28;721:85:9;;;21351:21:28;21408:2;21388:18;;;21381:30;21447:34;21427:18;;;21420:62;21518:32;21498:18;;;21491:60;21568:19;;721:85:9;;;;;;;;;1040:3;1035:1;:8;;:20;;;;;1052:3;1047:1;:8;;1035:20;1031:34;;;-1:-1:-1;1064:1:9;1057:8;;1031:34;1076:12;1091:9;1097:3;1091;:9;:::i;:::-;:13;;1103:1;1091:13;:::i;:::-;1076:28;;1299:1;1294;:6;;:18;;;;;1311:1;1304:4;:8;1294:18;1290:38;;;1321:7;1327:1;1321:3;:7;:::i;:::-;1314:14;;;;;1290:38;1347:15;1361:1;-1:-1:-1;;1347:15:9;:::i;:::-;1342:1;:20;;:46;;;;-1:-1:-1;1373:15:9;1387:1;-1:-1:-1;;1373:15:9;:::i;:::-;1366:4;:22;1342:46;1338:82;;;1404:15;1418:1;-1:-1:-1;;1404:15:9;:::i;:::-;1397:23;;:3;:23;:::i;1338:82::-;1524:3;1520:1;:7;1516:352;;;1543:12;1558:7;1562:3;1558:1;:7;:::i;:::-;1543:22;-1:-1:-1;1579:11:9;1593;1600:4;1543:22;1593:11;:::i;:::-;1579:25;;1622:3;1629:1;1622:8;1618:24;;1639:3;1632:10;;;;;;;1618:24;1677:1;1665:9;1671:3;1665;:9;:::i;:::-;:13;;;;:::i;:::-;1656:22;;1529:160;;1516:352;;;1703:3;1699:1;:7;1695:173;;;1722:12;1737:7;1743:1;1737:3;:7;:::i;:::-;1722:22;-1:-1:-1;1758:11:9;1772;1779:4;1722:22;1772:11;:::i;:::-;1758:25;;1801:3;1808:1;1801:8;1797:24;;1818:3;1811:10;;;;;;;1797:24;1844:9;1850:3;1844;:9;:::i;:::-;:13;;1856:1;1844:13;:::i;:::-;1835:22;;1708:160;;1695:173;711:1163;611:1263;;;;;:::o;6307:207::-;6383:11;297:42;-1:-1:-1;;;;;6399:36:9;6483:2;6487;6436:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6436:54:9;;;;;;;;;;;;;;-1:-1:-1;;;;;6436:54:9;-1:-1:-1;;;6436:54:9;;;6399:92;;;6436:54;6399:92;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7708:156:8;4581:12;;;:22;;-1:-1:-1;;;;;;4581:22:8;-1:-1:-1;;;;;4581:22:8;;;;;-1:-1:-1;4581:12:8;7821:36;7814:43;;7708:156;;;;;:::o;7870:143::-;4736:9;;;:16;;-1:-1:-1;;4736:16:8;;;;;;;;-1:-1:-1;4736:9:8;7976:30;4637:143;8175:152;5052:10;;;:47;;;;;;;8249:18;5052:47;;;;;;-1:-1:-1;;;;;5076:21:8;;5052:47;;;8310:4;8286:34;4948:179;8951:120;9031:33;9045:4;9059:3;9399:12;;;;9435:9;;;;9476:11;;;;9520:10;;;9497:33;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9399:12:8;;;;9435:9;;;;;;9385:11;;9497:33;;9520:10;;9497:33;;9520:10;9497:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9541:17;9578:4;9584:12;9592:3;9584:7;:12::i;:::-;9561:36;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;9561:36:8;;;;;;;;;-1:-1:-1;;;;;9612:15:8;;;;;;:10;;;9561:36;9612:15;;;;;;-1:-1:-1;;;;;;9612:21:8;;;;;;;;;9561:36;;-1:-1:-1;9612:21:8;;:15;;9644:34;;9661:3;;9666:11;;9644:34;;:::i;:::-;;;;-1:-1:-1;;9644:34:8;;;;;;;;;9634:45;;9644:34;9634:45;;;;9612:68;;;;;;;;;;-1:-1:-1;9612:68:8;;;;9607:110;;9696:10;9701:4;9696;:10::i;:::-;;9607:110;-1:-1:-1;;;;;9749:15:8;;9726:12;9749:15;;;;;;;;;;;-1:-1:-1;;;;;;9749:21:8;;;;;;;;;9781:34;;9749:21;;9726:12;;9781:34;;9798:3;;9803:11;;9781:34;;:::i;:::-;;;;;;;;;;;;;9771:45;;;;;;9749:68;;;;;;;;;;;;9741:77;;9726:92;;9829:12;9868:17;9889:3;-1:-1:-1;;;;;9889:14:8;9904:4;9889:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9865:44:8;-1:-1:-1;9930:38:8;;-1:-1:-1;9865:44:8;9951:16;9956:11;9951:2;:16;:::i;:::-;9930:14;:38::i;:::-;10003:18;;-1:-1:-1;;;10003:18:8;;9923:45;;-1:-1:-1;9988:12:8;;-1:-1:-1;;;;;;;;;;;;10003:7:8;;;:18;;10011:3;;10016:4;;10003:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9988:33;;10044:4;10036;:12;10032:218;;10064:175;;-1:-1:-1;;;10064:175:8;;;;;;;:::i;:::-;10259:24;;-1:-1:-1;;;10259:24:8;;-1:-1:-1;;;;;;;;;;;10259:8:8;;;:24;;10268:3;;10273:4;;10279:3;;10259:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;10300:12:8;;;10293:19;;-1:-1:-1;;;;;;10293:19:8;;;-1:-1:-1;10329:9:8;;;10322:16;;-1:-1:-1;;10322:16:8;;;10348:17;-1:-1:-1;10355:10:8;;10300:12;10348:17;:::i;:::-;10382:4;:11;;10375:18;;;9375:1025;;;;;;;;9305:1095;;:::o;11479:393::-;11538:12;11562:19;11594:1;:8;11605:2;11594:13;;;;:::i;:::-;11584:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11584:24:8;;11562:46;;11623:9;11618:224;11642:1;:8;11638:1;:12;11618:224;;;11671:9;11683:1;11685;11683:4;;;;;;;;:::i;:::-;;;;;;;11671:16;;11816:1;11810;11806:2;11802:10;11798:2;11794:19;11786:6;11782:32;11775:43;11757:75;11652:3;;;;;:::i;:::-;;;;11618:224;;;-1:-1:-1;11859:6:8;11479:393;-1:-1:-1;;11479:393:8:o;7587:115::-;7644:7;7670:25;7690:4;7670:19;:25::i;11118:304::-;11196:7;11215:11;11237;11262:2;11251:1;:8;:13;:29;;11272:1;:8;11251:29;;;11267:2;11251:29;11237:43;;11295:9;11290:106;11314:3;11310:1;:7;11290:106;;;11379:5;:1;11383;11379:5;:::i;:::-;11353:1;11355:10;11364:1;11355:6;:10;:::i;:::-;11353:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;11353:13:8;11345:40;;11338:47;;;;;11319:3;;;;:::i;:::-;;;;11290:106;;;-1:-1:-1;11412:3:8;;11118:304;-1:-1:-1;;;;11118:304:8:o;1264:3205::-;1354:12;;;;1390:9;;;;1431:11;;;;1475:10;;;1452:33;;;;;;;;;;;;;;;;;;;1321:7;;-1:-1:-1;;;;;1354:12:8;;1390:9;;;1431:11;1321:7;;1452:33;;1475:10;;1452:33;;;1475:10;1452:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;1536:15:8;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;1536:21:8;;;;;;;;;1568:34;;1452:33;;-1:-1:-1;1536:21:8;:15;;-1:-1:-1;1568:34:8;;-1:-1:-1;1452:33:8;;1590:11;;1568:34;;:::i;:::-;;;;-1:-1:-1;;1568:34:8;;;;;;;;;1558:45;;1568:34;1558:45;;;;1536:68;;;;;;;;;;-1:-1:-1;1536:68:8;;;;1532:174;;;-1:-1:-1;;;;;1627:15:8;;:10;:15;;;;;;;;;;;-1:-1:-1;;;;;;1627:21:8;;;;;;;;;1659:34;;1627:21;;:10;1659:34;;1676:3;;1681:11;;1659:34;;:::i;:::-;;;;;;;;;;;;;1649:45;;;;;;1627:68;;;;;;;;;;;;1620:75;;;;;;1264:3205;;;:::o;1532:174::-;1715:17;1752:4;1758:12;1766:3;1758:7;:12::i;:::-;1735:36;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1715:56;;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;1781:9:8;;:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1802:12;1841:17;1862:3;-1:-1:-1;;;;;1862:14:8;1877:4;1862:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1838:44:8;-1:-1:-1;1903:38:8;;-1:-1:-1;1838:44:8;1924:16;1929:11;1924:2;:16;:::i;:::-;1903:14;:38::i;:::-;1990:25;;-1:-1:-1;;;1990:25:8;;-1:-1:-1;;;;;2654:32:28;;1990:25:8;;;2636:51:28;1896:45:8;;-1:-1:-1;1963:22:8;;-1:-1:-1;;;;;;;;;;;;1990:11:8;;;2609:18:28;;1990:25:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1990:25:8;;;;;;;;;;;;:::i;:::-;1962:53;;;2029:5;:12;2045:1;2029:17;2025:2068;;2062:12;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;2077:7:8;;2085:3;2090:5;2096:1;2090:8;;;;;;;;:::i;:::-;;;;;;;2077:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2062:37;-1:-1:-1;2062:37:8;2113:106;;2160:44;2181:3;2194:5;2200:1;2194:8;;;;;;;;:::i;:::-;;;;;;;2186:17;;2160:44;;;;;;;:::i;:::-;;;;;;;;2113:106;2244:4;2236;:12;2232:238;;2268:187;;-1:-1:-1;;;2268:187:8;;;;;;;:::i;:::-;2488:86;2498:3;2503:4;2536:3;2541:11;2519:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2509:45;;;;;;2564:5;2570:1;2564:8;;;;;;;;:::i;:::-;;;;;;;2556:17;;2488:86;;;;;;;;;:::i;:::-;;;;;;;;2667:5;2673:1;2667:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;2588:15:8;;2659:17;2588:15;;;;;;;;;;-1:-1:-1;;;;;;2588:21:8;;;;;;;;;2620:34;;2667:8;;2588:21;;2620:34;;2637:3;;2642:11;;2620:34;;:::i;:::-;;;;-1:-1:-1;;2620:34:8;;;;;;;;;2610:45;;2620:34;2610:45;;;;2588:68;;;;;;;;;;;;-1:-1:-1;2588:68:8;;;:88;;;;-1:-1:-1;;;;;2690:15:8;;;;2761:4;2690:10;;;:15;;;;;-1:-1:-1;;;;;;2690:21:8;;;;;;;;;2722:34;;2761:4;;-1:-1:-1;2722:34:8;;2739:3;;2744:11;;2722:34;;:::i;:::-;;;;;;;-1:-1:-1;;2722:34:8;;;;;;2712:45;;2722:34;2712:45;;;;2690:68;;;;;;;;;;-1:-1:-1;2690:68:8;:75;;-1:-1:-1;;2690:75:8;;;;;;;;;;-1:-1:-1;2025:2068:8;;;2801:1;2786:5;:12;:16;2782:1311;;;2823:9;2818:1152;2842:5;:12;2838:1;:16;2818:1152;;;2879:12;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;2894:7:8;;2902:3;2907:5;2913:1;2907:8;;;;;;;;:::i;:::-;;;;;;;2894:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2879:37;-1:-1:-1;2879:37:8;2934:114;;2985:44;3006:3;3019:5;3025:1;3019:8;;;;;;;;:::i;:::-;;;;;;;3011:17;;2985:44;;;;;;;:::i;:::-;;;;;;;;2934:114;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3090:8:8;;3099:3;3104:5;3110:1;3104:8;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;3090:43:8;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3151:12;3181:17;3256:3;-1:-1:-1;;;;;3256:14:8;3271:4;3256:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3238:38:8;;-1:-1:-1;3238:38:8;-1:-1:-1;3305:38:8;3238;3326:16;3331:11;3326:2;:16;:::i;3305:38::-;3298:45;;3384:7;:37;;;;;-1:-1:-1;;;3395:4:8;:26;3384:37;3380:529;;;3519:86;3529:3;3534:4;3567:3;3572:11;3550:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3540:45;;;;;;3595:5;3601:1;3595:8;;;;;;;;:::i;:::-;;;;;;;3587:17;;3519:86;;;;;;;;;:::i;:::-;;;;;;;;3706:5;3712:1;3706:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;3627:15:8;;3698:17;3627:15;;;;;;;;;;-1:-1:-1;;;;;;3627:21:8;;;;;;;;;3659:34;;3706:8;;3627:21;;3659:34;;3676:3;;3681:11;;3659:34;;:::i;:::-;;;;;;;;;;;;;3649:45;;;;;;3627:68;;;;;;;;;;;:88;;;;3808:4;3737;:10;;:15;3748:3;-1:-1:-1;;;;;3737:15:8;-1:-1:-1;;;;;3737:15:8;;;;;;;;;;;;:21;3753:4;-1:-1:-1;;;;;3737:21:8;;-1:-1:-1;;;;;3737:21:8;;;;;;;;;;;;;:68;3786:3;3791:11;3769:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3759:45;;;;;;3737:68;;;;;;;;;;;;:75;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3834:8:8;;3843:3;3848:5;3854:1;3848:8;;;;;;;;:::i;:::-;;;;;;;3858:4;3834:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3885:5;;;;;3380:529;-1:-1:-1;;;;;;;;;;;580:37:8;;-1:-1:-1;;;;;3926:8:8;;3935:3;3940:5;3946:1;3940:8;;;;;;;;:::i;:::-;;;;;;;3950:4;3926:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2861:1109;;;2856:3;;;;;:::i;:::-;;;;2818:1152;;;;2782:1311;;;4000:82;;;-1:-1:-1;;;4000:82:8;;25339:2:28;4000:82:8;;;25321:21:28;25358:18;;;25351:30;;;;25417:34;25397:18;;;25390:62;25488:34;25468:18;;;25461:62;25540:19;;4000:82:8;25137:428:28;4000:82:8;-1:-1:-1;;;;;4124:15:8;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;4124:21:8;;;;;;;;;4156:34;;4124:21;;:15;4156:34;;4173:3;;4178:11;;4156:34;;:::i;:::-;;;;-1:-1:-1;;4156:34:8;;;;;;;;;4146:45;;4156:34;4146:45;;;;4124:68;;;;;;;;;;-1:-1:-1;4124:68:8;;;;4103:162;;;;-1:-1:-1;;;4103:162:8;;25772:2:28;4103:162:8;;;25754:21:28;25811:2;25791:18;;;25784:30;25850:34;25830:18;;;25823:62;-1:-1:-1;;;25901:18:28;;;25894:45;25956:19;;4103:162:8;25570:411:28;4103:162:8;4283:12;;;4276:19;;-1:-1:-1;;;;;;4276:19:8;;;4312:9;;;4305:16;;-1:-1:-1;;4305:16:8;;;4331:17;-1:-1:-1;4338:10:8;;4283:12;4331:17;:::i;:::-;4358:18;4365:11;;;4358:18;;;-1:-1:-1;;;;;4394:15:8;;;;;;;;;;;;-1:-1:-1;;;;;;4394:21:8;;;;;;;;;4426:34;;4394:21;;4358:18;4426:34;;4443:3;;4448:11;;4426:34;;:::i;:::-;;;;;;;;;;;;;4416:45;;;;;;4394:68;;;;;;;;;;;;4387:75;;;;;;;;;1264:3205;;;:::o;6950:393::-;7009:12;7033:19;7065:1;:8;7076:2;7065:13;;;;:::i;:::-;7055:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7055:24:8;;7033:46;;7094:9;7089:224;7113:1;:8;7109:1;:12;7089:224;;;7142:9;7154:1;7156;7154:4;;;;;;;;:::i;:::-;;;;;;;7142:16;;7287:1;7281;7277:2;7273:10;7269:2;7265:19;7257:6;7253:32;7246:43;7228:75;7123:3;;;;;:::i;:::-;;;;7089:224;;6640:304;6718:7;6737:11;6759;6784:2;6773:1;:8;:13;:29;;6794:1;:8;6773:29;;;6789:2;6773:29;6759:43;;6817:9;6812:106;6836:3;6832:1;:7;6812:106;;;6901:5;:1;6905;6901:5;:::i;:::-;6875:1;6877:10;6886:1;6877:6;:10;:::i;:::-;6875:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6875:13:8;6867:40;;6860:47;;;;;6841:3;;;;:::i;:::-;;;;6812:106;;-1:-1:-1;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;203:316:28:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:28;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:28;494:18;;;481:32;;203:316;-1:-1:-1;203:316:28:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;647:446;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:28;;-1:-1:-1;;647:446:28:o;1280:131::-;-1:-1:-1;;;;;1355:31:28;;1345:42;;1335:70;;1401:1;1398;1391:12;1416:383;1493:6;1501;1509;1562:2;1550:9;1541:7;1537:23;1533:32;1530:52;;;1578:1;1575;1568:12;1530:52;1614:9;1601:23;1591:33;;1674:2;1663:9;1659:18;1646:32;1687:31;1712:5;1687:31;:::i;:::-;1416:383;;1737:5;;-1:-1:-1;;;1789:2:28;1774:18;;;;1761:32;;1416:383::o;1804:180::-;1863:6;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;-1:-1:-1;1955:23:28;;1804:180;-1:-1:-1;1804:180:28:o;2181:304::-;-1:-1:-1;;;;;2411:15:28;;;2393:34;;2463:15;;2458:2;2443:18;;2436:43;2343:2;2328:18;;2181:304::o;2698:245::-;2765:6;2818:2;2806:9;2797:7;2793:23;2789:32;2786:52;;;2834:1;2831;2824:12;2786:52;2866:9;2860:16;2885:28;2907:5;2885:28;:::i;2948:127::-;3009:10;3004:3;3000:20;2997:1;2990:31;3040:4;3037:1;3030:15;3064:4;3061:1;3054:15;3080:253;3152:2;3146:9;3194:4;3182:17;;3229:18;3214:34;;3250:22;;;3211:62;3208:88;;;3276:18;;:::i;:::-;3312:2;3305:22;3080:253;:::o;3338:275::-;3409:2;3403:9;3474:2;3455:13;;-1:-1:-1;;3451:27:28;3439:40;;3509:18;3494:34;;3530:22;;;3491:62;3488:88;;;3556:18;;:::i;:::-;3592:2;3585:22;3338:275;;-1:-1:-1;3338:275:28:o;3618:191::-;3686:4;3719:18;3711:6;3708:30;3705:56;;;3741:18;;:::i;:::-;-1:-1:-1;3786:1:28;3782:14;3798:4;3778:25;;3618:191::o;3814:1368::-;3936:6;3967:2;4010;3998:9;3989:7;3985:23;3981:32;3978:52;;;4026:1;4023;4016:12;3978:52;4059:9;4053:16;4092:18;4084:6;4081:30;4078:50;;;4124:1;4121;4114:12;4078:50;4147:22;;4200:4;4192:13;;4188:27;-1:-1:-1;4178:55:28;;4229:1;4226;4219:12;4178:55;4258:2;4252:9;4281:68;4297:51;4345:2;4297:51;:::i;:::-;4281:68;:::i;:::-;4383:15;;;4445:4;4484:11;;;4476:20;;4472:29;;;4414:12;;;;4371:3;4513:19;;;4510:39;;;4545:1;4542;4535:12;4510:39;4569:11;;;;4589:563;4605:6;4600:3;4597:15;4589:563;;;4685:2;4679:3;4670:7;4666:17;4662:26;4659:116;;;4729:1;4758:2;4754;4747:14;4659:116;4801:22;;:::i;:::-;4857:3;4851:10;4874:33;4899:7;4874:33;:::i;:::-;4920:22;;4984:12;;;4978:19;4962:14;;;4955:43;5021:2;5065:12;;;5059:19;5043:14;;;5036:43;5092:18;;4622:12;;;;5130;;;;4589:563;;;-1:-1:-1;5171:5:28;3814:1368;-1:-1:-1;;;;;;;3814:1368:28:o;5187:184::-;5257:6;5310:2;5298:9;5289:7;5285:23;5281:32;5278:52;;;5326:1;5323;5316:12;5278:52;-1:-1:-1;5349:16:28;;5187:184;-1:-1:-1;5187:184:28:o;5376:402::-;-1:-1:-1;;;;;5661:15:28;;;5643:34;;5713:15;;;;5708:2;5693:18;;5686:43;5760:2;5745:18;;5738:34;;;;5593:2;5578:18;;5376:402::o;5783:127::-;5844:10;5839:3;5835:20;5832:1;5825:31;5875:4;5872:1;5865:15;5899:4;5896:1;5889:15;5915:127;5976:10;5971:3;5967:20;5964:1;5957:31;6007:4;6004:1;5997:15;6031:4;6028:1;6021:15;6047:127;6108:10;6103:3;6099:20;6096:1;6089:31;6139:4;6136:1;6129:15;6163:4;6160:1;6153:15;6179:125;6219:4;6247:1;6244;6241:8;6238:34;;;6252:18;;:::i;:::-;-1:-1:-1;6289:9:28;;6179:125::o;6309:422::-;6398:1;6441:5;6398:1;6455:270;6476:7;6466:8;6463:21;6455:270;;;6535:4;6531:1;6527:6;6523:17;6517:4;6514:27;6511:53;;;6544:18;;:::i;:::-;6594:7;6584:8;6580:22;6577:55;;;6614:16;;;;6577:55;6693:22;;;;6653:15;;;;6455:270;;;6459:3;6309:422;;;;;:::o;6736:806::-;6785:5;6815:8;6805:80;;-1:-1:-1;6856:1:28;6870:5;;6805:80;6904:4;6894:76;;-1:-1:-1;6941:1:28;6955:5;;6894:76;6986:4;7004:1;6999:59;;;;7072:1;7067:130;;;;6979:218;;6999:59;7029:1;7020:10;;7043:5;;;7067:130;7104:3;7094:8;7091:17;7088:43;;;7111:18;;:::i;:::-;-1:-1:-1;;7167:1:28;7153:16;;7182:5;;6979:218;;7281:2;7271:8;7268:16;7262:3;7256:4;7253:13;7249:36;7243:2;7233:8;7230:16;7225:2;7219:4;7216:12;7212:35;7209:77;7206:159;;;-1:-1:-1;7318:19:28;;;7350:5;;7206:159;7397:34;7422:8;7416:4;7397:34;:::i;:::-;7467:6;7463:1;7459:6;7455:19;7446:7;7443:32;7440:58;;;7478:18;;:::i;:::-;7516:20;;6736:806;-1:-1:-1;;;6736:806:28:o;7547:131::-;7607:5;7636:36;7663:8;7657:4;7636:36;:::i;7683:127::-;7744:10;7739:3;7735:20;7732:1;7725:31;7775:4;7772:1;7765:15;7799:4;7796:1;7789:15;7815:120;7855:1;7881;7871:35;;7886:18;;:::i;:::-;-1:-1:-1;7920:9:28;;7815:120::o;7940:168::-;7980:7;8046:1;8042;8038:6;8034:14;8031:1;8028:21;8023:1;8016:9;8009:17;8005:45;8002:71;;;8053:18;;:::i;:::-;-1:-1:-1;8093:9:28;;7940:168::o;8772:348::-;9002:2;8991:9;8984:21;8965:4;9022:49;9067:2;9056:9;9052:18;8685:2;8673:15;;-1:-1:-1;;;8713:4:28;8704:14;;8697:36;8758:2;8749:12;;8608:159;9022:49;9014:57;;9107:6;9102:2;9091:9;9087:18;9080:34;8772:348;;;;:::o;9289:::-;9519:2;9508:9;9501:21;9482:4;9539:49;9584:2;9573:9;9569:18;9202:2;9190:15;;-1:-1:-1;;;9230:4:28;9221:14;;9214:36;9275:2;9266:12;;9125:159;10141:251;10211:6;10264:2;10252:9;10243:7;10239:23;10235:32;10232:52;;;10280:1;10277;10270:12;10232:52;10312:9;10306:16;10331:31;10356:5;10331:31;:::i;12034:112::-;12066:1;12092;12082:35;;12097:18;;:::i;:::-;-1:-1:-1;12131:9:28;;12034:112::o;12151:128::-;12191:3;12222:1;12218:6;12215:1;12212:13;12209:39;;;12228:18;;:::i;:::-;-1:-1:-1;12264:9:28;;12151:128::o;12284:274::-;-1:-1:-1;;;;;12476:32:28;;;;12458:51;;12540:2;12525:18;;12518:34;12446:2;12431:18;;12284:274::o;12563:345::-;-1:-1:-1;;;;;12783:32:28;;;;12765:51;;12847:2;12832:18;;12825:34;;;;12890:2;12875:18;;12868:34;12753:2;12738:18;;12563:345::o;17126:258::-;17198:1;17208:113;17222:6;17219:1;17216:13;17208:113;;;17298:11;;;17292:18;17279:11;;;17272:39;17244:2;17237:10;17208:113;;;17339:6;17336:1;17333:13;17330:48;;;-1:-1:-1;;17374:1:28;17356:16;;17349:27;17126:258::o;17389:371::-;-1:-1:-1;;;;;;17574:33:28;;17562:46;;17631:13;;17544:3;;17653:61;17631:13;17703:1;17694:11;;17687:4;17675:17;;17653:61;:::i;:::-;17734:16;;;;17752:1;17730:24;;17389:371;-1:-1:-1;;;17389:371:28:o;17765:274::-;17894:3;17932:6;17926:13;17948:53;17994:6;17989:3;17982:4;17974:6;17970:17;17948:53;:::i;:::-;18017:16;;;;;17765:274;-1:-1:-1;;17765:274:28:o;18447:258::-;18489:3;18527:5;18521:12;18554:6;18549:3;18542:19;18570:63;18626:6;18619:4;18614:3;18610:14;18603:4;18596:5;18592:16;18570:63;:::i;:::-;18687:2;18666:15;-1:-1:-1;;18662:29:28;18653:39;;;;18694:4;18649:50;;18447:258;-1:-1:-1;;18447:258:28:o;18710:440::-;18960:2;18949:9;18942:21;18923:4;18986:49;19031:2;19020:9;19016:18;8685:2;8673:15;;-1:-1:-1;;;8713:4:28;8704:14;;8697:36;8758:2;8749:12;;8608:159;18986:49;19083:9;19075:6;19071:22;19066:2;19055:9;19051:18;19044:50;19111:33;19137:6;19129;19111:33;:::i;19155:440::-;19405:2;19394:9;19387:21;19368:4;19431:49;19476:2;19465:9;19461:18;9202:2;9190:15;;-1:-1:-1;;;9230:4:28;9221:14;;9214:36;9275:2;9266:12;;9125:159;20409:374;20639:2;20628:9;20621:21;20602:4;20659:49;20704:2;20693:9;20689:18;8685:2;8673:15;;-1:-1:-1;;;8713:4:28;8704:14;;8697:36;8758:2;8749:12;;8608:159;20659:49;-1:-1:-1;;;;;20744:32:28;;;;20739:2;20724:18;;;;20717:60;;;;-1:-1:-1;20651:57:28;20409:374::o;20788:::-;21018:2;21007:9;21000:21;20981:4;21038:49;21083:2;21072:9;21068:18;9202:2;9190:15;;-1:-1:-1;;;9230:4:28;9221:14;;9214:36;9275:2;9266:12;;9125:159;21598:291;21775:2;21764:9;21757:21;21738:4;21795:45;21836:2;21825:9;21821:18;21813:6;21795:45;:::i;:::-;21787:53;;21876:6;21871:2;21860:9;21856:18;21849:34;21598:291;;;;;:::o;21894:610::-;22140:13;;22083:3;;22114;;22193:4;22220:15;;;22083:3;22263:175;22277:6;22274:1;22271:13;22263:175;;;22340:13;;22326:28;;22376:14;;;;22413:15;;;;22299:1;22292:9;22263:175;;;-1:-1:-1;;22447:21:28;;;-1:-1:-1;22484:14:28;;;;;-1:-1:-1;;;21894:610:28:o;22698:556::-;22900:2;22882:21;;;22939:3;22919:18;;;22912:31;22979:34;22974:2;22959:18;;22952:62;23050:34;23045:2;23030:18;;23023:62;23122:34;23116:3;23101:19;;23094:63;-1:-1:-1;;;23188:3:28;23173:19;;23166:46;23244:3;23229:19;;22698:556::o;23259:135::-;23298:3;23319:17;;;23316:43;;23339:18;;:::i;:::-;-1:-1:-1;23386:1:28;23375:13;;23259:135::o;23399:667::-;23464:5;23517:3;23510:4;23502:6;23498:17;23494:27;23484:55;;23535:1;23532;23525:12;23484:55;23564:6;23558:13;23590:4;23614:68;23630:51;23678:2;23630:51;:::i;23614:68::-;23716:15;;;23802:1;23798:10;;;;23786:23;;23782:32;;;23747:12;;;;23826:15;;;23823:35;;;23854:1;23851;23844:12;23823:35;23890:2;23882:6;23878:15;23902:135;23918:6;23913:3;23910:15;23902:135;;;23984:10;;23972:23;;24015:12;;;;23935;;23902:135;;;-1:-1:-1;24055:5:28;23399:667;-1:-1:-1;;;;;;23399:667:28:o;24071:614::-;24200:6;24208;24261:2;24249:9;24240:7;24236:23;24232:32;24229:52;;;24277:1;24274;24267:12;24229:52;24310:9;24304:16;24339:18;24380:2;24372:6;24369:14;24366:34;;;24396:1;24393;24386:12;24366:34;24419:72;24483:7;24474:6;24463:9;24459:22;24419:72;:::i;:::-;24409:82;;24537:2;24526:9;24522:18;24516:25;24500:41;;24566:2;24556:8;24553:16;24550:36;;;24582:1;24579;24572:12;24550:36;;24605:74;24671:7;24660:8;24649:9;24645:24;24605:74;:::i;:::-;24595:84;;;24071:614;;;;;:::o;24690:442::-;-1:-1:-1;;;;;24937:32:28;;;;24919:51;;-1:-1:-1;;;;;;25006:33:28;;;;25001:2;24986:18;;24979:61;25071:2;25056:18;;25049:34;25114:2;25099:18;;25092:34;24906:3;24891:19;;24690:442::o", + "object": "0x60806040523480156200001157600080fd5b50600436106200023d5760003560e01c80638a8fa9b2116200013d578063c060c5f311620000bb578063c947e25d1162000086578063c947e25d14620003fb578063e70dd6cf1462000405578063eea96210146200040e578063f4ceccba1462000418578063fa7626d4146200042257600080fd5b8063c060c5f314620003ba578063c375033d14620003d1578063c5ba73ed14620003e8578063c7283c7814620003f157600080fd5b8063a641e8dc1162000108578063a641e8dc1462000377578063b1857efe1462000381578063b357ca55146200038b578063b967b5a71462000395578063ba414fa6146200039f57600080fd5b80638a8fa9b214620003445780638c38922f146200034e5780638c85288114620003575780639f71f14a146200036e57600080fd5b806356742ce111620001cb57806365dfbcb3116200019657806365dfbcb314620002ea57806369e58f0d14620002f45780636c676a6014620002fe5780637a8fe3c014620003245780637ed9db59146200032d57600080fd5b806356742ce114620002c25780635a17a66b14620002cc5780635f18f11614620002d657806363cbd9c114620002e057600080fd5b806330f7c5c3116200020c57806330f7c5c31462000282578063344b147814620002995780633493f4ca14620002b057806338505fb014620002b957600080fd5b80630a9254e4146200024257806312223997146200024e578063174a5be414620002585780632ef9ccdf1462000278575b600080fd5b6200024c62000430565b005b6200024c620004c2565b62000261600181565b60405160ff90911681526020015b60405180910390f35b6200024c62000911565b6200024c6200029336600462007e5d565b62000c17565b6200024c620002aa36600462007e5d565b62000d8d565b62000261600b81565b62000261600281565b6200024c62000e9d565b6200024c62000fc7565b6200024c620011a0565b6200024c62001385565b6200024c62001e3a565b6200024c62002280565b620003156200030f36600462007e99565b620027d4565b6040519081526020016200026f565b62000261600c81565b6200024c6200033e36600462007ef3565b62002832565b6200024c620029eb565b62000261600a81565b6200024c6200036836600462007f2e565b62003019565b62000261600481565b6200024c62003886565b6200024c62003df3565b6200024c62004042565b6200024c62004735565b620003a96200481b565b60405190151581526020016200026f565b62000315620003cb36600462007e5d565b6200494c565b6200024c620003e236600462007f2e565b62004967565b62000261600381565b6200024c6200512f565b6200024c62005446565b62000261600081565b6200024c62005cb7565b6200024c62005f10565b600054620003a99060ff1681565b6200043a62004735565b6200044462005cb7565b60025460405173853d955acef822db058eb8505911ed77f175b99e916001600160a01b031690620004759062007e0c565b6200048292919062007f48565b604051809103906000f0801580156200049f573d6000803e3d6000fd5b50601880546001600160a01b0319166001600160a01b0392909216919091179055565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000545929190911690636f7bc9be906024015b602060405180830381865afa15801562000517573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200053d919062007f62565b600062006123565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200058f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620005b991908101906200801f565b9050620005c981516000620062ac565b6018546040805163022b1d8960e21b8152905162000644926001600160a01b0316916308ac76249160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063c9190620080fa565b6000620062ac565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200068b9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620006ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006d1919062007f62565b620006e057620006e062008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000763929190911690636f7bc9be906024015b602060405180830381865afa15801562000735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200075b919062007f62565b600162006123565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa158015620007b7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620007e191908101906200801f565b9050620007f181516001620062ac565b62000829816000815181106200080b576200080b6200814e565b6020908102919091010151516001546001600160a01b03166200636f565b6200085e816000815181106200084357620008436200814e565b602002602001015160200151678ac7230489e80000620062ac565b6200088c816000815181106200087857620008786200814e565b6020026020010151604001516000620062ac565b6018546040805163022b1d8960e21b815290516200090e926001600160a01b0316916308ac76249160048083019260209291908290030181865afa158015620008d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008ff9190620080fa565b678ac7230489e80000620062ac565b50565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620009589390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562000978573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099e919062007f62565b620009ad57620009ad62008138565b6018546001546040516337bde4df60e11b81526001600160a01b039182166004820152620009e9929190911690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa15801562000a33573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000a5d91908101906200801f565b905062000a6d81516001620062ac565b62000a87816000815181106200080b576200080b6200814e565b62000aa1816000815181106200084357620008436200814e565b62000abb816000815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362000af8939082169291169060040162007f48565b6020604051808303816000875af115801562000b18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b3e919062007f62565b62000b4d5762000b4d62008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262000b89929190911690636f7bc9be90602401620004f9565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562000bdd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c0791908101906200801f565b90506200090e81516000620062ac565b600082841162000c335762000c2d84846200817a565b62000c3f565b62000c3f83856200817a565b90508060000362000c505750505050565b6000841562000c60578462000c62565b835b9050600062000c7384600a6200828d565b62000c8b906b033b2e3c9fd0803ce8000000620082b1565b8262000ca46b033b2e3c9fd0803ce800000086620082c8565b62000cb09190620082b1565b1090508062000d8557604080518181526034818301527f4572726f723a20617070726f782061203d3d2062206e6f742073617469736669606082015273032b2161030b1b1bab930b1bc903234b3b4ba39960651b60808201526020810186905290516000805160206200a6e58339815191529181900360a00190a16000805160206200a6e58339815191528660405162000d4b9190620082e2565b60405180910390a16000805160206200a6e58339815191528560405162000d7391906200831b565b60405180910390a162000d8562006469565b505050505050565b600082841162000da95762000da384846200817a565b62000db5565b62000db583856200817a565b9050818111158062000e9657604080518181526038818301527f4572726f723a20617070726f782061203d3d2062206e6f74207361746973666960608201527f65642c20616363757261637920646966666572656e636520000000000000000060808201526020810185905290516000805160206200a6e58339815191529181900360a00190a16000805160206200a6e58339815191528560405162000e5c9190620082e2565b60405180910390a16000805160206200a6e58339815191528460405162000e8491906200831b565b60405180910390a162000e9662006469565b5050505050565b601854604080516385d4cad360e01b8152905162000f2b926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562000eea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f10919062008346565b73853d955acef822db058eb8505911ed77f175b99e6200636f565b6018546040805163f02c6d8f60e01b8152905162000f78926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200100f93908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af11580156200102f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001055919062007f62565b62001064576200106462008138565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152620010b9929190911690630bca8bcd906024015b602060405180830381865afa15801562000616573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200112e919062007f62565b50601854600154604051630bca8bcd60e01b81526001600160a01b0391821660048201526200116b929190911690630bca8bcd906024016200109b565b601854604051630bca8bcd60e01b81526000600482015262000fc5916001600160a01b031690630bca8bcd906024016200109b565b6018546040805163f02c6d8f60e01b81529051620011ed926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa15801562000616573d6000803e3d6000fd5b60185460408051633fc3ddeb60e11b815290516200123a926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000517573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562001289573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620012af919062007f62565b620012be57620012be62008138565b6018546040805163f02c6d8f60e01b8152905162001338926001600160a01b03169163f02c6d8f9160048083019260209291908290030181865afa1580156200130b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013319190620080fa565b42620062ac565b60185460408051633fc3ddeb60e11b8152905162000fc5926001600160a01b031691637f87bbd69160048083019260209291908290030181865afa15801562000735573d6000803e3d6000fd5b601854604080516385d4cad360e01b8152905169d3c21bcecceda1000000926200141a926001600160a01b03909116916385d4cad3916004808201926020929091908290030181865afa158015620013e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001407919062008346565b6018546001600160a01b0316836200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b1580156200146f57600080fd5b505af115801562001484573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc9450620014c8939283169290911690869060040162008114565b6020604051808303816000875af1158015620014e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200150e919062007f62565b6200151d576200151d62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af11580156200156c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001592919062007f62565b620015a157620015a162008138565b601854604080516385d4cad360e01b8152905162001646926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001614919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024016200109b565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001695573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016bb919062007f62565b620016ca57620016ca62008138565b601854604080516385d4cad360e01b81529051620017ce926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001717573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200173d919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001787573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017ad9190620080fa565b6064620017bc84600c620082c8565b620017c89190620082b1565b620062ac565b620017dc6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200182b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001851919062007f62565b62001860576200186062008138565b601854604080516385d4cad360e01b8152905162001952926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620018ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018d3919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200191d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019439190620080fa565b6064620017bc846014620082c8565b620019606224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620019af573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620019d5919062007f62565b620019e457620019e462008138565b601854604080516385d4cad360e01b8152905162001ad6926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001a31573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a57919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001aa1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ac79190620080fa565b6064620017bc84601c620082c8565b62001ae4626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001b33573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b59919062007f62565b62001b685762001b6862008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001bb5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bdb919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562001c25573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c4b9190620080fa565b6064620017bc846034620082c8565b62001c6862dd7c0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562001cb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cdd919062007f62565b62001cec5762001cec62008138565b601854604080516385d4cad360e01b8152905162001dd7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562001d39573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d5f919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562001daa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001dd09190620080fa565b82620062ac565b6000805160206200a6c583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001e2557600080fd5b505af115801562000e96573d6000803e3d6000fd5b6003546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001e869291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001ea6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ecc919062007f62565b1562001edc5762001edc62008138565b6001546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001f289291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001f48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f6e919062007f62565b1562001f7e5762001f7e62008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262001fca9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562001fea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002010919062007f62565b1562002020576200202062008138565b600254601854604080516385d4cad360e01b815290516001600160a01b03938416936305e31e3693169182916385d4cad3916004808201926020929091908290030181865afa15801562002078573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200209e919062008346565b6040518363ffffffff1660e01b8152600401620020bd92919062007f48565b6020604051808303816000875af1158015620020dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002103919062007f62565b1562002113576200211362008138565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200214c9291169060009060040162007f48565b6020604051808303816000875af11580156200216c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002192919062007f62565b15620021a257620021a262008138565b601854620021df9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082c8565b6200656d565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e36926200222b9291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af11580156200224b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002271919062007f62565b62000fc55762000fc562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620022c79390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620022e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200230d919062007f62565b6200231c576200231c62008138565b60035460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362002359939082169291169060040162007f48565b6020604051808303816000875af115801562002379573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200239f919062007f62565b15620023af57620023af62008138565b60015460185460405163342e503d60e21b81526001600160a01b039283169263d0b940f492620023e792911690849060040162007f48565b6020604051808303816000875af115801562002407573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200242d919062007f62565b156200243d576200243d62008138565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f4936200247a939082169291169060040162007f48565b6020604051808303816000875af11580156200249a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024c0919062007f62565b620024cf57620024cf62008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b1580156200252457600080fd5b505af115801562002539573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f72000000000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b158015620025d957600080fd5b505af1158015620025ee573d6000803e3d6000fd5b505060185460035460405163084e292f60e31b81526001600160a01b0391821660048201529116925063427149789150602401600060405180830381600087803b1580156200263c57600080fd5b505af115801562002651573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f74206265206164647265737328302900000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b158015620026f157600080fd5b505af115801562002706573d6000803e3d6000fd5b505060185460405163084e292f60e31b8152600060048201526001600160a01b039091169250634271497891506024015b600060405180830381600087803b1580156200275257600080fd5b505af115801562002767573d6000803e3d6000fd5b505050506000805160206200a6c583398151915260001c6001600160a01b03166390c5013b6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620027b957600080fd5b505af1158015620027ce573d6000803e3d6000fd5b50505050565b600084158015620027e3575081155b15620027f2575060006200282a565b838303620028025750816200282a565b836200280f81856200817a565b6200281b908762008366565b6200282791906200837d565b90505b949350505050565b6000838152600460208190526040808320805460019091015491516370a0823160e01b81526001600160a01b0387811694820194909452921692909183906370a0823190602401602060405180830381865afa15801562002897573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028bd9190620080fa565b6000546040519192506201000090046001600160a01b0316906370ca10bb908590620028f0908990879060200162008393565b6040516020818303038152906040528051906020012087856200291491906200837d565b6040516001600160e01b031960e086901b1681526200293993929190600401620083ac565b600060405180830381600087803b1580156200295457600080fd5b505af115801562002969573d6000803e3d6000fd5b50506040516370a0823160e01b81526001600160a01b03888116600483015262000d859350861691506370a0823190602401602060405180830381865afa158015620029b9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029df9190620080fa565b620017c886846200837d565b601854604080516385d4cad360e01b8152905162002a7c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a5e919062008346565b6018546001600160a01b03166a0422ca8b0a00a4250000006200656d565b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b15801562002ad157600080fd5b505af115801562002ae6573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f7200000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562002b8657600080fd5b505af115801562002b9b573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002bf057600080fd5b505af115801562002c05573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062002c5393928316929091169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562002c73573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c99919062007f62565b62002ca85762002ca862008138565b60405163f28dceb360e01b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b60648201526000805160206200a6a58339815191529063f28dceb390608401600060405180830381600087803b15801562002d3257600080fd5b505af115801562002d47573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002d9c57600080fd5b505af115801562002db1573d6000803e3d6000fd5b5050600254601854604051636de416d560e11b81526001600160a01b0391821660048201529116925063dbc82daa91506024016020604051808303816000875af115801562002e04573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e2a919062007f62565b62002e395762002e3962008138565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002e8a57600080fd5b505af115801562002e9f573d6000803e3d6000fd5b5050505062002eb26301dfe20062006581565b601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562002f0357600080fd5b505af115801562002f18573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b60648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562002faf57600080fd5b505af115801562002fc4573d6000803e3d6000fd5b50505050601860009054906101000a90046001600160a01b03166001600160a01b0316634e71d92d6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200275257600080fd5b6200303b8169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062003095601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620013e1573d6000803e3d6000fd5b6003546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b158015620030ea57600080fd5b505af1158015620030ff573d6000803e3d6000fd5b5050600254601854600354604051631b13e53760e21b81526001600160a01b039384169550636c4f94dc945062003143939283169290911690869060040162008114565b6020604051808303816000875af115801562003163573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003189919062007f62565b62003198576200319862008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620031e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200320d919062007f62565b6200321c576200321c62008138565b601854604080516385d4cad360e01b8152905162003269926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620015ee573d6000803e3d6000fd5b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620032b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032de919062007f62565b620032ed57620032ed62008138565b601854604080516385d4cad360e01b81529051620033fa926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003360919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620033aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033d09190620080fa565b6064620033df84600c620082c8565b620033eb9190620082b1565b670de0b6b3a764000062000d8d565b620034086224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562003457573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200347d919062007f62565b6200348c576200348c62008138565b601854604080516385d4cad360e01b815290516200357e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620034d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034ff919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003549573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200356f9190620080fa565b6064620033df846014620082c8565b6200358c6224ea0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620035db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003601919062007f62565b62003610576200361062008138565b601854604080516385d4cad360e01b8152905162003702926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200365d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003683919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620036cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620036f39190620080fa565b6064620033df84601c620082c8565b62003710626ebe0062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af11580156200375f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003785919062007f62565b62003794576200379462008138565b601854604080516385d4cad360e01b8152905162001c5a926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620037e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003807919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562003851573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620038779190620080fa565b6064620033df846034620082c8565b600354601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620038cd9390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620038ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003913919062007f62565b1562003923576200392362008138565b600154601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262003965929116908490678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003985573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620039ab919062007f62565b15620039bb57620039bb62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362003a029390821692911690678ac7230489e800009060040162008114565b6020604051808303816000875af115801562003a22573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003a48919062007f62565b62003a575762003a5762008138565b6002546040516303223eab60e11b81526001600160a01b0390911660048201526000805160206200a6a5833981519152906306447d5690602401600060405180830381600087803b15801562003aac57600080fd5b505af115801562003ac1573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b60648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562003b5857600080fd5b505af115801562003b6d573d6000803e3d6000fd5b505060185460015460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062003bb29290911690678ac7230489e800009060040162008393565b600060405180830381600087803b15801562003bcd57600080fd5b505af115801562003be2573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f742062652061646472657373283029000000000000000060648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562003c8257600080fd5b505af115801562003c97573d6000803e3d6000fd5b505060185460405163ec20b45760e01b81526001600160a01b03909116925063ec20b457915062003cd890600090678ac7230489e800009060040162008393565b600060405180830381600087803b15801562003cf357600080fd5b505af115801562003d08573d6000803e3d6000fd5b505060405163f28dceb360e01b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b60648201526000805160206200a6a5833981519152925063f28dceb39150608401600060405180830381600087803b15801562003da057600080fd5b505af115801562003db5573d6000803e3d6000fd5b505060185460035460405163ec20b45760e01b81526001600160a01b03928316945063ec20b457935062002737929091169060009060040162008393565b60185462003e2a9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906001600160a01b0316620021d9620f42406064620082c8565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ec39073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024015b602060405180830381865afa15801562003e8d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003eb39190620080fa565b620017c8620f42406064620082c8565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262003f0d9073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546018546040516302f18f1b60e11b81526001600160a01b03928316926305e31e369262003f599291169073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489060040162007f48565b6020604051808303816000875af115801562003f79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f9f919062007f62565b62003fae5762003fae62008138565b6018546040516370a0823160e01b81526001600160a01b03909116600482015262003ff89073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a08231906024016200109b565b6002546040516370a0823160e01b81526001600160a01b03909116600482015262000fc59073a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48906370a082319060240162003e6f565b6000604051620040529062007e1a565b604051809103906000f0801580156200406f573d6000803e3d6000fd5b50600254601854600154604051631b13e53760e21b81529394506001600160a01b0392831693636c4f94dc93620040b8938116921690678ac7230489e800009060040162008114565b6020604051808303816000875af1158015620040d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620040fe919062007f62565b6200410d576200410d62008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc936200415593908216929116906801158e460913d000009060040162008114565b6020604051808303816000875af115801562004175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200419b919062007f62565b620041aa57620041aa62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc92620041ed9291169085906801a055690d9db800009060040162008114565b6020604051808303816000875af11580156200420d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004233919062007f62565b62004242576200424262008138565b6018546001546040516337bde4df60e11b81526001600160a01b0391821660048201526200427e929190911690636f7bc9be9060240162000717565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620042ba929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b038381166004830152620042f0921690636f7bc9be9060240162000717565b60185460408051632856c13d60e11b815290516000926001600160a01b0316916350ad827a91600480830192869291908290030181865afa1580156200433a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200436491908101906200801f565b90506200437481516003620062ac565b6200438e816000815181106200080b576200080b6200814e565b620043a8816000815181106200084357620008436200814e565b620043c2816000815181106200087857620008786200814e565b620043fa81600181518110620043dc57620043dc6200814e565b6020908102919091010151516003546001600160a01b03166200636f565b62004430816001815181106200441457620044146200814e565b6020026020010151602001516801158e460913d00000620062ac565b6200444a816001815181106200087857620008786200814e565b62004477816002815181106200446457620044646200814e565b602002602001015160000151836200636f565b620044ad816002815181106200449157620044916200814e565b6020026020010151602001516801a055690d9db80000620062ac565b620044c7816002815181106200087857620008786200814e565b60025460185460015460405163342e503d60e21b81526001600160a01b039384169363d0b940f49362004504939082169291169060040162007f48565b6020604051808303816000875af115801562004524573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200454a919062007f62565b62004559576200455962008138565b6018546001546040516337bde4df60e11b81526001600160a01b03918216600482015262004595929190911690636f7bc9be90602401620004f9565b6018546003546040516337bde4df60e11b81526001600160a01b039182166004820152620045d1929190911690636f7bc9be9060240162000717565b6018546040516337bde4df60e11b81526001600160a01b03848116600483015262004607921690636f7bc9be9060240162000717565b601860009054906101000a90046001600160a01b03166001600160a01b03166350ad827a6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200465b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200468591908101906200801f565b90506200469581516002620062ac565b620046af816000815181106200446457620044646200814e565b620046c9816000815181106200449157620044916200814e565b620046e3816000815181106200087857620008786200814e565b620046fd81600181518110620043dc57620043dc6200814e565b62004717816001815181106200441457620044146200814e565b62004731816001815181106200087857620008786200814e565b5050565b604051620047439062007e1a565b604051809103906000f08015801562004760573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b03929092169190911790556040516200478f9062007e1a565b604051809103906000f080158015620047ac573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216919091179055604051620047db9062007e1a565b604051809103906000f080158015620047f8573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055565b60008054610100900460ff16156200483c5750600054610100900460ff1690565b60006000805160206200a6a58339815191523b1562004947576040516000906000805160206200a6a5833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490620048a99083906519985a5b195960d21b9060200162008393565b60408051601f1981840301815290829052620048c99291602001620083f3565b60408051601f1981840301815290829052620048e59162008426565b6000604051808303816000865af19150503d806000811462004924576040519150601f19603f3d011682016040523d82523d6000602084013e62004929565b606091505b509150508080602001905181019062004943919062007f62565b9150505b919050565b60006200495d8484846000620027d4565b90505b9392505050565b620049898169152d02c7e14af68000006a52b7d2dcc80cd2e4000000620065dc565b905062004a22601860009054906101000a90046001600160a01b03166001600160a01b03166385d4cad36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620049e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a09919062008346565b6018546001600160a01b0316620021d9846003620082c8565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562004a71573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004a97919062007f62565b62004aa65762004aa662008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004ae59390821692911690869060040162008114565b6020604051808303816000875af115801562004b05573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004b2b919062007f62565b62004b3a5762004b3a62008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362004b799390821692911690869060040162008114565b6020604051808303816000875af115801562004b99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004bbf919062007f62565b62004bce5762004bce62008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc9262004c08929116908490869060040162008114565b6020604051808303816000875af115801562004c28573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004c4e919062007f62565b62004c5d5762004c5d62008138565b62004c6b6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004cba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004ce0919062007f62565b62004cef5762004cef62008138565b601854604080516385d4cad360e01b8152905162004d3c926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa1580156200333a573d6000803e3d6000fd5b62004d4a62cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004d99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004dbf919062007f62565b62004dce5762004dce62008138565b601854604080516385d4cad360e01b8152905162004ec0926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004e1b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004e41919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801562004e8b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004eb19190620080fa565b6064620033df84603c620082c8565b62004ece62b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562004f1d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004f43919062007f62565b62004f525762004f5262008138565b601854604080516385d4cad360e01b8152905162004ff7926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562004f9f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004fc5919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b620050066301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005055573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200507b919062007f62565b6200508a576200508a62008138565b601854604080516385d4cad360e01b815290516200090e926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620050d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620050fd919062008346565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162001d8c565b600254601854600354604051631b13e53760e21b815269d3c21bcecceda1000000936001600160a01b0390811693636c4f94dc936200517993918316921690869060040162008114565b6020604051808303816000875af115801562005199573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620051bf919062007f62565b620051ce57620051ce62008138565b6018546003546040516388a772ef60e01b81526001600160a01b0391821660048201526200520a9291909116906388a772ef9060240162001d8c565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005259573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200527f919062007f62565b6200528e576200528e62008138565b6200529c626ebe0062006581565b60006064620052ad836008620082c8565b620052b99190620082b1565b620052c6906003620082c8565b6064620052d584600c620082c8565b620052e19190620082b1565b620052ed91906200837d565b601854600354604051630bca8bcd60e01b81526001600160a01b0391821660048201529293506200532a92911690630bca8bcd9060240162001d8c565b62005339630127500062006581565b606462005348836008620082c8565b620053549190620082b1565b6200536190600b620082c8565b60646200537084600c620082c8565b6200537c9190620082b1565b6200538891906200837d565b601854600354604051630bca8bcd60e01b81526001600160a01b039182166004820152929350620053c592911690630bca8bcd9060240162001d8c565b601854600354604051630bca8bcd60e01b81526001600160a01b03918216600482015262004731929190911690630bca8bcd90602401602060405180830381865afa15801562005419573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200543f9190620080fa565b83620062ac565b601854604080516385d4cad360e01b8152905162005493926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562002a38573d6000803e3d6000fd5b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620054e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005508919062007f62565b62005517576200551762008138565b600254601854600354604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc9362005560939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af115801562005580573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620055a6919062007f62565b620055b557620055b562008138565b600254601854600154604051631b13e53760e21b81526001600160a01b0393841693636c4f94dc93620055fe939082169291169069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af11580156200561e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005644919062007f62565b62005653576200565362008138565b600254601854604051631b13e53760e21b81526001600160a01b0392831692636c4f94dc926200569792911690849069d3c21bcecceda10000009060040162008114565b6020604051808303816000875af1158015620056b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620056dd919062007f62565b620056ec57620056ec62008138565b620056fa6212750062006581565b600354601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005749573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200576f919062007f62565b6200577e576200577e62008138565b601854604080516385d4cad360e01b8152905162005872926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa158015620057cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620057f1919062008346565b6003546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156200583b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058619190620080fa565b691969368974c05b000000620062ac565b6200588062cb070062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af1158015620058cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620058f5919062007f62565b62005904576200590462008138565b601854604080516385d4cad360e01b81529051620059f8926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005951573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005977919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015620059c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620059e79190620080fa565b697f0e10af47c1c7000000620062ac565b62005a0662b8920062006581565b600154601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005a55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005a7b919062007f62565b62005a8a5762005a8a62008138565b601854604080516385d4cad360e01b8152905162005b7f926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005ad7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005afd919062008346565b6001546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a08231906024015b602060405180830381865afa15801562005b48573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005b6e9190620080fa565b69d3c21bcecceda1000000620062ac565b62005b8e6301dfe20062006581565b600254601854604051631c62282160e21b81526001600160a01b039182166004820152911690637188a084906024016020604051808303816000875af115801562005bdd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c03919062007f62565b62005c125762005c1262008138565b601854604080516385d4cad360e01b8152905162000fc5926001600160a01b0316916385d4cad39160048083019260209291908290030181865afa15801562005c5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005c85919062008346565b6002546040516370a0823160e01b81526001600160a01b0391821660048201529116906370a082319060240162005b2a565b60046020527ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603c80546001600160a01b031990811673a0b86991c6218b36c1d19d4a2e9eb0ce3606eb481790915560097ffc222f0ac3e8ec5d72a1ee6fc08a2effbdf59ce4c70b15039ef2450cdacd603d557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13e80548216736b175474e89094c44da98b954eedeac495271d0f17905560027f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf13f557f64cadafca984d1079a7dc29de3a8c5d7d075830d7d40b27b92792eb7826cf1408054821673aed0c38402a5d19df6e4c03f4e2dced6e29c1ee91790557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d268054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217905560037f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d27557f6c6dba33c46363b8b7eea88860ee3afc44cd7a2c4f9238b927d748916e372d2880548216735f4ec3df9cbd43714fe2740f5e3616155c5b8419179055635742544360e01b60009081527f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691d980548316732260fac5e5542a773aa44fbcfedf7c193bc2c5991790557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691da557f54531036fe3144f81e7b9854ba62be379be395f33d2a38ae250eca97301691db805490911673f4030086522a5beea4988f8ca5b36dbc97bee88c179055565b600354601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005f5f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062005f85919062007f62565b1562005f955762005f9562008138565b600154601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562005fe4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200600a919062007f62565b156200601a576200601a62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af115801562006069573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200608f919062007f62565b6200609e576200609e62008138565b600254601854604051636de416d560e11b81526001600160a01b03918216600482015291169063dbc82daa906024016020604051808303816000875af1158015620060ed573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006113919062007f62565b1562000fc55762000fc562008138565b8015158215151462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200619a9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6040820152616c5d60f01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381620061ed576040518060400160405280600581526020016466616c736560d81b8152506200620b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200621a919062008472565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583826200626d576040518060400160405280600581526020016466616c736560d81b8152506200628b565b604051806040016040528060048152602001637472756560e01b8152505b6040516200629a9190620084b1565b60405180910390a16200473162006469565b80821462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516200631f9060208082526022908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e604082015261745d60f01b606082015260800190565b60405180910390a16000805160206200a6e583398151915281604051620063479190620082e2565b60405180910390a16000805160206200a6e5833981519152826040516200629a91906200831b565b806001600160a01b0316826001600160a01b03161462004731577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620063f79060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f81604051620064309190620084dc565b60405180910390a17f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f826040516200629a919062008521565b6000805160206200a6a58339815191523b156200655c576040516000906000805160206200a6a5833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc490620064d79083906519985a5b195960d21b90600190602001620083ac565b60408051601f1981840301815290829052620064f79291602001620083f3565b60408051601f1981840301815290829052620065139162008426565b6000604051808303816000865af19150503d806000811462006552576040519150601f19603f3d011682016040523d82523d6000602084013e62006557565b606091505b505050505b6000805461ff001916610100179055565b6200657c83838360006200661d565b505050565b6000805160206200a6a583398151915263e5d6bf02620065a283426200837d565b6040518263ffffffff1660e01b8152600401620065c191815260200190565b600060405180830381600087803b15801562001e2557600080fd5b6000620065eb84848462006826565b9050620049606040518060400160405280600c81526020016b109bdd5b990814995cdd5b1d60a21b8152508262006a1d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620066739162008426565b6000604051808303816000865af19150503d8060008114620066b2576040519150601f19603f3d011682016040523d82523d6000602084013e620066b7565b606091505b50915050600081806020019051810190620066d39190620080fa565b90506200670d846200670687620066ff6370a0823160e01b620066f8600a8d62006abd565b9062006ae7565b9062006b05565b9062006b2e565b821562000d855760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162006758919062008426565b6000604051808303816000865af19150503d806000811462006797576040519150601f19603f3d011682016040523d82523d6000602084013e6200679c565b606091505b50915050600081806020019051810190620067b89190620080fa565b905082861015620067e357620067cf86846200817a565b620067db90826200817a565b9050620067fe565b620067ef83876200817a565b620067fb90826200837d565b90505b6200681c81620067066318160ddd60e01b620066f8600a8d62006abd565b5050505050505050565b600081831115620068a45760405162461bcd60e51b815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015620068b55750818411155b15620068c357508262004960565b6000620068d184846200817a565b620068de9060016200837d565b905060038511158015620068f157508481115b156200690c576200690385856200837d565b91505062004960565b6200691b60036000196200817a565b851015801562006937575062006934856000196200817a565b81115b1562006957576200694b856000196200817a565b6200690390846200817a565b82851115620069b95760006200696e84876200817a565b905060006200697e838362008366565b905080600003620069955784935050505062004960565b6001620069a382886200837d565b620069af91906200817a565b9350505062006a15565b8385101562006a15576000620069d086866200817a565b90506000620069e0838362008366565b905080600003620069f75785935050505062004960565b62006a0381866200817a565b62006a109060016200837d565b935050505b509392505050565b60006a636f6e736f6c652e6c6f676001600160a01b0316838360405160240162006a499291906200854c565b60408051601f198184030181529181526020820180516001600160e01b0316632d839cb360e21b1790525162006a80919062008426565b600060405180830381855afa9150503d806000811462000d85576040519150601f19603f3d011682016040523d82523d6000602084013e62000d85565b6005820180546001600160a01b0319166001600160a01b0383161790556000825b90505b92915050565b60038201805463ffffffff191660e083901c17905560008262006ade565b6002820180546001810182556000918252602082206001600160a01b0384169101558262006ade565b620047318282600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b946000939092909183018282801562006ba757602002820191906000526020600020905b81548152602001906001019080831162006b92575b5050505050905060008362006bbc8362006e9b565b60405160200162006bcf929190620083f3565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a16835281529281209194509092909162006c2391869188910162008570565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662006c5e5762006c5c8762006f4f565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b031988168452825280832090519091839162006c9f91879189910162008570565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b03168460405162006ce6919062008426565b600060405180830381855afa9150503d806000811462006d23576040519150601f19603f3d011682016040523d82523d6000602084013e62006d28565b606091505b50915062006d4590508162006d3f886020620082c8565b62006f5c565b604051630667f9d760e41b8152909250600091506000805160206200a6a58339815191529063667f9d709062006d82908b90879060040162008393565b602060405180830381865afa15801562006da0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062006dc69190620080fa565b905080821462006dea5760405162461bcd60e51b81526004016200689b90620085ac565b6040516370ca10bb60e01b81526000805160206200a6a5833981519152906370ca10bb9062006e22908b9087908e90600401620083ac565b600060405180830381600087803b15801562006e3d57600080fd5b505af115801562006e52573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905562006e8760028b01600062007e28565b896004016000905550505050505050505050565b606060008251602062006eaf9190620082c8565b67ffffffffffffffff81111562006eca5762006eca62007f82565b6040519080825280601f01601f19166020018201604052801562006ef5576020820181803683370190505b50905060005b835181101562006f4857600084828151811062006f1c5762006f1c6200814e565b60200260200101519050808260200260200184015250808062006f3f9062008647565b91505062006efb565b5092915050565b600062006ae18262006fe6565b6000806000602085511162006f7357845162006f76565b60205b905060005b8181101562006fdc5762006f91816008620082c8565b8662006f9e83886200837d565b8151811062006fb15762006fb16200814e565b01602001516001600160f81b031916901c92909217918062006fd38162008647565b91505062006f7b565b5090949350505050565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156200705857602002820191906000526020600020905b81548152602001906001019080831162007043575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905195965094919350620070a49250859187910162008570565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562007143576001600160a01b0384166000908152602087815260408083206001600160e01b031987168452825280832090519092916200711391859187910162008570565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b600083620071518362007cdf565b60405160200162007164929190620083f3565b60405160208183030381529060405290506000805160206200a6c583398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b158015620071c357600080fd5b505af1158015620071d8573d6000803e3d6000fd5b50505050600080866001600160a01b031683604051620071f9919062008426565b600060405180830381855afa9150503d806000811462007236576040519150601f19603f3d011682016040523d82523d6000602084013e6200723b565b606091505b5091506200725890508162007252876020620082c8565b62007d8c565b6040516365bc948160e01b81526001600160a01b0389166004820152909250600091506000805160206200a6a5833981519152906365bc9481906024016000604051808303816000875af1158015620072b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620072df9190810190620086d0565b5090508051600103620075a65760006000805160206200a6c583398151915260001c6001600160a01b031663667f9d7089846000815181106200732657620073266200814e565b60200260200101516040518363ffffffff1660e01b81526004016200734d92919062008393565b602060405180830381865afa1580156200736b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620073919190620080fa565b905080620073f5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58883600081518110620073d157620073d16200814e565b602002602001015160001c604051620073ec92919062008393565b60405180910390a15b808314620074175760405162461bcd60e51b81526004016200689b90620085ac565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed888887896040516020016200744f92919062008570565b60405160208183030381529060405280519060200120856000815181106200747b576200747b6200814e565b602002602001015160001c6040516200749894939291906200873b565b60405180910390a181600081518110620074b657620074b66200814e565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262007501918a918c910162008570565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c168552825282842092519093916200756b918a918c910162008570565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff19169115159190911790555062007b62565b60018151111562007af15760005b815181101562007aea5760006000805160206200a6c583398151915260001c6001600160a01b031663667f9d708a858581518110620075f757620075f76200814e565b60200260200101516040518363ffffffff1660e01b81526004016200761e92919062008393565b602060405180830381865afa1580156200763c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620076629190620080fa565b905080620076c5577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110620076a157620076a16200814e565b602002602001015160001c604051620076bc92919062008393565b60405180910390a15b6000805160206200a6c583398151915260001c6001600160a01b03166370ca10bb8a858581518110620076fc57620076fc6200814e565b602002602001015161133760f01b6040518463ffffffff1660e01b81526004016200772a93929190620083ac565b600060405180830381600087803b1580156200774557600080fd5b505af11580156200775a573d6000803e3d6000fd5b50505050600060608a6001600160a01b0316876040516200777c919062008426565b600060405180830381855afa9150503d8060008114620077b9576040519150601f19603f3d011682016040523d82523d6000602084013e620077be565b606091505b509092509050620077d681620072528b6020620082c8565b9550818015620077ea575061133760f01b86145b1562007a3d577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c6040516020016200782892919062008570565b604051602081830303815290604052805190602001208888815181106200785357620078536200814e565b602002602001015160001c6040516200787094939291906200873b565b60405180910390a18484815181106200788d576200788d6200814e565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092620078d8918d918f910162008570565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c6040516020016200796592919062008570565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200a6c583398151915260001c6001600160a01b03166370ca10bb8c878781518110620079d757620079d76200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a0093929190620083ac565b600060405180830381600087803b15801562007a1b57600080fd5b505af115801562007a30573d6000803e3d6000fd5b5050505050505062007aea565b6000805160206200a6c583398151915260001c6001600160a01b03166370ca10bb8c87878151811062007a745762007a746200814e565b6020026020010151866040518463ffffffff1660e01b815260040162007a9d93929190620083ac565b600060405180830381600087803b15801562007ab857600080fd5b505af115801562007acd573d6000803e3d6000fd5b50505050505050808062007ae19062008647565b915050620075b4565b5062007b62565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e60648201526084016200689b565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929162007ba69188918a910162008570565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662007c355760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b60648201526084016200689b565b6005890180546001600160a01b031916905560038901805463ffffffff1916905562007c6660028a01600062007e28565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929162007cac9188918a910162008570565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b606060008251602062007cf39190620082c8565b67ffffffffffffffff81111562007d0e5762007d0e62007f82565b6040519080825280601f01601f19166020018201604052801562007d39576020820181803683370190505b50905060005b835181101562006f4857600084828151811062007d605762007d606200814e565b60200260200101519050808260200260200184015250808062007d839062008647565b91505062007d3f565b6000806000602085511162007da357845162007da6565b60205b905060005b8181101562006fdc5762007dc1816008620082c8565b8662007dce83886200837d565b8151811062007de15762007de16200814e565b01602001516001600160f81b031916901c92909217918062007e038162008647565b91505062007dab565b611962806200876c83390190565b6105d7806200a0ce83390190565b50805460008255906000526020600020908101906200090e91905b8082111562007e59576000815560010162007e43565b5090565b60008060006060848603121562007e7357600080fd5b505081359360208301359350604090920135919050565b80151581146200090e57600080fd5b6000806000806080858703121562007eb057600080fd5b843593506020850135925060408501359150606085013562007ed28162007e8a565b939692955090935050565b6001600160a01b03811681146200090e57600080fd5b60008060006060848603121562007f0957600080fd5b83359250602084013562007f1d8162007edd565b929592945050506040919091013590565b60006020828403121562007f4157600080fd5b5035919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121562007f7557600080fd5b8151620049608162007e8a565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff8111828210171562007fbe5762007fbe62007f82565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171562007ff05762007ff062007f82565b604052919050565b600067ffffffffffffffff82111562008015576200801562007f82565b5060051b60200190565b600060208083850312156200803357600080fd5b825167ffffffffffffffff8111156200804b57600080fd5b8301601f810185136200805d57600080fd5b8051620080746200806e8262007ff8565b62007fc4565b818152606091820283018401918482019190888411156200809457600080fd5b938501935b83851015620080ee5780858a031215620080b35760008081fd5b620080bd62007f98565b8551620080ca8162007edd565b81528587015187820152604080870151908201528352938401939185019162008099565b50979650505050505050565b6000602082840312156200810d57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8181038181111562006ae15762006ae162008164565b600181815b80851115620081d1578160001904821115620081b557620081b562008164565b80851615620081c357918102915b93841c939080029062008195565b509250929050565b600082620081ea5750600162006ae1565b81620081f95750600062006ae1565b81600181146200821257600281146200821d576200823d565b600191505062006ae1565b60ff84111562008231576200823162008164565b50506001821b62006ae1565b5060208310610133831016604e8410600b841016171562008262575081810a62006ae1565b6200826e838362008190565b806000190482111562008285576200828562008164565b029392505050565b600062006ade8383620081d9565b634e487b7160e01b600052601260045260246000fd5b600082620082c357620082c36200829b565b500490565b808202811582820484141762006ae15762006ae162008164565b6040815260006200830d60408301600a8152690808115e1c1958dd195960b21b602082015260400190565b905082602083015292915050565b6040815260006200830d60408301600a815269080808081058dd1d585b60b21b602082015260400190565b6000602082840312156200835957600080fd5b8151620049608162007edd565b6000826200837857620083786200829b565b500690565b8082018082111562006ae15762006ae162008164565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015620083ea578181015183820152602001620083d0565b50506000910152565b6001600160e01b031983168152815160009062008418816004850160208701620083cd565b919091016004019392505050565b600082516200843a818460208701620083cd565b9190910192915050565b600081518084526200845e816020860160208601620083cd565b601f01601f19169290920160200192915050565b6040815260006200849d60408301600a8152690808115e1c1958dd195960b21b602082015260400190565b82810360208401526200282a818562008444565b6040815260006200849d60408301600a815269080808081058dd1d585b60b21b602082015260400190565b6040815260006200850760408301600a8152690808115e1c1958dd195960b21b602082015260400190565b6001600160a01b0393909316602092909201919091525090565b6040815260006200850760408301600a815269080808081058dd1d585b60b21b602082015260400190565b60408152600062008561604083018562008444565b90508260208301529392505050565b825160009082906020808701845b838110156200859c578151855293820193908201906001016200857e565b5050948252509092019392505050565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b6000600182016200865c576200865c62008164565b5060010190565b600082601f8301126200867557600080fd5b81516020620086886200806e8362007ff8565b82815260059290921b84018101918181019086841115620086a857600080fd5b8286015b84811015620086c55780518352918301918301620086ac565b509695505050505050565b60008060408385031215620086e457600080fd5b825167ffffffffffffffff80821115620086fd57600080fd5b6200870b8683870162008663565b935060208501519150808211156200872257600080fd5b50620087318582860162008663565b9150509250929050565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe60a06040523480156200001157600080fd5b5060405162001962380380620019628339810160408190526200003491620001b2565b600080546001600160a01b0319163390811782556040519091829160008051602062001942833981519152908290a3506001600160a01b0382166080526200007c8162000084565b5050620001ea565b6000546001600160a01b03163314620000e45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0381166200014b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000db565b600080546040516001600160a01b03808516939216916000805160206200194283398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001ad57600080fd5b919050565b60008060408385031215620001c657600080fd5b620001d18362000195565b9150620001e16020840162000195565b90509250929050565b60805161172e62000214600039600081816101d7015281816108320152610be5015261172e6000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385d4cad3116100ad578063d36862e811610071578063d36862e814610251578063dd46706414610264578063ec20b45714610277578063f02c6d8f1461028a578063f2fde38b1461029357600080fd5b806385d4cad3146101d257806388a772ef146102115780638da5cb5b14610224578063a145f1b514610235578063c7e42b1b1461023e57600080fd5b806350ad827a116100f457806350ad827a1461016d5780635b904cb7146101825780636f7bc9be1461018a578063715018a6146101bd5780637f87bbd6146101c557600080fd5b806308ac7624146101265780630bca8bcd1461013d57806342714978146101505780634e71d92d14610165575b600080fd5b6005545b6040519081526020015b60405180910390f35b61012a61014b366004611501565b6102a6565b61016361015e366004611501565b61041e565b005b6101636106ac565b610175610989565b6040516101349190611523565b610163610a0b565b6101ad610198366004611501565b60076020526000908152604090205460ff1681565b6040519015158152602001610134565b610163610aea565b6004546101ad9060ff1681565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610134565b61012a61021f366004611501565b610b5e565b6000546001600160a01b03166101f9565b61012a60055481565b61016361024c366004611501565b610bb9565b61012a61025f366004611501565b610f4b565b610163610272366004611585565b610fa6565b61016361028536600461159e565b61103d565b61012a60035481565b6101636102a1366004611501565b611302565b6001600160a01b03811660009081526007602052604081205460ff1680156102d0575060045460ff165b156104115760006102e0836113ec565b905060006102ed84610b5e565b90508060068381548110610303576103036115c8565b90600052602060002090600302016002015410610324575060009392505050565b60006224ea006003544261033891906115f4565b610342919061160d565b90506000606461035384600861162f565b61035d919061160d565b610367908361162f565b606461037485600c61162f565b61037e919061160d565b6103889190611646565b9050828111806103995750600b8210155b156103d557600684815481106103b1576103b16115c8565b906000526020600020906003020160020154836103ce91906115f4565b9050610408565b600684815481106103e8576103e86115c8565b9060005260206000209060030201600201548161040591906115f4565b90505b95945050505050565b506000919050565b919050565b6000546001600160a01b031633146104515760405162461bcd60e51b815260040161044890611659565b60405180910390fd5b6001600160a01b0381166104cd5760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a72656d6f7665496e766573746f72282920616360448201527f636f756e742063616e6e6f7420626520616464726573732830290000000000006064820152608401610448565b60006104d8826113ec565b90506000600682815481106104ef576104ef6115c8565b600091825260209182902060408051606081018252600390930290910180546001600160a01b03168352600180820154948401949094526002015490820152600680549193509161053f916115f4565b8154811061054f5761054f6115c8565b906000526020600020906003020160068381548110610570576105706115c8565b60009182526020909120825460039092020180546001600160a01b0319166001600160a01b039092169190911781556001808301548183015560029283015492909101919091556006805483926105c6916115f4565b815481106105d6576105d66115c8565b600091825260209182902083516003929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820155604090910151600290910155600680548061062d5761062d61168e565b6000828152602080822060036000199094019384020180546001600160a01b031916815560018101839055600201829055919092556001600160a01b03851680835260079091526040808320805460ff191690555190917fba0013628ccb89af5bb18edf764d3a7b35c07b894848b8e6fd3434719de39c7d91a2505050565b3360009081526007602052604090205460ff1615156001146107365760405162461bcd60e51b815260206004820152603a60248201527f56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e60448201527f73656e646572206d75737420626520616e20696e766573746f720000000000006064820152608401610448565b60045460ff1661079c5760405162461bcd60e51b815260206004820152602b60248201527f56657374696e672e736f6c3a3a636c61696d28292076657374696e672069732060448201526a1b9bdd08195b98589b195960aa1b6064820152608401610448565b60006107a7336102a6565b9050600081116108165760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686160448201527373206e6f20746f6b656e7320746f20636c61696d60601b6064820152608401610448565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610883573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a791906116a4565b6109065760405162461bcd60e51b815260206004820152602a60248201527f56657374696e672e736f6c3a3a636c61696d2829207472616e7366657220756e6044820152691cdd58d8d95cdcd99d5b60b21b6064820152608401610448565b6000610911336113ec565b90508160068281548110610927576109276115c8565b906000526020600020906003020160020160008282546109479190611646565b909155505060408051338152602081018490527fc9ff33ee3842ec05cab3a4e2b17aa19694b6c461ea543be5752366f912a6539d910160405180910390a15050565b60606006805480602002602001604051908101604052809291908181526020016000905b82821015610a02576000848152602090819020604080516060810182526003860290920180546001600160a01b03168352600180820154848601526002909101549183019190915290835290920191016109ad565b50505050905090565b6000546001600160a01b03163314610a355760405162461bcd60e51b815260040161044890611659565b60045460ff1615610aae5760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a656e61626c6556657374696e6728292076657360448201527f74696e6720697320616c726561647920656e61626c65640000000000000000006064820152608401610448565b6004805460ff19166001179055426003556040517ff78a71daf05bb8e3a2ef9c526b1bb785285cdb83a6130cd12a3bbd5c99c15fa390600090a1565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161044890611659565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610b8a836113ec565b905060068181548110610b9f57610b9f6115c8565b906000526020600020906003020160010154915050919050565b6000546001600160a01b03163314610be35760405162461bcd60e51b815260040161044890611659565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603610c8a5760405162461bcd60e51b815260206004820152603960248201527f56657374696e672e736f6c3a3a7769746864726177457263323028292063616e60448201527f6e6f74207769746864726177202450524f564520746f6b656e000000000000006064820152608401610448565b6001600160a01b038116610d065760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920746f6b60448201527f656e2063616e6e6f7420626520616464726573732830290000000000000000006064820152608401610448565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7191906116c6565b905060008111610de95760405162461bcd60e51b815260206004820152603760248201527f56657374696e672e736f6c3a3a77697468647261774572633230282920696e7360448201527f756666696369656e7420746f6b656e2062616c616e63650000000000000000006064820152608401610448565b6000826001600160a01b031663a9059cbb610e0c6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af1158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d91906116a4565b905080610ee75760405162461bcd60e51b815260206004820152603260248201527f56657374696e672e736f6c3a3a776974686472617745726332302829207472616044820152711b9cd9995c881d5b9cdd58d8d95cdcd99d5b60721b6064820152608401610448565b7f3ff9434501bb42cce78344c3420ec1273f8b404aba16aaae994c0d413b91bb4f8383610f1c6000546001600160a01b031690565b604080516001600160a01b039485168152602081019390935292168183015290519081900360600190a1505050565b6001600160a01b03811660009081526007602052604081205460ff1615610411576000610f77836113ec565b905060068181548110610f8c57610f8c6115c8565b906000526020600020906003020160020154915050919050565b6000546001600160a01b03163314610fd05760405162461bcd60e51b815260040161044890611659565b60008054600180546001600160a01b03199081166001600160a01b03841617909155169055610fff8142611646565b600255600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b6000546001600160a01b031633146110675760405162461bcd60e51b815260040161044890611659565b6001600160a01b03821660009081526007602052604090205460ff16156110ed5760405162461bcd60e51b815260206004820152603460248201527f56657374696e672e736f6c3a3a616464496e766573746f72282920696e7665736044820152731d1bdc881a5cc8185b1c9958591e48185919195960621b6064820152608401610448565b6001600160a01b0382166111695760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f60448201527f756e742063616e6e6f74206265206164647265737328302900000000000000006064820152608401610448565b600081116111d75760405162461bcd60e51b815260206004820152603560248201527f56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b6560448201527406e73546f56657374206d757374206265206774203605c1b6064820152608401610448565b6001600160a01b0382811660008181526007602090815260408083208054600160ff1990911681179091558151606081018352948552918401868152908401838152600680549384018155845293517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600390930292830180546001600160a01b031916919096161790945592517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4084015590517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4190920191909155600580548392906112c5908490611646565b90915550506040516001600160a01b038316907f62e6a5118be03f9bfedb79b0ed7ed75ee4a9e15fc4c69d2c4976acde26fa2d5f90600090a25050565b6000546001600160a01b0316331461132c5760405162461bcd60e51b815260040161044890611659565b6001600160a01b0381166113915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610448565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03811660009081526007602052604081205460ff16151560011461147f5760405162461bcd60e51b815260206004820152603860248201527f56657374696e672e736f6c3a3a6c6f63617465496e766573746f72282920616360448201527f636f756e74206973206e6f7420616e20696e766573746f7200000000000000006064820152608401610448565b6000805b6006548110156114e357836001600160a01b0316600682815481106114aa576114aa6115c8565b60009182526020909120600390910201546001600160a01b0316036114d1578091506114e3565b806114db816116df565b915050611483565b5092915050565b80356001600160a01b038116811461041957600080fd5b60006020828403121561151357600080fd5b61151c826114ea565b9392505050565b602080825282518282018190526000919060409081850190868401855b8281101561157857815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611540565b5091979650505050505050565b60006020828403121561159757600080fd5b5035919050565b600080604083850312156115b157600080fd5b6115ba836114ea565b946020939093013593505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115611607576116076115de565b92915050565b60008261162a57634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417611607576116076115de565b80820180821115611607576116076115de565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156116b657600080fd5b8151801515811461151c57600080fd5b6000602082840312156116d857600080fd5b5051919050565b6000600182016116f1576116f16115de565b506001019056fea2646970667358221220d2355449aa619c52df97b3ae1052a171b8fa5fa41104c173bef64d6cc1fd6c1b64736f6c634300081100338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0608060405234801561001057600080fd5b506105b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305e31e36146100675780636c4f94dc1461008e57806370fa62a3146100a15780637188a084146100b4578063d0b940f4146100c7578063dbc82daa146100da575b600080fd5b61007a6100753660046104b0565b6100ed565b604051901515815260200160405180910390f35b61007a61009c3660046104e3565b6101d8565b61007a6100af3660046104b0565b6102d1565b61007a6100c236600461051f565b610328565b61007a6100d53660046104b0565b6103f0565b61007a6100e836600461051f565b610447565b60408051808201825260168152757769746864726177457263323028616464726573732960501b602082015290516001600160a01b038381166024830152600092919085169082906044015b60408051601f19818403018152908290529161015491610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161018b9190610565565b6000604051808303816000865af19150503d80600081146101c8576040519150601f19603f3d011682016040523d82523d6000602084013e6101cd565b606091505b509095945050505050565b604080518082018252601c81527f616464496e766573746f7228616464726573732c75696e743235362900000000602082015290516001600160a01b038481166024830152604482018490526000929190861690829060640160408051601f19818403018152908290529161024c91610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516102839190610565565b6000604051808303816000865af19150503d80600081146102c0576040519150601f19603f3d011682016040523d82523d6000602084013e6102c5565b606091505b50909695505050505050565b604080518082018252601981527f676574416d6f756e74546f436c61696d28616464726573732900000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b6040805180820182526007815266636c61696d282960c81b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516103a49190610565565b6000604051808303816000865af19150503d80600081146103e1576040519150601f19603f3d011682016040523d82523d6000602084013e6103e6565b606091505b5090949350505050565b604080518082018252601781527f72656d6f7665496e766573746f72286164647265737329000000000000000000602082015290516001600160a01b03838116602483015260009291908516908290604401610139565b604080518082018252600f81526e656e61626c6556657374696e67282960881b602082015281516004815260248101928390526000926001600160a01b038516919061036d908490610565565b80356001600160a01b03811681146104ab57600080fd5b919050565b600080604083850312156104c357600080fd5b6104cc83610494565b91506104da60208401610494565b90509250929050565b6000806000606084860312156104f857600080fd5b61050184610494565b925061050f60208501610494565b9150604084013590509250925092565b60006020828403121561053157600080fd5b61053a82610494565b9392505050565b60005b8381101561055c578181015183820152602001610544565b50506000910152565b60008251610577818460208701610541565b919091019291505056fea2646970667358221220843b2a7925f054aa4267ccb704b85ca5db3172d6fe2b6977a4bbeadddcd28f0164736f6c634300081100330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12db2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8a2646970667358221220faefc6049f6baf75498faadfa89c918363fa3341a30b822502f8fa223dfe862364736f6c63430008110033", + "sourceMap": "208:21101:31:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;277:210;;;:::i;:::-;;4921:861;;;:::i;1745:36:30:-;;1780:1;1745:36;;;;;186:4:32;174:17;;;156:36;;144:2;129:18;1745:36:30;;;;;;;;7044:881:31;;;:::i;4740:583:30:-;;;;;;:::i;:::-;;:::i;5374:479::-;;;;;;:::i;:::-;;:::i;2178:45::-;;2221:2;2178:45;;1829:36;;1864:1;1829:36;;523:207:31;;;:::i;10097:627::-;;;:::i;1481:443::-;;;:::i;13092:1902::-;;;:::i;2019:967::-;;;:::i;5880:1102::-;;;:::i;6028:291:30:-;;;;;;:::i;:::-;;:::i;:::-;;;1244:25:32;;;1232:2;1217:18;6028:291:30;1098:177:32;2262:45:30;;2305:2;2262:45;;4221:461;;;;;;:::i;:::-;;:::i;11947:1092:31:-;;;:::i;2092:45:30:-;;2135:2;2092:45;;17163:1984:31;;;;;;:::i;:::-;;:::i;2005:36:30:-;;2040:1;2005:36;;3699:1165:31;;;:::i;3046:563::-;;;:::i;8020:1974::-;;;:::i;3312:184:30:-;;;:::i;1819:584:0:-;;;:::i;:::-;;;2154:14:32;;2147:22;2129:41;;2117:2;2102:18;1819:584:0;1989:187:32;5861:159:30;;;;;;:::i;:::-;;:::i;19211:2093:31:-;;;;;;:::i;:::-;;:::i;1916:36:30:-;;1951:1;1916:36;;10774:1093:31;;;:::i;15044:2052::-;;;:::i;1655:36:30:-;;1690:1;1655:36;;3620:551;;;:::i;825:596:31:-;;;:::i;1572:26:0:-;;;;;;;;;277:210:31;312:14;:12;:14::i;:::-;337:13;:11;:13::i;:::-;464:3;;409:70;;1136:42:30;;-1:-1:-1;;;;;464:3:31;;409:70;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;399:7:31;:80;;-1:-1:-1;;;;;;399:80:31;-1:-1:-1;;;;;399:80:31;;;;;;;;;;277:210::o;4921:861::-;5027:7;;;5053:3;5027:31;;-1:-1:-1;;;5027:31:31;;-1:-1:-1;;;;;5053:3:31;;;5027:31;;;2636:51:32;5018:53:31;;5027:7;;;;;:17;;2609:18:32;;5027:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5065:5;5018:8;:53::i;:::-;5118:7;;:28;;;-1:-1:-1;;;5118:28:31;;;;5082:33;;-1:-1:-1;;;;;5118:7:31;;:26;;:28;;;;;5082:33;;5118:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5118:28:31;;;;;;;;;;;;:::i;:::-;5082:64;;5157:36;5166:7;:14;5191:1;5157:8;:36::i;:::-;5213:7;;:28;;;-1:-1:-1;;;5213:28:31;;;;5204:41;;-1:-1:-1;;;;;5213:7:31;;:26;;:28;;;;;;;;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5243:1;5204:8;:41::i;:::-;5297:3;;5325:7;;5297:3;5343;5297:61;;-1:-1:-1;;;5297:61:31;;-1:-1:-1;;;;;5297:3:31;;;;:19;;:61;;5325:7;;;;5343:3;;;5349:8;;5297:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5290:69;;;;:::i;:::-;5411:7;;;5437:3;5411:31;;-1:-1:-1;;;5411:31:31;;-1:-1:-1;;;;;5437:3:31;;;5411:31;;;2636:51:32;5402:52:31;;5411:7;;;;;:17;;2609:18:32;;5411:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5449:4;5402:8;:52::i;:::-;5475:7;;;;;;;;;-1:-1:-1;;;;;5475:7:31;-1:-1:-1;;;;;5475:26:31;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5475:28:31;;;;;;;;;;;;:::i;:::-;5465:38;;5514:37;5523:7;:14;5549:1;5514:8;:37::i;:::-;5562:48;5571:7;5579:1;5571:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;5605:3;;-1:-1:-1;;;;;5605:3:31;5562:8;:48::i;:::-;5621:44;5630:7;5638:1;5630:10;;;;;;;;:::i;:::-;;;;;;;:23;;;5656:8;5621;:44::i;:::-;5676:37;5685:7;5693:1;5685:10;;;;;;;;:::i;:::-;;;;;;;:24;;;5711:1;5676:8;:37::i;:::-;5735:7;;:28;;;-1:-1:-1;;;5735:28:31;;;;5726:48;;-1:-1:-1;;;;;5735:7:31;;:26;;:28;;;;;;;;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5765:8;5726;:48::i;:::-;4978:804;4921:861::o;7044:881::-;7176:3;;7204:7;;7176:3;7222;7176:61;;-1:-1:-1;;;7176:61:31;;-1:-1:-1;;;;;7176:3:31;;;;:19;;:61;;7204:7;;;;7222:3;;;7228:8;;7176:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7169:69;;;;:::i;:::-;7289:7;;;7315:3;7289:31;;-1:-1:-1;;;7289:31:31;;-1:-1:-1;;;;;7315:3:31;;;7289:31;;;2636:51:32;7280:52:31;;7289:7;;;;;:17;;2609:18:32;;7289:31:31;2490:203:32;7280:52:31;7379:7;;:28;;;-1:-1:-1;;;7379:28:31;;;;7343:33;;-1:-1:-1;;;;;7379:7:31;;:26;;:28;;;;;7343:33;;7379:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7379:28:31;;;;;;;;;;;;:::i;:::-;7343:64;;7418:36;7427:7;:14;7452:1;7418:8;:36::i;:::-;7465:48;7474:7;7482:1;7474:10;;;;;;;;:::i;7465:48::-;7524:44;7533:7;7541:1;7533:10;;;;;;;;:::i;7524:44::-;7579:37;7588:7;7596:1;7588:10;;;;;;;;:::i;7579:37::-;7670:3;;7701:7;;7670:3;7719;7670:54;;-1:-1:-1;;;7670:54:31;;-1:-1:-1;;;;;7670:3:31;;;;:22;;:54;;7701:7;;;;7719:3;;;7670:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7663:62;;;;:::i;:::-;7777:7;;;7803:3;7777:31;;-1:-1:-1;;;7777:31:31;;-1:-1:-1;;;;;7803:3:31;;;7777:31;;;2636:51:32;7768:53:31;;7777:7;;;;;:17;;2609:18:32;;7777:31:31;2490:203:32;7768:53:31;7842:7;;;;;;;;;-1:-1:-1;;;;;7842:7:31;-1:-1:-1;;;;;7842:26:31;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7842:28:31;;;;;;;;;;;;:::i;:::-;7832:38;;7881:36;7890:7;:14;7915:1;7881:8;:36::i;4740:583:30:-;4829:12;4852:4;4845;:11;:39;;4873:11;4880:4;4873;:11;:::i;:::-;4845:39;;;4859:11;4866:4;4859;:11;:::i;:::-;4829:55;;4899:4;4907:1;4899:9;4895:22;;4910:7;4740:583;;;:::o;4895:22::-;4929:19;4951:9;;:23;;4970:4;4951:23;;;4963:4;4951:23;4929:45;-1:-1:-1;4985:10:30;5036:14;5042:8;5036:2;:14;:::i;:::-;5030:20;;2539:8;5030:20;:::i;:::-;5014:11;5000:10;2539:8;5000:4;:10;:::i;:::-;4999:26;;;;:::i;:::-;4998:53;4985:66;;5069:5;5064:252;;5095:80;;;8328:21:32;;;8385:2;8365:18;;;8358:30;8424:34;8419:2;8404:18;;8397:62;-1:-1:-1;;;8490:3:32;8475:19;;8468:51;8586:4;8571:20;;8564:36;;;5095:80:30;;-1:-1:-1;;;;;;;;;;;5095:80:30;;;;8551:3:32;5095:80:30;;;-1:-1:-1;;;;;;;;;;;5224:4:30;5195:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5278:4:30;5249:34;;;;;;:::i;:::-;;;;;;;;5298:6;:4;:6::i;:::-;4818:505;;;4740:583;;;:::o;5374:479::-;5462:18;5490:4;5483;:11;:39;;5511:11;5518:4;5511;:11;:::i;:::-;5483:39;;;5497:11;5504:4;5497;:11;:::i;:::-;5462:60;-1:-1:-1;5546:26:30;;;;;5585:261;;5617:88;;;9857:21:32;;;9914:2;9894:18;;;9887:30;9953:34;9948:2;9933:18;;9926:62;10025:26;10019:3;10004:19;;9997:55;10119:4;10104:20;;10097:36;;;5617:88:30;;-1:-1:-1;;;;;;;;;;;5617:88:30;;;;10084:3:32;5617:88:30;;;-1:-1:-1;;;;;;;;;;;5754:4:30;5725:34;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5808:4:30;5779:34;;;;;;:::i;:::-;;;;;;;;5828:6;:4;:6::i;:::-;5451:402;;5374:479;;;:::o;523:207:31:-;585:7;;:20;;;-1:-1:-1;;;585:20:31;;;;576:42;;-1:-1:-1;;;;;585:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1136:42:30;576:8:31;:42::i;:::-;638:7;;:26;;;-1:-1:-1;;;638:26:31;;;;629:39;;-1:-1:-1;;;;;638:7:31;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;629:39;688:7;;:24;;;-1:-1:-1;;;688:24:31;;;;679:43;;-1:-1:-1;;;;;688:7:31;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;679:43;523:207::o;10097:627::-;10208:3;;10236:7;;10254:3;;10208:61;;-1:-1:-1;;;10208:61:31;;-1:-1:-1;;;;;10208:3:31;;;;:19;;:61;;10236:7;;;;10254:3;;;10260:8;;10208:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10201:69;;;;:::i;:::-;10361:7;;10394:3;;10361:38;;-1:-1:-1;;;10361:38:31;;-1:-1:-1;;;;;10394:3:31;;;10361:38;;;2636:51:32;10352::31;;10361:7;;;;;:24;;2609:18:32;;10361:38:31;;;;;;;;;;;;;;;;;;;;;;;10352:51;10443:3;;10473:7;;10443:39;;-1:-1:-1;;;10443:39:31;;-1:-1:-1;;;;;10473:7:31;;;10443:39;;;2636:51:32;10443:3:31;;;:21;;2609:18:32;;10443:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10572:7:31;;;10605:3;10572:38;;-1:-1:-1;;;10572:38:31;;-1:-1:-1;;;;;10605:3:31;;;10572:38;;;2636:51:32;10563::31;;10572:7;;;;;:24;;2609:18:32;;10572:38:31;2490:203:32;10563:51:31;10676:7;;:36;;-1:-1:-1;;;10676:36:31;;:7;:36;;;2636:51:32;10667:49:31;;-1:-1:-1;;;;;10676:7:31;;:24;;2609:18:32;;10676:36:31;2490:203:32;1481:443:31;1589:7;;:26;;;-1:-1:-1;;;1589:26:31;;;;1580:39;;-1:-1:-1;;;;;1589:7:31;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;1580:39;1639:7;;:24;;;-1:-1:-1;;;1639:24:31;;;;1630:43;;-1:-1:-1;;;;;1639:7:31;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;1630:43;1727:3;;1757:7;;1727:39;;-1:-1:-1;;;1727:39:31;;-1:-1:-1;;;;;1757:7:31;;;1727:39;;;2636:51:32;1727:3:31;;;:21;;2609:18:32;;1727:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1720:47;;;;:::i;:::-;1819:7;;:26;;;-1:-1:-1;;;1819:26:31;;;;1810:53;;-1:-1:-1;;;;;1819:7:31;;:24;;:26;;;;;;;;;;;;;;:7;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1847:15;1810:8;:53::i;:::-;1883:7;;:24;;;-1:-1:-1;;;1883:24:31;;;;1874:42;;-1:-1:-1;;;;;1883:7:31;;:22;;:24;;;;;;;;;;;;;;:7;:24;;;;;;;;;;;;;;13092:1902;13261:7;;:20;;;-1:-1:-1;;;13261:20:31;;;;13169:15;;13256:53;;-1:-1:-1;;;;;13261:7:31;;;;:18;;:20;;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13291:7;;-1:-1:-1;;;;;13291:7:31;13301;13256:4;:53::i;:::-;13378:3;;13356:27;;-1:-1:-1;;;13356:27:31;;-1:-1:-1;;;;;13378:3:31;;;13356:27;;;2636:51:32;-1:-1:-1;;;;;;;;;;;13356:13:31;;;2609:18:32;;13356:27:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13434:3:31;;13462:7;;13480:3;;13434:60;;-1:-1:-1;;;13434:60:31;;-1:-1:-1;;;;;13434:3:31;;;;-1:-1:-1;13434:19:31;;-1:-1:-1;13434:60:31;;13462:7;;;;13480:3;;;;13486:7;;13434:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13427:68;;;;:::i;:::-;13541:3;;13571:7;;13541:39;;-1:-1:-1;;;13541:39:31;;-1:-1:-1;;;;;13571:7:31;;;13541:39;;;2636:51:32;13541:3:31;;;:21;;2609:18:32;;13541:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13534:47;;;;:::i;:::-;13638:7;;:20;;;-1:-1:-1;;;13638:20:31;;;;13622:65;;-1:-1:-1;;;;;13638:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13678:3;;13631:52;;-1:-1:-1;;;13631:52:31;;-1:-1:-1;;;;;13678:3:31;;;13631:52;;;2636:51:32;13631:38:31;;;;;2609:18:32;;13631:52:31;2490:203:32;13622:65:31;13746:3;;13768:7;;13746:31;;-1:-1:-1;;;13746:31:31;;-1:-1:-1;;;;;13768:7:31;;;13746:31;;;2636:51:32;13746:3:31;;;:13;;2609:18:32;;13746:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13739:39;;;;:::i;:::-;13836:7;;:20;;;-1:-1:-1;;;13836:20:31;;;;13820:82;;-1:-1:-1;;;;;13836:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13876:3;;13829:52;;-1:-1:-1;;;13829:52:31;;-1:-1:-1;;;;;13876:3:31;;;13829:52;;;2636:51:32;13829:38:31;;;;;2609:18:32;;13829:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13898:3;13883:12;:7;13893:2;13883:12;:::i;:::-;:18;;;;:::i;:::-;13820:8;:82::i;:::-;13940:13;13945:7;13940:4;:13::i;:::-;14012:3;;14034:7;;14012:31;;-1:-1:-1;;;14012:31:31;;-1:-1:-1;;;;;14034:7:31;;;14012:31;;;2636:51:32;14012:3:31;;;:13;;2609:18:32;;14012:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14005:39;;;;:::i;:::-;14102:7;;:20;;;-1:-1:-1;;;14102:20:31;;;;14086:82;;-1:-1:-1;;;;;14102:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14142:3;;14095:52;;-1:-1:-1;;;14095:52:31;;-1:-1:-1;;;;;14142:3:31;;;14095:52;;;2636:51:32;14095:38:31;;;;;2609:18:32;;14095:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14164:3;14149:12;:7;14159:2;14149:12;:::i;14086:82::-;14206:13;14211:7;14206:4;:13::i;:::-;14278:3;;14300:7;;14278:31;;-1:-1:-1;;;14278:31:31;;-1:-1:-1;;;;;14300:7:31;;;14278:31;;;2636:51:32;14278:3:31;;;:13;;2609:18:32;;14278:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14271:39;;;;:::i;:::-;14368:7;;:20;;;-1:-1:-1;;;14368:20:31;;;;14352:82;;-1:-1:-1;;;;;14368:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14408:3;;14361:52;;-1:-1:-1;;;14361:52:31;;-1:-1:-1;;;;;14408:3:31;;;14361:52;;;2636:51:32;14361:38:31;;;;;2609:18:32;;14361:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14430:3;14415:12;:7;14425:2;14415:12;:::i;14352:82::-;14473:14;14478:8;14473:4;:14::i;:::-;14546:3;;14568:7;;14546:31;;-1:-1:-1;;;14546:31:31;;-1:-1:-1;;;;;14568:7:31;;;14546:31;;;2636:51:32;14546:3:31;;;:13;;2609:18:32;;14546:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14539:39;;;;:::i;:::-;14636:7;;:20;;;-1:-1:-1;;;14636:20:31;;;;14620:82;;-1:-1:-1;;;;;14636:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14676:3;;14629:52;;-1:-1:-1;;;14629:52:31;;-1:-1:-1;;;;;14676:3:31;;;14629:52;;;2636:51:32;14629:38:31;;;;;2609:18:32;;14629:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14698:3;14683:12;:7;14693:2;14683:12;:::i;14620:82::-;14741:14;14746:8;14741:4;:14::i;:::-;14814:3;;14836:7;;14814:31;;-1:-1:-1;;;14814:31:31;;-1:-1:-1;;;;;14836:7:31;;;14814:31;;;2636:51:32;14814:3:31;;;:13;;2609:18:32;;14814:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14807:39;;;;:::i;:::-;14904:7;;:20;;;-1:-1:-1;;;14904:20:31;;;;14888:71;;-1:-1:-1;;;;;14904:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14944:3;;14897:52;;-1:-1:-1;;;14897:52:31;;-1:-1:-1;;;;;14944:3:31;;;14897:52;;;2636:51:32;14897:38:31;;;;;2609:18:32;;14897:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14951:7;14888:8;:71::i;:::-;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;14972:12:31;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2019:967;2155:3;;2185:7;;2155:45;;-1:-1:-1;;;2155:45:31;;-1:-1:-1;;;;;2155:3:31;;;;:21;;:45;;2185:7;;;840:42:30;;2155:45:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2154:46;2147:54;;;;:::i;:::-;2281:3;;2311:7;;2281:45;;-1:-1:-1;;;2281:45:31;;-1:-1:-1;;;;;2281:3:31;;;;:21;;:45;;2311:7;;;840:42:30;;2281:45:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2280:46;2273:54;;;;:::i;:::-;2412:3;;2442:7;;2412:45;;-1:-1:-1;;;2412:45:31;;-1:-1:-1;;;;;2412:3:31;;;;:21;;:45;;2442:7;;;840:42:30;;2412:45:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2411:46;2404:54;;;;:::i;:::-;2539:3;;2569:7;;2579:20;;;-1:-1:-1;;;2579:20:31;;;;-1:-1:-1;;;;;2539:3:31;;;;:21;;2569:7;;;;2579:18;;:20;;;;;;;;;;;;;;;2569:7;2579:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2539:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2538:62;2531:70;;;;:::i;:::-;2680:3;;2710:7;;2680:51;;-1:-1:-1;;;2680:51:31;;-1:-1:-1;;;;;2680:3:31;;;;:21;;:51;;2710:7;;;2680:3;;:51;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2679:52;2672:60;;;;:::i;:::-;2814:7;;2795:39;;840:42:30;;-1:-1:-1;;;;;2814:7:31;2824:9;2371:7:30;2824:3:31;:9;:::i;:::-;2795:4;:39::i;:::-;2932:3;;2962:7;;2932:45;;-1:-1:-1;;;2932:45:31;;-1:-1:-1;;;;;2932:3:31;;;;:21;;:45;;2962:7;;;840:42:30;;2932:45:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2925:53;;;;:::i;5880:1102::-;6011:3;;6039:7;;6011:3;6057;6011:61;;-1:-1:-1;;;6011:61:31;;-1:-1:-1;;;;;6011:3:31;;;;:19;;:61;;6039:7;;;;6057:3;;;6063:8;;6011:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6004:69;;;;:::i;:::-;6164:3;;6195:7;;6164:3;6213;6164:54;;-1:-1:-1;;;6164:54:31;;-1:-1:-1;;;;;6164:3:31;;;;:22;;:54;;6195:7;;;;6213:3;;;6164:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6163:55;6156:63;;;;:::i;:::-;6309:3;;6340:7;;6309:54;;-1:-1:-1;;;6309:54:31;;-1:-1:-1;;;;;6309:3:31;;;;:22;;:54;;6340:7;;;6309:3;;:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6308:55;6301:63;;;;:::i;:::-;6440:3;;6471:7;;6440:3;6489;6440:54;;-1:-1:-1;;;6440:54:31;;-1:-1:-1;;;;;6440:3:31;;;;:22;;:54;;6471:7;;;;6489:3;;;6440:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6433:62;;;;:::i;:::-;6530:3;;6508:27;;-1:-1:-1;;;6508:27:31;;-1:-1:-1;;;;;6530:3:31;;;6508:27;;;2636:51:32;-1:-1:-1;;;;;;;;;;;6508:13:31;;;2609:18:32;;6508:27:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6627:75:31;;-1:-1:-1;;;6627:75:31;;11388:2:32;6627:75:31;;;11370:21:32;11427:2;11407:18;;;11400:30;11466:34;11446:18;;;11439:62;11537:26;11517:18;;;11510:54;-1:-1:-1;;;;;;;;;;;6627:15:31;-1:-1:-1;6627:15:31;;-1:-1:-1;11581:19:32;;6627:75:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6713:7:31;;6744:3;;6713:36;;-1:-1:-1;;;6713:36:31;;-1:-1:-1;;;;;6744:3:31;;;6713:36;;;2636:51:32;6713:7:31;;;-1:-1:-1;6713:22:31;;-1:-1:-1;2609:18:32;;6713:36:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6825:77:31;;-1:-1:-1;;;6825:77:31;;11812:2:32;6825:77:31;;;11794:21:32;11851:2;11831:18;;;11824:30;11890:34;11870:18;;;11863:62;11961:28;11941:18;;;11934:56;-1:-1:-1;;;;;;;;;;;6825:15:31;-1:-1:-1;6825:15:31;;-1:-1:-1;12007:19:32;;6825:77:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6913:7:31;;:34;;-1:-1:-1;;;6913:34:31;;:7;:34;;;2636:51:32;-1:-1:-1;;;;;6913:7:31;;;;-1:-1:-1;6913:22:31;;-1:-1:-1;2609:18:32;;6913:34:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;309:37:1;;-1:-1:-1;;;;;6960:12:31;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5880:1102::o;6028:291:30:-;6128:7;6157:8;;:20;;;;;6170:7;6169:8;6157:20;6148:163;;;-1:-1:-1;6186:1:30;6179:8;;6148:163;6214:3;6207;:10;6203:108;;-1:-1:-1;6236:3:30;6229:10;;6203:108;6308:3;6295:9;6308:3;6295;:9;:::i;:::-;6288:17;;:3;:17;:::i;:::-;:23;;;;:::i;:::-;6281:30;;6203:108;6028:291;;;;;;:::o;4221:461::-;4299:12;4314:14;;;:6;:14;;;;;;;;:19;;;4360;;;;4404:31;;-1:-1:-1;;;4404:31:30;;-1:-1:-1;;;;;2654:32:32;;;4404:31:30;;;2636:51:32;;;;4314:19:30;;;4360;;4314;;4404:22;;2609:18:32;;4404:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:4;;4502:25;;4390:45;;-1:-1:-1;4448:4:30;;;-1:-1:-1;;;;;4448:4:30;;:10;;4473:4;;4502:25;;4513:7;;4522:4;;4502:25;;;:::i;:::-;;;;;;;;;;;;;4492:36;;;;;;4572:3;4566;:9;;;;:::i;:::-;4448:139;;-1:-1:-1;;;;;;4448:139:30;;;;;;;;;;;4558:18;4448:139;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4609:31:30;;-1:-1:-1;;;4609:31:30;;-1:-1:-1;;;;;2654:32:32;;;4609:31:30;;;2636:51:32;4600:52:30;;-1:-1:-1;4609:22:30;;;-1:-1:-1;4609:22:30;;2609:18:32;;4609:31:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4642:9;4648:3;4642;:9;:::i;11947:1092:31:-;12072:7;;:20;;;-1:-1:-1;;;12072:20:31;;;;12067:61;;-1:-1:-1;;;;;12072:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12102:7;;-1:-1:-1;;;;;12102:7:31;12112:15;12067:4;:61::i;:::-;12198:3;;12176:27;;-1:-1:-1;;;12176:27:31;;-1:-1:-1;;;;;12198:3:31;;;12176:27;;;2636:51:32;-1:-1:-1;;;;;;;;;;;12176:13:31;;;2609:18:32;;12176:27:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12269:77:31;;-1:-1:-1;;;12269:77:31;;13114:2:32;12269:77:31;;;13096:21:32;13153:2;13133:18;;;13126:30;13192:34;13172:18;;;13165:62;13263:28;13243:18;;;13236:56;-1:-1:-1;;;;;;;;;;;12269:15:31;-1:-1:-1;12269:15:31;;-1:-1:-1;13309:19:32;;12269:77:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12357:7;;;;;;;;;-1:-1:-1;;;;;12357:7:31;-1:-1:-1;;;;;12357:13:31;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12424:3:31;;12452:7;;12470:3;;12424:68;;-1:-1:-1;;;12424:68:31;;-1:-1:-1;;;;;12424:3:31;;;;-1:-1:-1;12424:19:31;;-1:-1:-1;12424:68:31;;12452:7;;;;12470:3;;;;12476:15;;12424:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12417:76;;;;:::i;:::-;12559:62;;-1:-1:-1;;;12559:62:31;;13952:2:32;12559:62:31;;;13934:21:32;13991:2;13971:18;;;13964:30;14030:34;14010:18;;;14003:62;-1:-1:-1;;;14081:18:32;;;14074:41;-1:-1:-1;;;;;;;;;;;12559:15:31;;;14132:19:32;;12559:62:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12632:7;;;;;;;;;-1:-1:-1;;;;;12632:7:31;-1:-1:-1;;;;;12632:13:31;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12694:3:31;;12724:7;;12694:39;;-1:-1:-1;;;12694:39:31;;-1:-1:-1;;;;;12724:7:31;;;12694:39;;;2636:51:32;12694:3:31;;;-1:-1:-1;12694:21:31;;-1:-1:-1;2609:18:32;;12694:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12687:47;;;;:::i;:::-;12784:7;;;;;;;;;-1:-1:-1;;;;;12784:7:31;-1:-1:-1;;;;;12784:13:31;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12812:14;12817:8;12812:4;:14::i;:::-;12877:7;;;;;;;;;-1:-1:-1;;;;;12877:7:31;-1:-1:-1;;;;;12877:13:31;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12905:71:31;;-1:-1:-1;;;12905:71:31;;14363:2:32;12905:71:31;;;14345:21:32;14402:2;14382:18;;;14375:30;14441:34;14421:18;;;14414:62;-1:-1:-1;;;14492:18:32;;;14485:50;-1:-1:-1;;;;;;;;;;;12905:15:31;-1:-1:-1;12905:15:31;;-1:-1:-1;14552:19:32;;12905:71:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12987:7;;;;;;;;;-1:-1:-1;;;;;12987:7:31;-1:-1:-1;;;;;12987:13:31;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17163:1984;17245:48;17251:7;17260:13;17275:17;17245:5;:48::i;:::-;17235:58;;17365:53;17370:7;;;;;;;;;-1:-1:-1;;;;;17370:7:31;-1:-1:-1;;;;;17370:18:31;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17365:53;17487:3;;17465:27;;-1:-1:-1;;;17465:27:31;;-1:-1:-1;;;;;17487:3:31;;;17465:27;;;2636:51:32;-1:-1:-1;;;;;;;;;;;17465:13:31;;;2609:18:32;;17465:27:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17543:3:31;;17571:7;;17589:3;;17543:60;;-1:-1:-1;;;17543:60:31;;-1:-1:-1;;;;;17543:3:31;;;;-1:-1:-1;17543:19:31;;-1:-1:-1;17543:60:31;;17571:7;;;;17589:3;;;;17595:7;;17543:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17536:68;;;;:::i;:::-;17650:3;;17680:7;;17650:39;;-1:-1:-1;;;17650:39:31;;-1:-1:-1;;;;;17680:7:31;;;17650:39;;;2636:51:32;17650:3:31;;;:21;;2609:18:32;;17650:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17643:47;;;;:::i;:::-;17747:7;;:20;;;-1:-1:-1;;;17747:20:31;;;;17731:65;;-1:-1:-1;;;;;17747:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;17731:65;17855:3;;17877:7;;17855:31;;-1:-1:-1;;;17855:31:31;;-1:-1:-1;;;;;17877:7:31;;;17855:31;;;2636:51:32;17855:3:31;;;:13;;2609:18:32;;17855:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17848:39;;;;:::i;:::-;17947:7;;:20;;;-1:-1:-1;;;17947:20:31;;;;17929:93;;-1:-1:-1;;;;;17947:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17987:3;;17940:52;;-1:-1:-1;;;17940:52:31;;-1:-1:-1;;;;;17987:3:31;;;17940:52;;;2636:51:32;17940:38:31;;;;;2609:18:32;;17940:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18009:3;17994:12;:7;18004:2;17994:12;:::i;:::-;:18;;;;:::i;:::-;18014:7;17929:10;:93::i;:::-;18060:13;18065:7;18060:4;:13::i;:::-;18132:3;;18154:7;;18132:31;;-1:-1:-1;;;18132:31:31;;-1:-1:-1;;;;;18154:7:31;;;18132:31;;;2636:51:32;18132:3:31;;;:13;;2609:18:32;;18132:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18125:39;;;;:::i;:::-;18224:7;;:20;;;-1:-1:-1;;;18224:20:31;;;;18206:93;;-1:-1:-1;;;;;18224:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18264:3;;18217:52;;-1:-1:-1;;;18217:52:31;;-1:-1:-1;;;;;18264:3:31;;;18217:52;;;2636:51:32;18217:38:31;;;;;2609:18:32;;18217:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18286:3;18271:12;:7;18281:2;18271:12;:::i;18206:93::-;18337:13;18342:7;18337:4;:13::i;:::-;18409:3;;18431:7;;18409:31;;-1:-1:-1;;;18409:31:31;;-1:-1:-1;;;;;18431:7:31;;;18409:31;;;2636:51:32;18409:3:31;;;:13;;2609:18:32;;18409:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18402:39;;;;:::i;:::-;18501:7;;:20;;;-1:-1:-1;;;18501:20:31;;;;18483:93;;-1:-1:-1;;;;;18501:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18541:3;;18494:52;;-1:-1:-1;;;18494:52:31;;-1:-1:-1;;;;;18541:3:31;;;18494:52;;;2636:51:32;18494:38:31;;;;;2609:18:32;;18494:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18563:3;18548:12;:7;18558:2;18548:12;:::i;18483:93::-;18615:14;18620:8;18615:4;:14::i;:::-;18688:3;;18710:7;;18688:31;;-1:-1:-1;;;18688:31:31;;-1:-1:-1;;;;;18710:7:31;;;18688:31;;;2636:51:32;18688:3:31;;;:13;;2609:18:32;;18688:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18681:39;;;;:::i;:::-;18780:7;;:20;;;-1:-1:-1;;;18780:20:31;;;;18762:93;;-1:-1:-1;;;;;18780:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18820:3;;18773:52;;-1:-1:-1;;;18773:52:31;;-1:-1:-1;;;;;18820:3:31;;;18773:52;;;2636:51:32;18773:38:31;;;;;2609:18:32;;18773:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18842:3;18827:12;:7;18837:2;18827:12;:::i;3699:1165::-;3841:3;;3869:7;;3841:3;3887;3841:61;;-1:-1:-1;;;3841:61:31;;-1:-1:-1;;;;;3841:3:31;;;;:19;;:61;;3869:7;;;;3887:3;;;3893:8;;3841:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3840:62;3833:70;;;;:::i;:::-;3990:3;;4018:7;;3990:61;;-1:-1:-1;;;3990:61:31;;-1:-1:-1;;;;;3990:3:31;;;;:19;;:61;;4018:7;;;3990:3;;4042:8;;3990:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3989:62;3982:70;;;;:::i;:::-;4125:3;;4153:7;;4125:3;4171;4125:61;;-1:-1:-1;;;4125:61:31;;-1:-1:-1;;;;;4125:3:31;;;;:19;;:61;;4153:7;;;;4171:3;;;4177:8;;4125:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4118:69;;;;:::i;:::-;4222:3;;4200:27;;-1:-1:-1;;;4200:27:31;;-1:-1:-1;;;;;4222:3:31;;;4200:27;;;2636:51:32;-1:-1:-1;;;;;;;;;;;4200:13:31;;;2609:18:32;;4200:27:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4306:71:31;;-1:-1:-1;;;4306:71:31;;14783:2:32;4306:71:31;;;14765:21:32;14822:2;14802:18;;;14795:30;14861:34;14841:18;;;14834:62;-1:-1:-1;;;14912:18:32;;;14905:50;-1:-1:-1;;;;;;;;;;;4306:15:31;-1:-1:-1;4306:15:31;;-1:-1:-1;14972:19:32;;4306:71:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4388:7:31;;;4416:3;4388:43;;-1:-1:-1;;;4388:43:31;;-1:-1:-1;;;;;4388:7:31;;;;-1:-1:-1;4388:19:31;;-1:-1:-1;4388:43:31;;4416:3;;;;4422:8;;4388:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4508:75:31;;-1:-1:-1;;;4508:75:31;;15509:2:32;4508:75:31;;;15491:21:32;15548:2;15528:18;;;15521:30;15587:34;15567:18;;;15560:62;15658:26;15638:18;;;15631:54;-1:-1:-1;;;;;;;;;;;4508:15:31;-1:-1:-1;4508:15:31;;-1:-1:-1;15702:19:32;;4508:75:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4594:7:31;;:41;;-1:-1:-1;;;4594:41:31;;-1:-1:-1;;;;;4594:7:31;;;;-1:-1:-1;4594:19:31;;-1:-1:-1;4594:41:31;;:7;;4626:8;;4594:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4710:72:31;;-1:-1:-1;;;4710:72:31;;15933:2:32;4710:72:31;;;15915:21:32;15972:2;15952:18;;;15945:30;16011:34;15991:18;;;15984:62;-1:-1:-1;;;16062:18:32;;;16055:51;-1:-1:-1;;;;;;;;;;;4710:15:31;-1:-1:-1;4710:15:31;;-1:-1:-1;16123:19:32;;4710:72:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4793:7:31;;4821:3;;4793:36;;-1:-1:-1;;;4793:36:31;;-1:-1:-1;;;;;4793:7:31;;;;-1:-1:-1;4793:19:31;;-1:-1:-1;4793:36:31;;4821:3;;;;4793:7;;:36;;;:::i;3046:563::-;3135:7;;3116:39;;840:42:30;;-1:-1:-1;;;;;3135:7:31;3145:9;2371:7:30;3145:3:31;:9;:::i;3116:39::-;3236:7;;3205:40;;-1:-1:-1;;;3205:40:31;;-1:-1:-1;;;;;3236:7:31;;;3205:40;;;2636:51:32;3196:61:31;;840:42:30;;3205:22:31;;2609:18:32;;3205:40:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3247:9;2371:7:30;3247:3:31;:9;:::i;3196:61::-;3308:3;;3277:36;;-1:-1:-1;;;3277:36:31;;-1:-1:-1;;;;;3308:3:31;;;3277:36;;;2636:51:32;3268:53:31;;840:42:30;;3277:22:31;;2609:18:32;;3277:36:31;2490:203:32;3268:53:31;3388:3;;3418:7;;3388:45;;-1:-1:-1;;;3388:45:31;;-1:-1:-1;;;;;3388:3:31;;;;:21;;:45;;3418:7;;;840:42:30;;3388:45:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3381:53;;;;:::i;:::-;3516:7;;3485:40;;-1:-1:-1;;;3485:40:31;;-1:-1:-1;;;;;3516:7:31;;;3485:40;;;2636:51:32;3476:53:31;;840:42:30;;3485:22:31;;2609:18:32;;3485:40:31;2490:203:32;3476:53:31;3580:3;;3549:36;;-1:-1:-1;;;3549:36:31;;-1:-1:-1;;;;;3580:3:31;;;3549:36;;;2636:51:32;3540:61:31;;840:42:30;;3549:22:31;;2609:18:32;;3549:36:31;2490:203:32;8020:1974:31;8088:9;8100:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8185:3:31;;8213:7;;8185:3;8231;8185:61;;-1:-1:-1;;;8185:61:31;;8088:23;;-1:-1:-1;;;;;;8185:3:31;;;;:19;;:61;;8213:7;;;8231:3;;8237:8;;8185:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8178:69;;;;:::i;:::-;8265:3;;8293:7;;8311:3;;8265:61;;-1:-1:-1;;;8265:61:31;;-1:-1:-1;;;;;8265:3:31;;;;:19;;:61;;8293:7;;;;8311:3;;;8317:8;;8265:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8258:69;;;;:::i;:::-;8345:3;;8373:7;;8345:61;;-1:-1:-1;;;8345:61:31;;-1:-1:-1;;;;;8345:3:31;;;;:19;;:61;;8373:7;;;8391:3;;8397:8;;8345:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8338:69;;;;:::i;:::-;8458:7;;;8484:3;8458:31;;-1:-1:-1;;;8458:31:31;;-1:-1:-1;;;;;8484:3:31;;;8458:31;;;2636:51:32;8449:52:31;;8458:7;;;;;:17;;2609:18:32;;8458:31:31;2490:203:32;8449:52:31;8521:7;;8547:3;;8521:31;;-1:-1:-1;;;8521:31:31;;-1:-1:-1;;;;;8547:3:31;;;8521:31;;;2636:51:32;8512:52:31;;8521:7;;;;;:17;;2609:18:32;;8521:31:31;2490:203:32;8512:52:31;8584:7;;:31;;-1:-1:-1;;;8584:31:31;;-1:-1:-1;;;;;2654:32:32;;;8584:31:31;;;2636:51:32;8575:52:31;;8584:7;;:17;;2609:18:32;;8584:31:31;2490:203:32;8575:52:31;8674:7;;:28;;;-1:-1:-1;;;8674:28:31;;;;8638:33;;-1:-1:-1;;;;;8674:7:31;;:26;;:28;;;;;8638:33;;8674:28;;;;;;;:7;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8674:28:31;;;;;;;;;;;;:::i;:::-;8638:64;;8713:36;8722:7;:14;8747:1;8713:8;:36::i;:::-;8760:48;8769:7;8777:1;8769:10;;;;;;;;:::i;8760:48::-;8819:44;8828:7;8836:1;8828:10;;;;;;;;:::i;8819:44::-;8874:37;8883:7;8891:1;8883:10;;;;;;;;:::i;8874:37::-;8922:48;8931:7;8939:1;8931:10;;;;;;;;:::i;:::-;;;;;;;;;;;:18;8965:3;;-1:-1:-1;;;;;8965:3:31;8922:8;:48::i;:::-;8981:44;8990:7;8998:1;8990:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9016:8;8981;:44::i;:::-;9036:37;9045:7;9053:1;9045:10;;;;;;;;:::i;9036:37::-;9084:48;9093:7;9101:1;9093:10;;;;;;;;:::i;:::-;;;;;;;:18;;;9127:3;9084:8;:48::i;:::-;9143:44;9152:7;9160:1;9152:10;;;;;;;;:::i;:::-;;;;;;;:23;;;9178:8;9143;:44::i;:::-;9198:37;9207:7;9215:1;9207:10;;;;;;;;:::i;9198:37::-;9289:3;;9320:7;;9289:3;9338;9289:54;;-1:-1:-1;;;9289:54:31;;-1:-1:-1;;;;;9289:3:31;;;;:22;;:54;;9320:7;;;;9338:3;;;9289:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9282:62;;;;:::i;:::-;9396:7;;;9422:3;9396:31;;-1:-1:-1;;;9396:31:31;;-1:-1:-1;;;;;9422:3:31;;;9396:31;;;2636:51:32;9387:53:31;;9396:7;;;;;:17;;2609:18:32;;9396:31:31;2490:203:32;9387:53:31;9460:7;;9486:3;;9460:31;;-1:-1:-1;;;9460:31:31;;-1:-1:-1;;;;;9486:3:31;;;9460:31;;;2636:51:32;9451:52:31;;9460:7;;;;;:17;;2609:18:32;;9460:31:31;2490:203:32;9451:52:31;9523:7;;:31;;-1:-1:-1;;;9523:31:31;;-1:-1:-1;;;;;2654:32:32;;;9523:31:31;;;2636:51:32;9514:52:31;;9523:7;;:17;;2609:18:32;;9523:31:31;2490:203:32;9514:52:31;9587:7;;;;;;;;;-1:-1:-1;;;;;9587:7:31;-1:-1:-1;;;;;9587:26:31;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9587:28:31;;;;;;;;;;;;:::i;:::-;9577:38;;9626:36;9635:7;:14;9660:1;9626:8;:36::i;:::-;9673:48;9682:7;9690:1;9682:10;;;;;;;;:::i;9673:48::-;9732:44;9741:7;9749:1;9741:10;;;;;;;;:::i;9732:44::-;9787:37;9796:7;9804:1;9796:10;;;;;;;;:::i;9787:37::-;9835:48;9844:7;9852:1;9844:10;;;;;;;;:::i;9835:48::-;9894:44;9903:7;9911:1;9903:10;;;;;;;;:::i;9894:44::-;9949:37;9958:7;9966:1;9958:10;;;;;;;;:::i;9949:37::-;8077:1917;;8020:1974::o;3312:184:30:-;3360:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3354:3:30;:17;;-1:-1:-1;;;;;;3354:17:30;-1:-1:-1;;;;;3354:17:30;;;;;;;;;;3401:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3395:3:30;:17;;-1:-1:-1;;;;;;3395:17:30;-1:-1:-1;;;;;3395:17:30;;;;;;;;;;3468:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3462:3:30;:17;;-1:-1:-1;;;;;;3462:17:30;-1:-1:-1;;;;;3462:17:30;;;;;;;;;;3312:184::o;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;1980:374;;2196:43;;2023:20;;-1:-1:-1;;;;;;;;;;;1671:64:0;2135:34;;2196:43;;1671:64;;-1:-1:-1;;;2221:17:0;2196:43;;;:::i;:::-;;;;-1:-1:-1;;2196:43:0;;;;;;;;;;2086:175;;;2196:43;2086:175;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;5861:159:30:-;5947:7;5974:38;5991:3;5996;6001;6006:5;5974:16;:38::i;:::-;5967:45;;5861:159;;;;;;:::o;19211:2093:31:-;19293:48;19299:7;19308:13;19323:17;19293:5;:48::i;:::-;19283:58;;19413:57;19418:7;;;;;;;;;-1:-1:-1;;;;;19418:7:31;-1:-1:-1;;;;;19418:18:31;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19448:7;;-1:-1:-1;;;;;19448:7:31;19458:11;:7;19468:1;19458:11;:::i;19413:57::-;19516:3;;19546:7;;19516:39;;-1:-1:-1;;;19516:39:31;;-1:-1:-1;;;;;19546:7:31;;;19516:39;;;2636:51:32;19516:3:31;;;:21;;2609:18:32;;19516:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19509:47;;;;:::i;:::-;19665:3;;19693:7;;19711:3;;19665:60;;-1:-1:-1;;;19665:60:31;;-1:-1:-1;;;;;19665:3:31;;;;:19;;:60;;19693:7;;;;19711:3;;;19717:7;;19665:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19658:68;;;;:::i;:::-;19778:3;;19806:7;;19778:3;19824;19778:60;;-1:-1:-1;;;19778:60:31;;-1:-1:-1;;;;;19778:3:31;;;;:19;;:60;;19806:7;;;;19824:3;;;19830:7;;19778:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19771:68;;;;:::i;:::-;19891:3;;19919:7;;19891:60;;-1:-1:-1;;;19891:60:31;;-1:-1:-1;;;;;19891:3:31;;;;:19;;:60;;19919:7;;;19891:3;;19943:7;;19891:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19884:68;;;;:::i;:::-;20027:13;20032:7;20027:4;:13::i;:::-;20058:3;;20080:7;;20058:31;;-1:-1:-1;;;20058:31:31;;-1:-1:-1;;;;;20080:7:31;;;20058:31;;;2636:51:32;20058:3:31;;;:13;;2609:18:32;;20058:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20051:39;;;;:::i;:::-;20185:7;;:20;;;-1:-1:-1;;;20185:20:31;;;;20167:95;;-1:-1:-1;;;;;20185:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;20167:95;20327:14;20332:8;20327:4;:14::i;:::-;20413:3;;20435:7;;20413:31;;-1:-1:-1;;;20413:31:31;;-1:-1:-1;;;;;20435:7:31;;;20413:31;;;2636:51:32;20413:3:31;;;:13;;2609:18:32;;20413:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20406:39;;;;:::i;:::-;20540:7;;:20;;;-1:-1:-1;;;20540:20:31;;;;20522:95;;-1:-1:-1;;;;;20540:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20580:3;;20533:52;;-1:-1:-1;;;20533:52:31;;-1:-1:-1;;;;;20580:3:31;;;20533:52;;;2636:51:32;20533:38:31;;;;;2609:18:32;;20533:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20603:3;20588:12;:7;20598:2;20588:12;:::i;20522:95::-;20683:14;20688:8;20683:4;:14::i;:::-;20795:3;;20817:7;;20795:31;;-1:-1:-1;;;20795:31:31;;-1:-1:-1;;;;;20817:7:31;;;20795:31;;;2636:51:32;20795:3:31;;;:13;;2609:18:32;;20795:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20788:39;;;;:::i;:::-;20909:7;;:20;;;-1:-1:-1;;;20909:20:31;;;;20893:71;;-1:-1:-1;;;;;20909:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20949:3;;20902:52;;-1:-1:-1;;;20902:52:31;;-1:-1:-1;;;;;20949:3:31;;;20902:52;;;2636:51:32;20902:38:31;;;;;2609:18:32;;20902:52:31;2490:203:32;20893:71:31;21009:14;21014:8;21009:4;:14::i;:::-;21117:3;;21139:7;;21117:31;;-1:-1:-1;;;21117:31:31;;-1:-1:-1;;;;;21139:7:31;;;21117:31;;;2636:51:32;21117:3:31;;;:13;;2609:18:32;;21117:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21110:39;;;;:::i;:::-;21239:7;;:20;;;-1:-1:-1;;;21239:20:31;;;;21223:71;;-1:-1:-1;;;;;21239:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21279:3;;21232:52;;-1:-1:-1;;;21232:52:31;;-1:-1:-1;;;;;21279:3:31;;;21232:52;;;2636:51:32;21232:38:31;;;;;2609:18:32;;21232:52:31;2490:203:32;10774:1093:31;10981:3;;11009:7;;11027:3;;10981:60;;-1:-1:-1;;;10981:60:31;;10917:15;;-1:-1:-1;;;;;10981:3:31;;;;:19;;:60;;11009:7;;;;11027:3;;10917:15;;10981:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10974:68;;;;:::i;:::-;11107:7;;11139:3;;11107:37;;-1:-1:-1;;;11107:37:31;;-1:-1:-1;;;;;11139:3:31;;;11107:37;;;2636:51:32;11098:56:31;;11107:7;;;;;:23;;2609:18:32;;11107:37:31;2490:203:32;11098:56:31;11201:3;;11231:7;;11201:39;;-1:-1:-1;;;11201:39:31;;-1:-1:-1;;;;;11231:7:31;;;11201:39;;;2636:51:32;11201:3:31;;;:21;;2609:18:32;;11201:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11194:47;;;;:::i;:::-;11280:14;11285:8;11280:4;:14::i;:::-;11360:15;11421:3;11407:11;:7;11417:1;11407:11;:::i;:::-;:17;;;;:::i;:::-;11402:23;;:1;:23;:::i;:::-;11394:3;11379:12;:7;11389:2;11379:12;:::i;:::-;:18;;;;:::i;:::-;11378:48;;;;:::i;:::-;11446:7;;11479:3;;11446:38;;-1:-1:-1;;;11446:38:31;;-1:-1:-1;;;;;11479:3:31;;;11446:38;;;2636:51:32;11360:66:31;;-1:-1:-1;11437:57:31;;11446:7;;;:24;;2609:18:32;;11446:38:31;2490:203:32;11437:57:31;11583:14;11588:8;11583:4;:14::i;:::-;11718:3;11704:11;:7;11714:1;11704:11;:::i;:::-;:17;;;;:::i;:::-;11698:24;;:2;:24;:::i;:::-;11690:3;11675:12;:7;11685:2;11675:12;:::i;:::-;:18;;;;:::i;:::-;11674:49;;;;:::i;:::-;11743:7;;11776:3;;11743:38;;-1:-1:-1;;;11743:38:31;;-1:-1:-1;;;;;11776:3:31;;;11743:38;;;2636:51:32;11664:59:31;;-1:-1:-1;11734:57:31;;11743:7;;;:24;;2609:18:32;;11743:38:31;2490:203:32;11734:57:31;11811:7;;11844:3;;11811:38;;-1:-1:-1;;;11811:38:31;;-1:-1:-1;;;;;11844:3:31;;;11811:38;;;2636:51:32;11802:57:31;;11811:7;;;;;:24;;2609:18:32;;11811:38:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11851:7;11802:8;:57::i;15044:2052::-;15167:7;;:20;;;-1:-1:-1;;;15167:20:31;;;;15162:61;;-1:-1:-1;;;;;15167:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;15162:61;15269:3;;15299:7;;15269:39;;-1:-1:-1;;;15269:39:31;;-1:-1:-1;;;;;15299:7:31;;;15269:39;;;2636:51:32;15269:3:31;;;:21;;2609:18:32;;15269:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15262:47;;;;:::i;:::-;15418:3;;15446:7;;15464:3;;15418:68;;-1:-1:-1;;;15418:68:31;;-1:-1:-1;;;;;15418:3:31;;;;:19;;:68;;15446:7;;;;15464:3;;;15470:15;;15418:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15411:76;;;;:::i;:::-;15539:3;;15567:7;;15539:3;15585;15539:68;;-1:-1:-1;;;15539:68:31;;-1:-1:-1;;;;;15539:3:31;;;;:19;;:68;;15567:7;;;;15585:3;;;15591:15;;15539:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15532:76;;;;:::i;:::-;15660:3;;15688:7;;15660:68;;-1:-1:-1;;;15660:68:31;;-1:-1:-1;;;;;15660:3:31;;;;:19;;:68;;15688:7;;;15660:3;;15712:15;;15660:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15653:76;;;;:::i;:::-;15804:13;15809:7;15804:4;:13::i;:::-;15835:3;;15857:7;;15835:31;;-1:-1:-1;;;15835:31:31;;-1:-1:-1;;;;;15857:7:31;;;15835:31;;;2636:51:32;15835:3:31;;;:13;;2609:18:32;;15835:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15828:39;;;;:::i;:::-;15960:7;;:20;;;-1:-1:-1;;;15960:20:31;;;;15944:93;;-1:-1:-1;;;;;15960:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16000:3;;15953:52;;-1:-1:-1;;;15953:52:31;;-1:-1:-1;;;;;16000:3:31;;;15953:52;;;2636:51:32;15953:38:31;;;;;2609:18:32;;15953:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16008:26;15944:8;:93::i;:::-;16102:14;16107:8;16102:4;:14::i;:::-;16188:3;;16210:7;;16188:31;;-1:-1:-1;;;16188:31:31;;-1:-1:-1;;;;;16210:7:31;;;16188:31;;;2636:51:32;16188:3:31;;;:13;;2609:18:32;;16188:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16181:39;;;;:::i;:::-;16313:7;;:20;;;-1:-1:-1;;;16313:20:31;;;;16297:92;;-1:-1:-1;;;;;16313:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16353:3;;16306:52;;-1:-1:-1;;;16306:52:31;;-1:-1:-1;;;;;16353:3:31;;;16306:52;;;2636:51:32;16306:38:31;;;;;2609:18:32;;16306:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16361:26;16297:8;:92::i;:::-;16455:14;16460:8;16455:4;:14::i;:::-;16567:3;;16589:7;;16567:31;;-1:-1:-1;;;16567:31:31;;-1:-1:-1;;;;;16589:7:31;;;16567:31;;;2636:51:32;16567:3:31;;;:13;;2609:18:32;;16567:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16560:39;;;;:::i;:::-;16681:7;;:20;;;-1:-1:-1;;;16681:20:31;;;;16665:81;;-1:-1:-1;;;;;16681:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16721:3;;16674:52;;-1:-1:-1;;;16674:52:31;;-1:-1:-1;;;;;16721:3:31;;;16674:52;;;2636:51:32;16674:38:31;;;;;2609:18:32;;16674:52:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16729:15;16665:8;:81::i;:::-;16791:14;16796:8;16791:4;:14::i;:::-;16899:3;;16921:7;;16899:31;;-1:-1:-1;;;16899:31:31;;-1:-1:-1;;;;;16921:7:31;;;16899:31;;;2636:51:32;16899:3:31;;;:13;;2609:18:32;;16899:31:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16892:39;;;;:::i;:::-;17021:7;;:20;;;-1:-1:-1;;;17021:20:31;;;;17005:81;;-1:-1:-1;;;;;17021:7:31;;:18;;:20;;;;;;;;;;;;;;:7;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17061:3;;17014:52;;-1:-1:-1;;;17014:52:31;;-1:-1:-1;;;;;17061:3:31;;;17014:52;;;2636:51:32;17014:38:31;;;;;2609:18:32;;17014:52:31;2490:203:32;3620:551:30;3663:6;:14;;;:26;;-1:-1:-1;;;;;;3663:26:30;;;840:42;3663:26;;;;3722:1;3700:19;:23;3736:13;:24;;;;914:42;3736:24;;;3792:1;3771:18;:22;3804:18;:63;;;;3825:42;3804:63;;;3880:14;:26;;;;988:42;3880:26;;;3939:1;3917:19;:23;3951:19;:64;;;;3973:42;3951:64;;;-1:-1:-1;;;3663:14:30;4028;;;;:26;;;;1062:42;4028:26;;;4065:19;:23;4099:19;:64;;;;;4121:42;4099:64;;;3620:551::o;825:596:31:-;961:3;;991:7;;961:39;;-1:-1:-1;;;961:39:31;;-1:-1:-1;;;;;991:7:31;;;961:39;;;2636:51:32;961:3:31;;;:21;;2609:18:32;;961:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;960:40;953:48;;;;:::i;:::-;1081:3;;1111:7;;1081:39;;-1:-1:-1;;;1081:39:31;;-1:-1:-1;;;;;1111:7:31;;;1081:39;;;2636:51:32;1081:3:31;;;:21;;2609:18:32;;1081:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1080:40;1073:48;;;;:::i;:::-;1216:3;;1246:7;;1216:39;;-1:-1:-1;;;1216:39:31;;-1:-1:-1;;;;;1246:7:31;;;1216:39;;;2636:51:32;1216:3:31;;;:21;;2609:18:32;;1216:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1209:47;;;;:::i;:::-;1373:3;;1403:7;;1373:39;;-1:-1:-1;;;1373:39:31;;-1:-1:-1;;;;;1403:7:31;;;1373:39;;;2636:51:32;1373:3:31;;;:21;;2609:18:32;;1373:39:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1372:40;1365:48;;;;:::i;789:312:3:-;859:1;854:6;;:1;:6;;;850:245;;881:41;;;;;18264:2:32;18246:21;;;18303:2;18283:18;;;18276:30;18342:34;18337:2;18322:18;;18315:62;-1:-1:-1;;;18408:2:32;18393:18;;18386:32;18450:3;18435:19;;18062:398;881:41:3;;;;;;;;941:52;972:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:3;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;972:20:3;;;;941:52;;;;;;:::i;:::-;;;;;;;;1012;1043:1;:20;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:3;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1043:20:3;;;;1012:52;;;;;;:::i;:::-;;;;;;;;1078:6;:4;:6::i;5202:262:0:-;5264:1;5259;:6;5255:203;;5286:41;;;;;19833:2:32;19815:21;;;19872:2;19852:18;;;19845:30;19911:34;19906:2;19891:18;;19884:62;-1:-1:-1;;;19977:2:32;19962:18;;19955:32;20019:3;20004:19;;19631:398;5286:41:0;;;;;;;;-1:-1:-1;;;;;;;;;;;5375:1:0;5346:31;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;;;;;;;5425:1:0;5396:31;;;;;;:::i;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:0;:1;-1:-1:-1;;;;;3678:6:0;;3674:212;;3705:44;;;;;20236:2:32;20218:21;;;20275:2;20255:18;;;20248:30;20314:34;20309:2;20294:18;;20287:62;-1:-1:-1;;;20380:2:32;20365:18;;20358:35;20425:3;20410:19;;20034:401;3705:44:0;;;;;;;;3768:34;3800:1;3768:34;;;;;;:::i;:::-;;;;;;;;3821;3853:1;3821:34;;;;;;:::i;2410:424::-;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;2445:359;;2645:67;;2482:11;;-1:-1:-1;;;;;;;;;;;1671:64:0;2579:43;;2645:67;;1671:64;;-1:-1:-1;;;2670:17:0;2705:4;;2645:67;;;:::i;:::-;;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;19453:117:5:-;19535:28;19540:5;19547:2;19551:4;19557:5;19535:4;:28::i;:::-;19453:117;;;:::o;17530:93::-;-1:-1:-1;;;;;;;;;;;17585:7:5;17593:22;17611:4;17593:15;:22;:::i;:::-;17585:31;;;;;;;;;;;;;1244:25:32;;1232:2;1217:18;;1098:177;17585:31:5;;;;;;;;;;;;;;;;;;;;1880:190:10;1963:14;1998:19;2005:1;2008:3;2013;1998:6;:19::i;:::-;1989:28;;2027:36;;;;;;;;;;;;;;-1:-1:-1;;;2027:36:10;;;2056:6;2027:12;:36::i;19576:825:5:-;19740:38;;;-1:-1:-1;;;;;2654:32:32;;;19740:38:5;;;;2636:51:32;;;;19740:38:5;;;;;;;;;;2609:18:32;;;;19740:38:5;;;;;;;-1:-1:-1;;;;;19740:38:5;-1:-1:-1;;;19740:38:5;;;19729:50;;19705:20;;19729:10;;;:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19702:77;;;19789:15;19818:7;19807:30;;;;;;;;;;;;:::i;:::-;19789:48;-1:-1:-1;19874:71:5;19940:4;19874:51;19922:2;19874:38;-1:-1:-1;;;19874:22:5;:8;19890:5;19874:15;:22::i;:::-;:26;;:38::i;:::-;:47;;:51::i;:::-;:65;;:71::i;:::-;19991:6;19987:408;;;20054:34;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20054:34:5;-1:-1:-1;;;20054:34:5;;;20043:46;;20016:23;;-1:-1:-1;;;;;20043:10:5;;;:46;;20054:34;20043:46;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20013:76;;;20103:14;20131:10;20120:33;;;;;;;;;;;;:::i;:::-;20103:50;;20178:7;20171:4;:14;20167:144;;;20216:14;20226:4;20216:7;:14;:::i;:::-;20205:26;;;;:::i;:::-;;;20167:144;;;20281:14;20288:7;20281:4;:14;:::i;:::-;20270:26;;;;:::i;:::-;;;20167:144;20324:60;20377:6;20324:38;-1:-1:-1;;;20324:22:5;:8;20340:5;20324:15;:22::i;:60::-;19999:396;;19661:740;;19576:825;;;;:::o;611:1263:10:-;695:14;736:3;729;:10;;721:85;;;;-1:-1:-1;;;721:85:10;;21400:2:32;721:85:10;;;21382:21:32;21439:2;21419:18;;;21412:30;21478:34;21458:18;;;21451:62;21549:32;21529:18;;;21522:60;21599:19;;721:85:10;;;;;;;;;1040:3;1035:1;:8;;:20;;;;;1052:3;1047:1;:8;;1035:20;1031:34;;;-1:-1:-1;1064:1:10;1057:8;;1031:34;1076:12;1091:9;1097:3;1091;:9;:::i;:::-;:13;;1103:1;1091:13;:::i;:::-;1076:28;;1299:1;1294;:6;;:18;;;;;1311:1;1304:4;:8;1294:18;1290:38;;;1321:7;1327:1;1321:3;:7;:::i;:::-;1314:14;;;;;1290:38;1347:15;1361:1;-1:-1:-1;;1347:15:10;:::i;:::-;1342:1;:20;;:46;;;;-1:-1:-1;1373:15:10;1387:1;-1:-1:-1;;1373:15:10;:::i;:::-;1366:4;:22;1342:46;1338:82;;;1404:15;1418:1;-1:-1:-1;;1404:15:10;:::i;:::-;1397:23;;:3;:23;:::i;1338:82::-;1524:3;1520:1;:7;1516:352;;;1543:12;1558:7;1562:3;1558:1;:7;:::i;:::-;1543:22;-1:-1:-1;1579:11:10;1593;1600:4;1543:22;1593:11;:::i;:::-;1579:25;;1622:3;1629:1;1622:8;1618:24;;1639:3;1632:10;;;;;;;1618:24;1677:1;1665:9;1671:3;1665;:9;:::i;:::-;:13;;;;:::i;:::-;1656:22;;1529:160;;1516:352;;;1703:3;1699:1;:7;1695:173;;;1722:12;1737:7;1743:1;1737:3;:7;:::i;:::-;1722:22;-1:-1:-1;1758:11:10;1772;1779:4;1722:22;1772:11;:::i;:::-;1758:25;;1801:3;1808:1;1801:8;1797:24;;1818:3;1811:10;;;;;;;1797:24;1844:9;1850:3;1844;:9;:::i;:::-;:13;;1856:1;1844:13;:::i;:::-;1835:22;;1708:160;;1695:173;711:1163;611:1263;;;;;:::o;6307:207::-;6383:11;297:42;-1:-1:-1;;;;;6399:36:10;6483:2;6487;6436:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;6436:54:10;;;;;;;;;;;;;;-1:-1:-1;;;;;6436:54:10;-1:-1:-1;;;6436:54:10;;;6399:92;;;6436:54;6399:92;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7708:156:9;4581:12;;;:22;;-1:-1:-1;;;;;;4581:22:9;-1:-1:-1;;;;;4581:22:9;;;;;-1:-1:-1;4581:12:9;7821:36;7814:43;;7708:156;;;;;:::o;7870:143::-;4736:9;;;:16;;-1:-1:-1;;4736:16:9;;;;;;;;-1:-1:-1;4736:9:9;7976:30;4637:143;8175:152;5052:10;;;:47;;;;;;;8249:18;5052:47;;;;;;-1:-1:-1;;;;;5076:21:9;;5052:47;;;8310:4;8286:34;4948:179;8951:120;9031:33;9045:4;9059:3;9399:12;;;;9435:9;;;;9476:11;;;;9520:10;;;9497:33;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9399:12:9;;;;9435:9;;;;;;9385:11;;9497:33;;9520:10;;9497:33;;9520:10;9497:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9541:17;9578:4;9584:12;9592:3;9584:7;:12::i;:::-;9561:36;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;9561:36:9;;;;;;;;;-1:-1:-1;;;;;9612:15:9;;;;;;:10;;;9561:36;9612:15;;;;;;-1:-1:-1;;;;;;9612:21:9;;;;;;;;;9561:36;;-1:-1:-1;9612:21:9;;:15;;9644:34;;9661:3;;9666:11;;9644:34;;:::i;:::-;;;;-1:-1:-1;;9644:34:9;;;;;;;;;9634:45;;9644:34;9634:45;;;;9612:68;;;;;;;;;;-1:-1:-1;9612:68:9;;;;9607:110;;9696:10;9701:4;9696;:10::i;:::-;;9607:110;-1:-1:-1;;;;;9749:15:9;;9726:12;9749:15;;;;;;;;;;;-1:-1:-1;;;;;;9749:21:9;;;;;;;;;9781:34;;9749:21;;9726:12;;9781:34;;9798:3;;9803:11;;9781:34;;:::i;:::-;;;;;;;;;;;;;9771:45;;;;;;9749:68;;;;;;;;;;;;9741:77;;9726:92;;9829:12;9868:17;9889:3;-1:-1:-1;;;;;9889:14:9;9904:4;9889:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9865:44:9;-1:-1:-1;9930:38:9;;-1:-1:-1;9865:44:9;9951:16;9956:11;9951:2;:16;:::i;:::-;9930:14;:38::i;:::-;10003:18;;-1:-1:-1;;;10003:18:9;;9923:45;;-1:-1:-1;9988:12:9;;-1:-1:-1;;;;;;;;;;;;10003:7:9;;;:18;;10011:3;;10016:4;;10003:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9988:33;;10044:4;10036;:12;10032:218;;10064:175;;-1:-1:-1;;;10064:175:9;;;;;;;:::i;:::-;10259:24;;-1:-1:-1;;;10259:24:9;;-1:-1:-1;;;;;;;;;;;10259:8:9;;;:24;;10268:3;;10273:4;;10279:3;;10259:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;10300:12:9;;;10293:19;;-1:-1:-1;;;;;;10293:19:9;;;-1:-1:-1;10329:9:9;;;10322:16;;-1:-1:-1;;10322:16:9;;;10348:17;-1:-1:-1;10355:10:9;;10300:12;10348:17;:::i;:::-;10382:4;:11;;10375:18;;;9375:1025;;;;;;;;9305:1095;;:::o;11479:393::-;11538:12;11562:19;11594:1;:8;11605:2;11594:13;;;;:::i;:::-;11584:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11584:24:9;;11562:46;;11623:9;11618:224;11642:1;:8;11638:1;:12;11618:224;;;11671:9;11683:1;11685;11683:4;;;;;;;;:::i;:::-;;;;;;;11671:16;;11816:1;11810;11806:2;11802:10;11798:2;11794:19;11786:6;11782:32;11775:43;11757:75;11652:3;;;;;:::i;:::-;;;;11618:224;;;-1:-1:-1;11859:6:9;11479:393;-1:-1:-1;;11479:393:9:o;7587:115::-;7644:7;7670:25;7690:4;7670:19;:25::i;11118:304::-;11196:7;11215:11;11237;11262:2;11251:1;:8;:13;:29;;11272:1;:8;11251:29;;;11267:2;11251:29;11237:43;;11295:9;11290:106;11314:3;11310:1;:7;11290:106;;;11379:5;:1;11383;11379:5;:::i;:::-;11353:1;11355:10;11364:1;11355:6;:10;:::i;:::-;11353:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;11353:13:9;11345:40;;11338:47;;;;;11319:3;;;;:::i;:::-;;;;11290:106;;;-1:-1:-1;11412:3:9;;11118:304;-1:-1:-1;;;;11118:304:9:o;1264:3205::-;1354:12;;;;1390:9;;;;1431:11;;;;1475:10;;;1452:33;;;;;;;;;;;;;;;;;;;1321:7;;-1:-1:-1;;;;;1354:12:9;;1390:9;;;1431:11;1321:7;;1452:33;;1475:10;;1452:33;;;1475:10;1452:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;1536:15:9;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;1536:21:9;;;;;;;;;1568:34;;1452:33;;-1:-1:-1;1536:21:9;:15;;-1:-1:-1;1568:34:9;;-1:-1:-1;1452:33:9;;1590:11;;1568:34;;:::i;:::-;;;;-1:-1:-1;;1568:34:9;;;;;;;;;1558:45;;1568:34;1558:45;;;;1536:68;;;;;;;;;;-1:-1:-1;1536:68:9;;;;1532:174;;;-1:-1:-1;;;;;1627:15:9;;:10;:15;;;;;;;;;;;-1:-1:-1;;;;;;1627:21:9;;;;;;;;;1659:34;;1627:21;;:10;1659:34;;1676:3;;1681:11;;1659:34;;:::i;:::-;;;;;;;;;;;;;1649:45;;;;;;1627:68;;;;;;;;;;;;1620:75;;;;;;1264:3205;;;:::o;1532:174::-;1715:17;1752:4;1758:12;1766:3;1758:7;:12::i;:::-;1735:36;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1715:56;;-1:-1:-1;;;;;;;;;;;580:37:9;;-1:-1:-1;;;;;1781:9:9;;:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1802:12;1841:17;1862:3;-1:-1:-1;;;;;1862:14:9;1877:4;1862:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1838:44:9;-1:-1:-1;1903:38:9;;-1:-1:-1;1838:44:9;1924:16;1929:11;1924:2;:16;:::i;:::-;1903:14;:38::i;:::-;1990:25;;-1:-1:-1;;;1990:25:9;;-1:-1:-1;;;;;2654:32:32;;1990:25:9;;;2636:51:32;1896:45:9;;-1:-1:-1;1963:22:9;;-1:-1:-1;;;;;;;;;;;;1990:11:9;;;2609:18:32;;1990:25:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1990:25:9;;;;;;;;;;;;:::i;:::-;1962:53;;;2029:5;:12;2045:1;2029:17;2025:2068;;2062:12;-1:-1:-1;;;;;;;;;;;580:37:9;;-1:-1:-1;;;;;2077:7:9;;2085:3;2090:5;2096:1;2090:8;;;;;;;;:::i;:::-;;;;;;;2077:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2062:37;-1:-1:-1;2062:37:9;2113:106;;2160:44;2181:3;2194:5;2200:1;2194:8;;;;;;;;:::i;:::-;;;;;;;2186:17;;2160:44;;;;;;;:::i;:::-;;;;;;;;2113:106;2244:4;2236;:12;2232:238;;2268:187;;-1:-1:-1;;;2268:187:9;;;;;;;:::i;:::-;2488:86;2498:3;2503:4;2536:3;2541:11;2519:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2509:45;;;;;;2564:5;2570:1;2564:8;;;;;;;;:::i;:::-;;;;;;;2556:17;;2488:86;;;;;;;;;:::i;:::-;;;;;;;;2667:5;2673:1;2667:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;2588:15:9;;2659:17;2588:15;;;;;;;;;;-1:-1:-1;;;;;;2588:21:9;;;;;;;;;2620:34;;2667:8;;2588:21;;2620:34;;2637:3;;2642:11;;2620:34;;:::i;:::-;;;;-1:-1:-1;;2620:34:9;;;;;;;;;2610:45;;2620:34;2610:45;;;;2588:68;;;;;;;;;;;;-1:-1:-1;2588:68:9;;;:88;;;;-1:-1:-1;;;;;2690:15:9;;;;2761:4;2690:10;;;:15;;;;;-1:-1:-1;;;;;;2690:21:9;;;;;;;;;2722:34;;2761:4;;-1:-1:-1;2722:34:9;;2739:3;;2744:11;;2722:34;;:::i;:::-;;;;;;;-1:-1:-1;;2722:34:9;;;;;;2712:45;;2722:34;2712:45;;;;2690:68;;;;;;;;;;-1:-1:-1;2690:68:9;:75;;-1:-1:-1;;2690:75:9;;;;;;;;;;-1:-1:-1;2025:2068:9;;;2801:1;2786:5;:12;:16;2782:1311;;;2823:9;2818:1152;2842:5;:12;2838:1;:16;2818:1152;;;2879:12;-1:-1:-1;;;;;;;;;;;580:37:9;;-1:-1:-1;;;;;2894:7:9;;2902:3;2907:5;2913:1;2907:8;;;;;;;;:::i;:::-;;;;;;;2894:22;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2879:37;-1:-1:-1;2879:37:9;2934:114;;2985:44;3006:3;3019:5;3025:1;3019:8;;;;;;;;:::i;:::-;;;;;;;3011:17;;2985:44;;;;;;;:::i;:::-;;;;;;;;2934:114;-1:-1:-1;;;;;;;;;;;580:37:9;;-1:-1:-1;;;;;3090:8:9;;3099:3;3104:5;3110:1;3104:8;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;3090:43:9;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3151:12;3181:17;3256:3;-1:-1:-1;;;;;3256:14:9;3271:4;3256:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3238:38:9;;-1:-1:-1;3238:38:9;-1:-1:-1;3305:38:9;3238;3326:16;3331:11;3326:2;:16;:::i;3305:38::-;3298:45;;3384:7;:37;;;;;-1:-1:-1;;;3395:4:9;:26;3384:37;3380:529;;;3519:86;3529:3;3534:4;3567:3;3572:11;3550:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3540:45;;;;;;3595:5;3601:1;3595:8;;;;;;;;:::i;:::-;;;;;;;3587:17;;3519:86;;;;;;;;;:::i;:::-;;;;;;;;3706:5;3712:1;3706:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;3627:15:9;;3698:17;3627:15;;;;;;;;;;-1:-1:-1;;;;;;3627:21:9;;;;;;;;;3659:34;;3706:8;;3627:21;;3659:34;;3676:3;;3681:11;;3659:34;;:::i;:::-;;;;;;;;;;;;;3649:45;;;;;;3627:68;;;;;;;;;;;:88;;;;3808:4;3737;:10;;:15;3748:3;-1:-1:-1;;;;;3737:15:9;-1:-1:-1;;;;;3737:15:9;;;;;;;;;;;;:21;3753:4;-1:-1:-1;;;;;3737:21:9;;-1:-1:-1;;;;;3737:21:9;;;;;;;;;;;;;:68;3786:3;3791:11;3769:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3759:45;;;;;;3737:68;;;;;;;;;;;;:75;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;580:37:9;;-1:-1:-1;;;;;3834:8:9;;3843:3;3848:5;3854:1;3848:8;;;;;;;;:::i;:::-;;;;;;;3858:4;3834:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3885:5;;;;;3380:529;-1:-1:-1;;;;;;;;;;;580:37:9;;-1:-1:-1;;;;;3926:8:9;;3935:3;3940:5;3946:1;3940:8;;;;;;;;:::i;:::-;;;;;;;3950:4;3926:29;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2861:1109;;;2856:3;;;;;:::i;:::-;;;;2818:1152;;;;2782:1311;;;4000:82;;;-1:-1:-1;;;4000:82:9;;25370:2:32;4000:82:9;;;25352:21:32;25389:18;;;25382:30;;;;25448:34;25428:18;;;25421:62;25519:34;25499:18;;;25492:62;25571:19;;4000:82:9;25168:428:32;4000:82:9;-1:-1:-1;;;;;4124:15:9;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;4124:21:9;;;;;;;;;4156:34;;4124:21;;:15;4156:34;;4173:3;;4178:11;;4156:34;;:::i;:::-;;;;-1:-1:-1;;4156:34:9;;;;;;;;;4146:45;;4156:34;4146:45;;;;4124:68;;;;;;;;;;-1:-1:-1;4124:68:9;;;;4103:162;;;;-1:-1:-1;;;4103:162:9;;25803:2:32;4103:162:9;;;25785:21:32;25842:2;25822:18;;;25815:30;25881:34;25861:18;;;25854:62;-1:-1:-1;;;25932:18:32;;;25925:45;25987:19;;4103:162:9;25601:411:32;4103:162:9;4283:12;;;4276:19;;-1:-1:-1;;;;;;4276:19:9;;;4312:9;;;4305:16;;-1:-1:-1;;4305:16:9;;;4331:17;-1:-1:-1;4338:10:9;;4283:12;4331:17;:::i;:::-;4358:18;4365:11;;;4358:18;;;-1:-1:-1;;;;;4394:15:9;;;;;;;;;;;;-1:-1:-1;;;;;;4394:21:9;;;;;;;;;4426:34;;4394:21;;4358:18;4426:34;;4443:3;;4448:11;;4426:34;;:::i;:::-;;;;;;;;;;;;;4416:45;;;;;;4394:68;;;;;;;;;;;;4387:75;;;;;;;;;1264:3205;;;:::o;6950:393::-;7009:12;7033:19;7065:1;:8;7076:2;7065:13;;;;:::i;:::-;7055:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7055:24:9;;7033:46;;7094:9;7089:224;7113:1;:8;7109:1;:12;7089:224;;;7142:9;7154:1;7156;7154:4;;;;;;;;:::i;:::-;;;;;;;7142:16;;7287:1;7281;7277:2;7273:10;7269:2;7265:19;7257:6;7253:32;7246:43;7228:75;7123:3;;;;;:::i;:::-;;;;7089:224;;6640:304;6718:7;6737:11;6759;6784:2;6773:1;:8;:13;:29;;6794:1;:8;6773:29;;;6789:2;6773:29;6759:43;;6817:9;6812:106;6836:3;6832:1;:7;6812:106;;;6901:5;:1;6905;6901:5;:::i;:::-;6875:1;6877:10;6886:1;6877:6;:10;:::i;:::-;6875:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6875:13:9;6867:40;;6860:47;;;;;6841:3;;;;:::i;:::-;;;;6812:106;;-1:-1:-1;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;203:316:32:-;280:6;288;296;349:2;337:9;328:7;324:23;320:32;317:52;;;365:1;362;355:12;317:52;-1:-1:-1;;388:23:32;;;458:2;443:18;;430:32;;-1:-1:-1;509:2:32;494:18;;;481:32;;203:316;-1:-1:-1;203:316:32:o;524:118::-;610:5;603:13;596:21;589:5;586:32;576:60;;632:1;629;622:12;647:446;730:6;738;746;754;807:3;795:9;786:7;782:23;778:33;775:53;;;824:1;821;814:12;775:53;860:9;847:23;837:33;;917:2;906:9;902:18;889:32;879:42;;968:2;957:9;953:18;940:32;930:42;;1022:2;1011:9;1007:18;994:32;1035:28;1057:5;1035:28;:::i;:::-;647:446;;;;-1:-1:-1;647:446:32;;-1:-1:-1;;647:446:32:o;1280:131::-;-1:-1:-1;;;;;1355:31:32;;1345:42;;1335:70;;1401:1;1398;1391:12;1416:383;1493:6;1501;1509;1562:2;1550:9;1541:7;1537:23;1533:32;1530:52;;;1578:1;1575;1568:12;1530:52;1614:9;1601:23;1591:33;;1674:2;1663:9;1659:18;1646:32;1687:31;1712:5;1687:31;:::i;:::-;1416:383;;1737:5;;-1:-1:-1;;;1789:2:32;1774:18;;;;1761:32;;1416:383::o;1804:180::-;1863:6;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;-1:-1:-1;1955:23:32;;1804:180;-1:-1:-1;1804:180:32:o;2181:304::-;-1:-1:-1;;;;;2411:15:32;;;2393:34;;2463:15;;2458:2;2443:18;;2436:43;2343:2;2328:18;;2181:304::o;2698:245::-;2765:6;2818:2;2806:9;2797:7;2793:23;2789:32;2786:52;;;2834:1;2831;2824:12;2786:52;2866:9;2860:16;2885:28;2907:5;2885:28;:::i;2948:127::-;3009:10;3004:3;3000:20;2997:1;2990:31;3040:4;3037:1;3030:15;3064:4;3061:1;3054:15;3080:253;3152:2;3146:9;3194:4;3182:17;;3229:18;3214:34;;3250:22;;;3211:62;3208:88;;;3276:18;;:::i;:::-;3312:2;3305:22;3080:253;:::o;3338:275::-;3409:2;3403:9;3474:2;3455:13;;-1:-1:-1;;3451:27:32;3439:40;;3509:18;3494:34;;3530:22;;;3491:62;3488:88;;;3556:18;;:::i;:::-;3592:2;3585:22;3338:275;;-1:-1:-1;3338:275:32:o;3618:191::-;3686:4;3719:18;3711:6;3708:30;3705:56;;;3741:18;;:::i;:::-;-1:-1:-1;3786:1:32;3782:14;3798:4;3778:25;;3618:191::o;3814:1368::-;3936:6;3967:2;4010;3998:9;3989:7;3985:23;3981:32;3978:52;;;4026:1;4023;4016:12;3978:52;4059:9;4053:16;4092:18;4084:6;4081:30;4078:50;;;4124:1;4121;4114:12;4078:50;4147:22;;4200:4;4192:13;;4188:27;-1:-1:-1;4178:55:32;;4229:1;4226;4219:12;4178:55;4258:2;4252:9;4281:68;4297:51;4345:2;4297:51;:::i;:::-;4281:68;:::i;:::-;4383:15;;;4445:4;4484:11;;;4476:20;;4472:29;;;4414:12;;;;4371:3;4513:19;;;4510:39;;;4545:1;4542;4535:12;4510:39;4569:11;;;;4589:563;4605:6;4600:3;4597:15;4589:563;;;4685:2;4679:3;4670:7;4666:17;4662:26;4659:116;;;4729:1;4758:2;4754;4747:14;4659:116;4801:22;;:::i;:::-;4857:3;4851:10;4874:33;4899:7;4874:33;:::i;:::-;4920:22;;4984:12;;;4978:19;4962:14;;;4955:43;5021:2;5065:12;;;5059:19;5043:14;;;5036:43;5092:18;;4622:12;;;;5130;;;;4589:563;;;-1:-1:-1;5171:5:32;3814:1368;-1:-1:-1;;;;;;;3814:1368:32:o;5187:184::-;5257:6;5310:2;5298:9;5289:7;5285:23;5281:32;5278:52;;;5326:1;5323;5316:12;5278:52;-1:-1:-1;5349:16:32;;5187:184;-1:-1:-1;5187:184:32:o;5376:402::-;-1:-1:-1;;;;;5661:15:32;;;5643:34;;5713:15;;;;5708:2;5693:18;;5686:43;5760:2;5745:18;;5738:34;;;;5593:2;5578:18;;5376:402::o;5783:127::-;5844:10;5839:3;5835:20;5832:1;5825:31;5875:4;5872:1;5865:15;5899:4;5896:1;5889:15;5915:127;5976:10;5971:3;5967:20;5964:1;5957:31;6007:4;6004:1;5997:15;6031:4;6028:1;6021:15;6047:127;6108:10;6103:3;6099:20;6096:1;6089:31;6139:4;6136:1;6129:15;6163:4;6160:1;6153:15;6179:128;6246:9;;;6267:11;;;6264:37;;;6281:18;;:::i;6312:422::-;6401:1;6444:5;6401:1;6458:270;6479:7;6469:8;6466:21;6458:270;;;6538:4;6534:1;6530:6;6526:17;6520:4;6517:27;6514:53;;;6547:18;;:::i;:::-;6597:7;6587:8;6583:22;6580:55;;;6617:16;;;;6580:55;6696:22;;;;6656:15;;;;6458:270;;;6462:3;6312:422;;;;;:::o;6739:806::-;6788:5;6818:8;6808:80;;-1:-1:-1;6859:1:32;6873:5;;6808:80;6907:4;6897:76;;-1:-1:-1;6944:1:32;6958:5;;6897:76;6989:4;7007:1;7002:59;;;;7075:1;7070:130;;;;6982:218;;7002:59;7032:1;7023:10;;7046:5;;;7070:130;7107:3;7097:8;7094:17;7091:43;;;7114:18;;:::i;:::-;-1:-1:-1;;7170:1:32;7156:16;;7185:5;;6982:218;;7284:2;7274:8;7271:16;7265:3;7259:4;7256:13;7252:36;7246:2;7236:8;7233:16;7228:2;7222:4;7219:12;7215:35;7212:77;7209:159;;;-1:-1:-1;7321:19:32;;;7353:5;;7209:159;7400:34;7425:8;7419:4;7400:34;:::i;:::-;7470:6;7466:1;7462:6;7458:19;7449:7;7446:32;7443:58;;;7481:18;;:::i;:::-;7519:20;;6739:806;-1:-1:-1;;;6739:806:32:o;7550:131::-;7610:5;7639:36;7666:8;7660:4;7639:36;:::i;7686:127::-;7747:10;7742:3;7738:20;7735:1;7728:31;7778:4;7775:1;7768:15;7802:4;7799:1;7792:15;7818:120;7858:1;7884;7874:35;;7889:18;;:::i;:::-;-1:-1:-1;7923:9:32;;7818:120::o;7943:168::-;8016:9;;;8047;;8064:15;;;8058:22;;8044:37;8034:71;;8085:18;;:::i;8775:348::-;9005:2;8994:9;8987:21;8968:4;9025:49;9070:2;9059:9;9055:18;8688:2;8676:15;;-1:-1:-1;;;8716:4:32;8707:14;;8700:36;8761:2;8752:12;;8611:159;9025:49;9017:57;;9110:6;9105:2;9094:9;9090:18;9083:34;8775:348;;;;:::o;9292:::-;9522:2;9511:9;9504:21;9485:4;9542:49;9587:2;9576:9;9572:18;9205:2;9193:15;;-1:-1:-1;;;9233:4:32;9224:14;;9217:36;9278:2;9269:12;;9128:159;10144:251;10214:6;10267:2;10255:9;10246:7;10242:23;10238:32;10235:52;;;10283:1;10280;10273:12;10235:52;10315:9;10309:16;10334:31;10359:5;10334:31;:::i;12037:112::-;12069:1;12095;12085:35;;12100:18;;:::i;:::-;-1:-1:-1;12134:9:32;;12037:112::o;12154:125::-;12219:9;;;12240:10;;;12237:36;;;12253:18;;:::i;12284:274::-;-1:-1:-1;;;;;12476:32:32;;;;12458:51;;12540:2;12525:18;;12518:34;12446:2;12431:18;;12284:274::o;12563:345::-;-1:-1:-1;;;;;12783:32:32;;;;12765:51;;12847:2;12832:18;;12825:34;;;;12890:2;12875:18;;12868:34;12753:2;12738:18;;12563:345::o;17126:250::-;17211:1;17221:113;17235:6;17232:1;17229:13;17221:113;;;17311:11;;;17305:18;17292:11;;;17285:39;17257:2;17250:10;17221:113;;;-1:-1:-1;;17368:1:32;17350:16;;17343:27;17126:250::o;17381:384::-;-1:-1:-1;;;;;;17566:33:32;;17554:46;;17623:13;;17536:3;;17645:74;17623:13;17708:1;17699:11;;17692:4;17680:17;;17645:74;:::i;:::-;17739:16;;;;17757:1;17735:24;;17381:384;-1:-1:-1;;;17381:384:32:o;17770:287::-;17899:3;17937:6;17931:13;17953:66;18012:6;18007:3;18000:4;17992:6;17988:17;17953:66;:::i;:::-;18035:16;;;;;17770:287;-1:-1:-1;;17770:287:32:o;18465:271::-;18507:3;18545:5;18539:12;18572:6;18567:3;18560:19;18588:76;18657:6;18650:4;18645:3;18641:14;18634:4;18627:5;18623:16;18588:76;:::i;:::-;18718:2;18697:15;-1:-1:-1;;18693:29:32;18684:39;;;;18725:4;18680:50;;18465:271;-1:-1:-1;;18465:271:32:o;18741:440::-;18991:2;18980:9;18973:21;18954:4;19017:49;19062:2;19051:9;19047:18;8688:2;8676:15;;-1:-1:-1;;;8716:4:32;8707:14;;8700:36;8761:2;8752:12;;8611:159;19017:49;19114:9;19106:6;19102:22;19097:2;19086:9;19082:18;19075:50;19142:33;19168:6;19160;19142:33;:::i;19186:440::-;19436:2;19425:9;19418:21;19399:4;19462:49;19507:2;19496:9;19492:18;9205:2;9193:15;;-1:-1:-1;;;9233:4:32;9224:14;;9217:36;9278:2;9269:12;;9128:159;20440:374;20670:2;20659:9;20652:21;20633:4;20690:49;20735:2;20724:9;20720:18;8688:2;8676:15;;-1:-1:-1;;;8716:4:32;8707:14;;8700:36;8761:2;8752:12;;8611:159;20690:49;-1:-1:-1;;;;;20775:32:32;;;;20770:2;20755:18;;;;20748:60;;;;-1:-1:-1;20682:57:32;20440:374::o;20819:::-;21049:2;21038:9;21031:21;21012:4;21069:49;21114:2;21103:9;21099:18;9205:2;9193:15;;-1:-1:-1;;;9233:4:32;9224:14;;9217:36;9278:2;9269:12;;9128:159;21629:291;21806:2;21795:9;21788:21;21769:4;21826:45;21867:2;21856:9;21852:18;21844:6;21826:45;:::i;:::-;21818:53;;21907:6;21902:2;21891:9;21887:18;21880:34;21629:291;;;;;:::o;21925:610::-;22171:13;;22114:3;;22145;;22224:4;22251:15;;;22114:3;22294:175;22308:6;22305:1;22302:13;22294:175;;;22371:13;;22357:28;;22407:14;;;;22444:15;;;;22330:1;22323:9;22294:175;;;-1:-1:-1;;22478:21:32;;;-1:-1:-1;22515:14:32;;;;;-1:-1:-1;;;21925:610:32:o;22729:556::-;22931:2;22913:21;;;22970:3;22950:18;;;22943:31;23010:34;23005:2;22990:18;;22983:62;23081:34;23076:2;23061:18;;23054:62;23153:34;23147:3;23132:19;;23125:63;-1:-1:-1;;;23219:3:32;23204:19;;23197:46;23275:3;23260:19;;22729:556::o;23290:135::-;23329:3;23350:17;;;23347:43;;23370:18;;:::i;:::-;-1:-1:-1;23417:1:32;23406:13;;23290:135::o;23430:667::-;23495:5;23548:3;23541:4;23533:6;23529:17;23525:27;23515:55;;23566:1;23563;23556:12;23515:55;23595:6;23589:13;23621:4;23645:68;23661:51;23709:2;23661:51;:::i;23645:68::-;23747:15;;;23833:1;23829:10;;;;23817:23;;23813:32;;;23778:12;;;;23857:15;;;23854:35;;;23885:1;23882;23875:12;23854:35;23921:2;23913:6;23909:15;23933:135;23949:6;23944:3;23941:15;23933:135;;;24015:10;;24003:23;;24046:12;;;;23966;;23933:135;;;-1:-1:-1;24086:5:32;23430:667;-1:-1:-1;;;;;;23430:667:32:o;24102:614::-;24231:6;24239;24292:2;24280:9;24271:7;24267:23;24263:32;24260:52;;;24308:1;24305;24298:12;24260:52;24341:9;24335:16;24370:18;24411:2;24403:6;24400:14;24397:34;;;24427:1;24424;24417:12;24397:34;24450:72;24514:7;24505:6;24494:9;24490:22;24450:72;:::i;:::-;24440:82;;24568:2;24557:9;24553:18;24547:25;24531:41;;24597:2;24587:8;24584:16;24581:36;;;24613:1;24610;24603:12;24581:36;;24636:74;24702:7;24691:8;24680:9;24676:24;24636:74;:::i;:::-;24626:84;;;24102:614;;;;;:::o;24721:442::-;-1:-1:-1;;;;;24968:32:32;;;;24950:51;;-1:-1:-1;;;;;;25037:33:32;;;;25032:2;25017:18;;25010:61;25102:2;25087:18;;25080:34;25145:2;25130:18;;25123:34;24937:3;24922:19;;24721:442::o", "linkReferences": {} }, "methodIdentifiers": { @@ -902,84 +902,1174 @@ "withinDiff(uint256,uint256,uint256)": "344b1478", "withinPrecision(uint256,uint256,uint256)": "30f7c5c3" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"Debug\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"INTEREST_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LATEFEE_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PREMIUM_CALC_TYPE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SL_FACTORY\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"nonZero\",\"type\":\"bool\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"min\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"max\",\"type\":\"uint256\"}],\"name\":\"constrictToRange\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createActors\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"symbol\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amt\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setUpTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_addInvestor_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_addInvestor_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_claim_edge_cases\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"test_vesting_claim_fuzzing1\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"test_vesting_claim_fuzzing2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_claim_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_claim_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_enableVesting_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_enableVesting_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_getAmountToClaim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_getAmountToClaim_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_init_state\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_removeInvestor_largeArray\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_removeInvestor_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_removeInvestor_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_withdrawErc20_restrictions\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"test_vesting_withdrawErc20_state_changes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expectedDiff\",\"type\":\"uint256\"}],\"name\":\"withinDiff\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"val0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"val1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accuracy\",\"type\":\"uint256\"}],\"name\":\"withinPrecision\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"test_vesting_addInvestor_restrictions()\":{\"details\":\"Verifies addInvestor restrictions\"},\"test_vesting_addInvestor_state_changes()\":{\"details\":\"Verifies addInvestor state changes\"},\"test_vesting_claim_edge_cases()\":{\"details\":\"Verifies claim() edge cases\"},\"test_vesting_claim_fuzzing1(uint256)\":{\"details\":\"Verifies claim() state changes using fuzzing\"},\"test_vesting_claim_fuzzing2(uint256)\":{\"details\":\"Verifies claim() edge cases using fuzzing\"},\"test_vesting_claim_restrictions()\":{\"details\":\"Verifies claim() restrictions\"},\"test_vesting_claim_state_changes()\":{\"details\":\"Verifies claim() state changes\"},\"test_vesting_enableVesting_restrictions()\":{\"details\":\"Verifies enableVesting restrictions.\"},\"test_vesting_enableVesting_state_changes()\":{\"details\":\"Verifies enableVesting state changes.\"},\"test_vesting_getAmountToClaim()\":{\"details\":\"Verifies getAmountToClaim()\"},\"test_vesting_getAmountToClaim_restrictions()\":{\"details\":\"Verifies getAmountToClaim() restrictions\"},\"test_vesting_removeInvestor_largeArray()\":{\"details\":\"Verifies removeInvestor() pops elements correctly from investorLibrary[]\"},\"test_vesting_removeInvestor_restrictions()\":{\"details\":\"Verifies removeInvestor() restrictions\"},\"test_vesting_removeInvestor_state_changes()\":{\"details\":\"Verifies removeInvestor() state changes\"},\"test_vesting_withdrawErc20_restrictions()\":{\"details\":\"Verifies withdrawErc20 restrictions.\"},\"test_vesting_withdrawErc20_state_changes()\":{\"details\":\"Verifies withdrawErc20 state changes.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/Vesting.t.sol\":\"VestingTest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]},\"src/Vesting.sol\":{\"keccak256\":\"0x3fb59f7d29ccc67ec5aa7b9c064b73734c50c7a68a5f4cac138df7922dfc3356\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://0fc8b6e747264c821ede1849cc1c257d97de3006a78b5de396a3837d81377907\",\"dweb:/ipfs/QmU4HUzVvgQGUSS2vknorfoLMvfqvz1F5Whr4mW9x46w7w\"]},\"src/extensions/Context.sol\":{\"keccak256\":\"0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12\",\"dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV\"]},\"src/extensions/Ownable.sol\":{\"keccak256\":\"0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6\",\"dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA\"]},\"src/interfaces/IERC20.sol\":{\"keccak256\":\"0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be\",\"dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA\"]},\"src/users/Actor.sol\":{\"keccak256\":\"0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843\",\"dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5\"]},\"test/Utility.sol\":{\"keccak256\":\"0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda\",\"dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s\"]},\"test/Vesting.t.sol\":{\"keccak256\":\"0x241c9a12d15a20db74592da1255321925ef5953d658931dcbcae7557400af9ae\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://e28b0f69282f6c26631e4af05335bdc5cd44b7e86038a4fe9a16e0e804d93ee7\",\"dweb:/ipfs/QmTvBmXt444gU33gkq75jCThDhXNmaYfRM986BJUCGN9kZ\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "bool", + "name": "", + "type": "bool", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "Debug", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "val", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_named_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes", + "name": "val", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "val", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "val", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_named_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "logs", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "CL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "DL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "FL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "INTEREST_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "LATEFEE_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "LL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "PREMIUM_CALC_TYPE", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "SL_FACTORY", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "nonZero", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "constrictToRange", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "createActors" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "symbol", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amt", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "mint" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "setUp" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "setUpTokens" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_addInvestor_restrictions" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_addInvestor_state_changes" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_claim_edge_cases" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_claim_fuzzing1" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_claim_fuzzing2" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_claim_restrictions" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_claim_state_changes" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_enableVesting_restrictions" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_enableVesting_state_changes" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_getAmountToClaim" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_getAmountToClaim_restrictions" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_init_state" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_removeInvestor_largeArray" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_removeInvestor_restrictions" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_removeInvestor_state_changes" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_withdrawErc20_restrictions" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "test_vesting_withdrawErc20_state_changes" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "expectedDiff", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withinDiff" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "val0", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "val1", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accuracy", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withinPrecision" + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "test_vesting_addInvestor_restrictions()": { + "details": "Verifies addInvestor restrictions" + }, + "test_vesting_addInvestor_state_changes()": { + "details": "Verifies addInvestor state changes" + }, + "test_vesting_claim_edge_cases()": { + "details": "Verifies claim() edge cases" + }, + "test_vesting_claim_fuzzing1(uint256)": { + "details": "Verifies claim() state changes using fuzzing" + }, + "test_vesting_claim_fuzzing2(uint256)": { + "details": "Verifies claim() edge cases using fuzzing" + }, + "test_vesting_claim_restrictions()": { + "details": "Verifies claim() restrictions" + }, + "test_vesting_claim_state_changes()": { + "details": "Verifies claim() state changes" + }, + "test_vesting_enableVesting_restrictions()": { + "details": "Verifies enableVesting restrictions." + }, + "test_vesting_enableVesting_state_changes()": { + "details": "Verifies enableVesting state changes." + }, + "test_vesting_getAmountToClaim()": { + "details": "Verifies getAmountToClaim()" + }, + "test_vesting_getAmountToClaim_restrictions()": { + "details": "Verifies getAmountToClaim() restrictions" + }, + "test_vesting_removeInvestor_largeArray()": { + "details": "Verifies removeInvestor() pops elements correctly from investorLibrary[]" + }, + "test_vesting_removeInvestor_restrictions()": { + "details": "Verifies removeInvestor() restrictions" + }, + "test_vesting_removeInvestor_state_changes()": { + "details": "Verifies removeInvestor() state changes" + }, + "test_vesting_withdrawErc20_restrictions()": { + "details": "Verifies withdrawErc20 restrictions." + }, + "test_vesting_withdrawErc20_state_changes()": { + "details": "Verifies withdrawErc20 state changes." + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "test/Vesting.t.sol": "VestingTest" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + }, + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdAssertions.sol": { + "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", + "urls": [ + "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", + "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdError.sol": { + "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", + "urls": [ + "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", + "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Test.sol": { + "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", + "urls": [ + "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", + "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + }, + "src/Vesting.sol": { + "keccak256": "0x3fb59f7d29ccc67ec5aa7b9c064b73734c50c7a68a5f4cac138df7922dfc3356", + "urls": [ + "bzz-raw://0fc8b6e747264c821ede1849cc1c257d97de3006a78b5de396a3837d81377907", + "dweb:/ipfs/QmU4HUzVvgQGUSS2vknorfoLMvfqvz1F5Whr4mW9x46w7w" + ], + "license": "UNLICENSED" + }, + "src/extensions/Context.sol": { + "keccak256": "0x8795d48b0db75e627ea6d57f1eb24e269519a1db8ce2e7d3a4441dd516a9b016", + "urls": [ + "bzz-raw://39249193e7e48805d84c55471a695d8f88a3358f0b3274b94ce4e83278a53a12", + "dweb:/ipfs/QmQcrb4WuzRmY3oeX8ush6EqhtjqmfFxpawXk2ceHoFMiV" + ], + "license": "MIT" + }, + "src/extensions/Ownable.sol": { + "keccak256": "0xbe3f4ae2a873ee339e0ac54107262ee789604570a463549fd43364289769207f", + "urls": [ + "bzz-raw://ca9dde5e484d808440ff8ac43892b8f59a2b76d5084efce1dfa904d800c0f9c6", + "dweb:/ipfs/QmRnQ2x3a9GwVKf7wbRhNY1MwdxyoTkvDtLFqjXxhEoALA" + ], + "license": "MIT" + }, + "src/interfaces/IERC20.sol": { + "keccak256": "0xc02c24f08d76ab1c38014886b0fc12abb234446b96e5e83b4a86f396c54fae5f", + "urls": [ + "bzz-raw://c052c7cedba3e37a9cc8885924d3592fb12a4a430f3137035015252954bb80be", + "dweb:/ipfs/QmYwdEzednrf6DioHv1vUFSEy6C4vSPZq9CY3pPiaHT2JA" + ], + "license": "GPL-3.0-or-later" + }, + "src/users/Actor.sol": { + "keccak256": "0x6ad8911c2d305f1bac636ad070f00e47cb2912c78883ea24698030b41a39ccd3", + "urls": [ + "bzz-raw://917f42c979b5f2c9bad3cd2c5d34f8caec92282536e6f938e7e20dd1925c4843", + "dweb:/ipfs/QmYmTcZ3oEDWPUnCy6BfrpRMMeMyhe7gF423HbNSPatXs5" + ], + "license": "AGPL-3.0-or-later" + }, + "test/Utility.sol": { + "keccak256": "0x99dbec5203c841f8f092ac42644aa9e24eb927767826dcdf06addc5d5cbea135", + "urls": [ + "bzz-raw://ecd75e3b538d0eb4404ee763ae474c9e4e64cf1e0804795a6787cedef3c0eeda", + "dweb:/ipfs/QmTwdFYFVDgVZpg3ebGcVr9vF5ffvcZtLzsdJnkRChxL7s" + ], + "license": "AGPL-3.0-or-later" + }, + "test/Vesting.t.sol": { + "keccak256": "0x241c9a12d15a20db74592da1255321925ef5953d658931dcbcae7557400af9ae", + "urls": [ + "bzz-raw://e28b0f69282f6c26631e4af05335bdc5cd44b7e86038a4fe9a16e0e804d93ee7", + "dweb:/ipfs/QmTvBmXt444gU33gkq75jCThDhXNmaYfRM986BJUCGN9kZ" + ], + "license": "UNLICENSED" + } + }, + "version": 1 + }, "ast": { "absolutePath": "test/Vesting.t.sol", - "id": 32766, + "id": 34324, "exportedSymbols": { "Actor": [ - 29769 + 30379 ], "DSTest": [ 1786 ], "Hevm": [ - 29991 + 31549 ], "IERC20": [ - 29102 + 29158 ], "StdAssertions": [ - 2671 + 2708 ], "StdChains": [ - 3207 + 3244 ], "StdCheats": [ - 5144 + 5181 ], "StdStorage": [ - 6051 + 6088 ], "StdUtils": [ - 8116 + 8153 ], "Test": [ - 8158 + 8195 ], "TestBase": [ 1843 ], "User": [ - 29999 + 31557 ], "Utility": [ - 30522 + 32080 ], "Vesting": [ - 28040 + 28096 ], "VestingTest": [ - 32765 + 34323 ], "Vm": [ - 9315 + 9352 ], "console": [ - 17379 + 17416 ], "console2": [ - 25475 + 25512 ], "stdError": [ - 5210 + 5247 ], "stdJson": [ - 5877 + 5914 ], "stdMath": [ - 6019 + 6056 ], "stdStorage": [ - 7485 + 7522 ] }, "nodeType": "SourceUnit", - "src": "40:21271:27", + "src": "40:21271:31", "nodes": [ { - "id": 30524, + "id": 32082, "nodeType": "PragmaDirective", - "src": "40:24:27", + "src": "40:24:31", + "nodes": [], "literals": [ "solidity", "^", @@ -988,47 +2078,50 @@ ] }, { - "id": 30525, + "id": 32083, "nodeType": "ImportDirective", - "src": "68:39:27", + "src": "68:39:31", + "nodes": [], "absolutePath": "lib/forge-std/src/Test.sol", "file": "../lib/forge-std/src/Test.sol", "nameLocation": "-1:-1:-1", - "scope": 32766, - "sourceUnit": 8159, + "scope": 34324, + "sourceUnit": 8196, "symbolAliases": [], "unitAlias": "" }, { - "id": 30526, + "id": 32084, "nodeType": "ImportDirective", - "src": "109:23:27", + "src": "109:23:31", + "nodes": [], "absolutePath": "test/Utility.sol", "file": "./Utility.sol", "nameLocation": "-1:-1:-1", - "scope": 32766, - "sourceUnit": 30523, + "scope": 34324, + "sourceUnit": 32081, "symbolAliases": [], "unitAlias": "" }, { - "id": 30528, + "id": 32086, "nodeType": "ImportDirective", - "src": "158:46:27", + "src": "158:46:31", + "nodes": [], "absolutePath": "src/Vesting.sol", "file": "../src/Vesting.sol", "nameLocation": "-1:-1:-1", - "scope": 32766, - "sourceUnit": 28041, + "scope": 34324, + "sourceUnit": 28097, "symbolAliases": [ { "foreign": { - "id": 30527, + "id": 32085, "name": "Vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28040, - "src": "167:7:27", + "referencedDeclaration": 28096, + "src": "167:7:31", "typeDescriptions": {} }, "nameLocation": "-1:-1:-1" @@ -1037,139 +2130,147 @@ "unitAlias": "" }, { - "id": 32765, + "id": 34323, "nodeType": "ContractDefinition", - "src": "208:21101:27", + "src": "208:21101:31", "nodes": [ { - "id": 30535, + "id": 32093, "nodeType": "VariableDeclaration", - "src": "253:15:27", + "src": "253:15:31", + "nodes": [], "constant": false, "mutability": "mutable", "name": "vesting", - "nameLocation": "261:7:27", - "scope": 32765, + "nameLocation": "261:7:31", + "scope": 34323, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" }, "typeName": { - "id": 30534, + "id": 32092, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30533, + "id": 32091, "name": "Vesting", + "nameLocations": [ + "253:7:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28040, - "src": "253:7:27" + "referencedDeclaration": 28096, + "src": "253:7:31" }, - "referencedDeclaration": 28040, - "src": "253:7:27", + "referencedDeclaration": 28096, + "src": "253:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, "visibility": "internal" }, { - "id": 30557, + "id": 32115, "nodeType": "FunctionDefinition", - "src": "277:210:27", + "src": "277:210:31", + "nodes": [], "body": { - "id": 30556, + "id": 32114, "nodeType": "Block", - "src": "301:186:27", + "src": "301:186:31", + "nodes": [], "statements": [ { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 30538, + "id": 32096, "name": "createActors", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30192, - "src": "312:12:27", + "referencedDeclaration": 31750, + "src": "312:12:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 30539, + "id": 32097, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "312:14:27", + "src": "312:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30540, + "id": 32098, "nodeType": "ExpressionStatement", - "src": "312:14:27" + "src": "312:14:31" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], - "id": 30541, + "id": 32099, "name": "setUpTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30273, - "src": "337:11:27", + "referencedDeclaration": 31831, + "src": "337:11:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 30542, + "id": 32100, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "337:13:27", + "src": "337:13:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30543, + "id": 32101, "nodeType": "ExpressionStatement", - "src": "337:13:27" + "src": "337:13:31" }, { "expression": { - "id": 30554, + "id": 32112, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 30544, + "id": 32102, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "399:7:27", + "referencedDeclaration": 32093, + "src": "399:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, @@ -1178,12 +2279,12 @@ "rightHandSide": { "arguments": [ { - "id": 30548, + "id": 32106, "name": "FRAX", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30028, - "src": "435:4:27", + "referencedDeclaration": 31586, + "src": "435:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1192,14 +2293,14 @@ { "arguments": [ { - "id": 30551, + "id": 32109, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "464:3:27", + "referencedDeclaration": 31568, + "src": "464:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -1207,38 +2308,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30550, + "id": 32108, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "456:7:27", + "src": "456:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30549, + "id": 32107, "name": "address", "nodeType": "ElementaryTypeName", - "src": "456:7:27", + "src": "456:7:31", "typeDescriptions": {} } }, - "id": 30552, + "id": 32110, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "456:12:27", + "src": "456:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -1257,59 +2359,63 @@ "typeString": "address" } ], - "id": 30547, + "id": 32105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "409:11:27", + "src": "409:11:31", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_address_$_t_address_$returns$_t_contract$_Vesting_$28040_$", + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$_t_address_$returns$_t_contract$_Vesting_$28096_$", "typeString": "function (address,address) returns (contract Vesting)" }, "typeName": { - "id": 30546, + "id": 32104, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30545, + "id": 32103, "name": "Vesting", + "nameLocations": [ + "413:7:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 28040, - "src": "413:7:27" + "referencedDeclaration": 28096, + "src": "413:7:31" }, - "referencedDeclaration": 28040, - "src": "413:7:27", + "referencedDeclaration": 28096, + "src": "413:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } }, - "id": 30553, + "id": 32111, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "409:70:27", + "src": "409:70:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "src": "399:80:27", + "src": "399:80:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30555, + "id": 32113, "nodeType": "ExpressionStatement", - "src": "399:80:27" + "src": "399:80:31" } ] }, @@ -1318,32 +2424,34 @@ "kind": "function", "modifiers": [], "name": "setUp", - "nameLocation": "286:5:27", + "nameLocation": "286:5:31", "parameters": { - "id": 30536, + "id": 32094, "nodeType": "ParameterList", "parameters": [], - "src": "291:2:27" + "src": "291:2:31" }, "returnParameters": { - "id": 30537, + "id": 32095, "nodeType": "ParameterList", "parameters": [], - "src": "301:0:27" + "src": "301:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30582, + "id": 32140, "nodeType": "FunctionDefinition", - "src": "523:207:27", + "src": "523:207:31", + "nodes": [], "body": { - "id": 30581, + "id": 32139, "nodeType": "Block", - "src": "565:165:27", + "src": "565:165:31", + "nodes": [], "statements": [ { "expression": { @@ -1353,40 +2461,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30561, + "id": 32119, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "585:7:27", + "referencedDeclaration": 32093, + "src": "585:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30562, + "id": 32120, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "593:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "585:18:27", + "referencedDeclaration": 27505, + "src": "585:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 30563, + "id": 32121, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "585:20:27", + "src": "585:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -1394,12 +2504,12 @@ } }, { - "id": 30564, + "id": 32122, "name": "FRAX", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30028, - "src": "613:4:27", + "referencedDeclaration": 31586, + "src": "613:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1417,20 +2527,20 @@ "typeString": "address" } ], - "id": 30560, + "id": 32118, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -1443,30 +2553,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "576:8:27", + "src": "576:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 30565, + "id": 32123, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "576:42:27", + "src": "576:42:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30566, + "id": 32124, "nodeType": "ExpressionStatement", - "src": "576:42:27" + "src": "576:42:31" }, { "expression": { @@ -1476,40 +2587,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30568, + "id": 32126, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "638:7:27", + "referencedDeclaration": 32093, + "src": "638:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30569, + "id": 32127, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "646:16:31", "memberName": "vestingStartUnix", "nodeType": "MemberAccess", - "referencedDeclaration": 27452, - "src": "638:24:27", + "referencedDeclaration": 27508, + "src": "638:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 30570, + "id": 32128, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "638:26:27", + "src": "638:26:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1518,14 +2631,14 @@ }, { "hexValue": "30", - "id": 30571, + "id": 32129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "666:1:27", + "src": "666:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -1544,20 +2657,20 @@ "typeString": "int_const 0" } ], - "id": 30567, + "id": 32125, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -1570,30 +2683,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "629:8:27", + "src": "629:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30572, + "id": 32130, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "629:39:27", + "src": "629:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30573, + "id": 32131, "nodeType": "ExpressionStatement", - "src": "629:39:27" + "src": "629:39:31" }, { "expression": { @@ -1603,40 +2717,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30575, + "id": 32133, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "688:7:27", + "referencedDeclaration": 32093, + "src": "688:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30576, + "id": 32134, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "696:14:31", "memberName": "vestingEnabled", "nodeType": "MemberAccess", - "referencedDeclaration": 27455, - "src": "688:22:27", + "referencedDeclaration": 27511, + "src": "688:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bool_$", "typeString": "function () view external returns (bool)" } }, - "id": 30577, + "id": 32135, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "688:24:27", + "src": "688:24:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1645,14 +2761,14 @@ }, { "hexValue": "66616c7365", - "id": 30578, + "id": 32136, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "716:5:27", + "src": "716:5:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1671,20 +2787,20 @@ "typeString": "bool" } ], - "id": 30574, + "id": 32132, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -1696,31 +2812,32 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "679:8:27", + "referencedDeclaration": 2011, + "src": "679:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 30579, + "id": 32137, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "679:43:27", + "src": "679:43:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30580, + "id": 32138, "nodeType": "ExpressionStatement", - "src": "679:43:27" + "src": "679:43:31" } ] }, @@ -1729,38 +2846,40 @@ "kind": "function", "modifiers": [], "name": "test_vesting_init_state", - "nameLocation": "532:23:27", + "nameLocation": "532:23:31", "parameters": { - "id": 30558, + "id": 32116, "nodeType": "ParameterList", "parameters": [], - "src": "555:2:27" + "src": "555:2:31" }, "returnParameters": { - "id": 30559, + "id": 32117, "nodeType": "ParameterList", "parameters": [], - "src": "565:0:27" + "src": "565:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30630, + "id": 32188, "nodeType": "FunctionDefinition", - "src": "825:596:27", + "src": "825:596:31", + "nodes": [], "body": { - "id": 30629, + "id": 32187, "nodeType": "Block", - "src": "883:538:27", + "src": "883:538:31", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 30594, + "id": 32152, "isConstant": false, "isLValue": false, "isPure": false, @@ -1768,20 +2887,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "960:40:27", + "src": "960:40:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30591, + "id": 32149, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "991:7:27", + "referencedDeclaration": 32093, + "src": "991:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -1789,38 +2908,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30590, + "id": 32148, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "983:7:27", + "src": "983:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30589, + "id": 32147, "name": "address", "nodeType": "ElementaryTypeName", - "src": "983:7:27", + "src": "983:7:31", "typeDescriptions": {} } }, - "id": 30592, + "id": 32150, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "983:16:27", + "src": "983:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -1836,40 +2956,42 @@ } ], "expression": { - "id": 30587, + "id": 32145, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "961:3:27", + "referencedDeclaration": 31571, + "src": "961:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30588, + "id": 32146, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "965:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "961:21:27", + "referencedDeclaration": 30232, + "src": "961:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30593, + "id": 32151, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "961:39:27", + "src": "961:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1889,41 +3011,42 @@ "typeString": "bool" } ], - "id": 30586, + "id": 32144, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "953:6:27", + "src": "953:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30595, + "id": 32153, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "953:48:27", + "src": "953:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30596, + "id": 32154, "nodeType": "ExpressionStatement", - "src": "953:48:27" + "src": "953:48:31" }, { "expression": { "arguments": [ { - "id": 30605, + "id": 32163, "isConstant": false, "isLValue": false, "isPure": false, @@ -1931,20 +3054,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1080:40:27", + "src": "1080:40:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30602, + "id": 32160, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1111:7:27", + "referencedDeclaration": 32093, + "src": "1111:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -1952,38 +3075,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30601, + "id": 32159, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1103:7:27", + "src": "1103:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30600, + "id": 32158, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1103:7:27", + "src": "1103:7:31", "typeDescriptions": {} } }, - "id": 30603, + "id": 32161, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1103:16:27", + "src": "1103:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -1999,40 +3123,42 @@ } ], "expression": { - "id": 30598, + "id": 32156, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "1081:3:27", + "referencedDeclaration": 31565, + "src": "1081:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30599, + "id": 32157, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1085:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "1081:21:27", + "referencedDeclaration": 30232, + "src": "1081:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30604, + "id": 32162, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1081:39:27", + "src": "1081:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2052,35 +3178,36 @@ "typeString": "bool" } ], - "id": 30597, + "id": 32155, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1073:6:27", + "src": "1073:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30606, + "id": 32164, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1073:48:27", + "src": "1073:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30607, + "id": 32165, "nodeType": "ExpressionStatement", - "src": "1073:48:27" + "src": "1073:48:31" }, { "expression": { @@ -2090,14 +3217,14 @@ { "arguments": [ { - "id": 30613, + "id": 32171, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1246:7:27", + "referencedDeclaration": 32093, + "src": "1246:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -2105,38 +3232,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30612, + "id": 32170, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1238:7:27", + "src": "1238:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30611, + "id": 32169, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1238:7:27", + "src": "1238:7:31", "typeDescriptions": {} } }, - "id": 30614, + "id": 32172, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1238:16:27", + "src": "1238:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -2152,40 +3280,42 @@ } ], "expression": { - "id": 30609, + "id": 32167, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "1216:3:27", + "referencedDeclaration": 31568, + "src": "1216:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30610, + "id": 32168, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1220:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "1216:21:27", + "referencedDeclaration": 30232, + "src": "1216:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30615, + "id": 32173, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1216:39:27", + "src": "1216:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2200,41 +3330,42 @@ "typeString": "bool" } ], - "id": 30608, + "id": 32166, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1209:6:27", + "src": "1209:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30616, + "id": 32174, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1209:47:27", + "src": "1209:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30617, + "id": 32175, "nodeType": "ExpressionStatement", - "src": "1209:47:27" + "src": "1209:47:31" }, { "expression": { "arguments": [ { - "id": 30626, + "id": 32184, "isConstant": false, "isLValue": false, "isPure": false, @@ -2242,20 +3373,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1372:40:27", + "src": "1372:40:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30623, + "id": 32181, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1403:7:27", + "referencedDeclaration": 32093, + "src": "1403:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -2263,38 +3394,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30622, + "id": 32180, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1395:7:27", + "src": "1395:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30621, + "id": 32179, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1395:7:27", + "src": "1395:7:31", "typeDescriptions": {} } }, - "id": 30624, + "id": 32182, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1395:16:27", + "src": "1395:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -2310,40 +3442,42 @@ } ], "expression": { - "id": 30619, + "id": 32177, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "1373:3:27", + "referencedDeclaration": 31568, + "src": "1373:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30620, + "id": 32178, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1377:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "1373:21:27", + "referencedDeclaration": 30232, + "src": "1373:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30625, + "id": 32183, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1373:39:27", + "src": "1373:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2363,42 +3497,43 @@ "typeString": "bool" } ], - "id": 30618, + "id": 32176, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1365:6:27", + "src": "1365:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30627, + "id": 32185, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1365:48:27", + "src": "1365:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30628, + "id": 32186, "nodeType": "ExpressionStatement", - "src": "1365:48:27" + "src": "1365:48:31" } ] }, "documentation": { - "id": 30583, + "id": 32141, "nodeType": "StructuredDocumentation", - "src": "774:45:27", + "src": "774:45:31", "text": "@dev Verifies enableVesting restrictions." }, "functionSelector": "f4ceccba", @@ -2406,32 +3541,34 @@ "kind": "function", "modifiers": [], "name": "test_vesting_enableVesting_restrictions", - "nameLocation": "834:39:27", + "nameLocation": "834:39:31", "parameters": { - "id": 30584, + "id": 32142, "nodeType": "ParameterList", "parameters": [], - "src": "873:2:27" + "src": "873:2:31" }, "returnParameters": { - "id": 30585, + "id": 32143, "nodeType": "ParameterList", "parameters": [], - "src": "883:0:27" + "src": "883:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30674, + "id": 32232, "nodeType": "FunctionDefinition", - "src": "1481:443:27", + "src": "1481:443:31", + "nodes": [], "body": { - "id": 30673, + "id": 32231, "nodeType": "Block", - "src": "1540:384:27", + "src": "1540:384:31", + "nodes": [], "statements": [ { "expression": { @@ -2441,40 +3578,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30635, + "id": 32193, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1589:7:27", + "referencedDeclaration": 32093, + "src": "1589:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30636, + "id": 32194, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1597:16:31", "memberName": "vestingStartUnix", "nodeType": "MemberAccess", - "referencedDeclaration": 27452, - "src": "1589:24:27", + "referencedDeclaration": 27508, + "src": "1589:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 30637, + "id": 32195, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1589:26:27", + "src": "1589:26:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2483,14 +3622,14 @@ }, { "hexValue": "30", - "id": 30638, + "id": 32196, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1617:1:27", + "src": "1617:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -2509,20 +3648,20 @@ "typeString": "int_const 0" } ], - "id": 30634, + "id": 32192, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -2535,30 +3674,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "1580:8:27", + "src": "1580:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30639, + "id": 32197, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1580:39:27", + "src": "1580:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30640, + "id": 32198, "nodeType": "ExpressionStatement", - "src": "1580:39:27" + "src": "1580:39:31" }, { "expression": { @@ -2568,40 +3708,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30642, + "id": 32200, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1639:7:27", + "referencedDeclaration": 32093, + "src": "1639:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30643, + "id": 32201, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1647:14:31", "memberName": "vestingEnabled", "nodeType": "MemberAccess", - "referencedDeclaration": 27455, - "src": "1639:22:27", + "referencedDeclaration": 27511, + "src": "1639:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bool_$", "typeString": "function () view external returns (bool)" } }, - "id": 30644, + "id": 32202, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1639:24:27", + "src": "1639:24:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2610,14 +3752,14 @@ }, { "hexValue": "66616c7365", - "id": 30645, + "id": 32203, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1667:5:27", + "src": "1667:5:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2636,20 +3778,20 @@ "typeString": "bool" } ], - "id": 30641, + "id": 32199, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -2661,31 +3803,32 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "1630:8:27", + "referencedDeclaration": 2011, + "src": "1630:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 30646, + "id": 32204, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1630:43:27", + "src": "1630:43:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30647, + "id": 32205, "nodeType": "ExpressionStatement", - "src": "1630:43:27" + "src": "1630:43:31" }, { "expression": { @@ -2695,14 +3838,14 @@ { "arguments": [ { - "id": 30653, + "id": 32211, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1757:7:27", + "referencedDeclaration": 32093, + "src": "1757:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -2710,38 +3853,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30652, + "id": 32210, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1749:7:27", + "src": "1749:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30651, + "id": 32209, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1749:7:27", + "src": "1749:7:31", "typeDescriptions": {} } }, - "id": 30654, + "id": 32212, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1749:16:27", + "src": "1749:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -2757,40 +3901,42 @@ } ], "expression": { - "id": 30649, + "id": 32207, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "1727:3:27", + "referencedDeclaration": 31568, + "src": "1727:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30650, + "id": 32208, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1731:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "1727:21:27", + "referencedDeclaration": 30232, + "src": "1727:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 30655, + "id": 32213, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1727:39:27", + "src": "1727:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2805,35 +3951,36 @@ "typeString": "bool" } ], - "id": 30648, + "id": 32206, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "1720:6:27", + "src": "1720:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30656, + "id": 32214, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1720:47:27", + "src": "1720:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30657, + "id": 32215, "nodeType": "ExpressionStatement", - "src": "1720:47:27" + "src": "1720:47:31" }, { "expression": { @@ -2843,40 +3990,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30659, + "id": 32217, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1819:7:27", + "referencedDeclaration": 32093, + "src": "1819:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30660, + "id": 32218, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1827:16:31", "memberName": "vestingStartUnix", "nodeType": "MemberAccess", - "referencedDeclaration": 27452, - "src": "1819:24:27", + "referencedDeclaration": 27508, + "src": "1819:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 30661, + "id": 32219, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1819:26:27", + "src": "1819:26:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2885,25 +4034,26 @@ }, { "expression": { - "id": 30662, + "id": 32220, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, - "src": "1847:5:27", + "src": "1847:5:31", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 30663, + "id": 32221, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1853:9:31", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "1847:15:27", + "src": "1847:15:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2921,20 +4071,20 @@ "typeString": "uint256" } ], - "id": 30658, + "id": 32216, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -2947,30 +4097,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "1810:8:27", + "src": "1810:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30664, + "id": 32222, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1810:53:27", + "src": "1810:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30665, + "id": 32223, "nodeType": "ExpressionStatement", - "src": "1810:53:27" + "src": "1810:53:31" }, { "expression": { @@ -2980,40 +4131,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30667, + "id": 32225, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "1883:7:27", + "referencedDeclaration": 32093, + "src": "1883:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30668, + "id": 32226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "1891:14:31", "memberName": "vestingEnabled", "nodeType": "MemberAccess", - "referencedDeclaration": 27455, - "src": "1883:22:27", + "referencedDeclaration": 27511, + "src": "1883:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bool_$", "typeString": "function () view external returns (bool)" } }, - "id": 30669, + "id": 32227, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1883:24:27", + "src": "1883:24:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3022,14 +4175,14 @@ }, { "hexValue": "74727565", - "id": 30670, + "id": 32228, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1911:4:27", + "src": "1911:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3048,20 +4201,20 @@ "typeString": "bool" } ], - "id": 30666, + "id": 32224, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -3073,38 +4226,39 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "1874:8:27", + "referencedDeclaration": 2011, + "src": "1874:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 30671, + "id": 32229, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1874:42:27", + "src": "1874:42:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30672, + "id": 32230, "nodeType": "ExpressionStatement", - "src": "1874:42:27" + "src": "1874:42:31" } ] }, "documentation": { - "id": 30631, + "id": 32189, "nodeType": "StructuredDocumentation", - "src": "1429:46:27", + "src": "1429:46:31", "text": "@dev Verifies enableVesting state changes." }, "functionSelector": "5f18f116", @@ -3112,38 +4266,40 @@ "kind": "function", "modifiers": [], "name": "test_vesting_enableVesting_state_changes", - "nameLocation": "1490:40:27", + "nameLocation": "1490:40:31", "parameters": { - "id": 30632, + "id": 32190, "nodeType": "ParameterList", "parameters": [], - "src": "1530:2:27" + "src": "1530:2:31" }, "returnParameters": { - "id": 30633, + "id": 32191, "nodeType": "ParameterList", "parameters": [], - "src": "1540:0:27" + "src": "1540:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30766, + "id": 32324, "nodeType": "FunctionDefinition", - "src": "2019:967:27", + "src": "2019:967:31", + "nodes": [], "body": { - "id": 30765, + "id": 32323, "nodeType": "Block", - "src": "2077:909:27", + "src": "2077:909:31", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 30687, + "id": 32245, "isConstant": false, "isLValue": false, "isPure": false, @@ -3151,20 +4307,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2154:46:27", + "src": "2154:46:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30683, + "id": 32241, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2185:7:27", + "referencedDeclaration": 32093, + "src": "2185:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -3172,38 +4328,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30682, + "id": 32240, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2177:7:27", + "src": "2177:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30681, + "id": 32239, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2177:7:27", + "src": "2177:7:31", "typeDescriptions": {} } }, - "id": 30684, + "id": 32242, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2177:16:27", + "src": "2177:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3211,12 +4368,12 @@ } }, { - "id": 30685, + "id": 32243, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "2195:4:27", + "referencedDeclaration": 31574, + "src": "2195:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3235,40 +4392,42 @@ } ], "expression": { - "id": 30679, + "id": 32237, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "2155:3:27", + "referencedDeclaration": 31571, + "src": "2155:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30680, + "id": 32238, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2159:17:31", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 29651, - "src": "2155:21:27", + "referencedDeclaration": 30261, + "src": "2155:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 30686, + "id": 32244, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2155:45:27", + "src": "2155:45:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3288,41 +4447,42 @@ "typeString": "bool" } ], - "id": 30678, + "id": 32236, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2147:6:27", + "src": "2147:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30688, + "id": 32246, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2147:54:27", + "src": "2147:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30689, + "id": 32247, "nodeType": "ExpressionStatement", - "src": "2147:54:27" + "src": "2147:54:31" }, { "expression": { "arguments": [ { - "id": 30699, + "id": 32257, "isConstant": false, "isLValue": false, "isPure": false, @@ -3330,20 +4490,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2280:46:27", + "src": "2280:46:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30695, + "id": 32253, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2311:7:27", + "referencedDeclaration": 32093, + "src": "2311:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -3351,38 +4511,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30694, + "id": 32252, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2303:7:27", + "src": "2303:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30693, + "id": 32251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2303:7:27", + "src": "2303:7:31", "typeDescriptions": {} } }, - "id": 30696, + "id": 32254, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2303:16:27", + "src": "2303:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3390,12 +4551,12 @@ } }, { - "id": 30697, + "id": 32255, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "2321:4:27", + "referencedDeclaration": 31574, + "src": "2321:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3414,40 +4575,42 @@ } ], "expression": { - "id": 30691, + "id": 32249, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "2281:3:27", + "referencedDeclaration": 31565, + "src": "2281:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30692, + "id": 32250, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2285:17:31", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 29651, - "src": "2281:21:27", + "referencedDeclaration": 30261, + "src": "2281:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 30698, + "id": 32256, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2281:45:27", + "src": "2281:45:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3467,41 +4630,42 @@ "typeString": "bool" } ], - "id": 30690, + "id": 32248, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2273:6:27", + "src": "2273:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30700, + "id": 32258, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2273:54:27", + "src": "2273:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30701, + "id": 32259, "nodeType": "ExpressionStatement", - "src": "2273:54:27" + "src": "2273:54:31" }, { "expression": { "arguments": [ { - "id": 30711, + "id": 32269, "isConstant": false, "isLValue": false, "isPure": false, @@ -3509,20 +4673,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2411:46:27", + "src": "2411:46:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30707, + "id": 32265, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2442:7:27", + "referencedDeclaration": 32093, + "src": "2442:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -3530,38 +4694,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30706, + "id": 32264, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2434:7:27", + "src": "2434:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30705, + "id": 32263, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2434:7:27", + "src": "2434:7:31", "typeDescriptions": {} } }, - "id": 30708, + "id": 32266, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2434:16:27", + "src": "2434:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3569,12 +4734,12 @@ } }, { - "id": 30709, + "id": 32267, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "2452:4:27", + "referencedDeclaration": 31574, + "src": "2452:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3593,40 +4758,42 @@ } ], "expression": { - "id": 30703, + "id": 32261, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "2412:3:27", + "referencedDeclaration": 31568, + "src": "2412:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30704, + "id": 32262, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2416:17:31", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 29651, - "src": "2412:21:27", + "referencedDeclaration": 30261, + "src": "2412:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 30710, + "id": 32268, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2412:45:27", + "src": "2412:45:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3646,41 +4813,42 @@ "typeString": "bool" } ], - "id": 30702, + "id": 32260, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2404:6:27", + "src": "2404:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30712, + "id": 32270, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2404:54:27", + "src": "2404:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30713, + "id": 32271, "nodeType": "ExpressionStatement", - "src": "2404:54:27" + "src": "2404:54:31" }, { "expression": { "arguments": [ { - "id": 30725, + "id": 32283, "isConstant": false, "isLValue": false, "isPure": false, @@ -3688,20 +4856,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2538:62:27", + "src": "2538:62:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30719, + "id": 32277, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2569:7:27", + "referencedDeclaration": 32093, + "src": "2569:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -3709,38 +4877,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30718, + "id": 32276, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2561:7:27", + "src": "2561:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30717, + "id": 32275, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2561:7:27", + "src": "2561:7:31", "typeDescriptions": {} } }, - "id": 30720, + "id": 32278, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2561:16:27", + "src": "2561:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3752,40 +4921,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30721, + "id": 32279, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2579:7:27", + "referencedDeclaration": 32093, + "src": "2579:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30722, + "id": 32280, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2587:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "2579:18:27", + "referencedDeclaration": 27505, + "src": "2579:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 30723, + "id": 32281, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2579:20:27", + "src": "2579:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3805,40 +4976,42 @@ } ], "expression": { - "id": 30715, + "id": 32273, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "2539:3:27", + "referencedDeclaration": 31568, + "src": "2539:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30716, + "id": 32274, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2543:17:31", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 29651, - "src": "2539:21:27", + "referencedDeclaration": 30261, + "src": "2539:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 30724, + "id": 32282, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2539:61:27", + "src": "2539:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3858,41 +5031,42 @@ "typeString": "bool" } ], - "id": 30714, + "id": 32272, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2531:6:27", + "src": "2531:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30726, + "id": 32284, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2531:70:27", + "src": "2531:70:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30727, + "id": 32285, "nodeType": "ExpressionStatement", - "src": "2531:70:27" + "src": "2531:70:31" }, { "expression": { "arguments": [ { - "id": 30740, + "id": 32298, "isConstant": false, "isLValue": false, "isPure": false, @@ -3900,20 +5074,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2679:52:27", + "src": "2679:52:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30733, + "id": 32291, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2710:7:27", + "referencedDeclaration": 32093, + "src": "2710:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -3921,38 +5095,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30732, + "id": 32290, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2702:7:27", + "src": "2702:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30731, + "id": 32289, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2702:7:27", + "src": "2702:7:31", "typeDescriptions": {} } }, - "id": 30734, + "id": 32292, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2702:16:27", + "src": "2702:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -3963,14 +5138,14 @@ "arguments": [ { "hexValue": "30", - "id": 30737, + "id": 32295, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2728:1:27", + "src": "2728:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -3985,34 +5160,35 @@ "typeString": "int_const 0" } ], - "id": 30736, + "id": 32294, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2720:7:27", + "src": "2720:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30735, + "id": 32293, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2720:7:27", + "src": "2720:7:31", "typeDescriptions": {} } }, - "id": 30738, + "id": 32296, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2720:10:27", + "src": "2720:10:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4032,40 +5208,42 @@ } ], "expression": { - "id": 30729, + "id": 32287, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "2680:3:27", + "referencedDeclaration": 31568, + "src": "2680:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30730, + "id": 32288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2684:17:31", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 29651, - "src": "2680:21:27", + "referencedDeclaration": 30261, + "src": "2680:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 30739, + "id": 32297, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2680:51:27", + "src": "2680:51:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4085,46 +5263,47 @@ "typeString": "bool" } ], - "id": 30728, + "id": 32286, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2672:6:27", + "src": "2672:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30741, + "id": 32299, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2672:60:27", + "src": "2672:60:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30742, + "id": 32300, "nodeType": "ExpressionStatement", - "src": "2672:60:27" + "src": "2672:60:31" }, { "expression": { "arguments": [ { - "id": 30744, + "id": 32302, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "2800:4:27", + "referencedDeclaration": 31574, + "src": "2800:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4133,14 +5312,14 @@ { "arguments": [ { - "id": 30747, + "id": 32305, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2814:7:27", + "referencedDeclaration": 32093, + "src": "2814:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -4148,38 +5327,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30746, + "id": 32304, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2806:7:27", + "src": "2806:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30745, + "id": 32303, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2806:7:27", + "src": "2806:7:31", "typeDescriptions": {} } }, - "id": 30748, + "id": 32306, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2806:16:27", + "src": "2806:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4191,21 +5371,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30751, + "id": 32309, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 30749, + "id": 32307, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2824:3:27", + "src": "2824:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -4215,18 +5395,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30750, + "id": 32308, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30087, - "src": "2830:3:27", + "referencedDeclaration": 31645, + "src": "2830:3:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2824:9:27", + "src": "2824:9:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4248,39 +5428,40 @@ "typeString": "uint256" } ], - "id": 30743, + "id": 32301, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ - 5023, - 5040, - 5143 + 5060, + 5077, + 5180 ], - "referencedDeclaration": 5040, - "src": "2795:4:27", + "referencedDeclaration": 5077, + "src": "2795:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 30752, + "id": 32310, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2795:39:27", + "src": "2795:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30753, + "id": 32311, "nodeType": "ExpressionStatement", - "src": "2795:39:27" + "src": "2795:39:31" }, { "expression": { @@ -4290,14 +5471,14 @@ { "arguments": [ { - "id": 30759, + "id": 32317, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "2962:7:27", + "referencedDeclaration": 32093, + "src": "2962:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -4305,38 +5486,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30758, + "id": 32316, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2954:7:27", + "src": "2954:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30757, + "id": 32315, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2954:7:27", + "src": "2954:7:31", "typeDescriptions": {} } }, - "id": 30760, + "id": 32318, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2954:16:27", + "src": "2954:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4344,12 +5526,12 @@ } }, { - "id": 30761, + "id": 32319, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "2972:4:27", + "referencedDeclaration": 31574, + "src": "2972:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4368,40 +5550,42 @@ } ], "expression": { - "id": 30755, + "id": 32313, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "2932:3:27", + "referencedDeclaration": 31568, + "src": "2932:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30756, + "id": 32314, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2936:17:31", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 29651, - "src": "2932:21:27", + "referencedDeclaration": 30261, + "src": "2932:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 30762, + "id": 32320, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2932:45:27", + "src": "2932:45:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4416,42 +5600,43 @@ "typeString": "bool" } ], - "id": 30754, + "id": 32312, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "2925:6:27", + "src": "2925:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30763, + "id": 32321, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2925:53:27", + "src": "2925:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30764, + "id": 32322, "nodeType": "ExpressionStatement", - "src": "2925:53:27" + "src": "2925:53:31" } ] }, "documentation": { - "id": 30675, + "id": 32233, "nodeType": "StructuredDocumentation", - "src": "1968:45:27", + "src": "1968:45:31", "text": "@dev Verifies withdrawErc20 restrictions." }, "functionSelector": "65dfbcb3", @@ -4459,43 +5644,45 @@ "kind": "function", "modifiers": [], "name": "test_vesting_withdrawErc20_restrictions", - "nameLocation": "2028:39:27", + "nameLocation": "2028:39:31", "parameters": { - "id": 30676, + "id": 32234, "nodeType": "ParameterList", "parameters": [], - "src": "2067:2:27" + "src": "2067:2:31" }, "returnParameters": { - "id": 30677, + "id": 32235, "nodeType": "ParameterList", "parameters": [], - "src": "2077:0:27" + "src": "2077:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30849, + "id": 32407, "nodeType": "FunctionDefinition", - "src": "3046:563:27", + "src": "3046:563:31", + "nodes": [], "body": { - "id": 30848, + "id": 32406, "nodeType": "Block", - "src": "3105:504:27", + "src": "3105:504:31", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 30771, + "id": 32329, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "3121:4:27", + "referencedDeclaration": 31574, + "src": "3121:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4504,14 +5691,14 @@ { "arguments": [ { - "id": 30774, + "id": 32332, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "3135:7:27", + "referencedDeclaration": 32093, + "src": "3135:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -4519,38 +5706,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30773, + "id": 32331, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3127:7:27", + "src": "3127:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30772, + "id": 32330, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3127:7:27", + "src": "3127:7:31", "typeDescriptions": {} } }, - "id": 30775, + "id": 32333, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3127:16:27", + "src": "3127:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4562,21 +5750,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30778, + "id": 32336, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 30776, + "id": 32334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3145:3:27", + "src": "3145:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -4586,18 +5774,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30777, + "id": 32335, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30087, - "src": "3151:3:27", + "referencedDeclaration": 31645, + "src": "3151:3:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3145:9:27", + "src": "3145:9:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4619,39 +5807,40 @@ "typeString": "uint256" } ], - "id": 30770, + "id": 32328, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ - 5023, - 5040, - 5143 + 5060, + 5077, + 5180 ], - "referencedDeclaration": 5040, - "src": "3116:4:27", + "referencedDeclaration": 5077, + "src": "3116:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 30779, + "id": 32337, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3116:39:27", + "src": "3116:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30780, + "id": 32338, "nodeType": "ExpressionStatement", - "src": "3116:39:27" + "src": "3116:39:31" }, { "expression": { @@ -4661,14 +5850,14 @@ { "arguments": [ { - "id": 30788, + "id": 32346, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "3236:7:27", + "referencedDeclaration": 32093, + "src": "3236:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -4676,38 +5865,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30787, + "id": 32345, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3228:7:27", + "src": "3228:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30786, + "id": 32344, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3228:7:27", + "src": "3228:7:31", "typeDescriptions": {} } }, - "id": 30789, + "id": 32347, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3228:16:27", + "src": "3228:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4725,12 +5915,12 @@ "expression": { "arguments": [ { - "id": 30783, + "id": 32341, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "3212:4:27", + "referencedDeclaration": 31574, + "src": "3212:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4744,55 +5934,58 @@ "typeString": "address" } ], - "id": 30782, + "id": 32340, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "3205:6:27", + "referencedDeclaration": 29158, + "src": "3205:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30784, + "id": 32342, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3205:12:27", + "src": "3205:12:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30785, + "id": 32343, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3218:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "3205:22:27", + "referencedDeclaration": 29097, + "src": "3205:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30790, + "id": 32348, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3205:40:27", + "src": "3205:40:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4804,21 +5997,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30793, + "id": 32351, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 30791, + "id": 32349, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3247:3:27", + "src": "3247:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -4828,18 +6021,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30792, + "id": 32350, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30087, - "src": "3253:3:27", + "referencedDeclaration": 31645, + "src": "3253:3:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3247:9:27", + "src": "3247:9:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4857,20 +6050,20 @@ "typeString": "uint256" } ], - "id": 30781, + "id": 32339, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -4883,30 +6076,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "3196:8:27", + "src": "3196:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30794, + "id": 32352, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3196:61:27", + "src": "3196:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30795, + "id": 32353, "nodeType": "ExpressionStatement", - "src": "3196:61:27" + "src": "3196:61:31" }, { "expression": { @@ -4916,14 +6110,14 @@ { "arguments": [ { - "id": 30803, + "id": 32361, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "3308:3:27", + "referencedDeclaration": 31568, + "src": "3308:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -4931,38 +6125,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30802, + "id": 32360, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3300:7:27", + "src": "3300:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30801, + "id": 32359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3300:7:27", + "src": "3300:7:31", "typeDescriptions": {} } }, - "id": 30804, + "id": 32362, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3300:12:27", + "src": "3300:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -4980,12 +6175,12 @@ "expression": { "arguments": [ { - "id": 30798, + "id": 32356, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "3284:4:27", + "referencedDeclaration": 31574, + "src": "3284:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4999,55 +6194,58 @@ "typeString": "address" } ], - "id": 30797, + "id": 32355, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "3277:6:27", + "referencedDeclaration": 29158, + "src": "3277:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30799, + "id": 32357, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3277:12:27", + "src": "3277:12:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30800, + "id": 32358, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3290:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "3277:22:27", + "referencedDeclaration": 29097, + "src": "3277:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30805, + "id": 32363, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3277:36:27", + "src": "3277:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5056,14 +6254,14 @@ }, { "hexValue": "30", - "id": 30806, + "id": 32364, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3319:1:27", + "src": "3319:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -5082,20 +6280,20 @@ "typeString": "int_const 0" } ], - "id": 30796, + "id": 32354, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -5108,30 +6306,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "3268:8:27", + "src": "3268:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30807, + "id": 32365, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3268:53:27", + "src": "3268:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30808, + "id": 32366, "nodeType": "ExpressionStatement", - "src": "3268:53:27" + "src": "3268:53:31" }, { "expression": { @@ -5141,14 +6340,14 @@ { "arguments": [ { - "id": 30814, + "id": 32372, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "3418:7:27", + "referencedDeclaration": 32093, + "src": "3418:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -5156,38 +6355,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30813, + "id": 32371, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3410:7:27", + "src": "3410:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30812, + "id": 32370, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3410:7:27", + "src": "3410:7:31", "typeDescriptions": {} } }, - "id": 30815, + "id": 32373, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3410:16:27", + "src": "3410:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5195,12 +6395,12 @@ } }, { - "id": 30816, + "id": 32374, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "3428:4:27", + "referencedDeclaration": 31574, + "src": "3428:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5219,40 +6419,42 @@ } ], "expression": { - "id": 30810, + "id": 32368, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "3388:3:27", + "referencedDeclaration": 31568, + "src": "3388:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30811, + "id": 32369, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3392:17:31", "memberName": "try_withdrawErc20", "nodeType": "MemberAccess", - "referencedDeclaration": 29651, - "src": "3388:21:27", + "referencedDeclaration": 30261, + "src": "3388:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 30817, + "id": 32375, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3388:45:27", + "src": "3388:45:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5267,35 +6469,36 @@ "typeString": "bool" } ], - "id": 30809, + "id": 32367, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3381:6:27", + "src": "3381:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30818, + "id": 32376, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3381:53:27", + "src": "3381:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30819, + "id": 32377, "nodeType": "ExpressionStatement", - "src": "3381:53:27" + "src": "3381:53:31" }, { "expression": { @@ -5305,14 +6508,14 @@ { "arguments": [ { - "id": 30827, + "id": 32385, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "3516:7:27", + "referencedDeclaration": 32093, + "src": "3516:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -5320,38 +6523,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30826, + "id": 32384, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3508:7:27", + "src": "3508:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30825, + "id": 32383, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3508:7:27", + "src": "3508:7:31", "typeDescriptions": {} } }, - "id": 30828, + "id": 32386, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3508:16:27", + "src": "3508:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5369,12 +6573,12 @@ "expression": { "arguments": [ { - "id": 30822, + "id": 32380, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "3492:4:27", + "referencedDeclaration": 31574, + "src": "3492:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5388,55 +6592,58 @@ "typeString": "address" } ], - "id": 30821, + "id": 32379, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "3485:6:27", + "referencedDeclaration": 29158, + "src": "3485:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30823, + "id": 32381, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3485:12:27", + "src": "3485:12:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30824, + "id": 32382, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3498:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "3485:22:27", + "referencedDeclaration": 29097, + "src": "3485:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30829, + "id": 32387, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3485:40:27", + "src": "3485:40:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5445,14 +6652,14 @@ }, { "hexValue": "30", - "id": 30830, + "id": 32388, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3527:1:27", + "src": "3527:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -5471,20 +6678,20 @@ "typeString": "int_const 0" } ], - "id": 30820, + "id": 32378, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -5497,30 +6704,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "3476:8:27", + "src": "3476:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30831, + "id": 32389, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3476:53:27", + "src": "3476:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30832, + "id": 32390, "nodeType": "ExpressionStatement", - "src": "3476:53:27" + "src": "3476:53:31" }, { "expression": { @@ -5530,14 +6738,14 @@ { "arguments": [ { - "id": 30840, + "id": 32398, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "3580:3:27", + "referencedDeclaration": 31568, + "src": "3580:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -5545,38 +6753,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30839, + "id": 32397, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3572:7:27", + "src": "3572:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30838, + "id": 32396, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3572:7:27", + "src": "3572:7:31", "typeDescriptions": {} } }, - "id": 30841, + "id": 32399, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3572:12:27", + "src": "3572:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5594,12 +6803,12 @@ "expression": { "arguments": [ { - "id": 30835, + "id": 32393, "name": "USDC", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30016, - "src": "3556:4:27", + "referencedDeclaration": 31574, + "src": "3556:4:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5613,55 +6822,58 @@ "typeString": "address" } ], - "id": 30834, + "id": 32392, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "3549:6:27", + "referencedDeclaration": 29158, + "src": "3549:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 30836, + "id": 32394, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3549:12:27", + "src": "3549:12:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 30837, + "id": 32395, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3562:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "3549:22:27", + "referencedDeclaration": 29097, + "src": "3549:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 30842, + "id": 32400, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3549:36:27", + "src": "3549:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5673,21 +6885,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 30845, + "id": 32403, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "313030", - "id": 30843, + "id": 32401, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3591:3:27", + "src": "3591:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" @@ -5697,18 +6909,18 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 30844, + "id": 32402, "name": "USD", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30087, - "src": "3597:3:27", + "referencedDeclaration": 31645, + "src": "3597:3:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3591:9:27", + "src": "3591:9:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5726,20 +6938,20 @@ "typeString": "uint256" } ], - "id": 30833, + "id": 32391, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -5752,37 +6964,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "3540:8:27", + "src": "3540:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30846, + "id": 32404, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3540:61:27", + "src": "3540:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30847, + "id": 32405, "nodeType": "ExpressionStatement", - "src": "3540:61:27" + "src": "3540:61:31" } ] }, "documentation": { - "id": 30767, + "id": 32325, "nodeType": "StructuredDocumentation", - "src": "2994:46:27", + "src": "2994:46:31", "text": "@dev Verifies withdrawErc20 state changes." }, "functionSelector": "b1857efe", @@ -5790,38 +7003,40 @@ "kind": "function", "modifiers": [], "name": "test_vesting_withdrawErc20_state_changes", - "nameLocation": "3055:40:27", + "nameLocation": "3055:40:31", "parameters": { - "id": 30768, + "id": 32326, "nodeType": "ParameterList", "parameters": [], - "src": "3095:2:27" + "src": "3095:2:31" }, "returnParameters": { - "id": 30769, + "id": 32327, "nodeType": "ParameterList", "parameters": [], - "src": "3105:0:27" + "src": "3105:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 30963, + "id": 32521, "nodeType": "FunctionDefinition", - "src": "3699:1165:27", + "src": "3699:1165:31", + "nodes": [], "body": { - "id": 30962, + "id": 32520, "nodeType": "Block", - "src": "3755:1109:27", + "src": "3755:1109:31", + "nodes": [], "statements": [ { "expression": { "arguments": [ { - "id": 30866, + "id": 32424, "isConstant": false, "isLValue": false, "isPure": false, @@ -5829,20 +7044,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "3840:62:27", + "src": "3840:62:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30858, + "id": 32416, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "3869:7:27", + "referencedDeclaration": 32093, + "src": "3869:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -5850,38 +7065,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30857, + "id": 32415, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3861:7:27", + "src": "3861:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30856, + "id": 32414, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3861:7:27", + "src": "3861:7:31", "typeDescriptions": {} } }, - "id": 30859, + "id": 32417, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3861:16:27", + "src": "3861:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5891,14 +7107,14 @@ { "arguments": [ { - "id": 30862, + "id": 32420, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "3887:3:27", + "referencedDeclaration": 31565, + "src": "3887:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -5906,38 +7122,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30861, + "id": 32419, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3879:7:27", + "src": "3879:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30860, + "id": 32418, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3879:7:27", + "src": "3879:7:31", "typeDescriptions": {} } }, - "id": 30863, + "id": 32421, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3879:12:27", + "src": "3879:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -5946,14 +7163,14 @@ }, { "hexValue": "3130", - "id": 30864, + "id": 32422, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3893:8:27", + "src": "3893:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -5978,40 +7195,42 @@ } ], "expression": { - "id": 30854, + "id": 32412, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "3841:3:27", + "referencedDeclaration": 31571, + "src": "3841:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30855, + "id": 32413, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3845:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "3841:19:27", + "referencedDeclaration": 30294, + "src": "3841:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 30865, + "id": 32423, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3841:61:27", + "src": "3841:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6031,41 +7250,42 @@ "typeString": "bool" } ], - "id": 30853, + "id": 32411, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3833:6:27", + "src": "3833:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30867, + "id": 32425, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3833:70:27", + "src": "3833:70:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30868, + "id": 32426, "nodeType": "ExpressionStatement", - "src": "3833:70:27" + "src": "3833:70:31" }, { "expression": { "arguments": [ { - "id": 30882, + "id": 32440, "isConstant": false, "isLValue": false, "isPure": false, @@ -6073,20 +7293,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "3989:62:27", + "src": "3989:62:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 30874, + "id": 32432, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "4018:7:27", + "referencedDeclaration": 32093, + "src": "4018:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -6094,38 +7314,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30873, + "id": 32431, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4010:7:27", + "src": "4010:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30872, + "id": 32430, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4010:7:27", + "src": "4010:7:31", "typeDescriptions": {} } }, - "id": 30875, + "id": 32433, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4010:16:27", + "src": "4010:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6135,14 +7356,14 @@ { "arguments": [ { - "id": 30878, + "id": 32436, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "4036:3:27", + "referencedDeclaration": 31565, + "src": "4036:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -6150,38 +7371,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30877, + "id": 32435, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4028:7:27", + "src": "4028:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30876, + "id": 32434, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4028:7:27", + "src": "4028:7:31", "typeDescriptions": {} } }, - "id": 30879, + "id": 32437, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4028:12:27", + "src": "4028:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6190,14 +7412,14 @@ }, { "hexValue": "3130", - "id": 30880, + "id": 32438, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4042:8:27", + "src": "4042:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -6222,40 +7444,42 @@ } ], "expression": { - "id": 30870, + "id": 32428, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "3990:3:27", + "referencedDeclaration": 31565, + "src": "3990:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30871, + "id": 32429, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "3994:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "3990:19:27", + "referencedDeclaration": 30294, + "src": "3990:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 30881, + "id": 32439, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3990:61:27", + "src": "3990:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6275,35 +7499,36 @@ "typeString": "bool" } ], - "id": 30869, + "id": 32427, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "3982:6:27", + "src": "3982:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30883, + "id": 32441, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3982:70:27", + "src": "3982:70:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30884, + "id": 32442, "nodeType": "ExpressionStatement", - "src": "3982:70:27" + "src": "3982:70:31" }, { "expression": { @@ -6313,14 +7538,14 @@ { "arguments": [ { - "id": 30890, + "id": 32448, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "4153:7:27", + "referencedDeclaration": 32093, + "src": "4153:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -6328,38 +7553,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 30889, + "id": 32447, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4145:7:27", + "src": "4145:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30888, + "id": 32446, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4145:7:27", + "src": "4145:7:31", "typeDescriptions": {} } }, - "id": 30891, + "id": 32449, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4145:16:27", + "src": "4145:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6369,14 +7595,14 @@ { "arguments": [ { - "id": 30894, + "id": 32452, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "4171:3:27", + "referencedDeclaration": 31565, + "src": "4171:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -6384,38 +7610,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30893, + "id": 32451, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4163:7:27", + "src": "4163:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30892, + "id": 32450, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4163:7:27", + "src": "4163:7:31", "typeDescriptions": {} } }, - "id": 30895, + "id": 32453, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4163:12:27", + "src": "4163:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6424,14 +7651,14 @@ }, { "hexValue": "3130", - "id": 30896, + "id": 32454, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4177:8:27", + "src": "4177:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -6456,40 +7683,42 @@ } ], "expression": { - "id": 30886, + "id": 32444, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "4125:3:27", + "referencedDeclaration": 31568, + "src": "4125:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 30887, + "id": 32445, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4129:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "4125:19:27", + "referencedDeclaration": 30294, + "src": "4125:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 30897, + "id": 32455, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4125:61:27", + "src": "4125:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6504,35 +7733,36 @@ "typeString": "bool" } ], - "id": 30885, + "id": 32443, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "4118:6:27", + "src": "4118:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 30898, + "id": 32456, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4118:69:27", + "src": "4118:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30899, + "id": 32457, "nodeType": "ExpressionStatement", - "src": "4118:69:27" + "src": "4118:69:31" }, { "expression": { @@ -6540,14 +7770,14 @@ { "arguments": [ { - "id": 30905, + "id": 32463, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "4222:3:27", + "referencedDeclaration": 31568, + "src": "4222:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -6555,38 +7785,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30904, + "id": 32462, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4214:7:27", + "src": "4214:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30903, + "id": 32461, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4214:7:27", + "src": "4214:7:31", "typeDescriptions": {} } }, - "id": 30906, + "id": 32464, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4214:12:27", + "src": "4214:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6602,63 +7833,65 @@ } ], "expression": { - "id": 30900, + "id": 32458, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4200:2:27", + "src": "4200:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 30902, + "id": 32460, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4203:10:31", "memberName": "startPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9043, - "src": "4200:13:27", + "referencedDeclaration": 9080, + "src": "4200:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 30907, + "id": 32465, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4200:27:27", + "src": "4200:27:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30908, + "id": 32466, "nodeType": "ExpressionStatement", - "src": "4200:27:27" + "src": "4200:27:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f72282920696e766573746f7220697320616c7265616479206164646564", - "id": 30912, + "id": 32470, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4322:54:27", + "src": "4322:54:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ac8b3365ec58116f79763809b4a76f0b400571fe8055cd18bc01fd9ea666875f", "typeString": "literal_string \"Vesting.sol::addInvestor() investor is already added\"" @@ -6674,49 +7907,51 @@ } ], "expression": { - "id": 30909, + "id": 32467, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4306:2:27", + "src": "4306:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 30911, + "id": 32469, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4309:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "4306:15:27", + "referencedDeclaration": 9116, + "src": "4306:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 30913, + "id": 32471, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4306:71:27", + "src": "4306:71:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30914, + "id": 32472, "nodeType": "ExpressionStatement", - "src": "4306:71:27" + "src": "4306:71:31" }, { "expression": { @@ -6724,14 +7959,14 @@ { "arguments": [ { - "id": 30920, + "id": 32478, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "4416:3:27", + "referencedDeclaration": 31565, + "src": "4416:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -6739,38 +7974,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30919, + "id": 32477, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4408:7:27", + "src": "4408:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30918, + "id": 32476, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4408:7:27", + "src": "4408:7:31", "typeDescriptions": {} } }, - "id": 30921, + "id": 32479, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4408:12:27", + "src": "4408:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6779,14 +8015,14 @@ }, { "hexValue": "3130", - "id": 30922, + "id": 32480, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4422:8:27", + "src": "4422:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -6807,63 +8043,65 @@ } ], "expression": { - "id": 30915, + "id": 32473, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "4388:7:27", + "referencedDeclaration": 32093, + "src": "4388:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30917, + "id": 32475, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4396:11:31", "memberName": "addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27653, - "src": "4388:19:27", + "referencedDeclaration": 27709, + "src": "4388:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256) external" } }, - "id": 30923, + "id": 32481, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4388:43:27", + "src": "4388:43:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30924, + "id": 32482, "nodeType": "ExpressionStatement", - "src": "4388:43:27" + "src": "4388:43:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f6163636f756e742063616e6e6f742062652061646472657373283029", - "id": 30928, + "id": 32486, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4524:58:27", + "src": "4524:58:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_43a7576cc71999d5991f16be987a98bc7d178f59df62ec343336a603751a8636", "typeString": "literal_string \"Vesting.sol::addInvestor() _account cannot be address(0)\"" @@ -6879,49 +8117,51 @@ } ], "expression": { - "id": 30925, + "id": 32483, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4508:2:27", + "src": "4508:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 30927, + "id": 32485, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4511:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "4508:15:27", + "referencedDeclaration": 9116, + "src": "4508:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 30929, + "id": 32487, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4508:75:27", + "src": "4508:75:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30930, + "id": 32488, "nodeType": "ExpressionStatement", - "src": "4508:75:27" + "src": "4508:75:31" }, { "expression": { @@ -6930,14 +8170,14 @@ "arguments": [ { "hexValue": "30", - "id": 30936, + "id": 32494, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4622:1:27", + "src": "4622:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -6952,34 +8192,35 @@ "typeString": "int_const 0" } ], - "id": 30935, + "id": 32493, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4614:7:27", + "src": "4614:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30934, + "id": 32492, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4614:7:27", + "src": "4614:7:31", "typeDescriptions": {} } }, - "id": 30937, + "id": 32495, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4614:10:27", + "src": "4614:10:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -6988,14 +8229,14 @@ }, { "hexValue": "3130", - "id": 30938, + "id": 32496, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4626:8:27", + "src": "4626:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -7016,63 +8257,65 @@ } ], "expression": { - "id": 30931, + "id": 32489, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "4594:7:27", + "referencedDeclaration": 32093, + "src": "4594:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30933, + "id": 32491, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4602:11:31", "memberName": "addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27653, - "src": "4594:19:27", + "referencedDeclaration": 27709, + "src": "4594:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256) external" } }, - "id": 30939, + "id": 32497, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4594:41:27", + "src": "4594:41:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30940, + "id": 32498, "nodeType": "ExpressionStatement", - "src": "4594:41:27" + "src": "4594:41:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a616464496e766573746f722829205f746f6b656e73546f56657374206d7573742062652067742030", - "id": 30944, + "id": 32502, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4726:55:27", + "src": "4726:55:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6c29cccc352d3a7eba90af13be2b3943b9e81df521048af1ca34057bc8661bb8", "typeString": "literal_string \"Vesting.sol::addInvestor() _tokensToVest must be gt 0\"" @@ -7088,49 +8331,51 @@ } ], "expression": { - "id": 30941, + "id": 32499, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4710:2:27", + "src": "4710:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 30943, + "id": 32501, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4713:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "4710:15:27", + "referencedDeclaration": 9116, + "src": "4710:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 30945, + "id": 32503, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4710:72:27", + "src": "4710:72:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30946, + "id": 32504, "nodeType": "ExpressionStatement", - "src": "4710:72:27" + "src": "4710:72:31" }, { "expression": { @@ -7138,14 +8383,14 @@ { "arguments": [ { - "id": 30952, + "id": 32510, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "4821:3:27", + "referencedDeclaration": 31571, + "src": "4821:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -7153,38 +8398,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30951, + "id": 32509, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4813:7:27", + "src": "4813:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30950, + "id": 32508, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4813:7:27", + "src": "4813:7:31", "typeDescriptions": {} } }, - "id": 30953, + "id": 32511, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4813:12:27", + "src": "4813:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7193,14 +8439,14 @@ }, { "hexValue": "30", - "id": 30954, + "id": 32512, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4827:1:27", + "src": "4827:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -7220,49 +8466,51 @@ } ], "expression": { - "id": 30947, + "id": 32505, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "4793:7:27", + "referencedDeclaration": 32093, + "src": "4793:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30949, + "id": 32507, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4801:11:31", "memberName": "addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27653, - "src": "4793:19:27", + "referencedDeclaration": 27709, + "src": "4793:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256) external" } }, - "id": 30955, + "id": 32513, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4793:36:27", + "src": "4793:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30956, + "id": 32514, "nodeType": "ExpressionStatement", - "src": "4793:36:27" + "src": "4793:36:31" }, { "expression": { @@ -7270,56 +8518,58 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30957, + "id": 32515, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "4842:2:27", + "src": "4842:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 30959, + "id": 32517, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "4845:9:31", "memberName": "stopPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9060, - "src": "4842:12:27", + "referencedDeclaration": 9097, + "src": "4842:12:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 30960, + "id": 32518, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4842:14:27", + "src": "4842:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30961, + "id": 32519, "nodeType": "ExpressionStatement", - "src": "4842:14:27" + "src": "4842:14:31" } ] }, "documentation": { - "id": 30850, + "id": 32408, "nodeType": "StructuredDocumentation", - "src": "3651:42:27", + "src": "3651:42:31", "text": "@dev Verifies addInvestor restrictions" }, "functionSelector": "a641e8dc", @@ -7327,32 +8577,34 @@ "kind": "function", "modifiers": [], "name": "test_vesting_addInvestor_restrictions", - "nameLocation": "3708:37:27", + "nameLocation": "3708:37:31", "parameters": { - "id": 30851, + "id": 32409, "nodeType": "ParameterList", "parameters": [], - "src": "3745:2:27" + "src": "3745:2:31" }, "returnParameters": { - "id": 30852, + "id": 32410, "nodeType": "ParameterList", "parameters": [], - "src": "3755:0:27" + "src": "3755:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 31074, + "id": 32632, "nodeType": "FunctionDefinition", - "src": "4921:861:27", + "src": "4921:861:31", + "nodes": [], "body": { - "id": 31073, + "id": 32631, "nodeType": "Block", - "src": "4978:804:27", + "src": "4978:804:31", + "nodes": [], "statements": [ { "expression": { @@ -7362,14 +8614,14 @@ { "arguments": [ { - "id": 30972, + "id": 32530, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "5053:3:27", + "referencedDeclaration": 31565, + "src": "5053:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -7377,38 +8629,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 30971, + "id": 32529, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5045:7:27", + "src": "5045:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 30970, + "id": 32528, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5045:7:27", + "src": "5045:7:31", "typeDescriptions": {} } }, - "id": 30973, + "id": 32531, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5045:12:27", + "src": "5045:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7424,40 +8677,42 @@ } ], "expression": { - "id": 30968, + "id": 32526, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "5027:7:27", + "referencedDeclaration": 32093, + "src": "5027:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30969, + "id": 32527, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5035:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "5027:17:27", + "referencedDeclaration": 27529, + "src": "5027:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 30974, + "id": 32532, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5027:31:27", + "src": "5027:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7466,14 +8721,14 @@ }, { "hexValue": "66616c7365", - "id": 30975, + "id": 32533, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5065:5:27", + "src": "5065:5:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7492,20 +8747,20 @@ "typeString": "bool" } ], - "id": 30967, + "id": 32525, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -7517,154 +8772,162 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "5018:8:27", + "referencedDeclaration": 2011, + "src": "5018:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 30976, + "id": 32534, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5018:53:27", + "src": "5018:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30977, + "id": 32535, "nodeType": "ExpressionStatement", - "src": "5018:53:27" + "src": "5018:53:31" }, { "assignments": [ - 30983 + 32541 ], "declarations": [ { "constant": false, - "id": 30983, + "id": 32541, "mutability": "mutable", "name": "tempArr", - "nameLocation": "5108:7:27", + "nameLocation": "5108:7:31", "nodeType": "VariableDeclaration", - "scope": 31073, - "src": "5082:33:27", + "scope": 32631, + "src": "5082:33:31", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 30981, + "id": 32539, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 30980, + "id": 32538, "name": "Vesting.Investor", + "nameLocations": [ + "5082:7:31", + "5090:8:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27469, - "src": "5082:16:27" + "referencedDeclaration": 27525, + "src": "5082:16:31" }, - "referencedDeclaration": 27469, - "src": "5082:16:27", + "referencedDeclaration": 27525, + "src": "5082:16:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 30982, + "id": 32540, "nodeType": "ArrayTypeName", - "src": "5082:18:27", + "src": "5082:18:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "id": 30987, + "id": 32545, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 30984, + "id": 32542, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "5118:7:27", + "referencedDeclaration": 32093, + "src": "5118:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30985, + "id": 32543, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5126:18:31", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 28039, - "src": "5118:26:27", + "referencedDeclaration": 28095, + "src": "5118:26:31", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 30986, + "id": 32544, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5118:28:27", + "src": "5118:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "5082:64:27" + "src": "5082:64:31" }, { "expression": { "arguments": [ { "expression": { - "id": 30989, + "id": 32547, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30983, - "src": "5166:7:27", + "referencedDeclaration": 32541, + "src": "5166:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 30990, + "id": 32548, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5174:6:31", "memberName": "length", "nodeType": "MemberAccess", - "src": "5166:14:27", + "src": "5166:14:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7672,14 +8935,14 @@ }, { "hexValue": "30", - "id": 30991, + "id": 32549, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5191:1:27", + "src": "5191:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -7698,20 +8961,20 @@ "typeString": "int_const 0" } ], - "id": 30988, + "id": 32546, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -7724,30 +8987,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "5157:8:27", + "src": "5157:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30992, + "id": 32550, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5157:36:27", + "src": "5157:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 30993, + "id": 32551, "nodeType": "ExpressionStatement", - "src": "5157:36:27" + "src": "5157:36:31" }, { "expression": { @@ -7757,40 +9021,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 30995, + "id": 32553, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "5213:7:27", + "referencedDeclaration": 32093, + "src": "5213:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 30996, + "id": 32554, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5221:18:31", "memberName": "getAllVestedTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 27822, - "src": "5213:26:27", + "referencedDeclaration": 27878, + "src": "5213:26:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 30997, + "id": 32555, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5213:28:27", + "src": "5213:28:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7799,14 +9065,14 @@ }, { "hexValue": "30", - "id": 30998, + "id": 32556, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5243:1:27", + "src": "5243:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -7825,20 +9091,20 @@ "typeString": "int_const 0" } ], - "id": 30994, + "id": 32552, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -7851,30 +9117,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "5204:8:27", + "src": "5204:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 30999, + "id": 32557, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5204:41:27", + "src": "5204:41:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31000, + "id": 32558, "nodeType": "ExpressionStatement", - "src": "5204:41:27" + "src": "5204:41:31" }, { "expression": { @@ -7884,14 +9151,14 @@ { "arguments": [ { - "id": 31006, + "id": 32564, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "5325:7:27", + "referencedDeclaration": 32093, + "src": "5325:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -7899,38 +9166,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31005, + "id": 32563, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5317:7:27", + "src": "5317:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31004, + "id": 32562, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5317:7:27", + "src": "5317:7:31", "typeDescriptions": {} } }, - "id": 31007, + "id": 32565, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5317:16:27", + "src": "5317:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7940,14 +9208,14 @@ { "arguments": [ { - "id": 31010, + "id": 32568, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "5343:3:27", + "referencedDeclaration": 31565, + "src": "5343:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -7955,38 +9223,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31009, + "id": 32567, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5335:7:27", + "src": "5335:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31008, + "id": 32566, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5335:7:27", + "src": "5335:7:31", "typeDescriptions": {} } }, - "id": 31011, + "id": 32569, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5335:12:27", + "src": "5335:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -7995,14 +9264,14 @@ }, { "hexValue": "3130", - "id": 31012, + "id": 32570, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5349:8:27", + "src": "5349:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -8027,40 +9296,42 @@ } ], "expression": { - "id": 31002, + "id": 32560, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "5297:3:27", + "referencedDeclaration": 31568, + "src": "5297:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31003, + "id": 32561, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5301:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "5297:19:27", + "referencedDeclaration": 30294, + "src": "5297:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31013, + "id": 32571, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5297:61:27", + "src": "5297:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -8075,35 +9346,36 @@ "typeString": "bool" } ], - "id": 31001, + "id": 32559, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "5290:6:27", + "src": "5290:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31014, + "id": 32572, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5290:69:27", + "src": "5290:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31015, + "id": 32573, "nodeType": "ExpressionStatement", - "src": "5290:69:27" + "src": "5290:69:31" }, { "expression": { @@ -8113,14 +9385,14 @@ { "arguments": [ { - "id": 31021, + "id": 32579, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "5437:3:27", + "referencedDeclaration": 31565, + "src": "5437:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -8128,38 +9400,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31020, + "id": 32578, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5429:7:27", + "src": "5429:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31019, + "id": 32577, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5429:7:27", + "src": "5429:7:31", "typeDescriptions": {} } }, - "id": 31022, + "id": 32580, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5429:12:27", + "src": "5429:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -8175,40 +9448,42 @@ } ], "expression": { - "id": 31017, + "id": 32575, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "5411:7:27", + "referencedDeclaration": 32093, + "src": "5411:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31018, + "id": 32576, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5419:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "5411:17:27", + "referencedDeclaration": 27529, + "src": "5411:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31023, + "id": 32581, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5411:31:27", + "src": "5411:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -8217,14 +9492,14 @@ }, { "hexValue": "74727565", - "id": 31024, + "id": 32582, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5449:4:27", + "src": "5449:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8243,20 +9518,20 @@ "typeString": "bool" } ], - "id": 31016, + "id": 32574, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -8268,48 +9543,49 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "5402:8:27", + "referencedDeclaration": 2011, + "src": "5402:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31025, + "id": 32583, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5402:52:27", + "src": "5402:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31026, + "id": 32584, "nodeType": "ExpressionStatement", - "src": "5402:52:27" + "src": "5402:52:31" }, { "expression": { - "id": 31031, + "id": 32589, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 31027, + "id": 32585, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30983, - "src": "5465:7:27", + "referencedDeclaration": 32541, + "src": "5465:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, @@ -8320,80 +9596,83 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31028, + "id": 32586, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "5475:7:27", + "referencedDeclaration": 32093, + "src": "5475:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31029, + "id": 32587, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5483:18:31", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 28039, - "src": "5475:26:27", + "referencedDeclaration": 28095, + "src": "5475:26:31", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 31030, + "id": 32588, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5475:28:27", + "src": "5475:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "src": "5465:38:27", + "src": "5465:38:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31032, + "id": 32590, "nodeType": "ExpressionStatement", - "src": "5465:38:27" + "src": "5465:38:31" }, { "expression": { "arguments": [ { "expression": { - "id": 31034, + "id": 32592, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30983, - "src": "5523:7:27", + "referencedDeclaration": 32541, + "src": "5523:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31035, + "id": 32593, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5531:6:31", "memberName": "length", "nodeType": "MemberAccess", - "src": "5523:14:27", + "src": "5523:14:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8401,14 +9680,14 @@ }, { "hexValue": "31", - "id": 31036, + "id": 32594, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5549:1:27", + "src": "5549:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -8427,20 +9706,20 @@ "typeString": "int_const 1" } ], - "id": 31033, + "id": 32591, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -8453,30 +9732,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "5514:8:27", + "src": "5514:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31037, + "id": 32595, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5514:37:27", + "src": "5514:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31038, + "id": 32596, "nodeType": "ExpressionStatement", - "src": "5514:37:27" + "src": "5514:37:31" }, { "expression": { @@ -8484,28 +9764,28 @@ { "expression": { "baseExpression": { - "id": 31040, + "id": 32598, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30983, - "src": "5571:7:27", + "referencedDeclaration": 32541, + "src": "5571:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31042, + "id": 32600, "indexExpression": { "hexValue": "30", - "id": 31041, + "id": 32599, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5579:1:27", + "src": "5579:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -8517,21 +9797,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5571:10:27", + "src": "5571:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31043, + "id": 32601, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5582:7:31", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "5571:18:27", + "referencedDeclaration": 27520, + "src": "5571:18:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8540,14 +9821,14 @@ { "arguments": [ { - "id": 31046, + "id": 32604, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "5605:3:27", + "referencedDeclaration": 31565, + "src": "5605:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -8555,38 +9836,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31045, + "id": 32603, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5597:7:27", + "src": "5597:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31044, + "id": 32602, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5597:7:27", + "src": "5597:7:31", "typeDescriptions": {} } }, - "id": 31047, + "id": 32605, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5597:12:27", + "src": "5597:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -8605,20 +9887,20 @@ "typeString": "address" } ], - "id": 31039, + "id": 32597, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -8631,30 +9913,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "5562:8:27", + "src": "5562:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 31048, + "id": 32606, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5562:48:27", + "src": "5562:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31049, + "id": 32607, "nodeType": "ExpressionStatement", - "src": "5562:48:27" + "src": "5562:48:31" }, { "expression": { @@ -8662,28 +9945,28 @@ { "expression": { "baseExpression": { - "id": 31051, + "id": 32609, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30983, - "src": "5630:7:27", + "referencedDeclaration": 32541, + "src": "5630:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31053, + "id": 32611, "indexExpression": { "hexValue": "30", - "id": 31052, + "id": 32610, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5638:1:27", + "src": "5638:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -8695,21 +9978,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5630:10:27", + "src": "5630:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31054, + "id": 32612, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5641:12:31", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "5630:23:27", + "referencedDeclaration": 27522, + "src": "5630:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8717,14 +10001,14 @@ }, { "hexValue": "3130", - "id": 31055, + "id": 32613, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5656:8:27", + "src": "5656:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -8744,20 +10028,20 @@ "typeString": "int_const 10000000000000000000" } ], - "id": 31050, + "id": 32608, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -8770,30 +10054,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "5621:8:27", + "src": "5621:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31056, + "id": 32614, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5621:44:27", + "src": "5621:44:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31057, + "id": 32615, "nodeType": "ExpressionStatement", - "src": "5621:44:27" + "src": "5621:44:31" }, { "expression": { @@ -8801,28 +10086,28 @@ { "expression": { "baseExpression": { - "id": 31059, + "id": 32617, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30983, - "src": "5685:7:27", + "referencedDeclaration": 32541, + "src": "5685:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31061, + "id": 32619, "indexExpression": { "hexValue": "30", - "id": 31060, + "id": 32618, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5693:1:27", + "src": "5693:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -8834,21 +10119,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5685:10:27", + "src": "5685:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31062, + "id": 32620, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "5696:13:31", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "5685:24:27", + "referencedDeclaration": 27524, + "src": "5685:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8856,14 +10142,14 @@ }, { "hexValue": "30", - "id": 31063, + "id": 32621, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5711:1:27", + "src": "5711:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -8882,20 +10168,20 @@ "typeString": "int_const 0" } ], - "id": 31058, + "id": 32616, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -8908,30 +10194,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "5676:8:27", + "src": "5676:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31064, + "id": 32622, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5676:37:27", + "src": "5676:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31065, + "id": 32623, "nodeType": "ExpressionStatement", - "src": "5676:37:27" + "src": "5676:37:31" }, { "expression": { @@ -8941,40 +10228,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31067, + "id": 32625, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "5735:7:27", + "referencedDeclaration": 32093, + "src": "5735:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31068, + "id": 32626, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "5743:18:31", "memberName": "getAllVestedTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 27822, - "src": "5735:26:27", + "referencedDeclaration": 27878, + "src": "5735:26:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", "typeString": "function () view external returns (uint256)" } }, - "id": 31069, + "id": 32627, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5735:28:27", + "src": "5735:28:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8983,14 +10272,14 @@ }, { "hexValue": "3130", - "id": 31070, + "id": 32628, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5765:8:27", + "src": "5765:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -9010,20 +10299,20 @@ "typeString": "int_const 10000000000000000000" } ], - "id": 31066, + "id": 32624, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -9036,37 +10325,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "5726:8:27", + "src": "5726:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31071, + "id": 32629, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5726:48:27", + "src": "5726:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31072, + "id": 32630, "nodeType": "ExpressionStatement", - "src": "5726:48:27" + "src": "5726:48:31" } ] }, "documentation": { - "id": 30964, + "id": 32522, "nodeType": "StructuredDocumentation", - "src": "4872:43:27", + "src": "4872:43:31", "text": "@dev Verifies addInvestor state changes" }, "functionSelector": "12223997", @@ -9074,32 +10364,34 @@ "kind": "function", "modifiers": [], "name": "test_vesting_addInvestor_state_changes", - "nameLocation": "4930:38:27", + "nameLocation": "4930:38:31", "parameters": { - "id": 30965, + "id": 32523, "nodeType": "ParameterList", "parameters": [], - "src": "4968:2:27" + "src": "4968:2:31" }, "returnParameters": { - "id": 30966, + "id": 32524, "nodeType": "ParameterList", "parameters": [], - "src": "4978:0:27" + "src": "4978:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 31182, + "id": 32740, "nodeType": "FunctionDefinition", - "src": "5880:1102:27", + "src": "5880:1102:31", + "nodes": [], "body": { - "id": 31181, + "id": 32739, "nodeType": "Block", - "src": "5939:1043:27", + "src": "5939:1043:31", + "nodes": [], "statements": [ { "expression": { @@ -9109,14 +10401,14 @@ { "arguments": [ { - "id": 31083, + "id": 32641, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "6039:7:27", + "referencedDeclaration": 32093, + "src": "6039:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -9124,38 +10416,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31082, + "id": 32640, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6031:7:27", + "src": "6031:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31081, + "id": 32639, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6031:7:27", + "src": "6031:7:31", "typeDescriptions": {} } }, - "id": 31084, + "id": 32642, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6031:16:27", + "src": "6031:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9165,14 +10458,14 @@ { "arguments": [ { - "id": 31087, + "id": 32645, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "6057:3:27", + "referencedDeclaration": 31565, + "src": "6057:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -9180,38 +10473,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31086, + "id": 32644, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6049:7:27", + "src": "6049:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31085, + "id": 32643, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6049:7:27", + "src": "6049:7:31", "typeDescriptions": {} } }, - "id": 31088, + "id": 32646, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6049:12:27", + "src": "6049:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9220,14 +10514,14 @@ }, { "hexValue": "3130", - "id": 31089, + "id": 32647, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6063:8:27", + "src": "6063:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -9252,40 +10546,42 @@ } ], "expression": { - "id": 31079, + "id": 32637, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "6011:3:27", + "referencedDeclaration": 31568, + "src": "6011:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31080, + "id": 32638, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6015:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "6011:19:27", + "referencedDeclaration": 30294, + "src": "6011:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31090, + "id": 32648, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6011:61:27", + "src": "6011:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9300,41 +10596,42 @@ "typeString": "bool" } ], - "id": 31078, + "id": 32636, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6004:6:27", + "src": "6004:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31091, + "id": 32649, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6004:69:27", + "src": "6004:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31092, + "id": 32650, "nodeType": "ExpressionStatement", - "src": "6004:69:27" + "src": "6004:69:31" }, { "expression": { "arguments": [ { - "id": 31105, + "id": 32663, "isConstant": false, "isLValue": false, "isPure": false, @@ -9342,20 +10639,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6163:55:27", + "src": "6163:55:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 31098, + "id": 32656, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "6195:7:27", + "referencedDeclaration": 32093, + "src": "6195:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -9363,38 +10660,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31097, + "id": 32655, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6187:7:27", + "src": "6187:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31096, + "id": 32654, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6187:7:27", + "src": "6187:7:31", "typeDescriptions": {} } }, - "id": 31099, + "id": 32657, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6187:16:27", + "src": "6187:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9404,14 +10702,14 @@ { "arguments": [ { - "id": 31102, + "id": 32660, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "6213:3:27", + "referencedDeclaration": 31565, + "src": "6213:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -9419,38 +10717,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31101, + "id": 32659, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6205:7:27", + "src": "6205:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31100, + "id": 32658, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6205:7:27", + "src": "6205:7:31", "typeDescriptions": {} } }, - "id": 31103, + "id": 32661, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6205:12:27", + "src": "6205:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9470,40 +10769,42 @@ } ], "expression": { - "id": 31094, + "id": 32652, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "6164:3:27", + "referencedDeclaration": 31571, + "src": "6164:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31095, + "id": 32653, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6168:18:31", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29713, - "src": "6164:22:27", + "referencedDeclaration": 30323, + "src": "6164:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 31104, + "id": 32662, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6164:54:27", + "src": "6164:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9523,41 +10824,42 @@ "typeString": "bool" } ], - "id": 31093, + "id": 32651, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6156:6:27", + "src": "6156:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31106, + "id": 32664, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6156:63:27", + "src": "6156:63:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31107, + "id": 32665, "nodeType": "ExpressionStatement", - "src": "6156:63:27" + "src": "6156:63:31" }, { "expression": { "arguments": [ { - "id": 31120, + "id": 32678, "isConstant": false, "isLValue": false, "isPure": false, @@ -9565,20 +10867,20 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6308:55:27", + "src": "6308:55:31", "subExpression": { "arguments": [ { "arguments": [ { - "id": 31113, + "id": 32671, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "6340:7:27", + "referencedDeclaration": 32093, + "src": "6340:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -9586,38 +10888,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31112, + "id": 32670, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6332:7:27", + "src": "6332:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31111, + "id": 32669, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6332:7:27", + "src": "6332:7:31", "typeDescriptions": {} } }, - "id": 31114, + "id": 32672, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6332:16:27", + "src": "6332:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9627,14 +10930,14 @@ { "arguments": [ { - "id": 31117, + "id": 32675, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "6358:3:27", + "referencedDeclaration": 31565, + "src": "6358:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -9642,38 +10945,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31116, + "id": 32674, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6350:7:27", + "src": "6350:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31115, + "id": 32673, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6350:7:27", + "src": "6350:7:31", "typeDescriptions": {} } }, - "id": 31118, + "id": 32676, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6350:12:27", + "src": "6350:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9693,40 +10997,42 @@ } ], "expression": { - "id": 31109, + "id": 32667, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "6309:3:27", + "referencedDeclaration": 31565, + "src": "6309:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31110, + "id": 32668, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6313:18:31", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29713, - "src": "6309:22:27", + "referencedDeclaration": 30323, + "src": "6309:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 31119, + "id": 32677, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6309:54:27", + "src": "6309:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9746,35 +11052,36 @@ "typeString": "bool" } ], - "id": 31108, + "id": 32666, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6301:6:27", + "src": "6301:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31121, + "id": 32679, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6301:63:27", + "src": "6301:63:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31122, + "id": 32680, "nodeType": "ExpressionStatement", - "src": "6301:63:27" + "src": "6301:63:31" }, { "expression": { @@ -9784,14 +11091,14 @@ { "arguments": [ { - "id": 31128, + "id": 32686, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "6471:7:27", + "referencedDeclaration": 32093, + "src": "6471:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -9799,38 +11106,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31127, + "id": 32685, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6463:7:27", + "src": "6463:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31126, + "id": 32684, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6463:7:27", + "src": "6463:7:31", "typeDescriptions": {} } }, - "id": 31129, + "id": 32687, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6463:16:27", + "src": "6463:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9840,14 +11148,14 @@ { "arguments": [ { - "id": 31132, + "id": 32690, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "6489:3:27", + "referencedDeclaration": 31565, + "src": "6489:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -9855,38 +11163,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31131, + "id": 32689, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6481:7:27", + "src": "6481:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31130, + "id": 32688, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6481:7:27", + "src": "6481:7:31", "typeDescriptions": {} } }, - "id": 31133, + "id": 32691, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6481:12:27", + "src": "6481:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -9906,40 +11215,42 @@ } ], "expression": { - "id": 31124, + "id": 32682, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "6440:3:27", + "referencedDeclaration": 31568, + "src": "6440:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31125, + "id": 32683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6444:18:31", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29713, - "src": "6440:22:27", + "referencedDeclaration": 30323, + "src": "6440:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 31134, + "id": 32692, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6440:54:27", + "src": "6440:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9954,35 +11265,36 @@ "typeString": "bool" } ], - "id": 31123, + "id": 32681, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "6433:6:27", + "src": "6433:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31135, + "id": 32693, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6433:62:27", + "src": "6433:62:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31136, + "id": 32694, "nodeType": "ExpressionStatement", - "src": "6433:62:27" + "src": "6433:62:31" }, { "expression": { @@ -9990,14 +11302,14 @@ { "arguments": [ { - "id": 31142, + "id": 32700, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "6530:3:27", + "referencedDeclaration": 31568, + "src": "6530:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -10005,38 +11317,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31141, + "id": 32699, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6522:7:27", + "src": "6522:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31140, + "id": 32698, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6522:7:27", + "src": "6522:7:31", "typeDescriptions": {} } }, - "id": 31143, + "id": 32701, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6522:12:27", + "src": "6522:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10052,63 +11365,65 @@ } ], "expression": { - "id": 31137, + "id": 32695, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "6508:2:27", + "src": "6508:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31139, + "id": 32697, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6511:10:31", "memberName": "startPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9043, - "src": "6508:13:27", + "referencedDeclaration": 9080, + "src": "6508:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 31144, + "id": 32702, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6508:27:27", + "src": "6508:27:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31145, + "id": 32703, "nodeType": "ExpressionStatement", - "src": "6508:27:27" + "src": "6508:27:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a6c6f63617465496e766573746f722829206163636f756e74206973206e6f7420616e20696e766573746f72", - "id": 31149, + "id": 32707, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6643:58:27", + "src": "6643:58:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c7d5b975a38bc7e0b558417843062c4383bc48f01017af3fb1a433530c55d36", "typeString": "literal_string \"Vesting.sol::locateInvestor() account is not an investor\"" @@ -10124,49 +11439,51 @@ } ], "expression": { - "id": 31146, + "id": 32704, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "6627:2:27", + "src": "6627:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31148, + "id": 32706, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6630:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "6627:15:27", + "referencedDeclaration": 9116, + "src": "6627:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 31150, + "id": 32708, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6627:75:27", + "src": "6627:75:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31151, + "id": 32709, "nodeType": "ExpressionStatement", - "src": "6627:75:27" + "src": "6627:75:31" }, { "expression": { @@ -10174,14 +11491,14 @@ { "arguments": [ { - "id": 31157, + "id": 32715, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "6744:3:27", + "referencedDeclaration": 31571, + "src": "6744:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -10189,38 +11506,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31156, + "id": 32714, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6736:7:27", + "src": "6736:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31155, + "id": 32713, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6736:7:27", + "src": "6736:7:31", "typeDescriptions": {} } }, - "id": 31158, + "id": 32716, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6736:12:27", + "src": "6736:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10236,63 +11554,65 @@ } ], "expression": { - "id": 31152, + "id": 32710, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "6713:7:27", + "referencedDeclaration": 32093, + "src": "6713:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31154, + "id": 32712, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6721:14:31", "memberName": "removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27720, - "src": "6713:22:27", + "referencedDeclaration": 27776, + "src": "6713:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 31159, + "id": 32717, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6713:36:27", + "src": "6713:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31160, + "id": 32718, "nodeType": "ExpressionStatement", - "src": "6713:36:27" + "src": "6713:36:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a72656d6f7665496e766573746f722829206163636f756e742063616e6e6f742062652061646472657373283029", - "id": 31164, + "id": 32722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6841:60:27", + "src": "6841:60:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6b2ef8fa4a278f0c633eee5173cf5b45c06af3207fcf59338db6e0d4ebe3ce85", "typeString": "literal_string \"Vesting.sol::removeInvestor() account cannot be address(0)\"" @@ -10308,49 +11628,51 @@ } ], "expression": { - "id": 31161, + "id": 32719, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "6825:2:27", + "src": "6825:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31163, + "id": 32721, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6828:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "6825:15:27", + "referencedDeclaration": 9116, + "src": "6825:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 31165, + "id": 32723, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6825:77:27", + "src": "6825:77:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31166, + "id": 32724, "nodeType": "ExpressionStatement", - "src": "6825:77:27" + "src": "6825:77:31" }, { "expression": { @@ -10359,14 +11681,14 @@ "arguments": [ { "hexValue": "30", - "id": 31172, + "id": 32730, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6944:1:27", + "src": "6944:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -10381,34 +11703,35 @@ "typeString": "int_const 0" } ], - "id": 31171, + "id": 32729, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6936:7:27", + "src": "6936:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31170, + "id": 32728, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6936:7:27", + "src": "6936:7:31", "typeDescriptions": {} } }, - "id": 31173, + "id": 32731, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6936:10:27", + "src": "6936:10:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10424,49 +11747,51 @@ } ], "expression": { - "id": 31167, + "id": 32725, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "6913:7:27", + "referencedDeclaration": 32093, + "src": "6913:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31169, + "id": 32727, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6921:14:31", "memberName": "removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 27720, - "src": "6913:22:27", + "referencedDeclaration": 27776, + "src": "6913:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 31174, + "id": 32732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6913:34:27", + "src": "6913:34:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31175, + "id": 32733, "nodeType": "ExpressionStatement", - "src": "6913:34:27" + "src": "6913:34:31" }, { "expression": { @@ -10474,56 +11799,58 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31176, + "id": 32734, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "6960:2:27", + "src": "6960:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31178, + "id": 32736, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "6963:9:31", "memberName": "stopPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9060, - "src": "6960:12:27", + "referencedDeclaration": 9097, + "src": "6960:12:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 31179, + "id": 32737, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6960:14:27", + "src": "6960:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31180, + "id": 32738, "nodeType": "ExpressionStatement", - "src": "6960:14:27" + "src": "6960:14:31" } ] }, "documentation": { - "id": 31075, + "id": 32633, "nodeType": "StructuredDocumentation", - "src": "5827:47:27", + "src": "5827:47:31", "text": "@dev Verifies removeInvestor() restrictions" }, "functionSelector": "69e58f0d", @@ -10531,32 +11858,34 @@ "kind": "function", "modifiers": [], "name": "test_vesting_removeInvestor_restrictions", - "nameLocation": "5889:40:27", + "nameLocation": "5889:40:31", "parameters": { - "id": 31076, + "id": 32634, "nodeType": "ParameterList", "parameters": [], - "src": "5929:2:27" + "src": "5929:2:31" }, "returnParameters": { - "id": 31077, + "id": 32635, "nodeType": "ParameterList", "parameters": [], - "src": "5939:0:27" + "src": "5939:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 31293, + "id": 32851, "nodeType": "FunctionDefinition", - "src": "7044:881:27", + "src": "7044:881:31", + "nodes": [], "body": { - "id": 31292, + "id": 32850, "nodeType": "Block", - "src": "7104:821:27", + "src": "7104:821:31", + "nodes": [], "statements": [ { "expression": { @@ -10566,14 +11895,14 @@ { "arguments": [ { - "id": 31191, + "id": 32749, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "7204:7:27", + "referencedDeclaration": 32093, + "src": "7204:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -10581,38 +11910,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31190, + "id": 32748, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7196:7:27", + "src": "7196:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31189, + "id": 32747, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7196:7:27", + "src": "7196:7:31", "typeDescriptions": {} } }, - "id": 31192, + "id": 32750, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7196:16:27", + "src": "7196:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10622,14 +11952,14 @@ { "arguments": [ { - "id": 31195, + "id": 32753, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "7222:3:27", + "referencedDeclaration": 31565, + "src": "7222:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -10637,38 +11967,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31194, + "id": 32752, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7214:7:27", + "src": "7214:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31193, + "id": 32751, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7214:7:27", + "src": "7214:7:31", "typeDescriptions": {} } }, - "id": 31196, + "id": 32754, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7214:12:27", + "src": "7214:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10677,14 +12008,14 @@ }, { "hexValue": "3130", - "id": 31197, + "id": 32755, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7228:8:27", + "src": "7228:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -10709,40 +12040,42 @@ } ], "expression": { - "id": 31187, + "id": 32745, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "7176:3:27", + "referencedDeclaration": 31568, + "src": "7176:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31188, + "id": 32746, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7180:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "7176:19:27", + "referencedDeclaration": 30294, + "src": "7176:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31198, + "id": 32756, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7176:61:27", + "src": "7176:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -10757,35 +12090,36 @@ "typeString": "bool" } ], - "id": 31186, + "id": 32744, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "7169:6:27", + "src": "7169:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31199, + "id": 32757, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7169:69:27", + "src": "7169:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31200, + "id": 32758, "nodeType": "ExpressionStatement", - "src": "7169:69:27" + "src": "7169:69:31" }, { "expression": { @@ -10795,14 +12129,14 @@ { "arguments": [ { - "id": 31206, + "id": 32764, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "7315:3:27", + "referencedDeclaration": 31565, + "src": "7315:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -10810,38 +12144,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31205, + "id": 32763, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7307:7:27", + "src": "7307:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31204, + "id": 32762, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7307:7:27", + "src": "7307:7:31", "typeDescriptions": {} } }, - "id": 31207, + "id": 32765, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7307:12:27", + "src": "7307:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -10857,40 +12192,42 @@ } ], "expression": { - "id": 31202, + "id": 32760, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "7289:7:27", + "referencedDeclaration": 32093, + "src": "7289:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31203, + "id": 32761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7297:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "7289:17:27", + "referencedDeclaration": 27529, + "src": "7289:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31208, + "id": 32766, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7289:31:27", + "src": "7289:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -10899,14 +12236,14 @@ }, { "hexValue": "74727565", - "id": 31209, + "id": 32767, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7327:4:27", + "src": "7327:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10925,20 +12262,20 @@ "typeString": "bool" } ], - "id": 31201, + "id": 32759, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -10950,154 +12287,162 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "7280:8:27", + "referencedDeclaration": 2011, + "src": "7280:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31210, + "id": 32768, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7280:52:27", + "src": "7280:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31211, + "id": 32769, "nodeType": "ExpressionStatement", - "src": "7280:52:27" + "src": "7280:52:31" }, { "assignments": [ - 31217 + 32775 ], "declarations": [ { "constant": false, - "id": 31217, + "id": 32775, "mutability": "mutable", "name": "tempArr", - "nameLocation": "7369:7:27", + "nameLocation": "7369:7:31", "nodeType": "VariableDeclaration", - "scope": 31292, - "src": "7343:33:27", + "scope": 32850, + "src": "7343:33:31", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 31215, + "id": 32773, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 31214, + "id": 32772, "name": "Vesting.Investor", + "nameLocations": [ + "7343:7:31", + "7351:8:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27469, - "src": "7343:16:27" + "referencedDeclaration": 27525, + "src": "7343:16:31" }, - "referencedDeclaration": 27469, - "src": "7343:16:27", + "referencedDeclaration": 27525, + "src": "7343:16:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 31216, + "id": 32774, "nodeType": "ArrayTypeName", - "src": "7343:18:27", + "src": "7343:18:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "id": 31221, + "id": 32779, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 31218, + "id": 32776, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "7379:7:27", + "referencedDeclaration": 32093, + "src": "7379:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31219, + "id": 32777, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7387:18:31", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 28039, - "src": "7379:26:27", + "referencedDeclaration": 28095, + "src": "7379:26:31", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 31220, + "id": 32778, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7379:28:27", + "src": "7379:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "7343:64:27" + "src": "7343:64:31" }, { "expression": { "arguments": [ { "expression": { - "id": 31223, + "id": 32781, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31217, - "src": "7427:7:27", + "referencedDeclaration": 32775, + "src": "7427:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31224, + "id": 32782, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7435:6:31", "memberName": "length", "nodeType": "MemberAccess", - "src": "7427:14:27", + "src": "7427:14:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11105,14 +12450,14 @@ }, { "hexValue": "31", - "id": 31225, + "id": 32783, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7452:1:27", + "src": "7452:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -11131,20 +12476,20 @@ "typeString": "int_const 1" } ], - "id": 31222, + "id": 32780, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -11157,30 +12502,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "7418:8:27", + "src": "7418:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31226, + "id": 32784, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7418:36:27", + "src": "7418:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31227, + "id": 32785, "nodeType": "ExpressionStatement", - "src": "7418:36:27" + "src": "7418:36:31" }, { "expression": { @@ -11188,28 +12534,28 @@ { "expression": { "baseExpression": { - "id": 31229, + "id": 32787, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31217, - "src": "7474:7:27", + "referencedDeclaration": 32775, + "src": "7474:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31231, + "id": 32789, "indexExpression": { "hexValue": "30", - "id": 31230, + "id": 32788, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7482:1:27", + "src": "7482:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -11221,21 +12567,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7474:10:27", + "src": "7474:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31232, + "id": 32790, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7485:7:31", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "7474:18:27", + "referencedDeclaration": 27520, + "src": "7474:18:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11244,14 +12591,14 @@ { "arguments": [ { - "id": 31235, + "id": 32793, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "7508:3:27", + "referencedDeclaration": 31565, + "src": "7508:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -11259,38 +12606,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31234, + "id": 32792, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7500:7:27", + "src": "7500:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31233, + "id": 32791, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7500:7:27", + "src": "7500:7:31", "typeDescriptions": {} } }, - "id": 31236, + "id": 32794, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7500:12:27", + "src": "7500:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11309,20 +12657,20 @@ "typeString": "address" } ], - "id": 31228, + "id": 32786, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -11335,30 +12683,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "7465:8:27", + "src": "7465:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 31237, + "id": 32795, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7465:48:27", + "src": "7465:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31238, + "id": 32796, "nodeType": "ExpressionStatement", - "src": "7465:48:27" + "src": "7465:48:31" }, { "expression": { @@ -11366,28 +12715,28 @@ { "expression": { "baseExpression": { - "id": 31240, + "id": 32798, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31217, - "src": "7533:7:27", + "referencedDeclaration": 32775, + "src": "7533:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31242, + "id": 32800, "indexExpression": { "hexValue": "30", - "id": 31241, + "id": 32799, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7541:1:27", + "src": "7541:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -11399,21 +12748,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7533:10:27", + "src": "7533:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31243, + "id": 32801, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7544:12:31", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "7533:23:27", + "referencedDeclaration": 27522, + "src": "7533:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11421,14 +12771,14 @@ }, { "hexValue": "3130", - "id": 31244, + "id": 32802, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7559:8:27", + "src": "7559:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -11448,20 +12798,20 @@ "typeString": "int_const 10000000000000000000" } ], - "id": 31239, + "id": 32797, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -11474,30 +12824,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "7524:8:27", + "src": "7524:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31245, + "id": 32803, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7524:44:27", + "src": "7524:44:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31246, + "id": 32804, "nodeType": "ExpressionStatement", - "src": "7524:44:27" + "src": "7524:44:31" }, { "expression": { @@ -11505,28 +12856,28 @@ { "expression": { "baseExpression": { - "id": 31248, + "id": 32806, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31217, - "src": "7588:7:27", + "referencedDeclaration": 32775, + "src": "7588:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31250, + "id": 32808, "indexExpression": { "hexValue": "30", - "id": 31249, + "id": 32807, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7596:1:27", + "src": "7596:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -11538,21 +12889,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7588:10:27", + "src": "7588:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31251, + "id": 32809, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "7599:13:31", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "7588:24:27", + "referencedDeclaration": 27524, + "src": "7588:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11560,14 +12912,14 @@ }, { "hexValue": "30", - "id": 31252, + "id": 32810, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7614:1:27", + "src": "7614:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -11586,20 +12938,20 @@ "typeString": "int_const 0" } ], - "id": 31247, + "id": 32805, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -11612,30 +12964,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "7579:8:27", + "src": "7579:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31253, + "id": 32811, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7579:37:27", + "src": "7579:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31254, + "id": 32812, "nodeType": "ExpressionStatement", - "src": "7579:37:27" + "src": "7579:37:31" }, { "expression": { @@ -11645,14 +12998,14 @@ { "arguments": [ { - "id": 31260, + "id": 32818, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "7701:7:27", + "referencedDeclaration": 32093, + "src": "7701:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -11660,38 +13013,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31259, + "id": 32817, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7693:7:27", + "src": "7693:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31258, + "id": 32816, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7693:7:27", + "src": "7693:7:31", "typeDescriptions": {} } }, - "id": 31261, + "id": 32819, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7693:16:27", + "src": "7693:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11701,14 +13055,14 @@ { "arguments": [ { - "id": 31264, + "id": 32822, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "7719:3:27", + "referencedDeclaration": 31565, + "src": "7719:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -11716,38 +13070,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31263, + "id": 32821, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7711:7:27", + "src": "7711:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31262, + "id": 32820, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7711:7:27", + "src": "7711:7:31", "typeDescriptions": {} } }, - "id": 31265, + "id": 32823, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7711:12:27", + "src": "7711:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11767,40 +13122,42 @@ } ], "expression": { - "id": 31256, + "id": 32814, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "7670:3:27", + "referencedDeclaration": 31568, + "src": "7670:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31257, + "id": 32815, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7674:18:31", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29713, - "src": "7670:22:27", + "referencedDeclaration": 30323, + "src": "7670:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 31266, + "id": 32824, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7670:54:27", + "src": "7670:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11815,35 +13172,36 @@ "typeString": "bool" } ], - "id": 31255, + "id": 32813, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "7663:6:27", + "src": "7663:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31267, + "id": 32825, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7663:62:27", + "src": "7663:62:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31268, + "id": 32826, "nodeType": "ExpressionStatement", - "src": "7663:62:27" + "src": "7663:62:31" }, { "expression": { @@ -11853,14 +13211,14 @@ { "arguments": [ { - "id": 31274, + "id": 32832, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "7803:3:27", + "referencedDeclaration": 31565, + "src": "7803:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -11868,38 +13226,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31273, + "id": 32831, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7795:7:27", + "src": "7795:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31272, + "id": 32830, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7795:7:27", + "src": "7795:7:31", "typeDescriptions": {} } }, - "id": 31275, + "id": 32833, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7795:12:27", + "src": "7795:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -11915,40 +13274,42 @@ } ], "expression": { - "id": 31270, + "id": 32828, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "7777:7:27", + "referencedDeclaration": 32093, + "src": "7777:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31271, + "id": 32829, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7785:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "7777:17:27", + "referencedDeclaration": 27529, + "src": "7777:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31276, + "id": 32834, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7777:31:27", + "src": "7777:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11957,14 +13318,14 @@ }, { "hexValue": "66616c7365", - "id": 31277, + "id": 32835, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7815:5:27", + "src": "7815:5:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11983,20 +13344,20 @@ "typeString": "bool" } ], - "id": 31269, + "id": 32827, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -12008,48 +13369,49 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "7768:8:27", + "referencedDeclaration": 2011, + "src": "7768:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31278, + "id": 32836, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7768:53:27", + "src": "7768:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31279, + "id": 32837, "nodeType": "ExpressionStatement", - "src": "7768:53:27" + "src": "7768:53:31" }, { "expression": { - "id": 31284, + "id": 32842, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 31280, + "id": 32838, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31217, - "src": "7832:7:27", + "referencedDeclaration": 32775, + "src": "7832:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, @@ -12060,80 +13422,83 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31281, + "id": 32839, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "7842:7:27", + "referencedDeclaration": 32093, + "src": "7842:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31282, + "id": 32840, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7850:18:31", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 28039, - "src": "7842:26:27", + "referencedDeclaration": 28095, + "src": "7842:26:31", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 31283, + "id": 32841, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7842:28:27", + "src": "7842:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "src": "7832:38:27", + "src": "7832:38:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31285, + "id": 32843, "nodeType": "ExpressionStatement", - "src": "7832:38:27" + "src": "7832:38:31" }, { "expression": { "arguments": [ { "expression": { - "id": 31287, + "id": 32845, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31217, - "src": "7890:7:27", + "referencedDeclaration": 32775, + "src": "7890:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31288, + "id": 32846, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "7898:6:31", "memberName": "length", "nodeType": "MemberAccess", - "src": "7890:14:27", + "src": "7890:14:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12141,14 +13506,14 @@ }, { "hexValue": "30", - "id": 31289, + "id": 32847, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7915:1:27", + "src": "7915:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -12167,20 +13532,20 @@ "typeString": "int_const 0" } ], - "id": 31286, + "id": 32844, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -12193,37 +13558,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "7881:8:27", + "src": "7881:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31290, + "id": 32848, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7881:36:27", + "src": "7881:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31291, + "id": 32849, "nodeType": "ExpressionStatement", - "src": "7881:36:27" + "src": "7881:36:31" } ] }, "documentation": { - "id": 31183, + "id": 32741, "nodeType": "StructuredDocumentation", - "src": "6990:48:27", + "src": "6990:48:31", "text": "@dev Verifies removeInvestor() state changes" }, "functionSelector": "2ef9ccdf", @@ -12231,124 +13597,133 @@ "kind": "function", "modifiers": [], "name": "test_vesting_removeInvestor_state_changes", - "nameLocation": "7053:41:27", + "nameLocation": "7053:41:31", "parameters": { - "id": 31184, + "id": 32742, "nodeType": "ParameterList", "parameters": [], - "src": "7094:2:27" + "src": "7094:2:31" }, "returnParameters": { - "id": 31185, + "id": 32743, "nodeType": "ParameterList", "parameters": [], - "src": "7104:0:27" + "src": "7104:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 31594, + "id": 33152, "nodeType": "FunctionDefinition", - "src": "8020:1974:27", + "src": "8020:1974:31", + "nodes": [], "body": { - "id": 31593, + "id": 33151, "nodeType": "Block", - "src": "8077:1917:27", + "src": "8077:1917:31", + "nodes": [], "statements": [ { "assignments": [ - 31299 + 32857 ], "declarations": [ { "constant": false, - "id": 31299, + "id": 32857, "mutability": "mutable", "name": "tim", - "nameLocation": "8094:3:27", + "nameLocation": "8094:3:31", "nodeType": "VariableDeclaration", - "scope": 31593, - "src": "8088:9:27", + "scope": 33151, + "src": "8088:9:31", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" }, "typeName": { - "id": 31298, + "id": 32856, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 31297, + "id": 32855, "name": "Actor", + "nameLocations": [ + "8088:5:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29769, - "src": "8088:5:27" + "referencedDeclaration": 30379, + "src": "8088:5:31" }, - "referencedDeclaration": 29769, - "src": "8088:5:27", + "referencedDeclaration": 30379, + "src": "8088:5:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "visibility": "internal" } ], - "id": 31304, + "id": 32862, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 31302, + "id": 32860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "NewExpression", - "src": "8100:9:27", + "src": "8100:9:31", "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$29769_$", + "typeIdentifier": "t_function_creation_nonpayable$__$returns$_t_contract$_Actor_$30379_$", "typeString": "function () returns (contract Actor)" }, "typeName": { - "id": 31301, + "id": 32859, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 31300, + "id": 32858, "name": "Actor", + "nameLocations": [ + "8104:5:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 29769, - "src": "8104:5:27" + "referencedDeclaration": 30379, + "src": "8104:5:31" }, - "referencedDeclaration": 29769, - "src": "8104:5:27", + "referencedDeclaration": 30379, + "src": "8104:5:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } }, - "id": 31303, + "id": 32861, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8100:11:27", + "src": "8100:11:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, "nodeType": "VariableDeclarationStatement", - "src": "8088:23:27" + "src": "8088:23:31" }, { "expression": { @@ -12358,14 +13733,14 @@ { "arguments": [ { - "id": 31310, + "id": 32868, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "8213:7:27", + "referencedDeclaration": 32093, + "src": "8213:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -12373,38 +13748,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31309, + "id": 32867, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8205:7:27", + "src": "8205:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31308, + "id": 32866, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8205:7:27", + "src": "8205:7:31", "typeDescriptions": {} } }, - "id": 31311, + "id": 32869, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8205:16:27", + "src": "8205:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12414,14 +13790,14 @@ { "arguments": [ { - "id": 31314, + "id": 32872, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "8231:3:27", + "referencedDeclaration": 31565, + "src": "8231:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -12429,38 +13805,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31313, + "id": 32871, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8223:7:27", + "src": "8223:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31312, + "id": 32870, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8223:7:27", + "src": "8223:7:31", "typeDescriptions": {} } }, - "id": 31315, + "id": 32873, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8223:12:27", + "src": "8223:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12469,14 +13846,14 @@ }, { "hexValue": "3130", - "id": 31316, + "id": 32874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8237:8:27", + "src": "8237:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -12501,40 +13878,42 @@ } ], "expression": { - "id": 31306, + "id": 32864, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "8185:3:27", + "referencedDeclaration": 31568, + "src": "8185:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31307, + "id": 32865, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8189:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "8185:19:27", + "referencedDeclaration": 30294, + "src": "8185:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31317, + "id": 32875, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8185:61:27", + "src": "8185:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -12549,35 +13928,36 @@ "typeString": "bool" } ], - "id": 31305, + "id": 32863, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "8178:6:27", + "src": "8178:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31318, + "id": 32876, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8178:69:27", + "src": "8178:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31319, + "id": 32877, "nodeType": "ExpressionStatement", - "src": "8178:69:27" + "src": "8178:69:31" }, { "expression": { @@ -12587,14 +13967,14 @@ { "arguments": [ { - "id": 31325, + "id": 32883, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "8293:7:27", + "referencedDeclaration": 32093, + "src": "8293:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -12602,38 +13982,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31324, + "id": 32882, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8285:7:27", + "src": "8285:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31323, + "id": 32881, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8285:7:27", + "src": "8285:7:31", "typeDescriptions": {} } }, - "id": 31326, + "id": 32884, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8285:16:27", + "src": "8285:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12643,14 +14024,14 @@ { "arguments": [ { - "id": 31329, + "id": 32887, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "8311:3:27", + "referencedDeclaration": 31571, + "src": "8311:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -12658,38 +14039,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31328, + "id": 32886, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8303:7:27", + "src": "8303:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31327, + "id": 32885, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8303:7:27", + "src": "8303:7:31", "typeDescriptions": {} } }, - "id": 31330, + "id": 32888, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8303:12:27", + "src": "8303:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12698,14 +14080,14 @@ }, { "hexValue": "3230", - "id": 31331, + "id": 32889, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8317:8:27", + "src": "8317:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -12730,40 +14112,42 @@ } ], "expression": { - "id": 31321, + "id": 32879, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "8265:3:27", + "referencedDeclaration": 31568, + "src": "8265:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31322, + "id": 32880, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8269:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "8265:19:27", + "referencedDeclaration": 30294, + "src": "8265:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31332, + "id": 32890, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8265:61:27", + "src": "8265:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -12778,35 +14162,36 @@ "typeString": "bool" } ], - "id": 31320, + "id": 32878, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "8258:6:27", + "src": "8258:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31333, + "id": 32891, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8258:69:27", + "src": "8258:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31334, + "id": 32892, "nodeType": "ExpressionStatement", - "src": "8258:69:27" + "src": "8258:69:31" }, { "expression": { @@ -12816,14 +14201,14 @@ { "arguments": [ { - "id": 31340, + "id": 32898, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "8373:7:27", + "referencedDeclaration": 32093, + "src": "8373:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -12831,38 +14216,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31339, + "id": 32897, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8365:7:27", + "src": "8365:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31338, + "id": 32896, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8365:7:27", + "src": "8365:7:31", "typeDescriptions": {} } }, - "id": 31341, + "id": 32899, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8365:16:27", + "src": "8365:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12872,14 +14258,14 @@ { "arguments": [ { - "id": 31344, + "id": 32902, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31299, - "src": "8391:3:27", + "referencedDeclaration": 32857, + "src": "8391:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -12887,38 +14273,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31343, + "id": 32901, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8383:7:27", + "src": "8383:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31342, + "id": 32900, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8383:7:27", + "src": "8383:7:31", "typeDescriptions": {} } }, - "id": 31345, + "id": 32903, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8383:12:27", + "src": "8383:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -12927,14 +14314,14 @@ }, { "hexValue": "3330", - "id": 31346, + "id": 32904, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8397:8:27", + "src": "8397:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_30000000000000000000_by_1", @@ -12959,40 +14346,42 @@ } ], "expression": { - "id": 31336, + "id": 32894, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "8345:3:27", + "referencedDeclaration": 31568, + "src": "8345:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31337, + "id": 32895, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8349:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "8345:19:27", + "referencedDeclaration": 30294, + "src": "8345:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31347, + "id": 32905, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8345:61:27", + "src": "8345:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13007,35 +14396,36 @@ "typeString": "bool" } ], - "id": 31335, + "id": 32893, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "8338:6:27", + "src": "8338:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31348, + "id": 32906, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8338:69:27", + "src": "8338:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31349, + "id": 32907, "nodeType": "ExpressionStatement", - "src": "8338:69:27" + "src": "8338:69:31" }, { "expression": { @@ -13045,14 +14435,14 @@ { "arguments": [ { - "id": 31355, + "id": 32913, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "8484:3:27", + "referencedDeclaration": 31565, + "src": "8484:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -13060,38 +14450,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31354, + "id": 32912, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8476:7:27", + "src": "8476:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31353, + "id": 32911, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8476:7:27", + "src": "8476:7:31", "typeDescriptions": {} } }, - "id": 31356, + "id": 32914, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8476:12:27", + "src": "8476:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13107,40 +14498,42 @@ } ], "expression": { - "id": 31351, + "id": 32909, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "8458:7:27", + "referencedDeclaration": 32093, + "src": "8458:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31352, + "id": 32910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8466:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "8458:17:27", + "referencedDeclaration": 27529, + "src": "8458:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31357, + "id": 32915, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8458:31:27", + "src": "8458:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13149,14 +14542,14 @@ }, { "hexValue": "74727565", - "id": 31358, + "id": 32916, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8496:4:27", + "src": "8496:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13175,20 +14568,20 @@ "typeString": "bool" } ], - "id": 31350, + "id": 32908, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -13200,31 +14593,32 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "8449:8:27", + "referencedDeclaration": 2011, + "src": "8449:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31359, + "id": 32917, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8449:52:27", + "src": "8449:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31360, + "id": 32918, "nodeType": "ExpressionStatement", - "src": "8449:52:27" + "src": "8449:52:31" }, { "expression": { @@ -13234,14 +14628,14 @@ { "arguments": [ { - "id": 31366, + "id": 32924, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "8547:3:27", + "referencedDeclaration": 31571, + "src": "8547:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -13249,38 +14643,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31365, + "id": 32923, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8539:7:27", + "src": "8539:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31364, + "id": 32922, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8539:7:27", + "src": "8539:7:31", "typeDescriptions": {} } }, - "id": 31367, + "id": 32925, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8539:12:27", + "src": "8539:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13296,40 +14691,42 @@ } ], "expression": { - "id": 31362, + "id": 32920, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "8521:7:27", + "referencedDeclaration": 32093, + "src": "8521:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31363, + "id": 32921, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8529:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "8521:17:27", + "referencedDeclaration": 27529, + "src": "8521:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31368, + "id": 32926, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8521:31:27", + "src": "8521:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13338,14 +14735,14 @@ }, { "hexValue": "74727565", - "id": 31369, + "id": 32927, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8559:4:27", + "src": "8559:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13364,20 +14761,20 @@ "typeString": "bool" } ], - "id": 31361, + "id": 32919, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -13389,31 +14786,32 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "8512:8:27", + "referencedDeclaration": 2011, + "src": "8512:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31370, + "id": 32928, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8512:52:27", + "src": "8512:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31371, + "id": 32929, "nodeType": "ExpressionStatement", - "src": "8512:52:27" + "src": "8512:52:31" }, { "expression": { @@ -13423,14 +14821,14 @@ { "arguments": [ { - "id": 31377, + "id": 32935, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31299, - "src": "8610:3:27", + "referencedDeclaration": 32857, + "src": "8610:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -13438,38 +14836,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31376, + "id": 32934, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8602:7:27", + "src": "8602:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31375, + "id": 32933, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8602:7:27", + "src": "8602:7:31", "typeDescriptions": {} } }, - "id": 31378, + "id": 32936, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8602:12:27", + "src": "8602:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13485,40 +14884,42 @@ } ], "expression": { - "id": 31373, + "id": 32931, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "8584:7:27", + "referencedDeclaration": 32093, + "src": "8584:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31374, + "id": 32932, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8592:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "8584:17:27", + "referencedDeclaration": 27529, + "src": "8584:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31379, + "id": 32937, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8584:31:27", + "src": "8584:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13527,14 +14928,14 @@ }, { "hexValue": "74727565", - "id": 31380, + "id": 32938, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8622:4:27", + "src": "8622:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13553,20 +14954,20 @@ "typeString": "bool" } ], - "id": 31372, + "id": 32930, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -13578,154 +14979,162 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "8575:8:27", + "referencedDeclaration": 2011, + "src": "8575:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31381, + "id": 32939, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8575:52:27", + "src": "8575:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31382, + "id": 32940, "nodeType": "ExpressionStatement", - "src": "8575:52:27" + "src": "8575:52:31" }, { "assignments": [ - 31388 + 32946 ], "declarations": [ { "constant": false, - "id": 31388, + "id": 32946, "mutability": "mutable", "name": "tempArr", - "nameLocation": "8664:7:27", + "nameLocation": "8664:7:31", "nodeType": "VariableDeclaration", - "scope": 31593, - "src": "8638:33:27", + "scope": 33151, + "src": "8638:33:31", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor[]" }, "typeName": { "baseType": { - "id": 31386, + "id": 32944, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 31385, + "id": 32943, "name": "Vesting.Investor", + "nameLocations": [ + "8638:7:31", + "8646:8:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 27469, - "src": "8638:16:27" + "referencedDeclaration": 27525, + "src": "8638:16:31" }, - "referencedDeclaration": 27469, - "src": "8638:16:27", + "referencedDeclaration": 27525, + "src": "8638:16:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_storage_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_storage_ptr", "typeString": "struct Vesting.Investor" } }, - "id": 31387, + "id": 32945, "nodeType": "ArrayTypeName", - "src": "8638:18:27", + "src": "8638:18:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_storage_$dyn_storage_ptr", "typeString": "struct Vesting.Investor[]" } }, "visibility": "internal" } ], - "id": 31392, + "id": 32950, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 31389, + "id": 32947, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "8674:7:27", + "referencedDeclaration": 32093, + "src": "8674:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31390, + "id": 32948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8682:18:31", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 28039, - "src": "8674:26:27", + "referencedDeclaration": 28095, + "src": "8674:26:31", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 31391, + "id": 32949, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8674:28:27", + "src": "8674:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "8638:64:27" + "src": "8638:64:31" }, { "expression": { "arguments": [ { "expression": { - "id": 31394, + "id": 32952, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "8722:7:27", + "referencedDeclaration": 32946, + "src": "8722:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31395, + "id": 32953, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "8730:6:31", "memberName": "length", "nodeType": "MemberAccess", - "src": "8722:14:27", + "src": "8722:14:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13733,14 +15142,14 @@ }, { "hexValue": "33", - "id": 31396, + "id": 32954, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8747:1:27", + "src": "8747:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" @@ -13759,20 +15168,20 @@ "typeString": "int_const 3" } ], - "id": 31393, + "id": 32951, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -13785,30 +15194,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "8713:8:27", + "src": "8713:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31397, + "id": 32955, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8713:36:27", + "src": "8713:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31398, + "id": 32956, "nodeType": "ExpressionStatement", - "src": "8713:36:27" + "src": "8713:36:31" }, { "expression": { @@ -13816,28 +15226,28 @@ { "expression": { "baseExpression": { - "id": 31400, + "id": 32958, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "8769:7:27", + "referencedDeclaration": 32946, + "src": "8769:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31402, + "id": 32960, "indexExpression": { "hexValue": "30", - "id": 31401, + "id": 32959, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8777:1:27", + "src": "8777:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -13849,21 +15259,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8769:10:27", + "src": "8769:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31403, + "id": 32961, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8780:7:31", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "8769:18:27", + "referencedDeclaration": 27520, + "src": "8769:18:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13872,14 +15283,14 @@ { "arguments": [ { - "id": 31406, + "id": 32964, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "8803:3:27", + "referencedDeclaration": 31565, + "src": "8803:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -13887,38 +15298,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31405, + "id": 32963, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8795:7:27", + "src": "8795:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31404, + "id": 32962, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8795:7:27", + "src": "8795:7:31", "typeDescriptions": {} } }, - "id": 31407, + "id": 32965, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8795:12:27", + "src": "8795:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -13937,20 +15349,20 @@ "typeString": "address" } ], - "id": 31399, + "id": 32957, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -13963,30 +15375,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "8760:8:27", + "src": "8760:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 31408, + "id": 32966, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8760:48:27", + "src": "8760:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31409, + "id": 32967, "nodeType": "ExpressionStatement", - "src": "8760:48:27" + "src": "8760:48:31" }, { "expression": { @@ -13994,28 +15407,28 @@ { "expression": { "baseExpression": { - "id": 31411, + "id": 32969, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "8828:7:27", + "referencedDeclaration": 32946, + "src": "8828:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31413, + "id": 32971, "indexExpression": { "hexValue": "30", - "id": 31412, + "id": 32970, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8836:1:27", + "src": "8836:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -14027,21 +15440,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8828:10:27", + "src": "8828:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31414, + "id": 32972, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8839:12:31", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "8828:23:27", + "referencedDeclaration": 27522, + "src": "8828:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14049,14 +15463,14 @@ }, { "hexValue": "3130", - "id": 31415, + "id": 32973, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8854:8:27", + "src": "8854:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000000000000_by_1", @@ -14076,20 +15490,20 @@ "typeString": "int_const 10000000000000000000" } ], - "id": 31410, + "id": 32968, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -14102,30 +15516,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "8819:8:27", + "src": "8819:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31416, + "id": 32974, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8819:44:27", + "src": "8819:44:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31417, + "id": 32975, "nodeType": "ExpressionStatement", - "src": "8819:44:27" + "src": "8819:44:31" }, { "expression": { @@ -14133,28 +15548,28 @@ { "expression": { "baseExpression": { - "id": 31419, + "id": 32977, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "8883:7:27", + "referencedDeclaration": 32946, + "src": "8883:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31421, + "id": 32979, "indexExpression": { "hexValue": "30", - "id": 31420, + "id": 32978, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8891:1:27", + "src": "8891:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -14166,21 +15581,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8883:10:27", + "src": "8883:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31422, + "id": 32980, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8894:13:31", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "8883:24:27", + "referencedDeclaration": 27524, + "src": "8883:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14188,14 +15604,14 @@ }, { "hexValue": "30", - "id": 31423, + "id": 32981, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8909:1:27", + "src": "8909:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -14214,20 +15630,20 @@ "typeString": "int_const 0" } ], - "id": 31418, + "id": 32976, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -14240,30 +15656,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "8874:8:27", + "src": "8874:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31424, + "id": 32982, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8874:37:27", + "src": "8874:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31425, + "id": 32983, "nodeType": "ExpressionStatement", - "src": "8874:37:27" + "src": "8874:37:31" }, { "expression": { @@ -14271,28 +15688,28 @@ { "expression": { "baseExpression": { - "id": 31427, + "id": 32985, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "8931:7:27", + "referencedDeclaration": 32946, + "src": "8931:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31429, + "id": 32987, "indexExpression": { "hexValue": "31", - "id": 31428, + "id": 32986, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8939:1:27", + "src": "8939:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -14304,21 +15721,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8931:10:27", + "src": "8931:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31430, + "id": 32988, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "8942:7:31", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "8931:18:27", + "referencedDeclaration": 27520, + "src": "8931:18:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14327,14 +15745,14 @@ { "arguments": [ { - "id": 31433, + "id": 32991, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "8965:3:27", + "referencedDeclaration": 31571, + "src": "8965:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -14342,38 +15760,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31432, + "id": 32990, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "8957:7:27", + "src": "8957:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31431, + "id": 32989, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8957:7:27", + "src": "8957:7:31", "typeDescriptions": {} } }, - "id": 31434, + "id": 32992, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8957:12:27", + "src": "8957:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -14392,20 +15811,20 @@ "typeString": "address" } ], - "id": 31426, + "id": 32984, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -14418,30 +15837,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "8922:8:27", + "src": "8922:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 31435, + "id": 32993, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8922:48:27", + "src": "8922:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31436, + "id": 32994, "nodeType": "ExpressionStatement", - "src": "8922:48:27" + "src": "8922:48:31" }, { "expression": { @@ -14449,28 +15869,28 @@ { "expression": { "baseExpression": { - "id": 31438, + "id": 32996, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "8990:7:27", + "referencedDeclaration": 32946, + "src": "8990:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31440, + "id": 32998, "indexExpression": { "hexValue": "31", - "id": 31439, + "id": 32997, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8998:1:27", + "src": "8998:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -14482,21 +15902,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:10:27", + "src": "8990:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31441, + "id": 32999, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9001:12:31", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "8990:23:27", + "referencedDeclaration": 27522, + "src": "8990:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14504,14 +15925,14 @@ }, { "hexValue": "3230", - "id": 31442, + "id": 33000, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9016:8:27", + "src": "9016:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -14531,20 +15952,20 @@ "typeString": "int_const 20000000000000000000" } ], - "id": 31437, + "id": 32995, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -14557,30 +15978,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "8981:8:27", + "src": "8981:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31443, + "id": 33001, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8981:44:27", + "src": "8981:44:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31444, + "id": 33002, "nodeType": "ExpressionStatement", - "src": "8981:44:27" + "src": "8981:44:31" }, { "expression": { @@ -14588,28 +16010,28 @@ { "expression": { "baseExpression": { - "id": 31446, + "id": 33004, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9045:7:27", + "referencedDeclaration": 32946, + "src": "9045:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31448, + "id": 33006, "indexExpression": { "hexValue": "31", - "id": 31447, + "id": 33005, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9053:1:27", + "src": "9053:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -14621,21 +16043,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9045:10:27", + "src": "9045:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31449, + "id": 33007, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9056:13:31", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "9045:24:27", + "referencedDeclaration": 27524, + "src": "9045:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14643,14 +16066,14 @@ }, { "hexValue": "30", - "id": 31450, + "id": 33008, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9071:1:27", + "src": "9071:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -14669,20 +16092,20 @@ "typeString": "int_const 0" } ], - "id": 31445, + "id": 33003, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -14695,30 +16118,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "9036:8:27", + "src": "9036:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31451, + "id": 33009, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9036:37:27", + "src": "9036:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31452, + "id": 33010, "nodeType": "ExpressionStatement", - "src": "9036:37:27" + "src": "9036:37:31" }, { "expression": { @@ -14726,28 +16150,28 @@ { "expression": { "baseExpression": { - "id": 31454, + "id": 33012, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9093:7:27", + "referencedDeclaration": 32946, + "src": "9093:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31456, + "id": 33014, "indexExpression": { "hexValue": "32", - "id": 31455, + "id": 33013, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9101:1:27", + "src": "9101:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -14759,21 +16183,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9093:10:27", + "src": "9093:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31457, + "id": 33015, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9104:7:31", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "9093:18:27", + "referencedDeclaration": 27520, + "src": "9093:18:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14782,14 +16207,14 @@ { "arguments": [ { - "id": 31460, + "id": 33018, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31299, - "src": "9127:3:27", + "referencedDeclaration": 32857, + "src": "9127:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -14797,38 +16222,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31459, + "id": 33017, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9119:7:27", + "src": "9119:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31458, + "id": 33016, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9119:7:27", + "src": "9119:7:31", "typeDescriptions": {} } }, - "id": 31461, + "id": 33019, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9119:12:27", + "src": "9119:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -14847,20 +16273,20 @@ "typeString": "address" } ], - "id": 31453, + "id": 33011, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -14873,30 +16299,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "9084:8:27", + "src": "9084:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 31462, + "id": 33020, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9084:48:27", + "src": "9084:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31463, + "id": 33021, "nodeType": "ExpressionStatement", - "src": "9084:48:27" + "src": "9084:48:31" }, { "expression": { @@ -14904,28 +16331,28 @@ { "expression": { "baseExpression": { - "id": 31465, + "id": 33023, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9152:7:27", + "referencedDeclaration": 32946, + "src": "9152:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31467, + "id": 33025, "indexExpression": { "hexValue": "32", - "id": 31466, + "id": 33024, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9160:1:27", + "src": "9160:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -14937,21 +16364,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9152:10:27", + "src": "9152:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31468, + "id": 33026, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9163:12:31", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "9152:23:27", + "referencedDeclaration": 27522, + "src": "9152:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14959,14 +16387,14 @@ }, { "hexValue": "3330", - "id": 31469, + "id": 33027, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9178:8:27", + "src": "9178:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_30000000000000000000_by_1", @@ -14986,20 +16414,20 @@ "typeString": "int_const 30000000000000000000" } ], - "id": 31464, + "id": 33022, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -15012,30 +16440,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "9143:8:27", + "src": "9143:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31470, + "id": 33028, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9143:44:27", + "src": "9143:44:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31471, + "id": 33029, "nodeType": "ExpressionStatement", - "src": "9143:44:27" + "src": "9143:44:31" }, { "expression": { @@ -15043,28 +16472,28 @@ { "expression": { "baseExpression": { - "id": 31473, + "id": 33031, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9207:7:27", + "referencedDeclaration": 32946, + "src": "9207:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31475, + "id": 33033, "indexExpression": { "hexValue": "32", - "id": 31474, + "id": 33032, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9215:1:27", + "src": "9215:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -15076,21 +16505,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9207:10:27", + "src": "9207:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31476, + "id": 33034, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9218:13:31", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "9207:24:27", + "referencedDeclaration": 27524, + "src": "9207:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15098,14 +16528,14 @@ }, { "hexValue": "30", - "id": 31477, + "id": 33035, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9233:1:27", + "src": "9233:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -15124,20 +16554,20 @@ "typeString": "int_const 0" } ], - "id": 31472, + "id": 33030, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -15150,30 +16580,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "9198:8:27", + "src": "9198:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31478, + "id": 33036, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9198:37:27", + "src": "9198:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31479, + "id": 33037, "nodeType": "ExpressionStatement", - "src": "9198:37:27" + "src": "9198:37:31" }, { "expression": { @@ -15183,14 +16614,14 @@ { "arguments": [ { - "id": 31485, + "id": 33043, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "9320:7:27", + "referencedDeclaration": 32093, + "src": "9320:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -15198,38 +16629,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31484, + "id": 33042, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9312:7:27", + "src": "9312:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31483, + "id": 33041, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9312:7:27", + "src": "9312:7:31", "typeDescriptions": {} } }, - "id": 31486, + "id": 33044, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9312:16:27", + "src": "9312:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15239,14 +16671,14 @@ { "arguments": [ { - "id": 31489, + "id": 33047, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "9338:3:27", + "referencedDeclaration": 31565, + "src": "9338:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -15254,38 +16686,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31488, + "id": 33046, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9330:7:27", + "src": "9330:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31487, + "id": 33045, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9330:7:27", + "src": "9330:7:31", "typeDescriptions": {} } }, - "id": 31490, + "id": 33048, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9330:12:27", + "src": "9330:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15305,40 +16738,42 @@ } ], "expression": { - "id": 31481, + "id": 33039, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "9289:3:27", + "referencedDeclaration": 31568, + "src": "9289:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31482, + "id": 33040, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9293:18:31", "memberName": "try_removeInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29713, - "src": "9289:22:27", + "referencedDeclaration": 30323, + "src": "9289:22:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) external returns (bool)" } }, - "id": 31491, + "id": 33049, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9289:54:27", + "src": "9289:54:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -15353,35 +16788,36 @@ "typeString": "bool" } ], - "id": 31480, + "id": 33038, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "9282:6:27", + "src": "9282:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31492, + "id": 33050, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9282:62:27", + "src": "9282:62:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31493, + "id": 33051, "nodeType": "ExpressionStatement", - "src": "9282:62:27" + "src": "9282:62:31" }, { "expression": { @@ -15391,14 +16827,14 @@ { "arguments": [ { - "id": 31499, + "id": 33057, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "9422:3:27", + "referencedDeclaration": 31565, + "src": "9422:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -15406,38 +16842,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31498, + "id": 33056, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9414:7:27", + "src": "9414:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31497, + "id": 33055, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9414:7:27", + "src": "9414:7:31", "typeDescriptions": {} } }, - "id": 31500, + "id": 33058, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9414:12:27", + "src": "9414:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15453,40 +16890,42 @@ } ], "expression": { - "id": 31495, + "id": 33053, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "9396:7:27", + "referencedDeclaration": 32093, + "src": "9396:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31496, + "id": 33054, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9404:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "9396:17:27", + "referencedDeclaration": 27529, + "src": "9396:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31501, + "id": 33059, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9396:31:27", + "src": "9396:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -15495,14 +16934,14 @@ }, { "hexValue": "66616c7365", - "id": 31502, + "id": 33060, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9434:5:27", + "src": "9434:5:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15521,20 +16960,20 @@ "typeString": "bool" } ], - "id": 31494, + "id": 33052, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -15546,31 +16985,32 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "9387:8:27", + "referencedDeclaration": 2011, + "src": "9387:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31503, + "id": 33061, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9387:53:27", + "src": "9387:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31504, + "id": 33062, "nodeType": "ExpressionStatement", - "src": "9387:53:27" + "src": "9387:53:31" }, { "expression": { @@ -15580,14 +17020,14 @@ { "arguments": [ { - "id": 31510, + "id": 33068, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "9486:3:27", + "referencedDeclaration": 31571, + "src": "9486:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -15595,38 +17035,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31509, + "id": 33067, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9478:7:27", + "src": "9478:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31508, + "id": 33066, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9478:7:27", + "src": "9478:7:31", "typeDescriptions": {} } }, - "id": 31511, + "id": 33069, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9478:12:27", + "src": "9478:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15642,40 +17083,42 @@ } ], "expression": { - "id": 31506, + "id": 33064, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "9460:7:27", + "referencedDeclaration": 32093, + "src": "9460:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31507, + "id": 33065, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9468:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "9460:17:27", + "referencedDeclaration": 27529, + "src": "9460:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31512, + "id": 33070, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9460:31:27", + "src": "9460:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -15684,14 +17127,14 @@ }, { "hexValue": "74727565", - "id": 31513, + "id": 33071, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9498:4:27", + "src": "9498:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15710,20 +17153,20 @@ "typeString": "bool" } ], - "id": 31505, + "id": 33063, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -15735,31 +17178,32 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "9451:8:27", + "referencedDeclaration": 2011, + "src": "9451:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31514, + "id": 33072, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9451:52:27", + "src": "9451:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31515, + "id": 33073, "nodeType": "ExpressionStatement", - "src": "9451:52:27" + "src": "9451:52:31" }, { "expression": { @@ -15769,14 +17213,14 @@ { "arguments": [ { - "id": 31521, + "id": 33079, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31299, - "src": "9549:3:27", + "referencedDeclaration": 32857, + "src": "9549:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -15784,38 +17228,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31520, + "id": 33078, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9541:7:27", + "src": "9541:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31519, + "id": 33077, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9541:7:27", + "src": "9541:7:31", "typeDescriptions": {} } }, - "id": 31522, + "id": 33080, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9541:12:27", + "src": "9541:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15831,40 +17276,42 @@ } ], "expression": { - "id": 31517, + "id": 33075, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "9523:7:27", + "referencedDeclaration": 32093, + "src": "9523:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31518, + "id": 33076, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9531:9:31", "memberName": "investors", "nodeType": "MemberAccess", - "referencedDeclaration": 27473, - "src": "9523:17:27", + "referencedDeclaration": 27529, + "src": "9523:17:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view external returns (bool)" } }, - "id": 31523, + "id": 33081, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9523:31:27", + "src": "9523:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -15873,14 +17320,14 @@ }, { "hexValue": "74727565", - "id": 31524, + "id": 33082, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9561:4:27", + "src": "9561:4:31", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15899,20 +17346,20 @@ "typeString": "bool" } ], - "id": 31516, + "id": 33074, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -15924,48 +17371,49 @@ 1639, 1674 ], - "referencedDeclaration": 1974, - "src": "9514:8:27", + "referencedDeclaration": 2011, + "src": "9514:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", "typeString": "function (bool,bool)" } }, - "id": 31525, + "id": 33083, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9514:52:27", + "src": "9514:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31526, + "id": 33084, "nodeType": "ExpressionStatement", - "src": "9514:52:27" + "src": "9514:52:31" }, { "expression": { - "id": 31531, + "id": 33089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 31527, + "id": 33085, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9577:7:27", + "referencedDeclaration": 32946, + "src": "9577:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, @@ -15976,80 +17424,83 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31528, + "id": 33086, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "9587:7:27", + "referencedDeclaration": 32093, + "src": "9587:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31529, + "id": 33087, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9595:18:31", "memberName": "getInvestorLibrary", "nodeType": "MemberAccess", - "referencedDeclaration": 28039, - "src": "9587:26:27", + "referencedDeclaration": 28095, + "src": "9587:26:31", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_external_view$__$returns$_t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr_$", "typeString": "function () view external returns (struct Vesting.Investor memory[] memory)" } }, - "id": 31530, + "id": 33088, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9587:28:27", + "src": "9587:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "src": "9577:38:27", + "src": "9577:38:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31532, + "id": 33090, "nodeType": "ExpressionStatement", - "src": "9577:38:27" + "src": "9577:38:31" }, { "expression": { "arguments": [ { "expression": { - "id": 31534, + "id": 33092, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9635:7:27", + "referencedDeclaration": 32946, + "src": "9635:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31535, + "id": 33093, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "9643:6:31", "memberName": "length", "nodeType": "MemberAccess", - "src": "9635:14:27", + "src": "9635:14:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16057,14 +17508,14 @@ }, { "hexValue": "32", - "id": 31536, + "id": 33094, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9660:1:27", + "src": "9660:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" @@ -16083,20 +17534,20 @@ "typeString": "int_const 2" } ], - "id": 31533, + "id": 33091, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -16109,30 +17560,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "9626:8:27", + "src": "9626:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31537, + "id": 33095, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9626:36:27", + "src": "9626:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31538, + "id": 33096, "nodeType": "ExpressionStatement", - "src": "9626:36:27" + "src": "9626:36:31" }, { "expression": { @@ -16140,28 +17592,28 @@ { "expression": { "baseExpression": { - "id": 31540, + "id": 33098, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9682:7:27", + "referencedDeclaration": 32946, + "src": "9682:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31542, + "id": 33100, "indexExpression": { "hexValue": "30", - "id": 31541, + "id": 33099, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9690:1:27", + "src": "9690:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -16173,21 +17625,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9682:10:27", + "src": "9682:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31543, + "id": 33101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9693:7:31", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "9682:18:27", + "referencedDeclaration": 27520, + "src": "9682:18:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16196,14 +17649,14 @@ { "arguments": [ { - "id": 31546, + "id": 33104, "name": "tim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31299, - "src": "9716:3:27", + "referencedDeclaration": 32857, + "src": "9716:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -16211,38 +17664,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31545, + "id": 33103, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9708:7:27", + "src": "9708:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31544, + "id": 33102, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9708:7:27", + "src": "9708:7:31", "typeDescriptions": {} } }, - "id": 31547, + "id": 33105, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9708:12:27", + "src": "9708:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16261,20 +17715,20 @@ "typeString": "address" } ], - "id": 31539, + "id": 33097, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -16287,30 +17741,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "9673:8:27", + "src": "9673:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 31548, + "id": 33106, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9673:48:27", + "src": "9673:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31549, + "id": 33107, "nodeType": "ExpressionStatement", - "src": "9673:48:27" + "src": "9673:48:31" }, { "expression": { @@ -16318,28 +17773,28 @@ { "expression": { "baseExpression": { - "id": 31551, + "id": 33109, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9741:7:27", + "referencedDeclaration": 32946, + "src": "9741:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31553, + "id": 33111, "indexExpression": { "hexValue": "30", - "id": 31552, + "id": 33110, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9749:1:27", + "src": "9749:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -16351,21 +17806,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9741:10:27", + "src": "9741:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31554, + "id": 33112, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9752:12:31", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "9741:23:27", + "referencedDeclaration": 27522, + "src": "9741:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16373,14 +17829,14 @@ }, { "hexValue": "3330", - "id": 31555, + "id": 33113, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9767:8:27", + "src": "9767:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_30000000000000000000_by_1", @@ -16400,20 +17856,20 @@ "typeString": "int_const 30000000000000000000" } ], - "id": 31550, + "id": 33108, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -16426,30 +17882,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "9732:8:27", + "src": "9732:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31556, + "id": 33114, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9732:44:27", + "src": "9732:44:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31557, + "id": 33115, "nodeType": "ExpressionStatement", - "src": "9732:44:27" + "src": "9732:44:31" }, { "expression": { @@ -16457,28 +17914,28 @@ { "expression": { "baseExpression": { - "id": 31559, + "id": 33117, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9796:7:27", + "referencedDeclaration": 32946, + "src": "9796:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31561, + "id": 33119, "indexExpression": { "hexValue": "30", - "id": 31560, + "id": 33118, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9804:1:27", + "src": "9804:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -16490,21 +17947,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9796:10:27", + "src": "9796:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31562, + "id": 33120, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9807:13:31", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "9796:24:27", + "referencedDeclaration": 27524, + "src": "9796:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16512,14 +17970,14 @@ }, { "hexValue": "30", - "id": 31563, + "id": 33121, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9822:1:27", + "src": "9822:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -16538,20 +17996,20 @@ "typeString": "int_const 0" } ], - "id": 31558, + "id": 33116, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -16564,30 +18022,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "9787:8:27", + "src": "9787:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31564, + "id": 33122, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9787:37:27", + "src": "9787:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31565, + "id": 33123, "nodeType": "ExpressionStatement", - "src": "9787:37:27" + "src": "9787:37:31" }, { "expression": { @@ -16595,28 +18054,28 @@ { "expression": { "baseExpression": { - "id": 31567, + "id": 33125, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9844:7:27", + "referencedDeclaration": 32946, + "src": "9844:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31569, + "id": 33127, "indexExpression": { "hexValue": "31", - "id": 31568, + "id": 33126, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9852:1:27", + "src": "9852:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -16628,21 +18087,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9844:10:27", + "src": "9844:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31570, + "id": 33128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9855:7:31", "memberName": "account", "nodeType": "MemberAccess", - "referencedDeclaration": 27464, - "src": "9844:18:27", + "referencedDeclaration": 27520, + "src": "9844:18:31", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16651,14 +18111,14 @@ { "arguments": [ { - "id": 31573, + "id": 33131, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "9878:3:27", + "referencedDeclaration": 31571, + "src": "9878:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -16666,38 +18126,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31572, + "id": 33130, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9870:7:27", + "src": "9870:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31571, + "id": 33129, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9870:7:27", + "src": "9870:7:31", "typeDescriptions": {} } }, - "id": 31574, + "id": 33132, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9870:12:27", + "src": "9870:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16716,20 +18177,20 @@ "typeString": "address" } ], - "id": 31566, + "id": 33124, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -16742,30 +18203,31 @@ 1674 ], "referencedDeclaration": 320, - "src": "9835:8:27", + "src": "9835:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 31575, + "id": 33133, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9835:48:27", + "src": "9835:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31576, + "id": 33134, "nodeType": "ExpressionStatement", - "src": "9835:48:27" + "src": "9835:48:31" }, { "expression": { @@ -16773,28 +18235,28 @@ { "expression": { "baseExpression": { - "id": 31578, + "id": 33136, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9903:7:27", + "referencedDeclaration": 32946, + "src": "9903:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31580, + "id": 33138, "indexExpression": { "hexValue": "31", - "id": 31579, + "id": 33137, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9911:1:27", + "src": "9911:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -16806,21 +18268,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9903:10:27", + "src": "9903:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31581, + "id": 33139, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9914:12:31", "memberName": "tokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27466, - "src": "9903:23:27", + "referencedDeclaration": 27522, + "src": "9903:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16828,14 +18291,14 @@ }, { "hexValue": "3230", - "id": 31582, + "id": 33140, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9929:8:27", + "src": "9929:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -16855,20 +18318,20 @@ "typeString": "int_const 20000000000000000000" } ], - "id": 31577, + "id": 33135, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -16881,30 +18344,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "9894:8:27", + "src": "9894:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31583, + "id": 33141, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9894:44:27", + "src": "9894:44:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31584, + "id": 33142, "nodeType": "ExpressionStatement", - "src": "9894:44:27" + "src": "9894:44:31" }, { "expression": { @@ -16912,28 +18376,28 @@ { "expression": { "baseExpression": { - "id": 31586, + "id": 33144, "name": "tempArr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31388, - "src": "9958:7:27", + "referencedDeclaration": 32946, + "src": "9958:7:31", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_Investor_$27469_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_Investor_$27525_memory_ptr_$dyn_memory_ptr", "typeString": "struct Vesting.Investor memory[] memory" } }, - "id": 31588, + "id": 33146, "indexExpression": { "hexValue": "31", - "id": 31587, + "id": 33145, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9966:1:27", + "src": "9966:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -16945,21 +18409,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9958:10:27", + "src": "9958:10:31", "typeDescriptions": { - "typeIdentifier": "t_struct$_Investor_$27469_memory_ptr", + "typeIdentifier": "t_struct$_Investor_$27525_memory_ptr", "typeString": "struct Vesting.Investor memory" } }, - "id": 31589, + "id": 33147, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, + "memberLocation": "9969:13:31", "memberName": "tokensClaimed", "nodeType": "MemberAccess", - "referencedDeclaration": 27468, - "src": "9958:24:27", + "referencedDeclaration": 27524, + "src": "9958:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16967,14 +18432,14 @@ }, { "hexValue": "30", - "id": 31590, + "id": 33148, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9984:1:27", + "src": "9984:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -16993,20 +18458,20 @@ "typeString": "int_const 0" } ], - "id": 31585, + "id": 33143, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -17019,37 +18484,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "9949:8:27", + "src": "9949:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31591, + "id": 33149, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9949:37:27", + "src": "9949:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31592, + "id": 33150, "nodeType": "ExpressionStatement", - "src": "9949:37:27" + "src": "9949:37:31" } ] }, "documentation": { - "id": 31294, + "id": 32852, "nodeType": "StructuredDocumentation", - "src": "7933:81:27", + "src": "7933:81:31", "text": "@dev Verifies removeInvestor() pops elements correctly from investorLibrary[]" }, "functionSelector": "b357ca55", @@ -17057,32 +18523,34 @@ "kind": "function", "modifiers": [], "name": "test_vesting_removeInvestor_largeArray", - "nameLocation": "8029:38:27", + "nameLocation": "8029:38:31", "parameters": { - "id": 31295, + "id": 32853, "nodeType": "ParameterList", "parameters": [], - "src": "8067:2:27" + "src": "8067:2:31" }, "returnParameters": { - "id": 31296, + "id": 32854, "nodeType": "ParameterList", "parameters": [], - "src": "8077:0:27" + "src": "8077:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 31656, + "id": 33214, "nodeType": "FunctionDefinition", - "src": "10097:627:27", + "src": "10097:627:31", + "nodes": [], "body": { - "id": 31655, + "id": 33213, "nodeType": "Block", - "src": "10158:566:27", + "src": "10158:566:31", + "nodes": [], "statements": [ { "expression": { @@ -17092,14 +18560,14 @@ { "arguments": [ { - "id": 31603, + "id": 33161, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "10236:7:27", + "referencedDeclaration": 32093, + "src": "10236:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -17107,38 +18575,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31602, + "id": 33160, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10228:7:27", + "src": "10228:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31601, + "id": 33159, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10228:7:27", + "src": "10228:7:31", "typeDescriptions": {} } }, - "id": 31604, + "id": 33162, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10228:16:27", + "src": "10228:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17148,14 +18617,14 @@ { "arguments": [ { - "id": 31607, + "id": 33165, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "10254:3:27", + "referencedDeclaration": 31571, + "src": "10254:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -17163,38 +18632,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31606, + "id": 33164, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10246:7:27", + "src": "10246:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31605, + "id": 33163, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10246:7:27", + "src": "10246:7:31", "typeDescriptions": {} } }, - "id": 31608, + "id": 33166, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10246:12:27", + "src": "10246:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17203,14 +18673,14 @@ }, { "hexValue": "3230", - "id": 31609, + "id": 33167, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10260:8:27", + "src": "10260:8:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_20000000000000000000_by_1", @@ -17235,40 +18705,42 @@ } ], "expression": { - "id": 31599, + "id": 33157, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "10208:3:27", + "referencedDeclaration": 31568, + "src": "10208:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31600, + "id": 33158, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10212:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "10208:19:27", + "referencedDeclaration": 30294, + "src": "10208:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31610, + "id": 33168, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10208:61:27", + "src": "10208:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -17283,35 +18755,36 @@ "typeString": "bool" } ], - "id": 31598, + "id": 33156, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "10201:6:27", + "src": "10201:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31611, + "id": 33169, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10201:69:27", + "src": "10201:69:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31612, + "id": 33170, "nodeType": "ExpressionStatement", - "src": "10201:69:27" + "src": "10201:69:31" }, { "expression": { @@ -17321,14 +18794,14 @@ { "arguments": [ { - "id": 31618, + "id": 33176, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "10394:3:27", + "referencedDeclaration": 31571, + "src": "10394:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -17336,38 +18809,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31617, + "id": 33175, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10386:7:27", + "src": "10386:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31616, + "id": 33174, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10386:7:27", + "src": "10386:7:31", "typeDescriptions": {} } }, - "id": 31619, + "id": 33177, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10386:12:27", + "src": "10386:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17383,40 +18857,42 @@ } ], "expression": { - "id": 31614, + "id": 33172, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "10361:7:27", + "referencedDeclaration": 32093, + "src": "10361:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31615, + "id": 33173, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10369:16:31", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 27923, - "src": "10361:24:27", + "referencedDeclaration": 27979, + "src": "10361:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31620, + "id": 33178, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10361:38:27", + "src": "10361:38:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -17425,14 +18901,14 @@ }, { "hexValue": "30", - "id": 31621, + "id": 33179, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10401:1:27", + "src": "10401:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17451,20 +18927,20 @@ "typeString": "int_const 0" } ], - "id": 31613, + "id": 33171, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -17477,30 +18953,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "10352:8:27", + "src": "10352:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31622, + "id": 33180, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10352:51:27", + "src": "10352:51:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31623, + "id": 33181, "nodeType": "ExpressionStatement", - "src": "10352:51:27" + "src": "10352:51:31" }, { "expression": { @@ -17508,14 +18985,14 @@ { "arguments": [ { - "id": 31629, + "id": 33187, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "10473:7:27", + "referencedDeclaration": 32093, + "src": "10473:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -17523,38 +19000,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31628, + "id": 33186, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10465:7:27", + "src": "10465:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31627, + "id": 33185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10465:7:27", + "src": "10465:7:31", "typeDescriptions": {} } }, - "id": 31630, + "id": 33188, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10465:16:27", + "src": "10465:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17570,49 +19048,51 @@ } ], "expression": { - "id": 31624, + "id": 33182, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "10443:3:27", + "referencedDeclaration": 31568, + "src": "10443:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31626, + "id": 33184, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10447:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "10443:21:27", + "referencedDeclaration": 30232, + "src": "10443:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 31631, + "id": 33189, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10443:39:27", + "src": "10443:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 31632, + "id": 33190, "nodeType": "ExpressionStatement", - "src": "10443:39:27" + "src": "10443:39:31" }, { "expression": { @@ -17622,14 +19102,14 @@ { "arguments": [ { - "id": 31638, + "id": 33196, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "10605:3:27", + "referencedDeclaration": 31565, + "src": "10605:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -17637,38 +19117,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31637, + "id": 33195, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10597:7:27", + "src": "10597:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31636, + "id": 33194, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10597:7:27", + "src": "10597:7:31", "typeDescriptions": {} } }, - "id": 31639, + "id": 33197, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10597:12:27", + "src": "10597:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17684,40 +19165,42 @@ } ], "expression": { - "id": 31634, + "id": 33192, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "10572:7:27", + "referencedDeclaration": 32093, + "src": "10572:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31635, + "id": 33193, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10580:16:31", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 27923, - "src": "10572:24:27", + "referencedDeclaration": 27979, + "src": "10572:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31640, + "id": 33198, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10572:38:27", + "src": "10572:38:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -17726,14 +19209,14 @@ }, { "hexValue": "30", - "id": 31641, + "id": 33199, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10612:1:27", + "src": "10612:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17752,20 +19235,20 @@ "typeString": "int_const 0" } ], - "id": 31633, + "id": 33191, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -17778,30 +19261,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "10563:8:27", + "src": "10563:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31642, + "id": 33200, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10563:51:27", + "src": "10563:51:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31643, + "id": 33201, "nodeType": "ExpressionStatement", - "src": "10563:51:27" + "src": "10563:51:31" }, { "expression": { @@ -17812,14 +19296,14 @@ "arguments": [ { "hexValue": "30", - "id": 31649, + "id": 33207, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10709:1:27", + "src": "10709:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17834,34 +19318,35 @@ "typeString": "int_const 0" } ], - "id": 31648, + "id": 33206, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "10701:7:27", + "src": "10701:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31647, + "id": 33205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10701:7:27", + "src": "10701:7:31", "typeDescriptions": {} } }, - "id": 31650, + "id": 33208, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10701:10:27", + "src": "10701:10:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17877,40 +19362,42 @@ } ], "expression": { - "id": 31645, + "id": 33203, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "10676:7:27", + "referencedDeclaration": 32093, + "src": "10676:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31646, + "id": 33204, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10684:16:31", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 27923, - "src": "10676:24:27", + "referencedDeclaration": 27979, + "src": "10676:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31651, + "id": 33209, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10676:36:27", + "src": "10676:36:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -17919,14 +19406,14 @@ }, { "hexValue": "30", - "id": 31652, + "id": 33210, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10714:1:27", + "src": "10714:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17945,20 +19432,20 @@ "typeString": "int_const 0" } ], - "id": 31644, + "id": 33202, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -17971,37 +19458,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "10667:8:27", + "src": "10667:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31653, + "id": 33211, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10667:49:27", + "src": "10667:49:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31654, + "id": 33212, "nodeType": "ExpressionStatement", - "src": "10667:49:27" + "src": "10667:49:31" } ] }, "documentation": { - "id": 31595, + "id": 33153, "nodeType": "StructuredDocumentation", - "src": "10042:49:27", + "src": "10042:49:31", "text": "@dev Verifies getAmountToClaim() restrictions" }, "functionSelector": "5a17a66b", @@ -18009,47 +19497,49 @@ "kind": "function", "modifiers": [], "name": "test_vesting_getAmountToClaim_restrictions", - "nameLocation": "10106:42:27", + "nameLocation": "10106:42:31", "parameters": { - "id": 31596, + "id": 33154, "nodeType": "ParameterList", "parameters": [], - "src": "10148:2:27" + "src": "10148:2:31" }, "returnParameters": { - "id": 31597, + "id": 33155, "nodeType": "ParameterList", "parameters": [], - "src": "10158:0:27" + "src": "10158:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 31780, + "id": 33338, "nodeType": "FunctionDefinition", - "src": "10774:1093:27", + "src": "10774:1093:31", + "nodes": [], "body": { - "id": 31779, + "id": 33337, "nodeType": "Block", - "src": "10822:1045:27", + "src": "10822:1045:31", + "nodes": [], "statements": [ { "assignments": [ - 31661 + 33219 ], "declarations": [ { "constant": false, - "id": 31661, + "id": 33219, "mutability": "mutable", "name": "_amount", - "nameLocation": "10907:7:27", + "nameLocation": "10907:7:31", "nodeType": "VariableDeclaration", - "scope": 31779, - "src": "10899:15:27", + "scope": 33337, + "src": "10899:15:31", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18057,10 +19547,10 @@ "typeString": "uint256" }, "typeName": { - "id": 31660, + "id": 33218, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10899:7:27", + "src": "10899:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18069,17 +19559,17 @@ "visibility": "internal" } ], - "id": 31663, + "id": 33221, "initialValue": { "hexValue": "315f3030305f303030", - "id": 31662, + "id": 33220, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10917:15:27", + "src": "10917:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -18088,7 +19578,7 @@ "value": "1_000_000" }, "nodeType": "VariableDeclarationStatement", - "src": "10899:33:27" + "src": "10899:33:31" }, { "expression": { @@ -18098,14 +19588,14 @@ { "arguments": [ { - "id": 31669, + "id": 33227, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "11009:7:27", + "referencedDeclaration": 32093, + "src": "11009:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -18113,38 +19603,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31668, + "id": 33226, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11001:7:27", + "src": "11001:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31667, + "id": 33225, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11001:7:27", + "src": "11001:7:31", "typeDescriptions": {} } }, - "id": 31670, + "id": 33228, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11001:16:27", + "src": "11001:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18154,14 +19645,14 @@ { "arguments": [ { - "id": 31673, + "id": 33231, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "11027:3:27", + "referencedDeclaration": 31571, + "src": "11027:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -18169,38 +19660,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31672, + "id": 33230, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11019:7:27", + "src": "11019:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31671, + "id": 33229, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11019:7:27", + "src": "11019:7:31", "typeDescriptions": {} } }, - "id": 31674, + "id": 33232, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11019:12:27", + "src": "11019:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18208,12 +19700,12 @@ } }, { - "id": 31675, + "id": 33233, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31661, - "src": "11033:7:27", + "referencedDeclaration": 33219, + "src": "11033:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18236,40 +19728,42 @@ } ], "expression": { - "id": 31665, + "id": 33223, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "10981:3:27", + "referencedDeclaration": 31568, + "src": "10981:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31666, + "id": 33224, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "10985:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "10981:19:27", + "referencedDeclaration": 30294, + "src": "10981:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31676, + "id": 33234, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10981:60:27", + "src": "10981:60:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -18284,35 +19778,36 @@ "typeString": "bool" } ], - "id": 31664, + "id": 33222, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "10974:6:27", + "src": "10974:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31677, + "id": 33235, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10974:68:27", + "src": "10974:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31678, + "id": 33236, "nodeType": "ExpressionStatement", - "src": "10974:68:27" + "src": "10974:68:31" }, { "expression": { @@ -18322,14 +19817,14 @@ { "arguments": [ { - "id": 31684, + "id": 33242, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "11139:3:27", + "referencedDeclaration": 31571, + "src": "11139:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -18337,38 +19832,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31683, + "id": 33241, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11131:7:27", + "src": "11131:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31682, + "id": 33240, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11131:7:27", + "src": "11131:7:31", "typeDescriptions": {} } }, - "id": 31685, + "id": 33243, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11131:12:27", + "src": "11131:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18384,40 +19880,42 @@ } ], "expression": { - "id": 31680, + "id": 33238, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "11107:7:27", + "referencedDeclaration": 32093, + "src": "11107:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31681, + "id": 33239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11115:15:31", "memberName": "getTokensToVest", "nodeType": "MemberAccess", - "referencedDeclaration": 27979, - "src": "11107:23:27", + "referencedDeclaration": 28035, + "src": "11107:23:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31686, + "id": 33244, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11107:37:27", + "src": "11107:37:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -18425,12 +19923,12 @@ } }, { - "id": 31687, + "id": 33245, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31661, - "src": "11146:7:27", + "referencedDeclaration": 33219, + "src": "11146:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18448,20 +19946,20 @@ "typeString": "uint256" } ], - "id": 31679, + "id": 33237, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -18474,30 +19972,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "11098:8:27", + "src": "11098:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31688, + "id": 33246, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11098:56:27", + "src": "11098:56:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31689, + "id": 33247, "nodeType": "ExpressionStatement", - "src": "11098:56:27" + "src": "11098:56:31" }, { "expression": { @@ -18507,14 +20006,14 @@ { "arguments": [ { - "id": 31695, + "id": 33253, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "11231:7:27", + "referencedDeclaration": 32093, + "src": "11231:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -18522,38 +20021,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31694, + "id": 33252, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11223:7:27", + "src": "11223:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31693, + "id": 33251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11223:7:27", + "src": "11223:7:31", "typeDescriptions": {} } }, - "id": 31696, + "id": 33254, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11223:16:27", + "src": "11223:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -18569,40 +20069,42 @@ } ], "expression": { - "id": 31691, + "id": 33249, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "11201:3:27", + "referencedDeclaration": 31568, + "src": "11201:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31692, + "id": 33250, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11205:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "11201:21:27", + "referencedDeclaration": 30232, + "src": "11201:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 31697, + "id": 33255, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11201:39:27", + "src": "11201:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -18617,49 +20119,50 @@ "typeString": "bool" } ], - "id": 31690, + "id": 33248, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "11194:6:27", + "src": "11194:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31698, + "id": 33256, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11194:47:27", + "src": "11194:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31699, + "id": 33257, "nodeType": "ExpressionStatement", - "src": "11194:47:27" + "src": "11194:47:31" }, { "expression": { "arguments": [ { "hexValue": "3132", - "id": 31701, + "id": 33259, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11285:8:27", + "src": "11285:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_7257600_by_1", @@ -18675,50 +20178,51 @@ "typeString": "int_const 7257600" } ], - "id": 31700, + "id": 33258, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "11280:4:27", + "referencedDeclaration": 4833, + "src": "11280:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 31702, + "id": 33260, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11280:14:27", + "src": "11280:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31703, + "id": 33261, "nodeType": "ExpressionStatement", - "src": "11280:14:27" + "src": "11280:14:31" }, { "assignments": [ - 31705 + 33263 ], "declarations": [ { "constant": false, - "id": 31705, + "id": 33263, "mutability": "mutable", "name": "toClaim", - "nameLocation": "11368:7:27", + "nameLocation": "11368:7:31", "nodeType": "VariableDeclaration", - "scope": 31779, - "src": "11360:15:27", + "scope": 33337, + "src": "11360:15:31", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18726,10 +20230,10 @@ "typeString": "uint256" }, "typeName": { - "id": 31704, + "id": 33262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11360:7:27", + "src": "11360:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18738,13 +20242,13 @@ "visibility": "internal" } ], - "id": 31722, + "id": 33280, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31721, + "id": 33279, "isConstant": false, "isLValue": false, "isPure": false, @@ -18756,7 +20260,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31710, + "id": 33268, "isConstant": false, "isLValue": false, "isPure": false, @@ -18766,18 +20270,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31708, + "id": 33266, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31706, + "id": 33264, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31661, - "src": "11379:7:27", + "referencedDeclaration": 33219, + "src": "11379:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18787,21 +20291,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 31707, + "id": 33265, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11389:2:27", + "src": "11389:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "11379:12:27", + "src": "11379:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18811,35 +20315,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 31709, + "id": 33267, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11394:3:27", + "src": "11394:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11379:18:27", + "src": "11379:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 31711, + "id": 33269, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11378:20:27", + "src": "11378:20:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18854,21 +20358,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31719, + "id": 33277, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "33", - "id": 31712, + "id": 33270, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11402:1:27", + "src": "11402:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" @@ -18884,7 +20388,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31717, + "id": 33275, "isConstant": false, "isLValue": false, "isPure": false, @@ -18894,18 +20398,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31715, + "id": 33273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31713, + "id": 33271, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31661, - "src": "11407:7:27", + "referencedDeclaration": 33219, + "src": "11407:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18915,21 +20419,21 @@ "operator": "*", "rightExpression": { "hexValue": "38", - "id": 31714, + "id": 33272, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11417:1:27", + "src": "11417:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "11407:11:27", + "src": "11407:11:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18939,68 +20443,68 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 31716, + "id": 33274, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11421:3:27", + "src": "11421:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11407:17:27", + "src": "11407:17:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 31718, + "id": 33276, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11406:19:27", + "src": "11406:19:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11402:23:27", + "src": "11402:23:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 31720, + "id": 33278, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11401:25:27", + "src": "11401:25:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11378:48:27", + "src": "11378:48:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11360:66:27" + "src": "11360:66:31" }, { "expression": { @@ -19010,14 +20514,14 @@ { "arguments": [ { - "id": 31728, + "id": 33286, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "11479:3:27", + "referencedDeclaration": 31571, + "src": "11479:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -19025,38 +20529,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31727, + "id": 33285, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11471:7:27", + "src": "11471:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31726, + "id": 33284, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11471:7:27", + "src": "11471:7:31", "typeDescriptions": {} } }, - "id": 31729, + "id": 33287, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11471:12:27", + "src": "11471:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19072,40 +20577,42 @@ } ], "expression": { - "id": 31724, + "id": 33282, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "11446:7:27", + "referencedDeclaration": 32093, + "src": "11446:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31725, + "id": 33283, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11454:16:31", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 27923, - "src": "11446:24:27", + "referencedDeclaration": 27979, + "src": "11446:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31730, + "id": 33288, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11446:38:27", + "src": "11446:38:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -19113,12 +20620,12 @@ } }, { - "id": 31731, + "id": 33289, "name": "toClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31705, - "src": "11486:7:27", + "referencedDeclaration": 33263, + "src": "11486:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19136,20 +20643,20 @@ "typeString": "uint256" } ], - "id": 31723, + "id": 33281, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -19162,44 +20669,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "11437:8:27", + "src": "11437:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31732, + "id": 33290, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11437:57:27", + "src": "11437:57:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31733, + "id": 33291, "nodeType": "ExpressionStatement", - "src": "11437:57:27" + "src": "11437:57:31" }, { "expression": { "arguments": [ { "hexValue": "3332", - "id": 31735, + "id": 33293, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11588:8:27", + "src": "11588:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_19353600_by_1", @@ -19215,50 +20723,51 @@ "typeString": "int_const 19353600" } ], - "id": 31734, + "id": 33292, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "11583:4:27", + "referencedDeclaration": 4833, + "src": "11583:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 31736, + "id": 33294, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11583:14:27", + "src": "11583:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31737, + "id": 33295, "nodeType": "ExpressionStatement", - "src": "11583:14:27" + "src": "11583:14:31" }, { "expression": { - "id": 31755, + "id": 33313, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 31738, + "id": 33296, "name": "toClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31705, - "src": "11664:7:27", + "referencedDeclaration": 33263, + "src": "11664:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19271,7 +20780,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31754, + "id": 33312, "isConstant": false, "isLValue": false, "isPure": false, @@ -19283,7 +20792,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31743, + "id": 33301, "isConstant": false, "isLValue": false, "isPure": false, @@ -19293,18 +20802,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31741, + "id": 33299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31739, + "id": 33297, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31661, - "src": "11675:7:27", + "referencedDeclaration": 33219, + "src": "11675:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19314,21 +20823,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 31740, + "id": 33298, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11685:2:27", + "src": "11685:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "11675:12:27", + "src": "11675:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19338,35 +20847,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 31742, + "id": 33300, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11690:3:27", + "src": "11690:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11675:18:27", + "src": "11675:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 31744, + "id": 33302, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11674:20:27", + "src": "11674:20:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19381,21 +20890,21 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31752, + "id": 33310, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3131", - "id": 31745, + "id": 33303, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11698:2:27", + "src": "11698:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_11_by_1", "typeString": "int_const 11" @@ -19411,7 +20920,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31750, + "id": 33308, "isConstant": false, "isLValue": false, "isPure": false, @@ -19421,18 +20930,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31748, + "id": 33306, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31746, + "id": 33304, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31661, - "src": "11704:7:27", + "referencedDeclaration": 33219, + "src": "11704:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19442,21 +20951,21 @@ "operator": "*", "rightExpression": { "hexValue": "38", - "id": 31747, + "id": 33305, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11714:1:27", + "src": "11714:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "11704:11:27", + "src": "11704:11:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19466,75 +20975,75 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 31749, + "id": 33307, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11718:3:27", + "src": "11718:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "11704:17:27", + "src": "11704:17:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 31751, + "id": 33309, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11703:19:27", + "src": "11703:19:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11698:24:27", + "src": "11698:24:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 31753, + "id": 33311, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11697:26:27", + "src": "11697:26:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11674:49:27", + "src": "11674:49:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11664:59:27", + "src": "11664:59:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 31756, + "id": 33314, "nodeType": "ExpressionStatement", - "src": "11664:59:27" + "src": "11664:59:31" }, { "expression": { @@ -19544,14 +21053,14 @@ { "arguments": [ { - "id": 31762, + "id": 33320, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "11776:3:27", + "referencedDeclaration": 31571, + "src": "11776:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -19559,38 +21068,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31761, + "id": 33319, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11768:7:27", + "src": "11768:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31760, + "id": 33318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11768:7:27", + "src": "11768:7:31", "typeDescriptions": {} } }, - "id": 31763, + "id": 33321, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11768:12:27", + "src": "11768:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19606,40 +21116,42 @@ } ], "expression": { - "id": 31758, + "id": 33316, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "11743:7:27", + "referencedDeclaration": 32093, + "src": "11743:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31759, + "id": 33317, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11751:16:31", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 27923, - "src": "11743:24:27", + "referencedDeclaration": 27979, + "src": "11743:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31764, + "id": 33322, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11743:38:27", + "src": "11743:38:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -19647,12 +21159,12 @@ } }, { - "id": 31765, + "id": 33323, "name": "toClaim", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31705, - "src": "11783:7:27", + "referencedDeclaration": 33263, + "src": "11783:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19670,20 +21182,20 @@ "typeString": "uint256" } ], - "id": 31757, + "id": 33315, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -19696,30 +21208,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "11734:8:27", + "src": "11734:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31766, + "id": 33324, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11734:57:27", + "src": "11734:57:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31767, + "id": 33325, "nodeType": "ExpressionStatement", - "src": "11734:57:27" + "src": "11734:57:31" }, { "expression": { @@ -19729,14 +21242,14 @@ { "arguments": [ { - "id": 31773, + "id": 33331, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "11844:3:27", + "referencedDeclaration": 31571, + "src": "11844:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -19744,38 +21257,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31772, + "id": 33330, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11836:7:27", + "src": "11836:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31771, + "id": 33329, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11836:7:27", + "src": "11836:7:31", "typeDescriptions": {} } }, - "id": 31774, + "id": 33332, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11836:12:27", + "src": "11836:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19791,40 +21305,42 @@ } ], "expression": { - "id": 31769, + "id": 33327, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "11811:7:27", + "referencedDeclaration": 32093, + "src": "11811:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31770, + "id": 33328, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "11819:16:31", "memberName": "getAmountToClaim", "nodeType": "MemberAccess", - "referencedDeclaration": 27923, - "src": "11811:24:27", + "referencedDeclaration": 27979, + "src": "11811:24:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31775, + "id": 33333, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11811:38:27", + "src": "11811:38:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -19832,12 +21348,12 @@ } }, { - "id": 31776, + "id": 33334, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31661, - "src": "11851:7:27", + "referencedDeclaration": 33219, + "src": "11851:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19855,20 +21371,20 @@ "typeString": "uint256" } ], - "id": 31768, + "id": 33326, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -19881,37 +21397,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "11802:8:27", + "src": "11802:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31777, + "id": 33335, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11802:57:27", + "src": "11802:57:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31778, + "id": 33336, "nodeType": "ExpressionStatement", - "src": "11802:57:27" + "src": "11802:57:31" } ] }, "documentation": { - "id": 31657, + "id": 33215, "nodeType": "StructuredDocumentation", - "src": "10732:36:27", + "src": "10732:36:31", "text": "@dev Verifies getAmountToClaim()" }, "functionSelector": "c7283c78", @@ -19919,32 +21436,34 @@ "kind": "function", "modifiers": [], "name": "test_vesting_getAmountToClaim", - "nameLocation": "10783:29:27", + "nameLocation": "10783:29:31", "parameters": { - "id": 31658, + "id": 33216, "nodeType": "ParameterList", "parameters": [], - "src": "10812:2:27" + "src": "10812:2:31" }, "returnParameters": { - "id": 31659, + "id": 33217, "nodeType": "ParameterList", "parameters": [], - "src": "10822:0:27" + "src": "10822:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 31882, + "id": 33440, "nodeType": "FunctionDefinition", - "src": "11947:1092:27", + "src": "11947:1092:31", + "nodes": [], "body": { - "id": 31881, + "id": 33439, "nodeType": "Block", - "src": "11997:1042:27", + "src": "11997:1042:31", + "nodes": [], "statements": [ { "expression": { @@ -19954,40 +21473,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31785, + "id": 33343, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12072:7:27", + "referencedDeclaration": 32093, + "src": "12072:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31786, + "id": 33344, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12080:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "12072:18:27", + "referencedDeclaration": 27505, + "src": "12072:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 31787, + "id": 33345, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12072:20:27", + "src": "12072:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -19997,14 +21518,14 @@ { "arguments": [ { - "id": 31790, + "id": 33348, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12102:7:27", + "referencedDeclaration": 32093, + "src": "12102:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -20012,38 +21533,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31789, + "id": 33347, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12094:7:27", + "src": "12094:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31788, + "id": 33346, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12094:7:27", + "src": "12094:7:31", "typeDescriptions": {} } }, - "id": 31791, + "id": 33349, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12094:16:27", + "src": "12094:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -20052,14 +21574,14 @@ }, { "hexValue": "355f3030305f303030", - "id": 31792, + "id": 33350, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12112:15:27", + "src": "12112:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_5000000000000000000000000_by_1", @@ -20083,39 +21605,40 @@ "typeString": "int_const 5000000000000000000000000" } ], - "id": 31784, + "id": 33342, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ - 5023, - 5040, - 5143 + 5060, + 5077, + 5180 ], - "referencedDeclaration": 5040, - "src": "12067:4:27", + "referencedDeclaration": 5077, + "src": "12067:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 31793, + "id": 33351, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12067:61:27", + "src": "12067:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31794, + "id": 33352, "nodeType": "ExpressionStatement", - "src": "12067:61:27" + "src": "12067:61:31" }, { "expression": { @@ -20123,14 +21646,14 @@ { "arguments": [ { - "id": 31800, + "id": 33358, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "12198:3:27", + "referencedDeclaration": 31571, + "src": "12198:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -20138,38 +21661,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31799, + "id": 33357, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12190:7:27", + "src": "12190:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31798, + "id": 33356, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12190:7:27", + "src": "12190:7:31", "typeDescriptions": {} } }, - "id": 31801, + "id": 33359, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12190:12:27", + "src": "12190:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -20185,63 +21709,65 @@ } ], "expression": { - "id": 31795, + "id": 33353, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "12176:2:27", + "src": "12176:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31797, + "id": 33355, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12179:10:31", "memberName": "startPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9043, - "src": "12176:13:27", + "referencedDeclaration": 9080, + "src": "12176:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 31802, + "id": 33360, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12176:27:27", + "src": "12176:27:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31803, + "id": 33361, "nodeType": "ExpressionStatement", - "src": "12176:27:27" + "src": "12176:27:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a6f6e6c79496e766573746f722829206d73672e73656e646572206d75737420626520616e20696e766573746f72", - "id": 31807, + "id": 33365, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12285:60:27", + "src": "12285:60:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_04c0e7337b94cd08ab709ab9e01a52972b8997f541f0ec03cfdf895720fa5020", "typeString": "literal_string \"Vesting.sol::onlyInvestor() msg.sender must be an investor\"" @@ -20257,49 +21783,51 @@ } ], "expression": { - "id": 31804, + "id": 33362, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "12269:2:27", + "src": "12269:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31806, + "id": 33364, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12272:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "12269:15:27", + "referencedDeclaration": 9116, + "src": "12269:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 31808, + "id": 33366, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12269:77:27", + "src": "12269:77:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31809, + "id": 33367, "nodeType": "ExpressionStatement", - "src": "12269:77:27" + "src": "12269:77:31" }, { "expression": { @@ -20307,49 +21835,51 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31810, + "id": 33368, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12357:7:27", + "referencedDeclaration": 32093, + "src": "12357:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31812, + "id": 33370, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12365:5:31", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27592, - "src": "12357:13:27", + "referencedDeclaration": 27648, + "src": "12357:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 31813, + "id": 33371, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12357:15:27", + "src": "12357:15:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31814, + "id": 33372, "nodeType": "ExpressionStatement", - "src": "12357:15:27" + "src": "12357:15:31" }, { "expression": { @@ -20359,14 +21889,14 @@ { "arguments": [ { - "id": 31820, + "id": 33378, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12452:7:27", + "referencedDeclaration": 32093, + "src": "12452:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -20374,38 +21904,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31819, + "id": 33377, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12444:7:27", + "src": "12444:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31818, + "id": 33376, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12444:7:27", + "src": "12444:7:31", "typeDescriptions": {} } }, - "id": 31821, + "id": 33379, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12444:16:27", + "src": "12444:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -20415,14 +21946,14 @@ { "arguments": [ { - "id": 31824, + "id": 33382, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "12470:3:27", + "referencedDeclaration": 31571, + "src": "12470:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -20430,38 +21961,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31823, + "id": 33381, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12462:7:27", + "src": "12462:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31822, + "id": 33380, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12462:7:27", + "src": "12462:7:31", "typeDescriptions": {} } }, - "id": 31825, + "id": 33383, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12462:12:27", + "src": "12462:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -20470,14 +22002,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 31826, + "id": 33384, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12476:15:27", + "src": "12476:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -20502,40 +22034,42 @@ } ], "expression": { - "id": 31816, + "id": 33374, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "12424:3:27", + "referencedDeclaration": 31568, + "src": "12424:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31817, + "id": 33375, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12428:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "12424:19:27", + "referencedDeclaration": 30294, + "src": "12424:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31827, + "id": 33385, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12424:68:27", + "src": "12424:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20550,49 +22084,50 @@ "typeString": "bool" } ], - "id": 31815, + "id": 33373, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "12417:6:27", + "src": "12417:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31828, + "id": 33386, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12417:76:27", + "src": "12417:76:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31829, + "id": 33387, "nodeType": "ExpressionStatement", - "src": "12417:76:27" + "src": "12417:76:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a636c61696d28292076657374696e67206973206e6f7420656e61626c6564", - "id": 31833, + "id": 33391, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12575:45:27", + "src": "12575:45:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_34ce9ff9fcf1e453c578e481f1424d1ad92317cc4ad3678a8839da76e7fbb7d6", "typeString": "literal_string \"Vesting.sol::claim() vesting is not enabled\"" @@ -20608,49 +22143,51 @@ } ], "expression": { - "id": 31830, + "id": 33388, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "12559:2:27", + "src": "12559:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31832, + "id": 33390, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12562:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "12559:15:27", + "referencedDeclaration": 9116, + "src": "12559:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 31834, + "id": 33392, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12559:62:27", + "src": "12559:62:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31835, + "id": 33393, "nodeType": "ExpressionStatement", - "src": "12559:62:27" + "src": "12559:62:31" }, { "expression": { @@ -20658,49 +22195,51 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31836, + "id": 33394, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12632:7:27", + "referencedDeclaration": 32093, + "src": "12632:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31838, + "id": 33396, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12640:5:31", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27592, - "src": "12632:13:27", + "referencedDeclaration": 27648, + "src": "12632:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 31839, + "id": 33397, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12632:15:27", + "src": "12632:15:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31840, + "id": 33398, "nodeType": "ExpressionStatement", - "src": "12632:15:27" + "src": "12632:15:31" }, { "expression": { @@ -20710,14 +22249,14 @@ { "arguments": [ { - "id": 31846, + "id": 33404, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12724:7:27", + "referencedDeclaration": 32093, + "src": "12724:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -20725,38 +22264,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31845, + "id": 33403, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "12716:7:27", + "src": "12716:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31844, + "id": 33402, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12716:7:27", + "src": "12716:7:31", "typeDescriptions": {} } }, - "id": 31847, + "id": 33405, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12716:16:27", + "src": "12716:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -20772,40 +22312,42 @@ } ], "expression": { - "id": 31842, + "id": 33400, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "12694:3:27", + "referencedDeclaration": 31568, + "src": "12694:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31843, + "id": 33401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12698:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "12694:21:27", + "referencedDeclaration": 30232, + "src": "12694:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 31848, + "id": 33406, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12694:39:27", + "src": "12694:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20820,35 +22362,36 @@ "typeString": "bool" } ], - "id": 31841, + "id": 33399, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "12687:6:27", + "src": "12687:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31849, + "id": 33407, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12687:47:27", + "src": "12687:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31850, + "id": 33408, "nodeType": "ExpressionStatement", - "src": "12687:47:27" + "src": "12687:47:31" }, { "expression": { @@ -20856,63 +22399,65 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31851, + "id": 33409, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12784:7:27", + "referencedDeclaration": 32093, + "src": "12784:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31853, + "id": 33411, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12792:5:31", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27592, - "src": "12784:13:27", + "referencedDeclaration": 27648, + "src": "12784:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 31854, + "id": 33412, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12784:15:27", + "src": "12784:15:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31855, + "id": 33413, "nodeType": "ExpressionStatement", - "src": "12784:15:27" + "src": "12784:15:31" }, { "expression": { "arguments": [ { "hexValue": "3532", - "id": 31857, + "id": 33415, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12817:8:27", + "src": "12817:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_31449600_by_1", @@ -20928,35 +22473,36 @@ "typeString": "int_const 31449600" } ], - "id": 31856, + "id": 33414, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "12812:4:27", + "referencedDeclaration": 4833, + "src": "12812:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 31858, + "id": 33416, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12812:14:27", + "src": "12812:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31859, + "id": 33417, "nodeType": "ExpressionStatement", - "src": "12812:14:27" + "src": "12812:14:31" }, { "expression": { @@ -20964,63 +22510,65 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31860, + "id": 33418, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12877:7:27", + "referencedDeclaration": 32093, + "src": "12877:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31862, + "id": 33420, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12885:5:31", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27592, - "src": "12877:13:27", + "referencedDeclaration": 27648, + "src": "12877:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 31863, + "id": 33421, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12877:15:27", + "src": "12877:15:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31864, + "id": 33422, "nodeType": "ExpressionStatement", - "src": "12877:15:27" + "src": "12877:15:31" }, { "expression": { "arguments": [ { "hexValue": "56657374696e672e736f6c3a3a636c61696d282920696e766573746f7220686173206e6f20746f6b656e7320746f20636c61696d", - "id": 31868, + "id": 33426, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12921:54:27", + "src": "12921:54:31", "typeDescriptions": { "typeIdentifier": "t_stringliteral_7fe10741cbe6c2a9cecbadf80743676cd6f5fd9119dd5a58d21ffa6d6e330a51", "typeString": "literal_string \"Vesting.sol::claim() investor has no tokens to claim\"" @@ -21036,49 +22584,51 @@ } ], "expression": { - "id": 31865, + "id": 33423, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "12905:2:27", + "src": "12905:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31867, + "id": 33425, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12908:12:31", "memberName": "expectRevert", "nodeType": "MemberAccess", - "referencedDeclaration": 9079, - "src": "12905:15:27", + "referencedDeclaration": 9116, + "src": "12905:15:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory) external" } }, - "id": 31869, + "id": 33427, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12905:71:27", + "src": "12905:71:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31870, + "id": 33428, "nodeType": "ExpressionStatement", - "src": "12905:71:27" + "src": "12905:71:31" }, { "expression": { @@ -21086,49 +22636,51 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31871, + "id": 33429, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "12987:7:27", + "referencedDeclaration": 32093, + "src": "12987:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31873, + "id": 33431, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "12995:5:31", "memberName": "claim", "nodeType": "MemberAccess", - "referencedDeclaration": 27592, - "src": "12987:13:27", + "referencedDeclaration": 27648, + "src": "12987:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 31874, + "id": 33432, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12987:15:27", + "src": "12987:15:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31875, + "id": 33433, "nodeType": "ExpressionStatement", - "src": "12987:15:27" + "src": "12987:15:31" }, { "expression": { @@ -21136,56 +22688,58 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31876, + "id": 33434, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "13015:2:27", + "src": "13015:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31878, + "id": 33436, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13018:9:31", "memberName": "stopPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9060, - "src": "13015:12:27", + "referencedDeclaration": 9097, + "src": "13015:12:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 31879, + "id": 33437, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13015:14:27", + "src": "13015:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31880, + "id": 33438, "nodeType": "ExpressionStatement", - "src": "13015:14:27" + "src": "13015:14:31" } ] }, "documentation": { - "id": 31781, + "id": 33339, "nodeType": "StructuredDocumentation", - "src": "11903:38:27", + "src": "11903:38:31", "text": "@dev Verifies claim() restrictions" }, "functionSelector": "8a8fa9b2", @@ -21193,47 +22747,49 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_restrictions", - "nameLocation": "11956:31:27", + "nameLocation": "11956:31:31", "parameters": { - "id": 31782, + "id": 33340, "nodeType": "ParameterList", "parameters": [], - "src": "11987:2:27" + "src": "11987:2:31" }, "returnParameters": { - "id": 31783, + "id": 33341, "nodeType": "ParameterList", "parameters": [], - "src": "11997:0:27" + "src": "11997:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 32113, + "id": 33671, "nodeType": "FunctionDefinition", - "src": "13092:1902:27", + "src": "13092:1902:31", + "nodes": [], "body": { - "id": 32112, + "id": 33670, "nodeType": "Block", - "src": "13143:1851:27", + "src": "13143:1851:31", + "nodes": [], "statements": [ { "assignments": [ - 31887 + 33445 ], "declarations": [ { "constant": false, - "id": 31887, + "id": 33445, "mutability": "mutable", "name": "_amount", - "nameLocation": "13159:7:27", + "nameLocation": "13159:7:31", "nodeType": "VariableDeclaration", - "scope": 32112, - "src": "13154:12:27", + "scope": 33670, + "src": "13154:12:31", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21241,10 +22797,10 @@ "typeString": "uint256" }, "typeName": { - "id": 31886, + "id": 33444, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13154:4:27", + "src": "13154:4:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21253,17 +22809,17 @@ "visibility": "internal" } ], - "id": 31889, + "id": 33447, "initialValue": { "hexValue": "315f3030305f303030", - "id": 31888, + "id": 33446, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13169:15:27", + "src": "13169:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -21272,7 +22828,7 @@ "value": "1_000_000" }, "nodeType": "VariableDeclarationStatement", - "src": "13154:30:27" + "src": "13154:30:31" }, { "expression": { @@ -21282,40 +22838,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31891, + "id": 33449, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "13261:7:27", + "referencedDeclaration": 32093, + "src": "13261:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31892, + "id": 33450, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13269:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "13261:18:27", + "referencedDeclaration": 27505, + "src": "13261:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 31893, + "id": 33451, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13261:20:27", + "src": "13261:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21325,14 +22883,14 @@ { "arguments": [ { - "id": 31896, + "id": 33454, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "13291:7:27", + "referencedDeclaration": 32093, + "src": "13291:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -21340,38 +22898,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31895, + "id": 33453, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13283:7:27", + "src": "13283:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31894, + "id": 33452, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13283:7:27", + "src": "13283:7:31", "typeDescriptions": {} } }, - "id": 31897, + "id": 33455, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13283:16:27", + "src": "13283:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21379,12 +22938,12 @@ } }, { - "id": 31898, + "id": 33456, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31887, - "src": "13301:7:27", + "referencedDeclaration": 33445, + "src": "13301:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21406,39 +22965,40 @@ "typeString": "uint256" } ], - "id": 31890, + "id": 33448, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ - 5023, - 5040, - 5143 + 5060, + 5077, + 5180 ], - "referencedDeclaration": 5040, - "src": "13256:4:27", + "referencedDeclaration": 5077, + "src": "13256:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 31899, + "id": 33457, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13256:53:27", + "src": "13256:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31900, + "id": 33458, "nodeType": "ExpressionStatement", - "src": "13256:53:27" + "src": "13256:53:31" }, { "expression": { @@ -21446,14 +23006,14 @@ { "arguments": [ { - "id": 31906, + "id": 33464, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "13378:3:27", + "referencedDeclaration": 31571, + "src": "13378:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -21461,38 +23021,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31905, + "id": 33463, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13370:7:27", + "src": "13370:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31904, + "id": 33462, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13370:7:27", + "src": "13370:7:31", "typeDescriptions": {} } }, - "id": 31907, + "id": 33465, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13370:12:27", + "src": "13370:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21508,49 +23069,51 @@ } ], "expression": { - "id": 31901, + "id": 33459, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "13356:2:27", + "src": "13356:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 31903, + "id": 33461, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13359:10:31", "memberName": "startPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9043, - "src": "13356:13:27", + "referencedDeclaration": 9080, + "src": "13356:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 31908, + "id": 33466, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13356:27:27", + "src": "13356:27:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31909, + "id": 33467, "nodeType": "ExpressionStatement", - "src": "13356:27:27" + "src": "13356:27:31" }, { "expression": { @@ -21560,14 +23123,14 @@ { "arguments": [ { - "id": 31915, + "id": 33473, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "13462:7:27", + "referencedDeclaration": 32093, + "src": "13462:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -21575,38 +23138,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31914, + "id": 33472, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13454:7:27", + "src": "13454:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31913, + "id": 33471, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13454:7:27", + "src": "13454:7:31", "typeDescriptions": {} } }, - "id": 31916, + "id": 33474, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13454:16:27", + "src": "13454:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21616,14 +23180,14 @@ { "arguments": [ { - "id": 31919, + "id": 33477, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "13480:3:27", + "referencedDeclaration": 31571, + "src": "13480:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -21631,38 +23195,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31918, + "id": 33476, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13472:7:27", + "src": "13472:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31917, + "id": 33475, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13472:7:27", + "src": "13472:7:31", "typeDescriptions": {} } }, - "id": 31920, + "id": 33478, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13472:12:27", + "src": "13472:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21670,12 +23235,12 @@ } }, { - "id": 31921, + "id": 33479, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31887, - "src": "13486:7:27", + "referencedDeclaration": 33445, + "src": "13486:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21698,40 +23263,42 @@ } ], "expression": { - "id": 31911, + "id": 33469, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "13434:3:27", + "referencedDeclaration": 31568, + "src": "13434:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31912, + "id": 33470, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13438:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "13434:19:27", + "referencedDeclaration": 30294, + "src": "13434:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 31922, + "id": 33480, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13434:60:27", + "src": "13434:60:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -21746,35 +23313,36 @@ "typeString": "bool" } ], - "id": 31910, + "id": 33468, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "13427:6:27", + "src": "13427:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31923, + "id": 33481, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13427:68:27", + "src": "13427:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31924, + "id": 33482, "nodeType": "ExpressionStatement", - "src": "13427:68:27" + "src": "13427:68:31" }, { "expression": { @@ -21784,14 +23352,14 @@ { "arguments": [ { - "id": 31930, + "id": 33488, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "13571:7:27", + "referencedDeclaration": 32093, + "src": "13571:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -21799,38 +23367,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31929, + "id": 33487, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13563:7:27", + "src": "13563:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31928, + "id": 33486, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13563:7:27", + "src": "13563:7:31", "typeDescriptions": {} } }, - "id": 31931, + "id": 33489, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13563:16:27", + "src": "13563:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -21846,40 +23415,42 @@ } ], "expression": { - "id": 31926, + "id": 33484, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "13541:3:27", + "referencedDeclaration": 31568, + "src": "13541:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31927, + "id": 33485, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13545:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "13541:21:27", + "referencedDeclaration": 30232, + "src": "13541:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 31932, + "id": 33490, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13541:39:27", + "src": "13541:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -21894,35 +23465,36 @@ "typeString": "bool" } ], - "id": 31925, + "id": 33483, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "13534:6:27", + "src": "13534:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31933, + "id": 33491, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13534:47:27", + "src": "13534:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31934, + "id": 33492, "nodeType": "ExpressionStatement", - "src": "13534:47:27" + "src": "13534:47:31" }, { "expression": { @@ -21932,14 +23504,14 @@ { "arguments": [ { - "id": 31944, + "id": 33502, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "13678:3:27", + "referencedDeclaration": 31571, + "src": "13678:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -21947,38 +23519,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31943, + "id": 33501, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13670:7:27", + "src": "13670:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31942, + "id": 33500, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13670:7:27", + "src": "13670:7:31", "typeDescriptions": {} } }, - "id": 31945, + "id": 33503, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13670:12:27", + "src": "13670:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22000,40 +23573,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31937, + "id": 33495, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "13638:7:27", + "referencedDeclaration": 32093, + "src": "13638:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31938, + "id": 33496, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13646:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "13638:18:27", + "referencedDeclaration": 27505, + "src": "13638:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 31939, + "id": 33497, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13638:20:27", + "src": "13638:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22048,55 +23623,58 @@ "typeString": "address" } ], - "id": 31936, + "id": 33494, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "13631:6:27", + "referencedDeclaration": 29158, + "src": "13631:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 31940, + "id": 33498, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13631:28:27", + "src": "13631:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 31941, + "id": 33499, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13660:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "13631:38:27", + "referencedDeclaration": 29097, + "src": "13631:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31946, + "id": 33504, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13631:52:27", + "src": "13631:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -22105,14 +23683,14 @@ }, { "hexValue": "30", - "id": 31947, + "id": 33505, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13685:1:27", + "src": "13685:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -22131,20 +23709,20 @@ "typeString": "int_const 0" } ], - "id": 31935, + "id": 33493, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -22157,30 +23735,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "13622:8:27", + "src": "13622:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31948, + "id": 33506, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13622:65:27", + "src": "13622:65:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31949, + "id": 33507, "nodeType": "ExpressionStatement", - "src": "13622:65:27" + "src": "13622:65:31" }, { "expression": { @@ -22190,14 +23769,14 @@ { "arguments": [ { - "id": 31955, + "id": 33513, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "13768:7:27", + "referencedDeclaration": 32093, + "src": "13768:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -22205,38 +23784,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31954, + "id": 33512, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13760:7:27", + "src": "13760:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31953, + "id": 33511, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13760:7:27", + "src": "13760:7:31", "typeDescriptions": {} } }, - "id": 31956, + "id": 33514, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13760:16:27", + "src": "13760:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22252,40 +23832,42 @@ } ], "expression": { - "id": 31951, + "id": 33509, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "13746:3:27", + "referencedDeclaration": 31571, + "src": "13746:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31952, + "id": 33510, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13750:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "13746:13:27", + "referencedDeclaration": 30378, + "src": "13746:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 31957, + "id": 33515, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13746:31:27", + "src": "13746:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -22300,35 +23882,36 @@ "typeString": "bool" } ], - "id": 31950, + "id": 33508, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "13739:6:27", + "src": "13739:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31958, + "id": 33516, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13739:39:27", + "src": "13739:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31959, + "id": 33517, "nodeType": "ExpressionStatement", - "src": "13739:39:27" + "src": "13739:39:31" }, { "expression": { @@ -22338,14 +23921,14 @@ { "arguments": [ { - "id": 31969, + "id": 33527, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "13876:3:27", + "referencedDeclaration": 31571, + "src": "13876:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -22353,38 +23936,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 31968, + "id": 33526, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13868:7:27", + "src": "13868:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31967, + "id": 33525, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13868:7:27", + "src": "13868:7:31", "typeDescriptions": {} } }, - "id": 31970, + "id": 33528, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13868:12:27", + "src": "13868:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22406,40 +23990,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31962, + "id": 33520, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "13836:7:27", + "referencedDeclaration": 32093, + "src": "13836:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31963, + "id": 33521, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13844:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "13836:18:27", + "referencedDeclaration": 27505, + "src": "13836:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 31964, + "id": 33522, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13836:20:27", + "src": "13836:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22454,55 +24040,58 @@ "typeString": "address" } ], - "id": 31961, + "id": 33519, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "13829:6:27", + "referencedDeclaration": 29158, + "src": "13829:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 31965, + "id": 33523, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13829:28:27", + "src": "13829:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 31966, + "id": 33524, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "13858:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "13829:38:27", + "referencedDeclaration": 29097, + "src": "13829:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 31971, + "id": 33529, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13829:52:27", + "src": "13829:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -22514,7 +24103,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31976, + "id": 33534, "isConstant": false, "isLValue": false, "isPure": false, @@ -22524,18 +24113,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 31974, + "id": 33532, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 31972, + "id": 33530, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31887, - "src": "13883:7:27", + "referencedDeclaration": 33445, + "src": "13883:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22545,21 +24134,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 31973, + "id": 33531, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13893:2:27", + "src": "13893:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "13883:12:27", + "src": "13883:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22569,21 +24158,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 31975, + "id": 33533, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13898:3:27", + "src": "13898:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "13883:18:27", + "src": "13883:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22601,20 +24190,20 @@ "typeString": "uint256" } ], - "id": 31960, + "id": 33518, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -22627,44 +24216,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "13820:8:27", + "src": "13820:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 31977, + "id": 33535, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13820:82:27", + "src": "13820:82:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31978, + "id": 33536, "nodeType": "ExpressionStatement", - "src": "13820:82:27" + "src": "13820:82:31" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 31980, + "id": 33538, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13945:7:27", + "src": "13945:7:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -22680,35 +24270,36 @@ "typeString": "int_const 2419200" } ], - "id": 31979, + "id": 33537, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "13940:4:27", + "referencedDeclaration": 4833, + "src": "13940:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 31981, + "id": 33539, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13940:13:27", + "src": "13940:13:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31982, + "id": 33540, "nodeType": "ExpressionStatement", - "src": "13940:13:27" + "src": "13940:13:31" }, { "expression": { @@ -22718,14 +24309,14 @@ { "arguments": [ { - "id": 31988, + "id": 33546, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14034:7:27", + "referencedDeclaration": 32093, + "src": "14034:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -22733,38 +24324,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 31987, + "id": 33545, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14026:7:27", + "src": "14026:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 31986, + "id": 33544, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14026:7:27", + "src": "14026:7:31", "typeDescriptions": {} } }, - "id": 31989, + "id": 33547, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14026:16:27", + "src": "14026:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22780,40 +24372,42 @@ } ], "expression": { - "id": 31984, + "id": 33542, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14012:3:27", + "referencedDeclaration": 31571, + "src": "14012:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 31985, + "id": 33543, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14016:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "14012:13:27", + "referencedDeclaration": 30378, + "src": "14012:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 31990, + "id": 33548, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14012:31:27", + "src": "14012:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -22828,35 +24422,36 @@ "typeString": "bool" } ], - "id": 31983, + "id": 33541, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14005:6:27", + "src": "14005:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 31991, + "id": 33549, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14005:39:27", + "src": "14005:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 31992, + "id": 33550, "nodeType": "ExpressionStatement", - "src": "14005:39:27" + "src": "14005:39:31" }, { "expression": { @@ -22866,14 +24461,14 @@ { "arguments": [ { - "id": 32002, + "id": 33560, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14142:3:27", + "referencedDeclaration": 31571, + "src": "14142:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -22881,38 +24476,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32001, + "id": 33559, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14134:7:27", + "src": "14134:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32000, + "id": 33558, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14134:7:27", + "src": "14134:7:31", "typeDescriptions": {} } }, - "id": 32003, + "id": 33561, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14134:12:27", + "src": "14134:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22934,40 +24530,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 31995, + "id": 33553, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14102:7:27", + "referencedDeclaration": 32093, + "src": "14102:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 31996, + "id": 33554, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14110:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "14102:18:27", + "referencedDeclaration": 27505, + "src": "14102:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 31997, + "id": 33555, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14102:20:27", + "src": "14102:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -22982,55 +24580,58 @@ "typeString": "address" } ], - "id": 31994, + "id": 33552, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "14095:6:27", + "referencedDeclaration": 29158, + "src": "14095:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 31998, + "id": 33556, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14095:28:27", + "src": "14095:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 31999, + "id": 33557, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14124:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "14095:38:27", + "referencedDeclaration": 29097, + "src": "14095:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32004, + "id": 33562, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14095:52:27", + "src": "14095:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -23042,7 +24643,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32009, + "id": 33567, "isConstant": false, "isLValue": false, "isPure": false, @@ -23052,18 +24653,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32007, + "id": 33565, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32005, + "id": 33563, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31887, - "src": "14149:7:27", + "referencedDeclaration": 33445, + "src": "14149:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23073,21 +24674,21 @@ "operator": "*", "rightExpression": { "hexValue": "3230", - "id": 32006, + "id": 33564, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14159:2:27", + "src": "14159:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_20_by_1", "typeString": "int_const 20" }, "value": "20" }, - "src": "14149:12:27", + "src": "14149:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23097,21 +24698,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32008, + "id": 33566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14164:3:27", + "src": "14164:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "14149:18:27", + "src": "14149:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23129,20 +24730,20 @@ "typeString": "uint256" } ], - "id": 31993, + "id": 33551, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -23155,44 +24756,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "14086:8:27", + "src": "14086:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32010, + "id": 33568, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14086:82:27", + "src": "14086:82:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32011, + "id": 33569, "nodeType": "ExpressionStatement", - "src": "14086:82:27" + "src": "14086:82:31" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 32013, + "id": 33571, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14211:7:27", + "src": "14211:7:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -23208,35 +24810,36 @@ "typeString": "int_const 2419200" } ], - "id": 32012, + "id": 33570, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "14206:4:27", + "referencedDeclaration": 4833, + "src": "14206:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32014, + "id": 33572, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14206:13:27", + "src": "14206:13:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32015, + "id": 33573, "nodeType": "ExpressionStatement", - "src": "14206:13:27" + "src": "14206:13:31" }, { "expression": { @@ -23246,14 +24849,14 @@ { "arguments": [ { - "id": 32021, + "id": 33579, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14300:7:27", + "referencedDeclaration": 32093, + "src": "14300:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -23261,38 +24864,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32020, + "id": 33578, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14292:7:27", + "src": "14292:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32019, + "id": 33577, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14292:7:27", + "src": "14292:7:31", "typeDescriptions": {} } }, - "id": 32022, + "id": 33580, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14292:16:27", + "src": "14292:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23308,40 +24912,42 @@ } ], "expression": { - "id": 32017, + "id": 33575, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14278:3:27", + "referencedDeclaration": 31571, + "src": "14278:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32018, + "id": 33576, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14282:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "14278:13:27", + "referencedDeclaration": 30378, + "src": "14278:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32023, + "id": 33581, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14278:31:27", + "src": "14278:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23356,35 +24962,36 @@ "typeString": "bool" } ], - "id": 32016, + "id": 33574, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14271:6:27", + "src": "14271:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32024, + "id": 33582, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14271:39:27", + "src": "14271:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32025, + "id": 33583, "nodeType": "ExpressionStatement", - "src": "14271:39:27" + "src": "14271:39:31" }, { "expression": { @@ -23394,14 +25001,14 @@ { "arguments": [ { - "id": 32035, + "id": 33593, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14408:3:27", + "referencedDeclaration": 31571, + "src": "14408:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -23409,38 +25016,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32034, + "id": 33592, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14400:7:27", + "src": "14400:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32033, + "id": 33591, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14400:7:27", + "src": "14400:7:31", "typeDescriptions": {} } }, - "id": 32036, + "id": 33594, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14400:12:27", + "src": "14400:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23462,40 +25070,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32028, + "id": 33586, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14368:7:27", + "referencedDeclaration": 32093, + "src": "14368:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32029, + "id": 33587, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14376:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "14368:18:27", + "referencedDeclaration": 27505, + "src": "14368:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32030, + "id": 33588, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14368:20:27", + "src": "14368:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23510,55 +25120,58 @@ "typeString": "address" } ], - "id": 32027, + "id": 33585, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "14361:6:27", + "referencedDeclaration": 29158, + "src": "14361:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32031, + "id": 33589, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14361:28:27", + "src": "14361:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32032, + "id": 33590, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14390:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "14361:38:27", + "referencedDeclaration": 29097, + "src": "14361:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32037, + "id": 33595, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14361:52:27", + "src": "14361:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -23570,7 +25183,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32042, + "id": 33600, "isConstant": false, "isLValue": false, "isPure": false, @@ -23580,18 +25193,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32040, + "id": 33598, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32038, + "id": 33596, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31887, - "src": "14415:7:27", + "referencedDeclaration": 33445, + "src": "14415:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23601,21 +25214,21 @@ "operator": "*", "rightExpression": { "hexValue": "3238", - "id": 32039, + "id": 33597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14425:2:27", + "src": "14425:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_28_by_1", "typeString": "int_const 28" }, "value": "28" }, - "src": "14415:12:27", + "src": "14415:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23625,21 +25238,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32041, + "id": 33599, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14430:3:27", + "src": "14430:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "14415:18:27", + "src": "14415:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23657,20 +25270,20 @@ "typeString": "uint256" } ], - "id": 32026, + "id": 33584, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -23683,44 +25296,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "14352:8:27", + "src": "14352:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32043, + "id": 33601, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14352:82:27", + "src": "14352:82:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32044, + "id": 33602, "nodeType": "ExpressionStatement", - "src": "14352:82:27" + "src": "14352:82:31" }, { "expression": { "arguments": [ { "hexValue": "3132", - "id": 32046, + "id": 33604, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14478:8:27", + "src": "14478:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_7257600_by_1", @@ -23736,35 +25350,36 @@ "typeString": "int_const 7257600" } ], - "id": 32045, + "id": 33603, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "14473:4:27", + "referencedDeclaration": 4833, + "src": "14473:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32047, + "id": 33605, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14473:14:27", + "src": "14473:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32048, + "id": 33606, "nodeType": "ExpressionStatement", - "src": "14473:14:27" + "src": "14473:14:31" }, { "expression": { @@ -23774,14 +25389,14 @@ { "arguments": [ { - "id": 32054, + "id": 33612, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14568:7:27", + "referencedDeclaration": 32093, + "src": "14568:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -23789,38 +25404,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32053, + "id": 33611, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14560:7:27", + "src": "14560:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32052, + "id": 33610, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14560:7:27", + "src": "14560:7:31", "typeDescriptions": {} } }, - "id": 32055, + "id": 33613, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14560:16:27", + "src": "14560:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23836,40 +25452,42 @@ } ], "expression": { - "id": 32050, + "id": 33608, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14546:3:27", + "referencedDeclaration": 31571, + "src": "14546:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32051, + "id": 33609, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14550:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "14546:13:27", + "referencedDeclaration": 30378, + "src": "14546:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32056, + "id": 33614, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14546:31:27", + "src": "14546:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23884,35 +25502,36 @@ "typeString": "bool" } ], - "id": 32049, + "id": 33607, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14539:6:27", + "src": "14539:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32057, + "id": 33615, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14539:39:27", + "src": "14539:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32058, + "id": 33616, "nodeType": "ExpressionStatement", - "src": "14539:39:27" + "src": "14539:39:31" }, { "expression": { @@ -23922,14 +25541,14 @@ { "arguments": [ { - "id": 32068, + "id": 33626, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14676:3:27", + "referencedDeclaration": 31571, + "src": "14676:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -23937,38 +25556,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32067, + "id": 33625, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14668:7:27", + "src": "14668:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32066, + "id": 33624, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14668:7:27", + "src": "14668:7:31", "typeDescriptions": {} } }, - "id": 32069, + "id": 33627, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14668:12:27", + "src": "14668:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23990,40 +25610,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32061, + "id": 33619, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14636:7:27", + "referencedDeclaration": 32093, + "src": "14636:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32062, + "id": 33620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14644:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "14636:18:27", + "referencedDeclaration": 27505, + "src": "14636:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32063, + "id": 33621, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14636:20:27", + "src": "14636:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24038,55 +25660,58 @@ "typeString": "address" } ], - "id": 32060, + "id": 33618, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "14629:6:27", + "referencedDeclaration": 29158, + "src": "14629:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32064, + "id": 33622, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14629:28:27", + "src": "14629:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32065, + "id": 33623, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14658:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "14629:38:27", + "referencedDeclaration": 29097, + "src": "14629:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32070, + "id": 33628, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14629:52:27", + "src": "14629:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -24098,7 +25723,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32075, + "id": 33633, "isConstant": false, "isLValue": false, "isPure": false, @@ -24108,18 +25733,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32073, + "id": 33631, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32071, + "id": 33629, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31887, - "src": "14683:7:27", + "referencedDeclaration": 33445, + "src": "14683:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24129,21 +25754,21 @@ "operator": "*", "rightExpression": { "hexValue": "3532", - "id": 32072, + "id": 33630, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14693:2:27", + "src": "14693:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_52_by_1", "typeString": "int_const 52" }, "value": "52" }, - "src": "14683:12:27", + "src": "14683:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24153,21 +25778,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32074, + "id": 33632, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14698:3:27", + "src": "14698:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "14683:18:27", + "src": "14683:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24185,20 +25810,20 @@ "typeString": "uint256" } ], - "id": 32059, + "id": 33617, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -24211,44 +25836,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "14620:8:27", + "src": "14620:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32076, + "id": 33634, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14620:82:27", + "src": "14620:82:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32077, + "id": 33635, "nodeType": "ExpressionStatement", - "src": "14620:82:27" + "src": "14620:82:31" }, { "expression": { "arguments": [ { "hexValue": "3234", - "id": 32079, + "id": 33637, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14746:8:27", + "src": "14746:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_14515200_by_1", @@ -24264,35 +25890,36 @@ "typeString": "int_const 14515200" } ], - "id": 32078, + "id": 33636, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "14741:4:27", + "referencedDeclaration": 4833, + "src": "14741:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32080, + "id": 33638, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14741:14:27", + "src": "14741:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32081, + "id": 33639, "nodeType": "ExpressionStatement", - "src": "14741:14:27" + "src": "14741:14:31" }, { "expression": { @@ -24302,14 +25929,14 @@ { "arguments": [ { - "id": 32087, + "id": 33645, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14836:7:27", + "referencedDeclaration": 32093, + "src": "14836:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -24317,38 +25944,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32086, + "id": 33644, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14828:7:27", + "src": "14828:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32085, + "id": 33643, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14828:7:27", + "src": "14828:7:31", "typeDescriptions": {} } }, - "id": 32088, + "id": 33646, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14828:16:27", + "src": "14828:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24364,40 +25992,42 @@ } ], "expression": { - "id": 32083, + "id": 33641, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14814:3:27", + "referencedDeclaration": 31571, + "src": "14814:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32084, + "id": 33642, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14818:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "14814:13:27", + "referencedDeclaration": 30378, + "src": "14814:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32089, + "id": 33647, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14814:31:27", + "src": "14814:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24412,35 +26042,36 @@ "typeString": "bool" } ], - "id": 32082, + "id": 33640, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "14807:6:27", + "src": "14807:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32090, + "id": 33648, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14807:39:27", + "src": "14807:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32091, + "id": 33649, "nodeType": "ExpressionStatement", - "src": "14807:39:27" + "src": "14807:39:31" }, { "expression": { @@ -24450,14 +26081,14 @@ { "arguments": [ { - "id": 32101, + "id": 33659, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "14944:3:27", + "referencedDeclaration": 31571, + "src": "14944:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -24465,38 +26096,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32100, + "id": 33658, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14936:7:27", + "src": "14936:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32099, + "id": 33657, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14936:7:27", + "src": "14936:7:31", "typeDescriptions": {} } }, - "id": 32102, + "id": 33660, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14936:12:27", + "src": "14936:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24518,40 +26150,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32094, + "id": 33652, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "14904:7:27", + "referencedDeclaration": 32093, + "src": "14904:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32095, + "id": 33653, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14912:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "14904:18:27", + "referencedDeclaration": 27505, + "src": "14904:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32096, + "id": 33654, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14904:20:27", + "src": "14904:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24566,55 +26200,58 @@ "typeString": "address" } ], - "id": 32093, + "id": 33651, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "14897:6:27", + "referencedDeclaration": 29158, + "src": "14897:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32097, + "id": 33655, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14897:28:27", + "src": "14897:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32098, + "id": 33656, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14926:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "14897:38:27", + "referencedDeclaration": 29097, + "src": "14897:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32103, + "id": 33661, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14897:52:27", + "src": "14897:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -24622,12 +26259,12 @@ } }, { - "id": 32104, + "id": 33662, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 31887, - "src": "14951:7:27", + "referencedDeclaration": 33445, + "src": "14951:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24645,20 +26282,20 @@ "typeString": "uint256" } ], - "id": 32092, + "id": 33650, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -24671,30 +26308,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "14888:8:27", + "src": "14888:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32105, + "id": 33663, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14888:71:27", + "src": "14888:71:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32106, + "id": 33664, "nodeType": "ExpressionStatement", - "src": "14888:71:27" + "src": "14888:71:31" }, { "expression": { @@ -24702,56 +26340,58 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32107, + "id": 33665, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "14972:2:27", + "src": "14972:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 32109, + "id": 33667, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "14975:9:31", "memberName": "stopPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9060, - "src": "14972:12:27", + "referencedDeclaration": 9097, + "src": "14972:12:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 32110, + "id": 33668, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14972:14:27", + "src": "14972:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32111, + "id": 33669, "nodeType": "ExpressionStatement", - "src": "14972:14:27" + "src": "14972:14:31" } ] }, "documentation": { - "id": 31883, + "id": 33441, "nodeType": "StructuredDocumentation", - "src": "13047:39:27", + "src": "13047:39:31", "text": "@dev Verifies claim() state changes" }, "functionSelector": "63cbd9c1", @@ -24759,32 +26399,34 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_state_changes", - "nameLocation": "13101:32:27", + "nameLocation": "13101:32:31", "parameters": { - "id": 31884, + "id": 33442, "nodeType": "ParameterList", "parameters": [], - "src": "13133:2:27" + "src": "13133:2:31" }, "returnParameters": { - "id": 31885, + "id": 33443, "nodeType": "ParameterList", "parameters": [], - "src": "13143:0:27" + "src": "13143:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 32312, + "id": 33870, "nodeType": "FunctionDefinition", - "src": "15044:2052:27", + "src": "15044:2052:31", + "nodes": [], "body": { - "id": 32311, + "id": 33869, "nodeType": "Block", - "src": "15092:2004:27", + "src": "15092:2004:31", + "nodes": [], "statements": [ { "expression": { @@ -24794,40 +26436,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32118, + "id": 33676, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15167:7:27", + "referencedDeclaration": 32093, + "src": "15167:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32119, + "id": 33677, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15175:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "15167:18:27", + "referencedDeclaration": 27505, + "src": "15167:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32120, + "id": 33678, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15167:20:27", + "src": "15167:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24837,14 +26481,14 @@ { "arguments": [ { - "id": 32123, + "id": 33681, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15197:7:27", + "referencedDeclaration": 32093, + "src": "15197:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -24852,38 +26496,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32122, + "id": 33680, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15189:7:27", + "src": "15189:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32121, + "id": 33679, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15189:7:27", + "src": "15189:7:31", "typeDescriptions": {} } }, - "id": 32124, + "id": 33682, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15189:16:27", + "src": "15189:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24892,14 +26537,14 @@ }, { "hexValue": "355f3030305f303030", - "id": 32125, + "id": 33683, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15207:15:27", + "src": "15207:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_5000000000000000000000000_by_1", @@ -24923,39 +26568,40 @@ "typeString": "int_const 5000000000000000000000000" } ], - "id": 32117, + "id": 33675, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ - 5023, - 5040, - 5143 + 5060, + 5077, + 5180 ], - "referencedDeclaration": 5040, - "src": "15162:4:27", + "referencedDeclaration": 5077, + "src": "15162:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 32126, + "id": 33684, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15162:61:27", + "src": "15162:61:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32127, + "id": 33685, "nodeType": "ExpressionStatement", - "src": "15162:61:27" + "src": "15162:61:31" }, { "expression": { @@ -24965,14 +26611,14 @@ { "arguments": [ { - "id": 32133, + "id": 33691, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15299:7:27", + "referencedDeclaration": 32093, + "src": "15299:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -24980,38 +26626,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32132, + "id": 33690, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15291:7:27", + "src": "15291:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32131, + "id": 33689, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15291:7:27", + "src": "15291:7:31", "typeDescriptions": {} } }, - "id": 32134, + "id": 33692, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15291:16:27", + "src": "15291:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25027,40 +26674,42 @@ } ], "expression": { - "id": 32129, + "id": 33687, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "15269:3:27", + "referencedDeclaration": 31568, + "src": "15269:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32130, + "id": 33688, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15273:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "15269:21:27", + "referencedDeclaration": 30232, + "src": "15269:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32135, + "id": 33693, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15269:39:27", + "src": "15269:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25075,35 +26724,36 @@ "typeString": "bool" } ], - "id": 32128, + "id": 33686, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15262:6:27", + "src": "15262:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32136, + "id": 33694, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15262:47:27", + "src": "15262:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32137, + "id": 33695, "nodeType": "ExpressionStatement", - "src": "15262:47:27" + "src": "15262:47:31" }, { "expression": { @@ -25113,14 +26763,14 @@ { "arguments": [ { - "id": 32143, + "id": 33701, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15446:7:27", + "referencedDeclaration": 32093, + "src": "15446:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -25128,38 +26778,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32142, + "id": 33700, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15438:7:27", + "src": "15438:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32141, + "id": 33699, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15438:7:27", + "src": "15438:7:31", "typeDescriptions": {} } }, - "id": 32144, + "id": 33702, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15438:16:27", + "src": "15438:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25169,14 +26820,14 @@ { "arguments": [ { - "id": 32147, + "id": 33705, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "15464:3:27", + "referencedDeclaration": 31571, + "src": "15464:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -25184,38 +26835,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32146, + "id": 33704, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15456:7:27", + "src": "15456:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32145, + "id": 33703, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15456:7:27", + "src": "15456:7:31", "typeDescriptions": {} } }, - "id": 32148, + "id": 33706, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15456:12:27", + "src": "15456:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25224,14 +26876,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 32149, + "id": 33707, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15470:15:27", + "src": "15470:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -25256,40 +26908,42 @@ } ], "expression": { - "id": 32139, + "id": 33697, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "15418:3:27", + "referencedDeclaration": 31568, + "src": "15418:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32140, + "id": 33698, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15422:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "15418:19:27", + "referencedDeclaration": 30294, + "src": "15418:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 32150, + "id": 33708, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15418:68:27", + "src": "15418:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25304,35 +26958,36 @@ "typeString": "bool" } ], - "id": 32138, + "id": 33696, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15411:6:27", + "src": "15411:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32151, + "id": 33709, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15411:76:27", + "src": "15411:76:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32152, + "id": 33710, "nodeType": "ExpressionStatement", - "src": "15411:76:27" + "src": "15411:76:31" }, { "expression": { @@ -25342,14 +26997,14 @@ { "arguments": [ { - "id": 32158, + "id": 33716, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15567:7:27", + "referencedDeclaration": 32093, + "src": "15567:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -25357,38 +27012,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32157, + "id": 33715, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15559:7:27", + "src": "15559:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32156, + "id": 33714, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15559:7:27", + "src": "15559:7:31", "typeDescriptions": {} } }, - "id": 32159, + "id": 33717, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15559:16:27", + "src": "15559:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25398,14 +27054,14 @@ { "arguments": [ { - "id": 32162, + "id": 33720, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "15585:3:27", + "referencedDeclaration": 31565, + "src": "15585:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -25413,38 +27069,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32161, + "id": 33719, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15577:7:27", + "src": "15577:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32160, + "id": 33718, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15577:7:27", + "src": "15577:7:31", "typeDescriptions": {} } }, - "id": 32163, + "id": 33721, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15577:12:27", + "src": "15577:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25453,14 +27110,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 32164, + "id": 33722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15591:15:27", + "src": "15591:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -25485,40 +27142,42 @@ } ], "expression": { - "id": 32154, + "id": 33712, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "15539:3:27", + "referencedDeclaration": 31568, + "src": "15539:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32155, + "id": 33713, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15543:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "15539:19:27", + "referencedDeclaration": 30294, + "src": "15539:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 32165, + "id": 33723, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15539:68:27", + "src": "15539:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25533,35 +27192,36 @@ "typeString": "bool" } ], - "id": 32153, + "id": 33711, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15532:6:27", + "src": "15532:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32166, + "id": 33724, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15532:76:27", + "src": "15532:76:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32167, + "id": 33725, "nodeType": "ExpressionStatement", - "src": "15532:76:27" + "src": "15532:76:31" }, { "expression": { @@ -25571,14 +27231,14 @@ { "arguments": [ { - "id": 32173, + "id": 33731, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15688:7:27", + "referencedDeclaration": 32093, + "src": "15688:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -25586,38 +27246,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32172, + "id": 33730, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15680:7:27", + "src": "15680:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32171, + "id": 33729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15680:7:27", + "src": "15680:7:31", "typeDescriptions": {} } }, - "id": 32174, + "id": 33732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15680:16:27", + "src": "15680:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25627,14 +27288,14 @@ { "arguments": [ { - "id": 32177, + "id": 33735, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "15706:3:27", + "referencedDeclaration": 31568, + "src": "15706:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -25642,38 +27303,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32176, + "id": 33734, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15698:7:27", + "src": "15698:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32175, + "id": 33733, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15698:7:27", + "src": "15698:7:31", "typeDescriptions": {} } }, - "id": 32178, + "id": 33736, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15698:12:27", + "src": "15698:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25682,14 +27344,14 @@ }, { "hexValue": "315f3030305f303030", - "id": 32179, + "id": 33737, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15712:15:27", + "src": "15712:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -25714,40 +27376,42 @@ } ], "expression": { - "id": 32169, + "id": 33727, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "15660:3:27", + "referencedDeclaration": 31568, + "src": "15660:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32170, + "id": 33728, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15664:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "15660:19:27", + "referencedDeclaration": 30294, + "src": "15660:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 32180, + "id": 33738, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15660:68:27", + "src": "15660:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25762,49 +27426,50 @@ "typeString": "bool" } ], - "id": 32168, + "id": 33726, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15653:6:27", + "src": "15653:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32181, + "id": 33739, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15653:76:27", + "src": "15653:76:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32182, + "id": 33740, "nodeType": "ExpressionStatement", - "src": "15653:76:27" + "src": "15653:76:31" }, { "expression": { "arguments": [ { "hexValue": "32", - "id": 32184, + "id": 33742, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15809:7:27", + "src": "15809:7:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_1209600_by_1", @@ -25820,35 +27485,36 @@ "typeString": "int_const 1209600" } ], - "id": 32183, + "id": 33741, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "15804:4:27", + "referencedDeclaration": 4833, + "src": "15804:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32185, + "id": 33743, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15804:13:27", + "src": "15804:13:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32186, + "id": 33744, "nodeType": "ExpressionStatement", - "src": "15804:13:27" + "src": "15804:13:31" }, { "expression": { @@ -25858,14 +27524,14 @@ { "arguments": [ { - "id": 32192, + "id": 33750, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15857:7:27", + "referencedDeclaration": 32093, + "src": "15857:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -25873,38 +27539,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32191, + "id": 33749, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15849:7:27", + "src": "15849:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32190, + "id": 33748, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15849:7:27", + "src": "15849:7:31", "typeDescriptions": {} } }, - "id": 32193, + "id": 33751, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15849:16:27", + "src": "15849:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -25920,40 +27587,42 @@ } ], "expression": { - "id": 32188, + "id": 33746, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "15835:3:27", + "referencedDeclaration": 31571, + "src": "15835:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32189, + "id": 33747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15839:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "15835:13:27", + "referencedDeclaration": 30378, + "src": "15835:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32194, + "id": 33752, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15835:31:27", + "src": "15835:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25968,35 +27637,36 @@ "typeString": "bool" } ], - "id": 32187, + "id": 33745, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "15828:6:27", + "src": "15828:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32195, + "id": 33753, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15828:39:27", + "src": "15828:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32196, + "id": 33754, "nodeType": "ExpressionStatement", - "src": "15828:39:27" + "src": "15828:39:31" }, { "expression": { @@ -26006,14 +27676,14 @@ { "arguments": [ { - "id": 32206, + "id": 33764, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "16000:3:27", + "referencedDeclaration": 31571, + "src": "16000:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -26021,38 +27691,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32205, + "id": 33763, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15992:7:27", + "src": "15992:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32204, + "id": 33762, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15992:7:27", + "src": "15992:7:31", "typeDescriptions": {} } }, - "id": 32207, + "id": 33765, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15992:12:27", + "src": "15992:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26074,40 +27745,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32199, + "id": 33757, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "15960:7:27", + "referencedDeclaration": 32093, + "src": "15960:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32200, + "id": 33758, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15968:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "15960:18:27", + "referencedDeclaration": 27505, + "src": "15960:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32201, + "id": 33759, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15960:20:27", + "src": "15960:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26122,55 +27795,58 @@ "typeString": "address" } ], - "id": 32198, + "id": 33756, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "15953:6:27", + "referencedDeclaration": 29158, + "src": "15953:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32202, + "id": 33760, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15953:28:27", + "src": "15953:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32203, + "id": 33761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15982:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "15953:38:27", + "referencedDeclaration": 29097, + "src": "15953:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32208, + "id": 33766, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15953:52:27", + "src": "15953:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -26184,7 +27860,7 @@ "typeIdentifier": "t_rational_120000000000000000000000_by_1", "typeString": "int_const 120000000000000000000000" }, - "id": 32213, + "id": 33771, "isConstant": false, "isLValue": false, "isPure": true, @@ -26194,21 +27870,21 @@ "typeIdentifier": "t_rational_12000000000000000000000000_by_1", "typeString": "int_const 12000000000000000000000000" }, - "id": 32211, + "id": 33769, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "315f3030305f303030", - "id": 32209, + "id": 33767, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16008:15:27", + "src": "16008:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -26220,21 +27896,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 32210, + "id": 33768, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16026:2:27", + "src": "16026:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "16008:20:27", + "src": "16008:20:31", "typeDescriptions": { "typeIdentifier": "t_rational_12000000000000000000000000_by_1", "typeString": "int_const 12000000000000000000000000" @@ -26244,35 +27920,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32212, + "id": 33770, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16031:3:27", + "src": "16031:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "16008:26:27", + "src": "16008:26:31", "typeDescriptions": { "typeIdentifier": "t_rational_120000000000000000000000_by_1", "typeString": "int_const 120000000000000000000000" } } ], - "id": 32214, + "id": 33772, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "16007:28:27", + "src": "16007:28:31", "typeDescriptions": { "typeIdentifier": "t_rational_120000000000000000000000_by_1", "typeString": "int_const 120000000000000000000000" @@ -26290,20 +27966,20 @@ "typeString": "int_const 120000000000000000000000" } ], - "id": 32197, + "id": 33755, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -26316,44 +27992,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "15944:8:27", + "src": "15944:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32215, + "id": 33773, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15944:93:27", + "src": "15944:93:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32216, + "id": 33774, "nodeType": "ExpressionStatement", - "src": "15944:93:27" + "src": "15944:93:31" }, { "expression": { "arguments": [ { "hexValue": "3232", - "id": 32218, + "id": 33776, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16107:8:27", + "src": "16107:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_13305600_by_1", @@ -26369,35 +28046,36 @@ "typeString": "int_const 13305600" } ], - "id": 32217, + "id": 33775, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "16102:4:27", + "referencedDeclaration": 4833, + "src": "16102:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32219, + "id": 33777, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16102:14:27", + "src": "16102:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32220, + "id": 33778, "nodeType": "ExpressionStatement", - "src": "16102:14:27" + "src": "16102:14:31" }, { "expression": { @@ -26407,14 +28085,14 @@ { "arguments": [ { - "id": 32226, + "id": 33784, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "16210:7:27", + "referencedDeclaration": 32093, + "src": "16210:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -26422,38 +28100,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32225, + "id": 33783, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16202:7:27", + "src": "16202:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32224, + "id": 33782, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16202:7:27", + "src": "16202:7:31", "typeDescriptions": {} } }, - "id": 32227, + "id": 33785, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16202:16:27", + "src": "16202:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26469,40 +28148,42 @@ } ], "expression": { - "id": 32222, + "id": 33780, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "16188:3:27", + "referencedDeclaration": 31565, + "src": "16188:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32223, + "id": 33781, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16192:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "16188:13:27", + "referencedDeclaration": 30378, + "src": "16188:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32228, + "id": 33786, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16188:31:27", + "src": "16188:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -26517,35 +28198,36 @@ "typeString": "bool" } ], - "id": 32221, + "id": 33779, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "16181:6:27", + "src": "16181:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32229, + "id": 33787, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16181:39:27", + "src": "16181:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32230, + "id": 33788, "nodeType": "ExpressionStatement", - "src": "16181:39:27" + "src": "16181:39:31" }, { "expression": { @@ -26555,14 +28237,14 @@ { "arguments": [ { - "id": 32240, + "id": 33798, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "16353:3:27", + "referencedDeclaration": 31565, + "src": "16353:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -26570,38 +28252,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32239, + "id": 33797, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16345:7:27", + "src": "16345:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32238, + "id": 33796, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16345:7:27", + "src": "16345:7:31", "typeDescriptions": {} } }, - "id": 32241, + "id": 33799, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16345:12:27", + "src": "16345:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26623,40 +28306,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32233, + "id": 33791, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "16313:7:27", + "referencedDeclaration": 32093, + "src": "16313:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32234, + "id": 33792, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16321:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "16313:18:27", + "referencedDeclaration": 27505, + "src": "16313:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32235, + "id": 33793, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16313:20:27", + "src": "16313:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -26671,55 +28356,58 @@ "typeString": "address" } ], - "id": 32232, + "id": 33790, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "16306:6:27", + "referencedDeclaration": 29158, + "src": "16306:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32236, + "id": 33794, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16306:28:27", + "src": "16306:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32237, + "id": 33795, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16335:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "16306:38:27", + "referencedDeclaration": 29097, + "src": "16306:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32242, + "id": 33800, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16306:52:27", + "src": "16306:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -26733,7 +28421,7 @@ "typeIdentifier": "t_rational_600000000000000000000000_by_1", "typeString": "int_const 600000000000000000000000" }, - "id": 32247, + "id": 33805, "isConstant": false, "isLValue": false, "isPure": true, @@ -26743,21 +28431,21 @@ "typeIdentifier": "t_rational_60000000000000000000000000_by_1", "typeString": "int_const 60000000000000000000000000" }, - "id": 32245, + "id": 33803, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "315f3030305f303030", - "id": 32243, + "id": 33801, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16361:15:27", + "src": "16361:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -26769,21 +28457,21 @@ "operator": "*", "rightExpression": { "hexValue": "3630", - "id": 32244, + "id": 33802, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16379:2:27", + "src": "16379:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_60_by_1", "typeString": "int_const 60" }, "value": "60" }, - "src": "16361:20:27", + "src": "16361:20:31", "typeDescriptions": { "typeIdentifier": "t_rational_60000000000000000000000000_by_1", "typeString": "int_const 60000000000000000000000000" @@ -26793,35 +28481,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32246, + "id": 33804, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16384:3:27", + "src": "16384:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "16361:26:27", + "src": "16361:26:31", "typeDescriptions": { "typeIdentifier": "t_rational_600000000000000000000000_by_1", "typeString": "int_const 600000000000000000000000" } } ], - "id": 32248, + "id": 33806, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "16360:28:27", + "src": "16360:28:31", "typeDescriptions": { "typeIdentifier": "t_rational_600000000000000000000000_by_1", "typeString": "int_const 600000000000000000000000" @@ -26839,20 +28527,20 @@ "typeString": "int_const 600000000000000000000000" } ], - "id": 32231, + "id": 33789, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -26865,44 +28553,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "16297:8:27", + "src": "16297:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32249, + "id": 33807, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16297:92:27", + "src": "16297:92:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32250, + "id": 33808, "nodeType": "ExpressionStatement", - "src": "16297:92:27" + "src": "16297:92:31" }, { "expression": { "arguments": [ { "hexValue": "3230", - "id": 32252, + "id": 33810, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16460:8:27", + "src": "16460:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_12096000_by_1", @@ -26918,35 +28607,36 @@ "typeString": "int_const 12096000" } ], - "id": 32251, + "id": 33809, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "16455:4:27", + "referencedDeclaration": 4833, + "src": "16455:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32253, + "id": 33811, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16455:14:27", + "src": "16455:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32254, + "id": 33812, "nodeType": "ExpressionStatement", - "src": "16455:14:27" + "src": "16455:14:31" }, { "expression": { @@ -26956,14 +28646,14 @@ { "arguments": [ { - "id": 32260, + "id": 33818, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "16589:7:27", + "referencedDeclaration": 32093, + "src": "16589:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -26971,38 +28661,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32259, + "id": 33817, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16581:7:27", + "src": "16581:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32258, + "id": 33816, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16581:7:27", + "src": "16581:7:31", "typeDescriptions": {} } }, - "id": 32261, + "id": 33819, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16581:16:27", + "src": "16581:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27018,40 +28709,42 @@ } ], "expression": { - "id": 32256, + "id": 33814, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "16567:3:27", + "referencedDeclaration": 31565, + "src": "16567:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32257, + "id": 33815, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16571:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "16567:13:27", + "referencedDeclaration": 30378, + "src": "16567:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32262, + "id": 33820, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16567:31:27", + "src": "16567:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -27066,35 +28759,36 @@ "typeString": "bool" } ], - "id": 32255, + "id": 33813, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "16560:6:27", + "src": "16560:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32263, + "id": 33821, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16560:39:27", + "src": "16560:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32264, + "id": 33822, "nodeType": "ExpressionStatement", - "src": "16560:39:27" + "src": "16560:39:31" }, { "expression": { @@ -27104,14 +28798,14 @@ { "arguments": [ { - "id": 32274, + "id": 33832, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "16721:3:27", + "referencedDeclaration": 31565, + "src": "16721:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -27119,38 +28813,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32273, + "id": 33831, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16713:7:27", + "src": "16713:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32272, + "id": 33830, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16713:7:27", + "src": "16713:7:31", "typeDescriptions": {} } }, - "id": 32275, + "id": 33833, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16713:12:27", + "src": "16713:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27172,40 +28867,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32267, + "id": 33825, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "16681:7:27", + "referencedDeclaration": 32093, + "src": "16681:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32268, + "id": 33826, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16689:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "16681:18:27", + "referencedDeclaration": 27505, + "src": "16681:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32269, + "id": 33827, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16681:20:27", + "src": "16681:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27220,55 +28917,58 @@ "typeString": "address" } ], - "id": 32266, + "id": 33824, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "16674:6:27", + "referencedDeclaration": 29158, + "src": "16674:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32270, + "id": 33828, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16674:28:27", + "src": "16674:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32271, + "id": 33829, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16703:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "16674:38:27", + "referencedDeclaration": 29097, + "src": "16674:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32276, + "id": 33834, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16674:52:27", + "src": "16674:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -27279,14 +28979,14 @@ "components": [ { "hexValue": "315f3030305f303030", - "id": 32277, + "id": 33835, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16729:15:27", + "src": "16729:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -27295,14 +28995,14 @@ "value": "1_000_000" } ], - "id": 32278, + "id": 33836, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "16728:17:27", + "src": "16728:17:31", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000" @@ -27320,20 +29020,20 @@ "typeString": "int_const 1000000000000000000000000" } ], - "id": 32265, + "id": 33823, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -27346,44 +29046,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "16665:8:27", + "src": "16665:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32279, + "id": 33837, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16665:81:27", + "src": "16665:81:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32280, + "id": 33838, "nodeType": "ExpressionStatement", - "src": "16665:81:27" + "src": "16665:81:31" }, { "expression": { "arguments": [ { "hexValue": "3532", - "id": 32282, + "id": 33840, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16796:8:27", + "src": "16796:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_31449600_by_1", @@ -27399,35 +29100,36 @@ "typeString": "int_const 31449600" } ], - "id": 32281, + "id": 33839, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "16791:4:27", + "referencedDeclaration": 4833, + "src": "16791:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32283, + "id": 33841, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16791:14:27", + "src": "16791:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32284, + "id": 33842, "nodeType": "ExpressionStatement", - "src": "16791:14:27" + "src": "16791:14:31" }, { "expression": { @@ -27437,14 +29139,14 @@ { "arguments": [ { - "id": 32290, + "id": 33848, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "16921:7:27", + "referencedDeclaration": 32093, + "src": "16921:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -27452,38 +29154,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32289, + "id": 33847, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "16913:7:27", + "src": "16913:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32288, + "id": 33846, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16913:7:27", + "src": "16913:7:31", "typeDescriptions": {} } }, - "id": 32291, + "id": 33849, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16913:16:27", + "src": "16913:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27499,40 +29202,42 @@ } ], "expression": { - "id": 32286, + "id": 33844, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "16899:3:27", + "referencedDeclaration": 31568, + "src": "16899:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32287, + "id": 33845, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "16903:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "16899:13:27", + "referencedDeclaration": 30378, + "src": "16899:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32292, + "id": 33850, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16899:31:27", + "src": "16899:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -27547,35 +29252,36 @@ "typeString": "bool" } ], - "id": 32285, + "id": 33843, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "16892:6:27", + "src": "16892:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32293, + "id": 33851, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16892:39:27", + "src": "16892:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32294, + "id": 33852, "nodeType": "ExpressionStatement", - "src": "16892:39:27" + "src": "16892:39:31" }, { "expression": { @@ -27585,14 +29291,14 @@ { "arguments": [ { - "id": 32304, + "id": 33862, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "17061:3:27", + "referencedDeclaration": 31568, + "src": "17061:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -27600,38 +29306,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32303, + "id": 33861, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17053:7:27", + "src": "17053:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32302, + "id": 33860, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17053:7:27", + "src": "17053:7:31", "typeDescriptions": {} } }, - "id": 32305, + "id": 33863, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17053:12:27", + "src": "17053:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27653,40 +29360,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32297, + "id": 33855, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17021:7:27", + "referencedDeclaration": 32093, + "src": "17021:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32298, + "id": 33856, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17029:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "17021:18:27", + "referencedDeclaration": 27505, + "src": "17021:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32299, + "id": 33857, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17021:20:27", + "src": "17021:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -27701,55 +29410,58 @@ "typeString": "address" } ], - "id": 32296, + "id": 33854, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "17014:6:27", + "referencedDeclaration": 29158, + "src": "17014:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32300, + "id": 33858, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17014:28:27", + "src": "17014:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32301, + "id": 33859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17043:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "17014:38:27", + "referencedDeclaration": 29097, + "src": "17014:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32306, + "id": 33864, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17014:52:27", + "src": "17014:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -27760,14 +29472,14 @@ "components": [ { "hexValue": "315f3030305f303030", - "id": 32307, + "id": 33865, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17069:15:27", + "src": "17069:15:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", @@ -27776,14 +29488,14 @@ "value": "1_000_000" } ], - "id": 32308, + "id": 33866, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "17068:17:27", + "src": "17068:17:31", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000000000_by_1", "typeString": "int_const 1000000000000000000000000" @@ -27801,20 +29513,20 @@ "typeString": "int_const 1000000000000000000000000" } ], - "id": 32295, + "id": 33853, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -27827,37 +29539,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "17005:8:27", + "src": "17005:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32309, + "id": 33867, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17005:81:27", + "src": "17005:81:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32310, + "id": 33868, "nodeType": "ExpressionStatement", - "src": "17005:81:27" + "src": "17005:81:31" } ] }, "documentation": { - "id": 32114, + "id": 33672, "nodeType": "StructuredDocumentation", - "src": "15002:36:27", + "src": "15002:36:31", "text": "@dev Verifies claim() edge cases" }, "functionSelector": "c947e25d", @@ -27865,47 +29578,49 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_edge_cases", - "nameLocation": "15053:29:27", + "nameLocation": "15053:29:31", "parameters": { - "id": 32115, + "id": 33673, "nodeType": "ParameterList", "parameters": [], - "src": "15082:2:27" + "src": "15082:2:31" }, "returnParameters": { - "id": 32116, + "id": 33674, "nodeType": "ParameterList", "parameters": [], - "src": "15092:0:27" + "src": "15092:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 32553, + "id": 34111, "nodeType": "FunctionDefinition", - "src": "17163:1984:27", + "src": "17163:1984:31", + "nodes": [], "body": { - "id": 32552, + "id": 34110, "nodeType": "Block", - "src": "17224:1923:27", + "src": "17224:1923:31", + "nodes": [], "statements": [ { "expression": { - "id": 32324, + "id": 33882, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 32318, + "id": 33876, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "17235:7:27", + "referencedDeclaration": 33873, + "src": "17235:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27916,12 +29631,12 @@ "rightHandSide": { "arguments": [ { - "id": 32320, + "id": 33878, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "17251:7:27", + "referencedDeclaration": 33873, + "src": "17251:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27929,14 +29644,14 @@ }, { "hexValue": "3130305f303030", - "id": 32321, + "id": 33879, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17260:13:27", + "src": "17260:13:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000_by_1", @@ -27946,14 +29661,14 @@ }, { "hexValue": "3130305f3030305f303030", - "id": 32322, + "id": 33880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17275:17:27", + "src": "17275:17:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000000_by_1", @@ -27977,44 +29692,45 @@ "typeString": "int_const 100000000000000000000000000" } ], - "id": 32319, + "id": 33877, "name": "bound", "nodeType": "Identifier", "overloadedDeclarations": [ - 7670, - 7800 + 7707, + 7837 ], - "referencedDeclaration": 7670, - "src": "17245:5:27", + "referencedDeclaration": 7707, + "src": "17245:5:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 32323, + "id": 33881, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17245:48:27", + "src": "17245:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17235:58:27", + "src": "17235:58:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 32325, + "id": 33883, "nodeType": "ExpressionStatement", - "src": "17235:58:27" + "src": "17235:58:31" }, { "expression": { @@ -28024,40 +29740,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32327, + "id": 33885, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17370:7:27", + "referencedDeclaration": 32093, + "src": "17370:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32328, + "id": 33886, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17378:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "17370:18:27", + "referencedDeclaration": 27505, + "src": "17370:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32329, + "id": 33887, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17370:20:27", + "src": "17370:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28067,14 +29785,14 @@ { "arguments": [ { - "id": 32332, + "id": 33890, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17400:7:27", + "referencedDeclaration": 32093, + "src": "17400:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -28082,38 +29800,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32331, + "id": 33889, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17392:7:27", + "src": "17392:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32330, + "id": 33888, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17392:7:27", + "src": "17392:7:31", "typeDescriptions": {} } }, - "id": 32333, + "id": 33891, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17392:16:27", + "src": "17392:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28121,12 +29840,12 @@ } }, { - "id": 32334, + "id": 33892, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "17410:7:27", + "referencedDeclaration": 33873, + "src": "17410:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28148,39 +29867,40 @@ "typeString": "uint256" } ], - "id": 32326, + "id": 33884, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ - 5023, - 5040, - 5143 + 5060, + 5077, + 5180 ], - "referencedDeclaration": 5040, - "src": "17365:4:27", + "referencedDeclaration": 5077, + "src": "17365:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 32335, + "id": 33893, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17365:53:27", + "src": "17365:53:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32336, + "id": 33894, "nodeType": "ExpressionStatement", - "src": "17365:53:27" + "src": "17365:53:31" }, { "expression": { @@ -28188,14 +29908,14 @@ { "arguments": [ { - "id": 32342, + "id": 33900, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "17487:3:27", + "referencedDeclaration": 31571, + "src": "17487:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -28203,38 +29923,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32341, + "id": 33899, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17479:7:27", + "src": "17479:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32340, + "id": 33898, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17479:7:27", + "src": "17479:7:31", "typeDescriptions": {} } }, - "id": 32343, + "id": 33901, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17479:12:27", + "src": "17479:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28250,49 +29971,51 @@ } ], "expression": { - "id": 32337, + "id": 33895, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "17465:2:27", + "src": "17465:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 32339, + "id": 33897, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17468:10:31", "memberName": "startPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9043, - "src": "17465:13:27", + "referencedDeclaration": 9080, + "src": "17465:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", "typeString": "function (address) external" } }, - "id": 32344, + "id": 33902, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17465:27:27", + "src": "17465:27:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32345, + "id": 33903, "nodeType": "ExpressionStatement", - "src": "17465:27:27" + "src": "17465:27:31" }, { "expression": { @@ -28302,14 +30025,14 @@ { "arguments": [ { - "id": 32351, + "id": 33909, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17571:7:27", + "referencedDeclaration": 32093, + "src": "17571:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -28317,38 +30040,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32350, + "id": 33908, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17563:7:27", + "src": "17563:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32349, + "id": 33907, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17563:7:27", + "src": "17563:7:31", "typeDescriptions": {} } }, - "id": 32352, + "id": 33910, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17563:16:27", + "src": "17563:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28358,14 +30082,14 @@ { "arguments": [ { - "id": 32355, + "id": 33913, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "17589:3:27", + "referencedDeclaration": 31571, + "src": "17589:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -28373,38 +30097,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32354, + "id": 33912, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17581:7:27", + "src": "17581:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32353, + "id": 33911, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17581:7:27", + "src": "17581:7:31", "typeDescriptions": {} } }, - "id": 32356, + "id": 33914, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17581:12:27", + "src": "17581:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28412,12 +30137,12 @@ } }, { - "id": 32357, + "id": 33915, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "17595:7:27", + "referencedDeclaration": 33873, + "src": "17595:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28440,40 +30165,42 @@ } ], "expression": { - "id": 32347, + "id": 33905, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "17543:3:27", + "referencedDeclaration": 31568, + "src": "17543:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32348, + "id": 33906, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17547:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "17543:19:27", + "referencedDeclaration": 30294, + "src": "17543:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 32358, + "id": 33916, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17543:60:27", + "src": "17543:60:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -28488,35 +30215,36 @@ "typeString": "bool" } ], - "id": 32346, + "id": 33904, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "17536:6:27", + "src": "17536:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32359, + "id": 33917, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17536:68:27", + "src": "17536:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32360, + "id": 33918, "nodeType": "ExpressionStatement", - "src": "17536:68:27" + "src": "17536:68:31" }, { "expression": { @@ -28526,14 +30254,14 @@ { "arguments": [ { - "id": 32366, + "id": 33924, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17680:7:27", + "referencedDeclaration": 32093, + "src": "17680:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -28541,38 +30269,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32365, + "id": 33923, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17672:7:27", + "src": "17672:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32364, + "id": 33922, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17672:7:27", + "src": "17672:7:31", "typeDescriptions": {} } }, - "id": 32367, + "id": 33925, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17672:16:27", + "src": "17672:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28588,40 +30317,42 @@ } ], "expression": { - "id": 32362, + "id": 33920, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "17650:3:27", + "referencedDeclaration": 31568, + "src": "17650:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32363, + "id": 33921, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17654:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "17650:21:27", + "referencedDeclaration": 30232, + "src": "17650:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32368, + "id": 33926, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17650:39:27", + "src": "17650:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -28636,35 +30367,36 @@ "typeString": "bool" } ], - "id": 32361, + "id": 33919, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "17643:6:27", + "src": "17643:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32369, + "id": 33927, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17643:47:27", + "src": "17643:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32370, + "id": 33928, "nodeType": "ExpressionStatement", - "src": "17643:47:27" + "src": "17643:47:31" }, { "expression": { @@ -28674,14 +30406,14 @@ { "arguments": [ { - "id": 32380, + "id": 33938, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "17787:3:27", + "referencedDeclaration": 31571, + "src": "17787:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -28689,38 +30421,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32379, + "id": 33937, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17779:7:27", + "src": "17779:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32378, + "id": 33936, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17779:7:27", + "src": "17779:7:31", "typeDescriptions": {} } }, - "id": 32381, + "id": 33939, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17779:12:27", + "src": "17779:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28742,40 +30475,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32373, + "id": 33931, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17747:7:27", + "referencedDeclaration": 32093, + "src": "17747:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32374, + "id": 33932, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17755:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "17747:18:27", + "referencedDeclaration": 27505, + "src": "17747:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32375, + "id": 33933, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17747:20:27", + "src": "17747:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28790,55 +30525,58 @@ "typeString": "address" } ], - "id": 32372, + "id": 33930, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "17740:6:27", + "referencedDeclaration": 29158, + "src": "17740:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32376, + "id": 33934, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17740:28:27", + "src": "17740:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32377, + "id": 33935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17769:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "17740:38:27", + "referencedDeclaration": 29097, + "src": "17740:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32382, + "id": 33940, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17740:52:27", + "src": "17740:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -28847,14 +30585,14 @@ }, { "hexValue": "30", - "id": 32383, + "id": 33941, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17794:1:27", + "src": "17794:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -28873,20 +30611,20 @@ "typeString": "int_const 0" } ], - "id": 32371, + "id": 33929, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -28899,30 +30637,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "17731:8:27", + "src": "17731:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32384, + "id": 33942, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17731:65:27", + "src": "17731:65:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32385, + "id": 33943, "nodeType": "ExpressionStatement", - "src": "17731:65:27" + "src": "17731:65:31" }, { "expression": { @@ -28932,14 +30671,14 @@ { "arguments": [ { - "id": 32391, + "id": 33949, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17877:7:27", + "referencedDeclaration": 32093, + "src": "17877:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -28947,38 +30686,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32390, + "id": 33948, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17869:7:27", + "src": "17869:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32389, + "id": 33947, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17869:7:27", + "src": "17869:7:31", "typeDescriptions": {} } }, - "id": 32392, + "id": 33950, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17869:16:27", + "src": "17869:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -28994,40 +30734,42 @@ } ], "expression": { - "id": 32387, + "id": 33945, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "17855:3:27", + "referencedDeclaration": 31571, + "src": "17855:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32388, + "id": 33946, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17859:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "17855:13:27", + "referencedDeclaration": 30378, + "src": "17855:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32393, + "id": 33951, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17855:31:27", + "src": "17855:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -29042,35 +30784,36 @@ "typeString": "bool" } ], - "id": 32386, + "id": 33944, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "17848:6:27", + "src": "17848:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32394, + "id": 33952, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17848:39:27", + "src": "17848:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32395, + "id": 33953, "nodeType": "ExpressionStatement", - "src": "17848:39:27" + "src": "17848:39:31" }, { "expression": { @@ -29080,14 +30823,14 @@ { "arguments": [ { - "id": 32405, + "id": 33963, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "17987:3:27", + "referencedDeclaration": 31571, + "src": "17987:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -29095,38 +30838,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32404, + "id": 33962, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "17979:7:27", + "src": "17979:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32403, + "id": 33961, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17979:7:27", + "src": "17979:7:31", "typeDescriptions": {} } }, - "id": 32406, + "id": 33964, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17979:12:27", + "src": "17979:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29148,40 +30892,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32398, + "id": 33956, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "17947:7:27", + "referencedDeclaration": 32093, + "src": "17947:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32399, + "id": 33957, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17955:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "17947:18:27", + "referencedDeclaration": 27505, + "src": "17947:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32400, + "id": 33958, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17947:20:27", + "src": "17947:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29196,55 +30942,58 @@ "typeString": "address" } ], - "id": 32397, + "id": 33955, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "17940:6:27", + "referencedDeclaration": 29158, + "src": "17940:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32401, + "id": 33959, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17940:28:27", + "src": "17940:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32402, + "id": 33960, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "17969:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "17940:38:27", + "referencedDeclaration": 29097, + "src": "17940:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32407, + "id": 33965, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17940:52:27", + "src": "17940:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -29256,7 +31005,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32412, + "id": 33970, "isConstant": false, "isLValue": false, "isPure": false, @@ -29266,18 +31015,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32410, + "id": 33968, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32408, + "id": 33966, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "17994:7:27", + "referencedDeclaration": 33873, + "src": "17994:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29287,21 +31036,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 32409, + "id": 33967, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18004:2:27", + "src": "18004:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "17994:12:27", + "src": "17994:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29311,21 +31060,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32411, + "id": 33969, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18009:3:27", + "src": "18009:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "17994:18:27", + "src": "17994:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29333,14 +31082,14 @@ }, { "hexValue": "31", - "id": 32413, + "id": 33971, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18014:7:27", + "src": "18014:7:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -29364,49 +31113,50 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 32396, + "id": 33954, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30464, - "src": "17929:10:27", + "referencedDeclaration": 32022, + "src": "17929:10:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 32414, + "id": 33972, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17929:93:27", + "src": "17929:93:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32415, + "id": 33973, "nodeType": "ExpressionStatement", - "src": "17929:93:27" + "src": "17929:93:31" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 32417, + "id": 33975, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18065:7:27", + "src": "18065:7:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -29422,35 +31172,36 @@ "typeString": "int_const 2419200" } ], - "id": 32416, + "id": 33974, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "18060:4:27", + "referencedDeclaration": 4833, + "src": "18060:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32418, + "id": 33976, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18060:13:27", + "src": "18060:13:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32419, + "id": 33977, "nodeType": "ExpressionStatement", - "src": "18060:13:27" + "src": "18060:13:31" }, { "expression": { @@ -29460,14 +31211,14 @@ { "arguments": [ { - "id": 32425, + "id": 33983, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "18154:7:27", + "referencedDeclaration": 32093, + "src": "18154:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -29475,38 +31226,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32424, + "id": 33982, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18146:7:27", + "src": "18146:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32423, + "id": 33981, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18146:7:27", + "src": "18146:7:31", "typeDescriptions": {} } }, - "id": 32426, + "id": 33984, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18146:16:27", + "src": "18146:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29522,40 +31274,42 @@ } ], "expression": { - "id": 32421, + "id": 33979, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "18132:3:27", + "referencedDeclaration": 31571, + "src": "18132:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32422, + "id": 33980, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18136:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "18132:13:27", + "referencedDeclaration": 30378, + "src": "18132:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32427, + "id": 33985, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18132:31:27", + "src": "18132:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -29570,35 +31324,36 @@ "typeString": "bool" } ], - "id": 32420, + "id": 33978, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18125:6:27", + "src": "18125:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32428, + "id": 33986, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18125:39:27", + "src": "18125:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32429, + "id": 33987, "nodeType": "ExpressionStatement", - "src": "18125:39:27" + "src": "18125:39:31" }, { "expression": { @@ -29608,14 +31363,14 @@ { "arguments": [ { - "id": 32439, + "id": 33997, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "18264:3:27", + "referencedDeclaration": 31571, + "src": "18264:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -29623,38 +31378,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32438, + "id": 33996, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18256:7:27", + "src": "18256:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32437, + "id": 33995, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18256:7:27", + "src": "18256:7:31", "typeDescriptions": {} } }, - "id": 32440, + "id": 33998, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18256:12:27", + "src": "18256:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29676,40 +31432,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32432, + "id": 33990, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "18224:7:27", + "referencedDeclaration": 32093, + "src": "18224:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32433, + "id": 33991, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18232:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "18224:18:27", + "referencedDeclaration": 27505, + "src": "18224:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32434, + "id": 33992, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18224:20:27", + "src": "18224:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -29724,55 +31482,58 @@ "typeString": "address" } ], - "id": 32431, + "id": 33989, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "18217:6:27", + "referencedDeclaration": 29158, + "src": "18217:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32435, + "id": 33993, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18217:28:27", + "src": "18217:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32436, + "id": 33994, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18246:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "18217:38:27", + "referencedDeclaration": 29097, + "src": "18217:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32441, + "id": 33999, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18217:52:27", + "src": "18217:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -29784,7 +31545,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32446, + "id": 34004, "isConstant": false, "isLValue": false, "isPure": false, @@ -29794,18 +31555,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32444, + "id": 34002, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32442, + "id": 34000, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "18271:7:27", + "referencedDeclaration": 33873, + "src": "18271:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29815,21 +31576,21 @@ "operator": "*", "rightExpression": { "hexValue": "3230", - "id": 32443, + "id": 34001, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18281:2:27", + "src": "18281:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_20_by_1", "typeString": "int_const 20" }, "value": "20" }, - "src": "18271:12:27", + "src": "18271:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29839,21 +31600,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32445, + "id": 34003, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18286:3:27", + "src": "18286:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "18271:18:27", + "src": "18271:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29861,14 +31622,14 @@ }, { "hexValue": "31", - "id": 32447, + "id": 34005, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18291:7:27", + "src": "18291:7:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -29892,49 +31653,50 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 32430, + "id": 33988, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30464, - "src": "18206:10:27", + "referencedDeclaration": 32022, + "src": "18206:10:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 32448, + "id": 34006, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18206:93:27", + "src": "18206:93:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32449, + "id": 34007, "nodeType": "ExpressionStatement", - "src": "18206:93:27" + "src": "18206:93:31" }, { "expression": { "arguments": [ { "hexValue": "34", - "id": 32451, + "id": 34009, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18342:7:27", + "src": "18342:7:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_2419200_by_1", @@ -29950,35 +31712,36 @@ "typeString": "int_const 2419200" } ], - "id": 32450, + "id": 34008, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "18337:4:27", + "referencedDeclaration": 4833, + "src": "18337:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32452, + "id": 34010, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18337:13:27", + "src": "18337:13:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32453, + "id": 34011, "nodeType": "ExpressionStatement", - "src": "18337:13:27" + "src": "18337:13:31" }, { "expression": { @@ -29988,14 +31751,14 @@ { "arguments": [ { - "id": 32459, + "id": 34017, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "18431:7:27", + "referencedDeclaration": 32093, + "src": "18431:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -30003,38 +31766,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32458, + "id": 34016, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18423:7:27", + "src": "18423:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32457, + "id": 34015, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18423:7:27", + "src": "18423:7:31", "typeDescriptions": {} } }, - "id": 32460, + "id": 34018, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18423:16:27", + "src": "18423:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30050,40 +31814,42 @@ } ], "expression": { - "id": 32455, + "id": 34013, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "18409:3:27", + "referencedDeclaration": 31571, + "src": "18409:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32456, + "id": 34014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18413:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "18409:13:27", + "referencedDeclaration": 30378, + "src": "18409:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32461, + "id": 34019, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18409:31:27", + "src": "18409:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -30098,35 +31864,36 @@ "typeString": "bool" } ], - "id": 32454, + "id": 34012, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18402:6:27", + "src": "18402:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32462, + "id": 34020, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18402:39:27", + "src": "18402:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32463, + "id": 34021, "nodeType": "ExpressionStatement", - "src": "18402:39:27" + "src": "18402:39:31" }, { "expression": { @@ -30136,14 +31903,14 @@ { "arguments": [ { - "id": 32473, + "id": 34031, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "18541:3:27", + "referencedDeclaration": 31571, + "src": "18541:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -30151,38 +31918,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32472, + "id": 34030, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18533:7:27", + "src": "18533:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32471, + "id": 34029, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18533:7:27", + "src": "18533:7:31", "typeDescriptions": {} } }, - "id": 32474, + "id": 34032, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18533:12:27", + "src": "18533:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30204,40 +31972,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32466, + "id": 34024, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "18501:7:27", + "referencedDeclaration": 32093, + "src": "18501:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32467, + "id": 34025, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18509:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "18501:18:27", + "referencedDeclaration": 27505, + "src": "18501:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32468, + "id": 34026, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18501:20:27", + "src": "18501:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30252,55 +32022,58 @@ "typeString": "address" } ], - "id": 32465, + "id": 34023, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "18494:6:27", + "referencedDeclaration": 29158, + "src": "18494:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32469, + "id": 34027, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18494:28:27", + "src": "18494:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32470, + "id": 34028, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18523:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "18494:38:27", + "referencedDeclaration": 29097, + "src": "18494:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32475, + "id": 34033, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18494:52:27", + "src": "18494:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -30312,7 +32085,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32480, + "id": 34038, "isConstant": false, "isLValue": false, "isPure": false, @@ -30322,18 +32095,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32478, + "id": 34036, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32476, + "id": 34034, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "18548:7:27", + "referencedDeclaration": 33873, + "src": "18548:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30343,21 +32116,21 @@ "operator": "*", "rightExpression": { "hexValue": "3238", - "id": 32477, + "id": 34035, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18558:2:27", + "src": "18558:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_28_by_1", "typeString": "int_const 28" }, "value": "28" }, - "src": "18548:12:27", + "src": "18548:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30367,21 +32140,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32479, + "id": 34037, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18563:3:27", + "src": "18563:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "18548:18:27", + "src": "18548:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30389,14 +32162,14 @@ }, { "hexValue": "31", - "id": 32481, + "id": 34039, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18568:7:27", + "src": "18568:7:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -30420,49 +32193,50 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 32464, + "id": 34022, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30464, - "src": "18483:10:27", + "referencedDeclaration": 32022, + "src": "18483:10:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 32482, + "id": 34040, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18483:93:27", + "src": "18483:93:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32483, + "id": 34041, "nodeType": "ExpressionStatement", - "src": "18483:93:27" + "src": "18483:93:31" }, { "expression": { "arguments": [ { "hexValue": "3132", - "id": 32485, + "id": 34043, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18620:8:27", + "src": "18620:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_7257600_by_1", @@ -30478,35 +32252,36 @@ "typeString": "int_const 7257600" } ], - "id": 32484, + "id": 34042, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "18615:4:27", + "referencedDeclaration": 4833, + "src": "18615:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32486, + "id": 34044, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18615:14:27", + "src": "18615:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32487, + "id": 34045, "nodeType": "ExpressionStatement", - "src": "18615:14:27" + "src": "18615:14:31" }, { "expression": { @@ -30516,14 +32291,14 @@ { "arguments": [ { - "id": 32493, + "id": 34051, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "18710:7:27", + "referencedDeclaration": 32093, + "src": "18710:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -30531,38 +32306,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32492, + "id": 34050, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18702:7:27", + "src": "18702:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32491, + "id": 34049, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18702:7:27", + "src": "18702:7:31", "typeDescriptions": {} } }, - "id": 32494, + "id": 34052, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18702:16:27", + "src": "18702:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30578,40 +32354,42 @@ } ], "expression": { - "id": 32489, + "id": 34047, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "18688:3:27", + "referencedDeclaration": 31571, + "src": "18688:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32490, + "id": 34048, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18692:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "18688:13:27", + "referencedDeclaration": 30378, + "src": "18688:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32495, + "id": 34053, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18688:31:27", + "src": "18688:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -30626,35 +32404,36 @@ "typeString": "bool" } ], - "id": 32488, + "id": 34046, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18681:6:27", + "src": "18681:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32496, + "id": 34054, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18681:39:27", + "src": "18681:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32497, + "id": 34055, "nodeType": "ExpressionStatement", - "src": "18681:39:27" + "src": "18681:39:31" }, { "expression": { @@ -30664,14 +32443,14 @@ { "arguments": [ { - "id": 32507, + "id": 34065, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "18820:3:27", + "referencedDeclaration": 31571, + "src": "18820:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -30679,38 +32458,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32506, + "id": 34064, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18812:7:27", + "src": "18812:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32505, + "id": 34063, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18812:7:27", + "src": "18812:7:31", "typeDescriptions": {} } }, - "id": 32508, + "id": 34066, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18812:12:27", + "src": "18812:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30732,40 +32512,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32500, + "id": 34058, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "18780:7:27", + "referencedDeclaration": 32093, + "src": "18780:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32501, + "id": 34059, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18788:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "18780:18:27", + "referencedDeclaration": 27505, + "src": "18780:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32502, + "id": 34060, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18780:20:27", + "src": "18780:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -30780,55 +32562,58 @@ "typeString": "address" } ], - "id": 32499, + "id": 34057, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "18773:6:27", + "referencedDeclaration": 29158, + "src": "18773:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32503, + "id": 34061, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18773:28:27", + "src": "18773:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32504, + "id": 34062, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18802:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "18773:38:27", + "referencedDeclaration": 29097, + "src": "18773:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32509, + "id": 34067, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18773:52:27", + "src": "18773:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -30840,7 +32625,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32514, + "id": 34072, "isConstant": false, "isLValue": false, "isPure": false, @@ -30850,18 +32635,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32512, + "id": 34070, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32510, + "id": 34068, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "18827:7:27", + "referencedDeclaration": 33873, + "src": "18827:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30871,21 +32656,21 @@ "operator": "*", "rightExpression": { "hexValue": "3532", - "id": 32511, + "id": 34069, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18837:2:27", + "src": "18837:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_52_by_1", "typeString": "int_const 52" }, "value": "52" }, - "src": "18827:12:27", + "src": "18827:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30895,21 +32680,21 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32513, + "id": 34071, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18842:3:27", + "src": "18842:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "18827:18:27", + "src": "18827:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30917,14 +32702,14 @@ }, { "hexValue": "31", - "id": 32515, + "id": 34073, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18847:7:27", + "src": "18847:7:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -30948,49 +32733,50 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 32498, + "id": 34056, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30464, - "src": "18762:10:27", + "referencedDeclaration": 32022, + "src": "18762:10:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 32516, + "id": 34074, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18762:93:27", + "src": "18762:93:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32517, + "id": 34075, "nodeType": "ExpressionStatement", - "src": "18762:93:27" + "src": "18762:93:31" }, { "expression": { "arguments": [ { "hexValue": "3234", - "id": 32519, + "id": 34077, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18899:8:27", + "src": "18899:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_14515200_by_1", @@ -31006,35 +32792,36 @@ "typeString": "int_const 14515200" } ], - "id": 32518, + "id": 34076, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "18894:4:27", + "referencedDeclaration": 4833, + "src": "18894:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32520, + "id": 34078, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18894:14:27", + "src": "18894:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32521, + "id": 34079, "nodeType": "ExpressionStatement", - "src": "18894:14:27" + "src": "18894:14:31" }, { "expression": { @@ -31044,14 +32831,14 @@ { "arguments": [ { - "id": 32527, + "id": 34085, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "18989:7:27", + "referencedDeclaration": 32093, + "src": "18989:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -31059,38 +32846,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32526, + "id": 34084, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18981:7:27", + "src": "18981:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32525, + "id": 34083, "name": "address", "nodeType": "ElementaryTypeName", - "src": "18981:7:27", + "src": "18981:7:31", "typeDescriptions": {} } }, - "id": 32528, + "id": 34086, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18981:16:27", + "src": "18981:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31106,40 +32894,42 @@ } ], "expression": { - "id": 32523, + "id": 34081, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "18967:3:27", + "referencedDeclaration": 31571, + "src": "18967:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32524, + "id": 34082, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "18971:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "18967:13:27", + "referencedDeclaration": 30378, + "src": "18967:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32529, + "id": 34087, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18967:31:27", + "src": "18967:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -31154,35 +32944,36 @@ "typeString": "bool" } ], - "id": 32522, + "id": 34080, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "18960:6:27", + "src": "18960:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32530, + "id": 34088, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18960:39:27", + "src": "18960:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32531, + "id": 34089, "nodeType": "ExpressionStatement", - "src": "18960:39:27" + "src": "18960:39:31" }, { "expression": { @@ -31192,14 +32983,14 @@ { "arguments": [ { - "id": 32541, + "id": 34099, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "19097:3:27", + "referencedDeclaration": 31571, + "src": "19097:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -31207,38 +32998,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32540, + "id": 34098, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19089:7:27", + "src": "19089:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32539, + "id": 34097, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19089:7:27", + "src": "19089:7:31", "typeDescriptions": {} } }, - "id": 32542, + "id": 34100, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19089:12:27", + "src": "19089:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31260,40 +33052,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32534, + "id": 34092, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "19057:7:27", + "referencedDeclaration": 32093, + "src": "19057:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32535, + "id": 34093, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19065:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "19057:18:27", + "referencedDeclaration": 27505, + "src": "19057:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32536, + "id": 34094, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19057:20:27", + "src": "19057:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31308,55 +33102,58 @@ "typeString": "address" } ], - "id": 32533, + "id": 34091, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "19050:6:27", + "referencedDeclaration": 29158, + "src": "19050:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32537, + "id": 34095, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19050:28:27", + "src": "19050:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32538, + "id": 34096, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19079:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "19050:38:27", + "referencedDeclaration": 29097, + "src": "19050:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32543, + "id": 34101, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19050:52:27", + "src": "19050:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -31364,12 +33161,12 @@ } }, { - "id": 32544, + "id": 34102, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32315, - "src": "19104:7:27", + "referencedDeclaration": 33873, + "src": "19104:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31387,20 +33184,20 @@ "typeString": "uint256" } ], - "id": 32532, + "id": 34090, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -31413,30 +33210,31 @@ 1674 ], "referencedDeclaration": 514, - "src": "19041:8:27", + "src": "19041:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32545, + "id": 34103, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19041:71:27", + "src": "19041:71:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32546, + "id": 34104, "nodeType": "ExpressionStatement", - "src": "19041:71:27" + "src": "19041:71:31" }, { "expression": { @@ -31444,56 +33242,58 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32547, + "id": 34105, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1836, - "src": "19125:2:27", + "src": "19125:2:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vm_$9315", + "typeIdentifier": "t_contract$_Vm_$9352", "typeString": "contract Vm" } }, - "id": 32549, + "id": 34107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19128:9:31", "memberName": "stopPrank", "nodeType": "MemberAccess", - "referencedDeclaration": 9060, - "src": "19125:12:27", + "referencedDeclaration": 9097, + "src": "19125:12:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", "typeString": "function () external" } }, - "id": 32550, + "id": 34108, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19125:14:27", + "src": "19125:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32551, + "id": 34109, "nodeType": "ExpressionStatement", - "src": "19125:14:27" + "src": "19125:14:31" } ] }, "documentation": { - "id": 32313, + "id": 33871, "nodeType": "StructuredDocumentation", - "src": "17104:53:27", + "src": "17104:53:31", "text": "@dev Verifies claim() state changes using fuzzing" }, "functionSelector": "8c852881", @@ -31501,20 +33301,20 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_fuzzing1", - "nameLocation": "17172:27:27", + "nameLocation": "17172:27:31", "parameters": { - "id": 32316, + "id": 33874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 32315, + "id": 33873, "mutability": "mutable", "name": "_amount", - "nameLocation": "17208:7:27", + "nameLocation": "17208:7:31", "nodeType": "VariableDeclaration", - "scope": 32553, - "src": "17200:15:27", + "scope": 34111, + "src": "17200:15:31", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31522,10 +33322,10 @@ "typeString": "uint256" }, "typeName": { - "id": 32314, + "id": 33872, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "17200:7:27", + "src": "17200:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31534,42 +33334,44 @@ "visibility": "internal" } ], - "src": "17199:17:27" + "src": "17199:17:31" }, "returnParameters": { - "id": 32317, + "id": 33875, "nodeType": "ParameterList", "parameters": [], - "src": "17224:0:27" + "src": "17224:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { - "id": 32764, + "id": 34322, "nodeType": "FunctionDefinition", - "src": "19211:2093:27", + "src": "19211:2093:31", + "nodes": [], "body": { - "id": 32763, + "id": 34321, "nodeType": "Block", - "src": "19272:2032:27", + "src": "19272:2032:31", + "nodes": [], "statements": [ { "expression": { - "id": 32565, + "id": 34123, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 32559, + "id": 34117, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "19283:7:27", + "referencedDeclaration": 34114, + "src": "19283:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31580,12 +33382,12 @@ "rightHandSide": { "arguments": [ { - "id": 32561, + "id": 34119, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "19299:7:27", + "referencedDeclaration": 34114, + "src": "19299:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31593,14 +33395,14 @@ }, { "hexValue": "3130305f303030", - "id": 32562, + "id": 34120, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19308:13:27", + "src": "19308:13:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000_by_1", @@ -31610,14 +33412,14 @@ }, { "hexValue": "3130305f3030305f303030", - "id": 32563, + "id": 34121, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19323:17:27", + "src": "19323:17:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_100000000000000000000000000_by_1", @@ -31641,44 +33443,45 @@ "typeString": "int_const 100000000000000000000000000" } ], - "id": 32560, + "id": 34118, "name": "bound", "nodeType": "Identifier", "overloadedDeclarations": [ - 7670, - 7800 + 7707, + 7837 ], - "referencedDeclaration": 7670, - "src": "19293:5:27", + "referencedDeclaration": 7707, + "src": "19293:5:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 32564, + "id": 34122, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19293:48:27", + "src": "19293:48:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "19283:58:27", + "src": "19283:58:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 32566, + "id": 34124, "nodeType": "ExpressionStatement", - "src": "19283:58:27" + "src": "19283:58:31" }, { "expression": { @@ -31688,40 +33491,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32568, + "id": 34126, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "19418:7:27", + "referencedDeclaration": 32093, + "src": "19418:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32569, + "id": 34127, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19426:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "19418:18:27", + "referencedDeclaration": 27505, + "src": "19418:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32570, + "id": 34128, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19418:20:27", + "src": "19418:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31731,14 +33536,14 @@ { "arguments": [ { - "id": 32573, + "id": 34131, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "19448:7:27", + "referencedDeclaration": 32093, + "src": "19448:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -31746,38 +33551,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32572, + "id": 34130, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19440:7:27", + "src": "19440:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32571, + "id": 34129, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19440:7:27", + "src": "19440:7:31", "typeDescriptions": {} } }, - "id": 32574, + "id": 34132, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19440:16:27", + "src": "19440:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31789,18 +33595,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32577, + "id": 34135, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32575, + "id": 34133, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "19458:7:27", + "referencedDeclaration": 34114, + "src": "19458:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31810,21 +33616,21 @@ "operator": "*", "rightExpression": { "hexValue": "33", - "id": 32576, + "id": 34134, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "19468:1:27", + "src": "19468:1:31", "typeDescriptions": { "typeIdentifier": "t_rational_3_by_1", "typeString": "int_const 3" }, "value": "3" }, - "src": "19458:11:27", + "src": "19458:11:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31846,39 +33652,40 @@ "typeString": "uint256" } ], - "id": 32567, + "id": 34125, "name": "deal", "nodeType": "Identifier", "overloadedDeclarations": [ - 5023, - 5040, - 5143 + 5060, + 5077, + 5180 ], - "referencedDeclaration": 5040, - "src": "19413:4:27", + "referencedDeclaration": 5077, + "src": "19413:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 32578, + "id": 34136, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19413:57:27", + "src": "19413:57:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32579, + "id": 34137, "nodeType": "ExpressionStatement", - "src": "19413:57:27" + "src": "19413:57:31" }, { "expression": { @@ -31888,14 +33695,14 @@ { "arguments": [ { - "id": 32585, + "id": 34143, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "19546:7:27", + "referencedDeclaration": 32093, + "src": "19546:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -31903,38 +33710,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32584, + "id": 34142, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19538:7:27", + "src": "19538:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32583, + "id": 34141, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19538:7:27", + "src": "19538:7:31", "typeDescriptions": {} } }, - "id": 32586, + "id": 34144, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19538:16:27", + "src": "19538:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -31950,40 +33758,42 @@ } ], "expression": { - "id": 32581, + "id": 34139, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "19516:3:27", + "referencedDeclaration": 31568, + "src": "19516:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32582, + "id": 34140, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19520:17:31", "memberName": "try_enableVesting", "nodeType": "MemberAccess", - "referencedDeclaration": 29622, - "src": "19516:21:27", + "referencedDeclaration": 30232, + "src": "19516:21:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32587, + "id": 34145, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19516:39:27", + "src": "19516:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -31998,35 +33808,36 @@ "typeString": "bool" } ], - "id": 32580, + "id": 34138, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19509:6:27", + "src": "19509:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32588, + "id": 34146, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19509:47:27", + "src": "19509:47:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32589, + "id": 34147, "nodeType": "ExpressionStatement", - "src": "19509:47:27" + "src": "19509:47:31" }, { "expression": { @@ -32036,14 +33847,14 @@ { "arguments": [ { - "id": 32595, + "id": 34153, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "19693:7:27", + "referencedDeclaration": 32093, + "src": "19693:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -32051,38 +33862,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32594, + "id": 34152, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19685:7:27", + "src": "19685:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32593, + "id": 34151, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19685:7:27", + "src": "19685:7:31", "typeDescriptions": {} } }, - "id": 32596, + "id": 34154, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19685:16:27", + "src": "19685:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32092,14 +33904,14 @@ { "arguments": [ { - "id": 32599, + "id": 34157, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "19711:3:27", + "referencedDeclaration": 31571, + "src": "19711:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -32107,38 +33919,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32598, + "id": 34156, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19703:7:27", + "src": "19703:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32597, + "id": 34155, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19703:7:27", + "src": "19703:7:31", "typeDescriptions": {} } }, - "id": 32600, + "id": 34158, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19703:12:27", + "src": "19703:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32146,12 +33959,12 @@ } }, { - "id": 32601, + "id": 34159, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "19717:7:27", + "referencedDeclaration": 34114, + "src": "19717:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32174,40 +33987,42 @@ } ], "expression": { - "id": 32591, + "id": 34149, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "19665:3:27", + "referencedDeclaration": 31568, + "src": "19665:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32592, + "id": 34150, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19669:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "19665:19:27", + "referencedDeclaration": 30294, + "src": "19665:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 32602, + "id": 34160, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19665:60:27", + "src": "19665:60:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -32222,35 +34037,36 @@ "typeString": "bool" } ], - "id": 32590, + "id": 34148, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19658:6:27", + "src": "19658:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32603, + "id": 34161, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19658:68:27", + "src": "19658:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32604, + "id": 34162, "nodeType": "ExpressionStatement", - "src": "19658:68:27" + "src": "19658:68:31" }, { "expression": { @@ -32260,14 +34076,14 @@ { "arguments": [ { - "id": 32610, + "id": 34168, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "19806:7:27", + "referencedDeclaration": 32093, + "src": "19806:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -32275,38 +34091,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32609, + "id": 34167, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19798:7:27", + "src": "19798:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32608, + "id": 34166, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19798:7:27", + "src": "19798:7:31", "typeDescriptions": {} } }, - "id": 32611, + "id": 34169, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19798:16:27", + "src": "19798:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32316,14 +34133,14 @@ { "arguments": [ { - "id": 32614, + "id": 34172, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "19824:3:27", + "referencedDeclaration": 31565, + "src": "19824:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -32331,38 +34148,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32613, + "id": 34171, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19816:7:27", + "src": "19816:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32612, + "id": 34170, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19816:7:27", + "src": "19816:7:31", "typeDescriptions": {} } }, - "id": 32615, + "id": 34173, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19816:12:27", + "src": "19816:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32370,12 +34188,12 @@ } }, { - "id": 32616, + "id": 34174, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "19830:7:27", + "referencedDeclaration": 34114, + "src": "19830:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32398,40 +34216,42 @@ } ], "expression": { - "id": 32606, + "id": 34164, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "19778:3:27", + "referencedDeclaration": 31568, + "src": "19778:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32607, + "id": 34165, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19782:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "19778:19:27", + "referencedDeclaration": 30294, + "src": "19778:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 32617, + "id": 34175, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19778:60:27", + "src": "19778:60:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -32446,35 +34266,36 @@ "typeString": "bool" } ], - "id": 32605, + "id": 34163, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19771:6:27", + "src": "19771:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32618, + "id": 34176, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19771:68:27", + "src": "19771:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32619, + "id": 34177, "nodeType": "ExpressionStatement", - "src": "19771:68:27" + "src": "19771:68:31" }, { "expression": { @@ -32484,14 +34305,14 @@ { "arguments": [ { - "id": 32625, + "id": 34183, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "19919:7:27", + "referencedDeclaration": 32093, + "src": "19919:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -32499,38 +34320,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32624, + "id": 34182, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19911:7:27", + "src": "19911:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32623, + "id": 34181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19911:7:27", + "src": "19911:7:31", "typeDescriptions": {} } }, - "id": 32626, + "id": 34184, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19911:16:27", + "src": "19911:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32540,14 +34362,14 @@ { "arguments": [ { - "id": 32629, + "id": 34187, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "19937:3:27", + "referencedDeclaration": 31568, + "src": "19937:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -32555,38 +34377,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32628, + "id": 34186, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "19929:7:27", + "src": "19929:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32627, + "id": 34185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "19929:7:27", + "src": "19929:7:31", "typeDescriptions": {} } }, - "id": 32630, + "id": 34188, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19929:12:27", + "src": "19929:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32594,12 +34417,12 @@ } }, { - "id": 32631, + "id": 34189, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "19943:7:27", + "referencedDeclaration": 34114, + "src": "19943:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32622,40 +34445,42 @@ } ], "expression": { - "id": 32621, + "id": 34179, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "19891:3:27", + "referencedDeclaration": 31568, + "src": "19891:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32622, + "id": 34180, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "19895:15:31", "memberName": "try_addInvestor", "nodeType": "MemberAccess", - "referencedDeclaration": 29684, - "src": "19891:19:27", + "referencedDeclaration": 30294, + "src": "19891:19:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 32632, + "id": 34190, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19891:60:27", + "src": "19891:60:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -32670,49 +34495,50 @@ "typeString": "bool" } ], - "id": 32620, + "id": 34178, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "19884:6:27", + "src": "19884:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32633, + "id": 34191, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19884:68:27", + "src": "19884:68:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32634, + "id": 34192, "nodeType": "ExpressionStatement", - "src": "19884:68:27" + "src": "19884:68:31" }, { "expression": { "arguments": [ { "hexValue": "32", - "id": 32636, + "id": 34194, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20032:7:27", + "src": "20032:7:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_1209600_by_1", @@ -32728,35 +34554,36 @@ "typeString": "int_const 1209600" } ], - "id": 32635, + "id": 34193, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "20027:4:27", + "referencedDeclaration": 4833, + "src": "20027:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32637, + "id": 34195, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20027:13:27", + "src": "20027:13:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32638, + "id": 34196, "nodeType": "ExpressionStatement", - "src": "20027:13:27" + "src": "20027:13:31" }, { "expression": { @@ -32766,14 +34593,14 @@ { "arguments": [ { - "id": 32644, + "id": 34202, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "20080:7:27", + "referencedDeclaration": 32093, + "src": "20080:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -32781,38 +34608,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32643, + "id": 34201, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20072:7:27", + "src": "20072:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32642, + "id": 34200, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20072:7:27", + "src": "20072:7:31", "typeDescriptions": {} } }, - "id": 32645, + "id": 34203, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20072:16:27", + "src": "20072:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32828,40 +34656,42 @@ } ], "expression": { - "id": 32640, + "id": 34198, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "20058:3:27", + "referencedDeclaration": 31571, + "src": "20058:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32641, + "id": 34199, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20062:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "20058:13:27", + "referencedDeclaration": 30378, + "src": "20058:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32646, + "id": 34204, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20058:31:27", + "src": "20058:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -32876,35 +34706,36 @@ "typeString": "bool" } ], - "id": 32639, + "id": 34197, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "20051:6:27", + "src": "20051:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32647, + "id": 34205, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20051:39:27", + "src": "20051:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32648, + "id": 34206, "nodeType": "ExpressionStatement", - "src": "20051:39:27" + "src": "20051:39:31" }, { "expression": { @@ -32914,14 +34745,14 @@ { "arguments": [ { - "id": 32658, + "id": 34216, "name": "jon", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30013, - "src": "20225:3:27", + "referencedDeclaration": 31571, + "src": "20225:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -32929,38 +34760,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32657, + "id": 34215, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20217:7:27", + "src": "20217:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32656, + "id": 34214, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20217:7:27", + "src": "20217:7:31", "typeDescriptions": {} } }, - "id": 32659, + "id": 34217, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20217:12:27", + "src": "20217:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -32982,40 +34814,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32651, + "id": 34209, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "20185:7:27", + "referencedDeclaration": 32093, + "src": "20185:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32652, + "id": 34210, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20193:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "20185:18:27", + "referencedDeclaration": 27505, + "src": "20185:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32653, + "id": 34211, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20185:20:27", + "src": "20185:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33030,55 +34864,58 @@ "typeString": "address" } ], - "id": 32650, + "id": 34208, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "20178:6:27", + "referencedDeclaration": 29158, + "src": "20178:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32654, + "id": 34212, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20178:28:27", + "src": "20178:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32655, + "id": 34213, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20207:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "20178:38:27", + "referencedDeclaration": 29097, + "src": "20178:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32660, + "id": 34218, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20178:52:27", + "src": "20178:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -33092,7 +34929,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32665, + "id": 34223, "isConstant": false, "isLValue": false, "isPure": false, @@ -33102,18 +34939,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32663, + "id": 34221, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32661, + "id": 34219, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "20233:7:27", + "referencedDeclaration": 34114, + "src": "20233:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33123,21 +34960,21 @@ "operator": "*", "rightExpression": { "hexValue": "3132", - "id": 32662, + "id": 34220, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20243:2:27", + "src": "20243:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_12_by_1", "typeString": "int_const 12" }, "value": "12" }, - "src": "20233:12:27", + "src": "20233:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33147,35 +34984,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32664, + "id": 34222, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20248:3:27", + "src": "20248:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "20233:18:27", + "src": "20233:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 32666, + "id": 34224, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "20232:20:27", + "src": "20232:20:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33183,14 +35020,14 @@ }, { "hexValue": "31", - "id": 32667, + "id": 34225, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20254:7:27", + "src": "20254:7:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -33214,49 +35051,50 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 32649, + "id": 34207, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30464, - "src": "20167:10:27", + "referencedDeclaration": 32022, + "src": "20167:10:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 32668, + "id": 34226, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20167:95:27", + "src": "20167:95:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32669, + "id": 34227, "nodeType": "ExpressionStatement", - "src": "20167:95:27" + "src": "20167:95:31" }, { "expression": { "arguments": [ { "hexValue": "3232", - "id": 32671, + "id": 34229, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20332:8:27", + "src": "20332:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_13305600_by_1", @@ -33272,35 +35110,36 @@ "typeString": "int_const 13305600" } ], - "id": 32670, + "id": 34228, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "20327:4:27", + "referencedDeclaration": 4833, + "src": "20327:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32672, + "id": 34230, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20327:14:27", + "src": "20327:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32673, + "id": 34231, "nodeType": "ExpressionStatement", - "src": "20327:14:27" + "src": "20327:14:31" }, { "expression": { @@ -33310,14 +35149,14 @@ { "arguments": [ { - "id": 32679, + "id": 34237, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "20435:7:27", + "referencedDeclaration": 32093, + "src": "20435:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -33325,38 +35164,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32678, + "id": 34236, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20427:7:27", + "src": "20427:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32677, + "id": 34235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20427:7:27", + "src": "20427:7:31", "typeDescriptions": {} } }, - "id": 32680, + "id": 34238, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20427:16:27", + "src": "20427:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33372,40 +35212,42 @@ } ], "expression": { - "id": 32675, + "id": 34233, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "20413:3:27", + "referencedDeclaration": 31565, + "src": "20413:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32676, + "id": 34234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20417:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "20413:13:27", + "referencedDeclaration": 30378, + "src": "20413:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32681, + "id": 34239, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20413:31:27", + "src": "20413:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -33420,35 +35262,36 @@ "typeString": "bool" } ], - "id": 32674, + "id": 34232, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "20406:6:27", + "src": "20406:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32682, + "id": 34240, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20406:39:27", + "src": "20406:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32683, + "id": 34241, "nodeType": "ExpressionStatement", - "src": "20406:39:27" + "src": "20406:39:31" }, { "expression": { @@ -33458,14 +35301,14 @@ { "arguments": [ { - "id": 32693, + "id": 34251, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "20580:3:27", + "referencedDeclaration": 31565, + "src": "20580:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -33473,38 +35316,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32692, + "id": 34250, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20572:7:27", + "src": "20572:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32691, + "id": 34249, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20572:7:27", + "src": "20572:7:31", "typeDescriptions": {} } }, - "id": 32694, + "id": 34252, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20572:12:27", + "src": "20572:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33526,40 +35370,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32686, + "id": 34244, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "20540:7:27", + "referencedDeclaration": 32093, + "src": "20540:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32687, + "id": 34245, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20548:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "20540:18:27", + "referencedDeclaration": 27505, + "src": "20540:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32688, + "id": 34246, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20540:20:27", + "src": "20540:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33574,55 +35420,58 @@ "typeString": "address" } ], - "id": 32685, + "id": 34243, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "20533:6:27", + "referencedDeclaration": 29158, + "src": "20533:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32689, + "id": 34247, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20533:28:27", + "src": "20533:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32690, + "id": 34248, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20562:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "20533:38:27", + "referencedDeclaration": 29097, + "src": "20533:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32695, + "id": 34253, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20533:52:27", + "src": "20533:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -33636,7 +35485,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32700, + "id": 34258, "isConstant": false, "isLValue": false, "isPure": false, @@ -33646,18 +35495,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 32698, + "id": 34256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 32696, + "id": 34254, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "20588:7:27", + "referencedDeclaration": 34114, + "src": "20588:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33667,21 +35516,21 @@ "operator": "*", "rightExpression": { "hexValue": "3630", - "id": 32697, + "id": 34255, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20598:2:27", + "src": "20598:2:31", "typeDescriptions": { "typeIdentifier": "t_rational_60_by_1", "typeString": "int_const 60" }, "value": "60" }, - "src": "20588:12:27", + "src": "20588:12:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33691,35 +35540,35 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 32699, + "id": 34257, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20603:3:27", + "src": "20603:3:31", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "20588:18:27", + "src": "20588:18:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 32701, + "id": 34259, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "20587:20:27", + "src": "20587:20:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33727,14 +35576,14 @@ }, { "hexValue": "31", - "id": 32702, + "id": 34260, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20609:7:27", + "src": "20609:7:31", "subdenomination": "ether", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", @@ -33758,49 +35607,50 @@ "typeString": "int_const 1000000000000000000" } ], - "id": 32684, + "id": 34242, "name": "withinDiff", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30464, - "src": "20522:10:27", + "referencedDeclaration": 32022, + "src": "20522:10:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 32703, + "id": 34261, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20522:95:27", + "src": "20522:95:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32704, + "id": 34262, "nodeType": "ExpressionStatement", - "src": "20522:95:27" + "src": "20522:95:31" }, { "expression": { "arguments": [ { "hexValue": "3230", - "id": 32706, + "id": 34264, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "20688:8:27", + "src": "20688:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_12096000_by_1", @@ -33816,35 +35666,36 @@ "typeString": "int_const 12096000" } ], - "id": 32705, + "id": 34263, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "20683:4:27", + "referencedDeclaration": 4833, + "src": "20683:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32707, + "id": 34265, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20683:14:27", + "src": "20683:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32708, + "id": 34266, "nodeType": "ExpressionStatement", - "src": "20683:14:27" + "src": "20683:14:31" }, { "expression": { @@ -33854,14 +35705,14 @@ { "arguments": [ { - "id": 32714, + "id": 34272, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "20817:7:27", + "referencedDeclaration": 32093, + "src": "20817:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -33869,38 +35720,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32713, + "id": 34271, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20809:7:27", + "src": "20809:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32712, + "id": 34270, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20809:7:27", + "src": "20809:7:31", "typeDescriptions": {} } }, - "id": 32715, + "id": 34273, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20809:16:27", + "src": "20809:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -33916,40 +35768,42 @@ } ], "expression": { - "id": 32710, + "id": 34268, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "20795:3:27", + "referencedDeclaration": 31565, + "src": "20795:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32711, + "id": 34269, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20799:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "20795:13:27", + "referencedDeclaration": 30378, + "src": "20795:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32716, + "id": 34274, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20795:31:27", + "src": "20795:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -33964,35 +35818,36 @@ "typeString": "bool" } ], - "id": 32709, + "id": 34267, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "20788:6:27", + "src": "20788:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32717, + "id": 34275, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20788:39:27", + "src": "20788:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32718, + "id": 34276, "nodeType": "ExpressionStatement", - "src": "20788:39:27" + "src": "20788:39:31" }, { "expression": { @@ -34002,14 +35857,14 @@ { "arguments": [ { - "id": 32728, + "id": 34286, "name": "joe", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30007, - "src": "20949:3:27", + "referencedDeclaration": 31565, + "src": "20949:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -34017,38 +35872,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32727, + "id": 34285, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "20941:7:27", + "src": "20941:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32726, + "id": 34284, "name": "address", "nodeType": "ElementaryTypeName", - "src": "20941:7:27", + "src": "20941:7:31", "typeDescriptions": {} } }, - "id": 32729, + "id": 34287, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20941:12:27", + "src": "20941:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34070,40 +35926,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32721, + "id": 34279, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "20909:7:27", + "referencedDeclaration": 32093, + "src": "20909:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32722, + "id": 34280, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20917:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "20909:18:27", + "referencedDeclaration": 27505, + "src": "20909:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32723, + "id": 34281, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20909:20:27", + "src": "20909:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34118,55 +35976,58 @@ "typeString": "address" } ], - "id": 32720, + "id": 34278, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "20902:6:27", + "referencedDeclaration": 29158, + "src": "20902:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32724, + "id": 34282, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20902:28:27", + "src": "20902:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32725, + "id": 34283, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "20931:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "20902:38:27", + "referencedDeclaration": 29097, + "src": "20902:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32730, + "id": 34288, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20902:52:27", + "src": "20902:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -34174,12 +36035,12 @@ } }, { - "id": 32731, + "id": 34289, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "20956:7:27", + "referencedDeclaration": 34114, + "src": "20956:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34197,20 +36058,20 @@ "typeString": "uint256" } ], - "id": 32719, + "id": 34277, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -34223,44 +36084,45 @@ 1674 ], "referencedDeclaration": 514, - "src": "20893:8:27", + "src": "20893:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32732, + "id": 34290, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20893:71:27", + "src": "20893:71:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32733, + "id": 34291, "nodeType": "ExpressionStatement", - "src": "20893:71:27" + "src": "20893:71:31" }, { "expression": { "arguments": [ { "hexValue": "3532", - "id": 32735, + "id": 34293, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "21014:8:27", + "src": "21014:8:31", "subdenomination": "weeks", "typeDescriptions": { "typeIdentifier": "t_rational_31449600_by_1", @@ -34276,35 +36138,36 @@ "typeString": "int_const 31449600" } ], - "id": 32734, + "id": 34292, "name": "skip", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "21009:4:27", + "referencedDeclaration": 4833, + "src": "21009:4:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 32736, + "id": 34294, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21009:14:27", + "src": "21009:14:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32737, + "id": 34295, "nodeType": "ExpressionStatement", - "src": "21009:14:27" + "src": "21009:14:31" }, { "expression": { @@ -34314,14 +36177,14 @@ { "arguments": [ { - "id": 32743, + "id": 34301, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "21139:7:27", + "referencedDeclaration": 32093, + "src": "21139:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } } @@ -34329,38 +36192,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } ], - "id": 32742, + "id": 34300, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "21131:7:27", + "src": "21131:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32741, + "id": 34299, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21131:7:27", + "src": "21131:7:31", "typeDescriptions": {} } }, - "id": 32744, + "id": 34302, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21131:16:27", + "src": "21131:16:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34376,40 +36240,42 @@ } ], "expression": { - "id": 32739, + "id": 34297, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "21117:3:27", + "referencedDeclaration": 31568, + "src": "21117:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } }, - "id": 32740, + "id": 34298, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "21121:9:31", "memberName": "try_claim", "nodeType": "MemberAccess", - "referencedDeclaration": 29768, - "src": "21117:13:27", + "referencedDeclaration": 30378, + "src": "21117:13:31", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_bool_$", "typeString": "function (address) external returns (bool)" } }, - "id": 32745, + "id": 34303, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21117:31:27", + "src": "21117:31:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -34424,35 +36290,36 @@ "typeString": "bool" } ], - "id": 32738, + "id": 34296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -3, - "src": "21110:6:27", + "src": "21110:6:31", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 32746, + "id": 34304, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21110:39:27", + "src": "21110:39:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32747, + "id": 34305, "nodeType": "ExpressionStatement", - "src": "21110:39:27" + "src": "21110:39:31" }, { "expression": { @@ -34462,14 +36329,14 @@ { "arguments": [ { - "id": 32757, + "id": 34315, "name": "dev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30010, - "src": "21279:3:27", + "referencedDeclaration": 31568, + "src": "21279:3:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } } @@ -34477,38 +36344,39 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Actor_$29769", + "typeIdentifier": "t_contract$_Actor_$30379", "typeString": "contract Actor" } ], - "id": 32756, + "id": 34314, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "21271:7:27", + "src": "21271:7:31", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 32755, + "id": 34313, "name": "address", "nodeType": "ElementaryTypeName", - "src": "21271:7:27", + "src": "21271:7:31", "typeDescriptions": {} } }, - "id": 32758, + "id": 34316, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21271:12:27", + "src": "21271:12:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34530,40 +36398,42 @@ "expression": { "argumentTypes": [], "expression": { - "id": 32750, + "id": 34308, "name": "vesting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30535, - "src": "21239:7:27", + "referencedDeclaration": 32093, + "src": "21239:7:31", "typeDescriptions": { - "typeIdentifier": "t_contract$_Vesting_$28040", + "typeIdentifier": "t_contract$_Vesting_$28096", "typeString": "contract Vesting" } }, - "id": 32751, + "id": 34309, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "21247:10:31", "memberName": "proveToken", "nodeType": "MemberAccess", - "referencedDeclaration": 27449, - "src": "21239:18:27", + "referencedDeclaration": 27505, + "src": "21239:18:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", "typeString": "function () view external returns (address)" } }, - "id": 32752, + "id": 34310, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21239:20:27", + "src": "21239:20:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -34578,55 +36448,58 @@ "typeString": "address" } ], - "id": 32749, + "id": 34307, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 29102, - "src": "21232:6:27", + "referencedDeclaration": 29158, + "src": "21232:6:31", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$29102_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$29158_$", "typeString": "type(contract IERC20)" } }, - "id": 32753, + "id": 34311, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21232:28:27", + "src": "21232:28:31", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$29102", + "typeIdentifier": "t_contract$_IERC20_$29158", "typeString": "contract IERC20" } }, - "id": 32754, + "id": 34312, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "21261:9:31", "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 29041, - "src": "21232:38:27", + "referencedDeclaration": 29097, + "src": "21232:38:31", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 32759, + "id": 34317, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21232:52:27", + "src": "21232:52:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -34634,12 +36507,12 @@ } }, { - "id": 32760, + "id": 34318, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 32556, - "src": "21286:7:27", + "referencedDeclaration": 34114, + "src": "21286:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34657,20 +36530,20 @@ "typeString": "uint256" } ], - "id": 32748, + "id": 34306, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ - 1974, - 1999, - 2012, - 2028, - 2070, - 2112, - 2154, + 2011, + 2036, + 2049, + 2065, + 2107, + 2149, 2191, 2228, 2265, + 2302, 320, 345, 375, @@ -34683,37 +36556,38 @@ 1674 ], "referencedDeclaration": 514, - "src": "21223:8:27", + "src": "21223:8:31", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, - "id": 32761, + "id": 34319, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21223:71:27", + "src": "21223:71:31", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 32762, + "id": 34320, "nodeType": "ExpressionStatement", - "src": "21223:71:27" + "src": "21223:71:31" } ] }, "documentation": { - "id": 32554, + "id": 34112, "nodeType": "StructuredDocumentation", - "src": "19155:50:27", + "src": "19155:50:31", "text": "@dev Verifies claim() edge cases using fuzzing" }, "functionSelector": "c375033d", @@ -34721,20 +36595,20 @@ "kind": "function", "modifiers": [], "name": "test_vesting_claim_fuzzing2", - "nameLocation": "19220:27:27", + "nameLocation": "19220:27:31", "parameters": { - "id": 32557, + "id": 34115, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 32556, + "id": 34114, "mutability": "mutable", "name": "_amount", - "nameLocation": "19256:7:27", + "nameLocation": "19256:7:31", "nodeType": "VariableDeclaration", - "scope": 32764, - "src": "19248:15:27", + "scope": 34322, + "src": "19248:15:31", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34742,10 +36616,10 @@ "typeString": "uint256" }, "typeName": { - "id": 32555, + "id": 34113, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "19248:7:27", + "src": "19248:7:31", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34754,15 +36628,15 @@ "visibility": "internal" } ], - "src": "19247:17:27" + "src": "19247:17:31" }, "returnParameters": { - "id": 32558, + "id": 34116, "nodeType": "ParameterList", "parameters": [], - "src": "19272:0:27" + "src": "19272:0:31" }, - "scope": 32765, + "scope": 34323, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" @@ -34772,56 +36646,62 @@ "baseContracts": [ { "baseName": { - "id": 30529, + "id": 32087, "name": "Utility", + "nameLocations": [ + "232:7:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 30522, - "src": "232:7:27" + "referencedDeclaration": 32080, + "src": "232:7:31" }, - "id": 30530, + "id": 32088, "nodeType": "InheritanceSpecifier", - "src": "232:7:27" + "src": "232:7:31" }, { "baseName": { - "id": 30531, + "id": 32089, "name": "Test", + "nameLocations": [ + "241:4:31" + ], "nodeType": "IdentifierPath", - "referencedDeclaration": 8158, - "src": "241:4:27" + "referencedDeclaration": 8195, + "src": "241:4:31" }, - "id": 30532, + "id": 32090, "nodeType": "InheritanceSpecifier", - "src": "241:4:27" + "src": "241:4:31" } ], "canonicalName": "VestingTest", "contractDependencies": [ - 28040, - 29769 + 28096, + 30379 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ - 32765, - 8158, + 34323, + 8195, 1843, 1840, - 8116, - 5144, - 4755, - 3207, - 2671, - 30522, + 8153, + 5181, + 4792, + 3244, + 2708, + 32080, 1786 ], "name": "VestingTest", - "nameLocation": "217:11:27", - "scope": 32766, + "nameLocation": "217:11:31", + "scope": 34324, "usedErrors": [] } ], "license": "UNLICENSED" }, - "id": 27 + "id": 31 } \ No newline at end of file diff --git a/out/Vm.sol/Vm.json b/out/Vm.sol/Vm.json index 89c4f35..1728451 100644 --- a/out/Vm.sol/Vm.json +++ b/out/Vm.sol/Vm.json @@ -3068,6 +3068,2908 @@ "writeJson(string,string,string)": "35d6ad46", "writeLine(string,string)": "619d897f" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"accesses\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"readSlots\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"writeSlots\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activeFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"allowCheatcodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"condition\",\"type\":\"bool\"}],\"name\":\"assume\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newChainId\",\"type\":\"uint256\"}],\"name\":\"chainId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"clearMockedCalls\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"closeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newCoinbase\",\"type\":\"address\"}],\"name\":\"coinbase\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"}],\"name\":\"createFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"createFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"createFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"createSelectFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"createSelectFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"urlOrAlias\",\"type\":\"string\"}],\"name\":\"createSelectFork\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"newBalance\",\"type\":\"uint256\"}],\"name\":\"deal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"derivationPath\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newDifficulty\",\"type\":\"uint256\"}],\"name\":\"difficulty\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"defaultValue\",\"type\":\"bytes32[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"defaultValue\",\"type\":\"int256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"defaultValue\",\"type\":\"bool\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"defaultValue\",\"type\":\"address\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"defaultValue\",\"type\":\"uint256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"defaultValue\",\"type\":\"bytes[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"defaultValue\",\"type\":\"uint256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"defaultValue\",\"type\":\"string[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"defaultValue\",\"type\":\"bytes\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"defaultValue\",\"type\":\"bytes32\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"defaultValue\",\"type\":\"int256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"defaultValue\",\"type\":\"address[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"defaultValue\",\"type\":\"string\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"defaultValue\",\"type\":\"bool[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"newRuntimeBytecode\",\"type\":\"bytes\"}],\"name\":\"etch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"expectCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"msgValue\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"expectCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"checkTopic1\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic2\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic3\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkData\",\"type\":\"bool\"}],\"name\":\"expectEmit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"checkTopic1\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic2\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkTopic3\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"checkData\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"emitter\",\"type\":\"address\"}],\"name\":\"expectEmit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"revertData\",\"type\":\"bytes4\"}],\"name\":\"expectRevert\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"revertData\",\"type\":\"bytes\"}],\"name\":\"expectRevert\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"expectRevert\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newBasefee\",\"type\":\"uint256\"}],\"name\":\"fee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"commandInput\",\"type\":\"string[]\"}],\"name\":\"ffi\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"fileOrDir\",\"type\":\"string\"}],\"name\":\"fsMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"readOnly\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"modified\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"created\",\"type\":\"uint256\"}],\"internalType\":\"struct VmSafe.FsMetadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"creationBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getDeployedCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"runtimeBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getNonce\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"nonce\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRecordedLogs\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32[]\",\"name\":\"topics\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"emitter\",\"type\":\"address\"}],\"internalType\":\"struct VmSafe.Log[]\",\"name\":\"logs\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isPersistent\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"persistent\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"newLabel\",\"type\":\"string\"}],\"name\":\"label\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"}],\"name\":\"load\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account0\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account1\",\"type\":\"address\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account0\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account1\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"account2\",\"type\":\"address\"}],\"name\":\"makePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"msgValue\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"name\":\"mockCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"callee\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"name\":\"mockCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"parsedValue\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"parsedValue\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"parsedValue\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"parsedValue\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"parsedValue\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"parsedValue\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pauseGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"txOrigin\",\"type\":\"address\"}],\"name\":\"prank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"}],\"name\":\"prank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"projectRoot\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFile\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFileBinary\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readLine\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"line\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"record\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recordLogs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"rememberKey\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"removeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resumeGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"snapshotId\",\"type\":\"uint256\"}],\"name\":\"revertTo\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"}],\"name\":\"revokePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokePersistent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newHeight\",\"type\":\"uint256\"}],\"name\":\"roll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"rollFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"rpcAlias\",\"type\":\"string\"}],\"name\":\"rpcUrl\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrlStructs\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"internalType\":\"struct VmSafe.Rpc[]\",\"name\":\"urls\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrls\",\"outputs\":[{\"internalType\":\"string[2][]\",\"name\":\"urls\",\"type\":\"string[2][]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"}],\"name\":\"selectFork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"values\",\"type\":\"address[]\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"values\",\"type\":\"bool[]\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"values\",\"type\":\"bytes32[]\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"values\",\"type\":\"int256[]\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"values\",\"type\":\"string[]\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setEnv\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"newNonce\",\"type\":\"uint64\"}],\"name\":\"setNonce\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"digest\",\"type\":\"bytes32\"}],\"name\":\"sign\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"snapshot\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"snapshotId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"}],\"name\":\"startPrank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"txOrigin\",\"type\":\"address\"}],\"name\":\"startPrank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopPrank\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"store\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"forkId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"transact\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"}],\"name\":\"transact\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newTimestamp\",\"type\":\"uint256\"}],\"name\":\"warp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"writeFileBinary\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeLine\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"activeFork()\":{\"notice\":\"Returns the identifier of the currently active fork. Reverts if no fork is currently active.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Vm.sol\":\"Vm\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "accesses", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "readSlots", + "type": "bytes32[]" + }, + { + "internalType": "bytes32[]", + "name": "writeSlots", + "type": "bytes32[]" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "activeFork", + "outputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "addr", + "outputs": [ + { + "internalType": "address", + "name": "keyAddr", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "allowCheatcodes" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "condition", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "assume" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "broadcast" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "signer", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "broadcast" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "broadcast" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newChainId", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "chainId" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "clearMockedCalls" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "closeFile" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newCoinbase", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "coinbase" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "urlOrAlias", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createFork", + "outputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "urlOrAlias", + "type": "string" + }, + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createFork", + "outputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "urlOrAlias", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createFork", + "outputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "urlOrAlias", + "type": "string" + }, + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createSelectFork", + "outputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "urlOrAlias", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createSelectFork", + "outputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "urlOrAlias", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "createSelectFork", + "outputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "newBalance", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "deal" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "mnemonic", + "type": "string" + }, + { + "internalType": "uint32", + "name": "index", + "type": "uint32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "deriveKey", + "outputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "mnemonic", + "type": "string" + }, + { + "internalType": "string", + "name": "derivationPath", + "type": "string" + }, + { + "internalType": "uint32", + "name": "index", + "type": "uint32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "deriveKey", + "outputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newDifficulty", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "difficulty" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envAddress", + "outputs": [ + { + "internalType": "address", + "name": "value", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envAddress", + "outputs": [ + { + "internalType": "address[]", + "name": "value", + "type": "address[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBool", + "outputs": [ + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBool", + "outputs": [ + { + "internalType": "bool[]", + "name": "value", + "type": "bool[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes", + "outputs": [ + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes", + "outputs": [ + { + "internalType": "bytes[]", + "name": "value", + "type": "bytes[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes32", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "value", + "type": "bytes32[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes32", + "outputs": [ + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envInt", + "outputs": [ + { + "internalType": "int256[]", + "name": "value", + "type": "int256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envInt", + "outputs": [ + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "bytes32[]", + "name": "defaultValue", + "type": "bytes32[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "value", + "type": "bytes32[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "int256[]", + "name": "defaultValue", + "type": "int256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "int256[]", + "name": "value", + "type": "int256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "bool", + "name": "defaultValue", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "address", + "name": "defaultValue", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "address", + "name": "value", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "uint256", + "name": "defaultValue", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "bytes[]", + "name": "defaultValue", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes[]", + "name": "value", + "type": "bytes[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "uint256[]", + "name": "defaultValue", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "uint256[]", + "name": "value", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "string[]", + "name": "defaultValue", + "type": "string[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "string[]", + "name": "value", + "type": "string[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "bytes", + "name": "defaultValue", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "defaultValue", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "int256", + "name": "defaultValue", + "type": "int256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "address[]", + "name": "defaultValue", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "address[]", + "name": "value", + "type": "address[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "defaultValue", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "string", + "name": "value", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "bool[]", + "name": "defaultValue", + "type": "bool[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bool[]", + "name": "value", + "type": "bool[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envString", + "outputs": [ + { + "internalType": "string[]", + "name": "value", + "type": "string[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envString", + "outputs": [ + { + "internalType": "string", + "name": "value", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envUint", + "outputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envUint", + "outputs": [ + { + "internalType": "uint256[]", + "name": "value", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes", + "name": "newRuntimeBytecode", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "etch" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "callee", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "expectCall" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "callee", + "type": "address" + }, + { + "internalType": "uint256", + "name": "msgValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "expectCall" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "checkTopic1", + "type": "bool" + }, + { + "internalType": "bool", + "name": "checkTopic2", + "type": "bool" + }, + { + "internalType": "bool", + "name": "checkTopic3", + "type": "bool" + }, + { + "internalType": "bool", + "name": "checkData", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "expectEmit" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "checkTopic1", + "type": "bool" + }, + { + "internalType": "bool", + "name": "checkTopic2", + "type": "bool" + }, + { + "internalType": "bool", + "name": "checkTopic3", + "type": "bool" + }, + { + "internalType": "bool", + "name": "checkData", + "type": "bool" + }, + { + "internalType": "address", + "name": "emitter", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "expectEmit" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "revertData", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "expectRevert" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "revertData", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "expectRevert" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "expectRevert" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newBasefee", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "fee" + }, + { + "inputs": [ + { + "internalType": "string[]", + "name": "commandInput", + "type": "string[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "ffi", + "outputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "fileOrDir", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "fsMetadata", + "outputs": [ + { + "internalType": "struct VmSafe.FsMetadata", + "name": "metadata", + "type": "tuple", + "components": [ + { + "internalType": "bool", + "name": "isDir", + "type": "bool" + }, + { + "internalType": "bool", + "name": "isSymlink", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "readOnly", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "modified", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accessed", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "created", + "type": "uint256" + } + ] + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "artifactPath", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getCode", + "outputs": [ + { + "internalType": "bytes", + "name": "creationBytecode", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "artifactPath", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getDeployedCode", + "outputs": [ + { + "internalType": "bytes", + "name": "runtimeBytecode", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getNonce", + "outputs": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "getRecordedLogs", + "outputs": [ + { + "internalType": "struct VmSafe.Log[]", + "name": "logs", + "type": "tuple[]", + "components": [ + { + "internalType": "bytes32[]", + "name": "topics", + "type": "bytes32[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "address", + "name": "emitter", + "type": "address" + } + ] + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "isPersistent", + "outputs": [ + { + "internalType": "bool", + "name": "persistent", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "string", + "name": "newLabel", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "label" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "slot", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function", + "name": "load", + "outputs": [ + { + "internalType": "bytes32", + "name": "data", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "makePersistent" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account0", + "type": "address" + }, + { + "internalType": "address", + "name": "account1", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "makePersistent" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "makePersistent" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account0", + "type": "address" + }, + { + "internalType": "address", + "name": "account1", + "type": "address" + }, + { + "internalType": "address", + "name": "account2", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "makePersistent" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "callee", + "type": "address" + }, + { + "internalType": "uint256", + "name": "msgValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "returnData", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "mockCall" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "callee", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "returnData", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "mockCall" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseAddress", + "outputs": [ + { + "internalType": "address", + "name": "parsedValue", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseBool", + "outputs": [ + { + "internalType": "bool", + "name": "parsedValue", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseBytes", + "outputs": [ + { + "internalType": "bytes", + "name": "parsedValue", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseBytes32", + "outputs": [ + { + "internalType": "bytes32", + "name": "parsedValue", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseInt", + "outputs": [ + { + "internalType": "int256", + "name": "parsedValue", + "type": "int256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseJson", + "outputs": [ + { + "internalType": "bytes", + "name": "abiEncodedData", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + }, + { + "internalType": "string", + "name": "key", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseJson", + "outputs": [ + { + "internalType": "bytes", + "name": "abiEncodedData", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseUint", + "outputs": [ + { + "internalType": "uint256", + "name": "parsedValue", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "pauseGasMetering" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "msgSender", + "type": "address" + }, + { + "internalType": "address", + "name": "txOrigin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "prank" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "msgSender", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "prank" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "projectRoot", + "outputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "readFile", + "outputs": [ + { + "internalType": "string", + "name": "data", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "readFileBinary", + "outputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "readLine", + "outputs": [ + { + "internalType": "string", + "name": "line", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "record" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "recordLogs" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "rememberKey", + "outputs": [ + { + "internalType": "address", + "name": "keyAddr", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeFile" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "resumeGasMetering" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "snapshotId", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revertTo", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokePersistent" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokePersistent" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newHeight", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "roll" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "rollFork" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "rollFork" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "rollFork" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "rollFork" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "rpcAlias", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "rpcUrl", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "rpcUrlStructs", + "outputs": [ + { + "internalType": "struct VmSafe.Rpc[]", + "name": "urls", + "type": "tuple[]", + "components": [ + { + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "internalType": "string", + "name": "url", + "type": "string" + } + ] + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "rpcUrls", + "outputs": [ + { + "internalType": "string[2][]", + "name": "urls", + "type": "string[2][]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "selectFork" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "address[]", + "name": "values", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeAddress", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "address", + "name": "value", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeAddress", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bool[]", + "name": "values", + "type": "bool[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBool", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBool", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes[]", + "name": "values", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes32[]", + "name": "values", + "type": "bytes32[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes32", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes32", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeInt", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "int256[]", + "name": "values", + "type": "int256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeInt", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "string[]", + "name": "values", + "type": "string[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeString", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeString", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeUint", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeUint", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setEnv" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint64", + "name": "newNonce", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setNonce" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "digest", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "sign", + "outputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "snapshot", + "outputs": [ + { + "internalType": "uint256", + "name": "snapshotId", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "startBroadcast" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "signer", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "startBroadcast" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "startBroadcast" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "msgSender", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "startPrank" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "msgSender", + "type": "address" + }, + { + "internalType": "address", + "name": "txOrigin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "startPrank" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "stopBroadcast" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "stopPrank" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "slot", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "store" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "value", + "type": "address" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "forkId", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transact" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "transact" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newTimestamp", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "warp" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "string", + "name": "data", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeFile" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeFileBinary" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + }, + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeJson" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + }, + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeJson" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "string", + "name": "data", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeLine" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": { + "activeFork()": { + "notice": "Returns the identifier of the currently active fork. Reverts if no fork is currently active." + } + }, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/Vm.sol": "Vm" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/Vm.sol", "id": 9353, @@ -3086,6 +5988,7 @@ "id": 8197, "nodeType": "PragmaDirective", "src": "32:31:12", + "nodes": [], "literals": [ "solidity", ">=", @@ -3100,6 +6003,7 @@ "id": 8198, "nodeType": "PragmaDirective", "src": "65:33:12", + "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -3114,6 +6018,7 @@ "id": 8206, "nodeType": "StructDefinition", "src": "594:89:12", + "nodes": [], "canonicalName": "VmSafe.Log", "members": [ { @@ -3217,6 +6122,7 @@ "id": 8211, "nodeType": "StructDefinition", "src": "689:58:12", + "nodes": [], "canonicalName": "VmSafe.Rpc", "members": [ { @@ -3283,6 +6189,7 @@ "id": 8226, "nodeType": "StructDefinition", "src": "753:193:12", + "nodes": [], "canonicalName": "VmSafe.FsMetadata", "members": [ { @@ -3484,6 +6391,7 @@ "id": 8235, "nodeType": "FunctionDefinition", "src": "996:81:12", + "nodes": [], "functionSelector": "667f9d70", "implemented": false, "kind": "function", @@ -3595,6 +6503,7 @@ "id": 8248, "nodeType": "FunctionDefinition", "src": "1100:104:12", + "nodes": [], "functionSelector": "e341eaa4", "implemented": false, "kind": "function", @@ -3759,6 +6668,7 @@ "id": 8255, "nodeType": "FunctionDefinition", "src": "1257:74:12", + "nodes": [], "functionSelector": "ffa18649", "implemented": false, "kind": "function", @@ -3843,6 +6753,7 @@ "id": 8262, "nodeType": "FunctionDefinition", "src": "1372:72:12", + "nodes": [], "functionSelector": "2d0335ab", "implemented": false, "kind": "function", @@ -3927,6 +6838,7 @@ "id": 8270, "nodeType": "FunctionDefinition", "src": "1506:84:12", + "nodes": [], "functionSelector": "89160467", "implemented": false, "kind": "function", @@ -4019,6 +6931,7 @@ "id": 8277, "nodeType": "FunctionDefinition", "src": "1629:70:12", + "nodes": [], "functionSelector": "3d5923ee", "implemented": false, "kind": "function", @@ -4101,6 +7014,7 @@ "id": 8284, "nodeType": "FunctionDefinition", "src": "1758:74:12", + "nodes": [], "functionSelector": "7ed1ec7d", "implemented": false, "kind": "function", @@ -4184,6 +7098,7 @@ "id": 8291, "nodeType": "FunctionDefinition", "src": "1837:77:12", + "nodes": [], "functionSelector": "c1978d1f", "implemented": false, "kind": "function", @@ -4267,6 +7182,7 @@ "id": 8298, "nodeType": "FunctionDefinition", "src": "1919:75:12", + "nodes": [], "functionSelector": "892a0c61", "implemented": false, "kind": "function", @@ -4350,6 +7266,7 @@ "id": 8305, "nodeType": "FunctionDefinition", "src": "1999:80:12", + "nodes": [], "functionSelector": "350d56bf", "implemented": false, "kind": "function", @@ -4434,6 +7351,7 @@ "id": 8312, "nodeType": "FunctionDefinition", "src": "2084:80:12", + "nodes": [], "functionSelector": "97949042", "implemented": false, "kind": "function", @@ -4517,6 +7435,7 @@ "id": 8319, "nodeType": "FunctionDefinition", "src": "2169:85:12", + "nodes": [], "functionSelector": "f877cb19", "implemented": false, "kind": "function", @@ -4600,6 +7519,7 @@ "id": 8326, "nodeType": "FunctionDefinition", "src": "2259:83:12", + "nodes": [], "functionSelector": "4d7baf06", "implemented": false, "kind": "function", @@ -4683,6 +7603,7 @@ "id": 8336, "nodeType": "FunctionDefinition", "src": "2392:106:12", + "nodes": [], "functionSelector": "aaaddeaf", "implemented": false, "kind": "function", @@ -4802,6 +7723,7 @@ "id": 8346, "nodeType": "FunctionDefinition", "src": "2503:109:12", + "nodes": [], "functionSelector": "f3dec099", "implemented": false, "kind": "function", @@ -4921,6 +7843,7 @@ "id": 8356, "nodeType": "FunctionDefinition", "src": "2617:107:12", + "nodes": [], "functionSelector": "42181150", "implemented": false, "kind": "function", @@ -5040,6 +7963,7 @@ "id": 8366, "nodeType": "FunctionDefinition", "src": "2729:112:12", + "nodes": [], "functionSelector": "ad31b9fa", "implemented": false, "kind": "function", @@ -5160,6 +8084,7 @@ "id": 8376, "nodeType": "FunctionDefinition", "src": "2846:112:12", + "nodes": [], "functionSelector": "5af231c1", "implemented": false, "kind": "function", @@ -5279,6 +8204,7 @@ "id": 8386, "nodeType": "FunctionDefinition", "src": "2963:110:12", + "nodes": [], "functionSelector": "14b02bc9", "implemented": false, "kind": "function", @@ -5398,6 +8324,7 @@ "id": 8396, "nodeType": "FunctionDefinition", "src": "3078:108:12", + "nodes": [], "functionSelector": "ddc2651b", "implemented": false, "kind": "function", @@ -5517,6 +8444,7 @@ "id": 8405, "nodeType": "FunctionDefinition", "src": "3244:86:12", + "nodes": [], "functionSelector": "4777f3cf", "implemented": false, "kind": "function", @@ -5627,6 +8555,7 @@ "id": 8414, "nodeType": "FunctionDefinition", "src": "3335:92:12", + "nodes": [], "functionSelector": "5e97348f", "implemented": false, "kind": "function", @@ -5737,6 +8666,7 @@ "id": 8423, "nodeType": "FunctionDefinition", "src": "3432:90:12", + "nodes": [], "functionSelector": "bbcb713e", "implemented": false, "kind": "function", @@ -5847,6 +8777,7 @@ "id": 8432, "nodeType": "FunctionDefinition", "src": "3527:92:12", + "nodes": [], "functionSelector": "561fe540", "implemented": false, "kind": "function", @@ -5959,6 +8890,7 @@ "id": 8441, "nodeType": "FunctionDefinition", "src": "3624:92:12", + "nodes": [], "functionSelector": "b4a85892", "implemented": false, "kind": "function", @@ -6069,6 +9001,7 @@ "id": 8450, "nodeType": "FunctionDefinition", "src": "3721:106:12", + "nodes": [], "functionSelector": "d145736c", "implemented": false, "kind": "function", @@ -6179,6 +9112,7 @@ "id": 8459, "nodeType": "FunctionDefinition", "src": "3832:104:12", + "nodes": [], "functionSelector": "b3e47705", "implemented": false, "kind": "function", @@ -6289,6 +9223,7 @@ "id": 8472, "nodeType": "FunctionDefinition", "src": "4004:145:12", + "nodes": [], "functionSelector": "eb85e83b", "implemented": false, "kind": "function", @@ -6444,6 +9379,7 @@ "id": 8485, "nodeType": "FunctionDefinition", "src": "4154:151:12", + "nodes": [], "functionSelector": "74318528", "implemented": false, "kind": "function", @@ -6599,6 +9535,7 @@ "id": 8498, "nodeType": "FunctionDefinition", "src": "4310:149:12", + "nodes": [], "functionSelector": "4700d74b", "implemented": false, "kind": "function", @@ -6754,6 +9691,7 @@ "id": 8511, "nodeType": "FunctionDefinition", "src": "4464:151:12", + "nodes": [], "functionSelector": "c74e9deb", "implemented": false, "kind": "function", @@ -6911,6 +9849,7 @@ "id": 8524, "nodeType": "FunctionDefinition", "src": "4620:151:12", + "nodes": [], "functionSelector": "2281f367", "implemented": false, "kind": "function", @@ -7066,6 +10005,7 @@ "id": 8537, "nodeType": "FunctionDefinition", "src": "4776:149:12", + "nodes": [], "functionSelector": "859216bc", "implemented": false, "kind": "function", @@ -7221,6 +10161,7 @@ "id": 8550, "nodeType": "FunctionDefinition", "src": "4930:147:12", + "nodes": [], "functionSelector": "64bc3e64", "implemented": false, "kind": "function", @@ -7376,6 +10317,7 @@ "id": 8553, "nodeType": "FunctionDefinition", "src": "5126:27:12", + "nodes": [], "functionSelector": "266cf109", "implemented": false, "kind": "function", @@ -7403,6 +10345,7 @@ "id": 8564, "nodeType": "FunctionDefinition", "src": "5250:109:12", + "nodes": [], "functionSelector": "65bc9481", "implemented": false, "kind": "function", @@ -7532,6 +10475,7 @@ "id": 8571, "nodeType": "FunctionDefinition", "src": "5467:101:12", + "nodes": [], "functionSelector": "8d1cc925", "implemented": false, "kind": "function", @@ -7615,6 +10559,7 @@ "id": 8578, "nodeType": "FunctionDefinition", "src": "5676:108:12", + "nodes": [], "functionSelector": "3ebf73b4", "implemented": false, "kind": "function", @@ -7698,6 +10643,7 @@ "id": 8585, "nodeType": "FunctionDefinition", "src": "5829:67:12", + "nodes": [], "functionSelector": "c657c718", "implemented": false, "kind": "function", @@ -7781,6 +10727,7 @@ "id": 8588, "nodeType": "FunctionDefinition", "src": "6063:30:12", + "nodes": [], "functionSelector": "afc98040", "implemented": false, "kind": "function", @@ -7808,6 +10755,7 @@ "id": 8593, "nodeType": "FunctionDefinition", "src": "6252:44:12", + "nodes": [], "functionSelector": "e6962cdb", "implemented": false, "kind": "function", @@ -7864,6 +10812,7 @@ "id": 8598, "nodeType": "FunctionDefinition", "src": "6459:48:12", + "nodes": [], "functionSelector": "f67a965b", "implemented": false, "kind": "function", @@ -7919,6 +10868,7 @@ "id": 8601, "nodeType": "FunctionDefinition", "src": "6680:35:12", + "nodes": [], "functionSelector": "7fb5297f", "implemented": false, "kind": "function", @@ -7946,6 +10896,7 @@ "id": 8606, "nodeType": "FunctionDefinition", "src": "6866:49:12", + "nodes": [], "functionSelector": "7fec2a8d", "implemented": false, "kind": "function", @@ -8002,6 +10953,7 @@ "id": 8611, "nodeType": "FunctionDefinition", "src": "7070:53:12", + "nodes": [], "functionSelector": "ce817d47", "implemented": false, "kind": "function", @@ -8057,6 +11009,7 @@ "id": 8614, "nodeType": "FunctionDefinition", "src": "7173:34:12", + "nodes": [], "functionSelector": "76eadd36", "implemented": false, "kind": "function", @@ -8084,6 +11037,7 @@ "id": 8621, "nodeType": "FunctionDefinition", "src": "7262:83:12", + "nodes": [], "functionSelector": "60f9bb11", "implemented": false, "kind": "function", @@ -8167,6 +11121,7 @@ "id": 8628, "nodeType": "FunctionDefinition", "src": "7439:88:12", + "nodes": [], "functionSelector": "16ed7bc4", "implemented": false, "kind": "function", @@ -8250,6 +11205,7 @@ "id": 8633, "nodeType": "FunctionDefinition", "src": "7580:66:12", + "nodes": [], "functionSelector": "d930a0e6", "implemented": false, "kind": "function", @@ -8305,6 +11261,7 @@ "id": 8641, "nodeType": "FunctionDefinition", "src": "7696:93:12", + "nodes": [], "functionSelector": "af368a08", "implemented": false, "kind": "function", @@ -8370,6 +11327,9 @@ "pathNode": { "id": 8637, "name": "FsMetadata", + "nameLocations": [ + "7761:10:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8226, "src": "7761:10:12" @@ -8395,6 +11355,7 @@ "id": 8648, "nodeType": "FunctionDefinition", "src": "7835:83:12", + "nodes": [], "functionSelector": "70f55728", "implemented": false, "kind": "function", @@ -8478,6 +11439,7 @@ "id": 8655, "nodeType": "FunctionDefinition", "src": "8037:72:12", + "nodes": [], "functionSelector": "897e0a97", "implemented": false, "kind": "function", @@ -8560,6 +11522,7 @@ "id": 8662, "nodeType": "FunctionDefinition", "src": "8282:77:12", + "nodes": [], "functionSelector": "1f21fc80", "implemented": false, "kind": "function", @@ -8642,6 +11605,7 @@ "id": 8669, "nodeType": "FunctionDefinition", "src": "8430:72:12", + "nodes": [], "functionSelector": "619d897f", "implemented": false, "kind": "function", @@ -8724,6 +11688,7 @@ "id": 8674, "nodeType": "FunctionDefinition", "src": "8614:50:12", + "nodes": [], "functionSelector": "48c3241f", "implemented": false, "kind": "function", @@ -8779,6 +11744,7 @@ "id": 8679, "nodeType": "FunctionDefinition", "src": "8912:51:12", + "nodes": [], "functionSelector": "f1afe04d", "implemented": false, "kind": "function", @@ -8834,6 +11800,7 @@ "id": 8686, "nodeType": "FunctionDefinition", "src": "9002:88:12", + "nodes": [], "functionSelector": "56ca623e", "implemented": false, "kind": "function", @@ -8918,6 +11885,7 @@ "id": 8693, "nodeType": "FunctionDefinition", "src": "9095:95:12", + "nodes": [], "functionSelector": "71aad10d", "implemented": false, "kind": "function", @@ -9001,6 +11969,7 @@ "id": 8700, "nodeType": "FunctionDefinition", "src": "9195:88:12", + "nodes": [], "functionSelector": "b11a19e8", "implemented": false, "kind": "function", @@ -9084,6 +12053,7 @@ "id": 8707, "nodeType": "FunctionDefinition", "src": "9288:85:12", + "nodes": [], "functionSelector": "71dce7da", "implemented": false, "kind": "function", @@ -9167,6 +12137,7 @@ "id": 8714, "nodeType": "FunctionDefinition", "src": "9378:88:12", + "nodes": [], "functionSelector": "6900a3ae", "implemented": false, "kind": "function", @@ -9250,6 +12221,7 @@ "id": 8721, "nodeType": "FunctionDefinition", "src": "9471:87:12", + "nodes": [], "functionSelector": "a322c40e", "implemented": false, "kind": "function", @@ -9333,6 +12305,7 @@ "id": 8728, "nodeType": "FunctionDefinition", "src": "9599:103:12", + "nodes": [], "functionSelector": "8f5d232d", "implemented": false, "kind": "function", @@ -9416,6 +12389,7 @@ "id": 8735, "nodeType": "FunctionDefinition", "src": "9707:100:12", + "nodes": [], "functionSelector": "c6ce059d", "implemented": false, "kind": "function", @@ -9500,6 +12474,7 @@ "id": 8742, "nodeType": "FunctionDefinition", "src": "9812:97:12", + "nodes": [], "functionSelector": "fa91454d", "implemented": false, "kind": "function", @@ -9583,6 +12558,7 @@ "id": 8749, "nodeType": "FunctionDefinition", "src": "9914:95:12", + "nodes": [], "functionSelector": "42346c5e", "implemented": false, "kind": "function", @@ -9666,6 +12642,7 @@ "id": 8756, "nodeType": "FunctionDefinition", "src": "10014:100:12", + "nodes": [], "functionSelector": "087e6e81", "implemented": false, "kind": "function", @@ -9749,6 +12726,7 @@ "id": 8763, "nodeType": "FunctionDefinition", "src": "10119:94:12", + "nodes": [], "functionSelector": "974ef924", "implemented": false, "kind": "function", @@ -9832,6 +12810,7 @@ "id": 8766, "nodeType": "FunctionDefinition", "src": "10257:31:12", + "nodes": [], "functionSelector": "41af2f52", "implemented": false, "kind": "function", @@ -9859,6 +12838,7 @@ "id": 8773, "nodeType": "FunctionDefinition", "src": "10327:64:12", + "nodes": [], "functionSelector": "191553a4", "implemented": false, "kind": "function", @@ -9897,6 +12877,9 @@ "pathNode": { "id": 8768, "name": "Log", + "nameLocations": [ + "10372:3:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8206, "src": "10372:3:12" @@ -9930,6 +12913,7 @@ "id": 8782, "nodeType": "FunctionDefinition", "src": "10526:102:12", + "nodes": [], "functionSelector": "6229498b", "implemented": false, "kind": "function", @@ -10040,6 +13024,7 @@ "id": 8793, "nodeType": "FunctionDefinition", "src": "10744:158:12", + "nodes": [], "functionSelector": "6bcb2c1b", "implemented": false, "kind": "function", @@ -10177,6 +13162,7 @@ "id": 8800, "nodeType": "FunctionDefinition", "src": "10983:76:12", + "nodes": [], "functionSelector": "22100064", "implemented": false, "kind": "function", @@ -10261,6 +13247,7 @@ "id": 8809, "nodeType": "FunctionDefinition", "src": "12092:114:12", + "nodes": [], "functionSelector": "85940ef1", "implemented": false, "kind": "function", @@ -10371,6 +13358,7 @@ "id": 8816, "nodeType": "FunctionDefinition", "src": "12211:93:12", + "nodes": [], "functionSelector": "6a82600a", "implemented": false, "kind": "function", @@ -10454,6 +13442,7 @@ "id": 8827, "nodeType": "FunctionDefinition", "src": "12500:142:12", + "nodes": [], "functionSelector": "ac22e971", "implemented": false, "kind": "function", @@ -10591,6 +13580,7 @@ "id": 8838, "nodeType": "FunctionDefinition", "src": "12647:145:12", + "nodes": [], "functionSelector": "129e9002", "implemented": false, "kind": "function", @@ -10728,6 +13718,7 @@ "id": 8849, "nodeType": "FunctionDefinition", "src": "12797:143:12", + "nodes": [], "functionSelector": "3f33db60", "implemented": false, "kind": "function", @@ -10865,6 +13856,7 @@ "id": 8860, "nodeType": "FunctionDefinition", "src": "12945:148:12", + "nodes": [], "functionSelector": "972c6062", "implemented": false, "kind": "function", @@ -11003,6 +13995,7 @@ "id": 8871, "nodeType": "FunctionDefinition", "src": "13098:148:12", + "nodes": [], "functionSelector": "2d812b44", "implemented": false, "kind": "function", @@ -11140,6 +14133,7 @@ "id": 8882, "nodeType": "FunctionDefinition", "src": "13251:155:12", + "nodes": [], "functionSelector": "88da6d35", "implemented": false, "kind": "function", @@ -11277,6 +14271,7 @@ "id": 8893, "nodeType": "FunctionDefinition", "src": "13411:153:12", + "nodes": [], "functionSelector": "f21d52c7", "implemented": false, "kind": "function", @@ -11414,6 +14409,7 @@ "id": 8905, "nodeType": "FunctionDefinition", "src": "13570:154:12", + "nodes": [], "functionSelector": "92925aa1", "implemented": false, "kind": "function", @@ -11560,6 +14556,7 @@ "id": 8917, "nodeType": "FunctionDefinition", "src": "13729:157:12", + "nodes": [], "functionSelector": "fee9a469", "implemented": false, "kind": "function", @@ -11706,6 +14703,7 @@ "id": 8929, "nodeType": "FunctionDefinition", "src": "13891:155:12", + "nodes": [], "functionSelector": "7676e127", "implemented": false, "kind": "function", @@ -11852,6 +14850,7 @@ "id": 8941, "nodeType": "FunctionDefinition", "src": "14051:160:12", + "nodes": [], "functionSelector": "1e356e1a", "implemented": false, "kind": "function", @@ -11999,6 +14998,7 @@ "id": 8953, "nodeType": "FunctionDefinition", "src": "14216:160:12", + "nodes": [], "functionSelector": "201e43e2", "implemented": false, "kind": "function", @@ -12145,6 +15145,7 @@ "id": 8965, "nodeType": "FunctionDefinition", "src": "14381:158:12", + "nodes": [], "functionSelector": "561cd6f3", "implemented": false, "kind": "function", @@ -12291,6 +15292,7 @@ "id": 8977, "nodeType": "FunctionDefinition", "src": "14544:156:12", + "nodes": [], "functionSelector": "9884b232", "implemented": false, "kind": "function", @@ -12437,6 +15439,7 @@ "id": 8984, "nodeType": "FunctionDefinition", "src": "15941:72:12", + "nodes": [], "functionSelector": "e23cd19f", "implemented": false, "kind": "function", @@ -12519,6 +15522,7 @@ "id": 8993, "nodeType": "FunctionDefinition", "src": "16234:98:12", + "nodes": [], "functionSelector": "35d6ad46", "implemented": false, "kind": "function", @@ -12628,6 +15632,7 @@ "id": 9000, "nodeType": "FunctionDefinition", "src": "16384:85:12", + "nodes": [], "functionSelector": "975a6ce9", "implemented": false, "kind": "function", @@ -12711,6 +15716,7 @@ "id": 9008, "nodeType": "FunctionDefinition", "src": "16537:67:12", + "nodes": [], "functionSelector": "a85a8418", "implemented": false, "kind": "function", @@ -12800,6 +15806,7 @@ "id": 9015, "nodeType": "FunctionDefinition", "src": "16667:67:12", + "nodes": [], "functionSelector": "9d2ad72a", "implemented": false, "kind": "function", @@ -12838,6 +15845,9 @@ "pathNode": { "id": 9010, "name": "Rpc", + "nameLocations": [ + "16715:3:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8211, "src": "16715:3:12" @@ -12871,6 +15881,7 @@ "id": 9020, "nodeType": "FunctionDefinition", "src": "16827:46:12", + "nodes": [], "functionSelector": "4c63e562", "implemented": false, "kind": "function", @@ -12926,6 +15937,7 @@ "id": 9023, "nodeType": "FunctionDefinition", "src": "16962:37:12", + "nodes": [], "functionSelector": "d1a5b36f", "implemented": false, "kind": "function", @@ -12953,6 +15965,7 @@ "id": 9026, "nodeType": "FunctionDefinition", "src": "17087:38:12", + "nodes": [], "functionSelector": "2bcd50e0", "implemented": false, "kind": "function", @@ -13000,6 +16013,7 @@ "id": 9034, "nodeType": "FunctionDefinition", "src": "17186:45:12", + "nodes": [], "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", @@ -13055,6 +16069,7 @@ "id": 9039, "nodeType": "FunctionDefinition", "src": "17261:42:12", + "nodes": [], "functionSelector": "1f7b4f30", "implemented": false, "kind": "function", @@ -13110,6 +16125,7 @@ "id": 9044, "nodeType": "FunctionDefinition", "src": "17334:42:12", + "nodes": [], "functionSelector": "39b37ab0", "implemented": false, "kind": "function", @@ -13165,6 +16181,7 @@ "id": 9049, "nodeType": "FunctionDefinition", "src": "17410:52:12", + "nodes": [], "functionSelector": "46cc92d9", "implemented": false, "kind": "function", @@ -13220,6 +16237,7 @@ "id": 9054, "nodeType": "FunctionDefinition", "src": "17493:46:12", + "nodes": [], "functionSelector": "4049ddd2", "implemented": false, "kind": "function", @@ -13275,6 +16293,7 @@ "id": 9063, "nodeType": "FunctionDefinition", "src": "17595:69:12", + "nodes": [], "functionSelector": "70ca10bb", "implemented": false, "kind": "function", @@ -13385,6 +16404,7 @@ "id": 9070, "nodeType": "FunctionDefinition", "src": "17759:61:12", + "nodes": [], "functionSelector": "f8e18b57", "implemented": false, "kind": "function", @@ -13468,6 +16488,7 @@ "id": 9075, "nodeType": "FunctionDefinition", "src": "17890:43:12", + "nodes": [], "functionSelector": "ca669fa7", "implemented": false, "kind": "function", @@ -13524,6 +16545,7 @@ "id": 9080, "nodeType": "FunctionDefinition", "src": "18035:48:12", + "nodes": [], "functionSelector": "06447d56", "implemented": false, "kind": "function", @@ -13580,6 +16602,7 @@ "id": 9087, "nodeType": "FunctionDefinition", "src": "18195:61:12", + "nodes": [], "functionSelector": "47e50cce", "implemented": false, "kind": "function", @@ -13664,6 +16687,7 @@ "id": 9094, "nodeType": "FunctionDefinition", "src": "18400:66:12", + "nodes": [], "functionSelector": "45b56078", "implemented": false, "kind": "function", @@ -13748,6 +16772,7 @@ "id": 9097, "nodeType": "FunctionDefinition", "src": "18536:30:12", + "nodes": [], "functionSelector": "90c5013b", "implemented": false, "kind": "function", @@ -13775,6 +16800,7 @@ "id": 9104, "nodeType": "FunctionDefinition", "src": "18603:60:12", + "nodes": [], "functionSelector": "c88a5e6d", "implemented": false, "kind": "function", @@ -13858,6 +16884,7 @@ "id": 9111, "nodeType": "FunctionDefinition", "src": "18697:74:12", + "nodes": [], "functionSelector": "b4d6c782", "implemented": false, "kind": "function", @@ -13941,6 +16968,7 @@ "id": 9116, "nodeType": "FunctionDefinition", "src": "18813:58:12", + "nodes": [], "functionSelector": "f28dceb3", "implemented": false, "kind": "function", @@ -13996,6 +17024,7 @@ "id": 9121, "nodeType": "FunctionDefinition", "src": "18876:50:12", + "nodes": [], "functionSelector": "c31eb0e0", "implemented": false, "kind": "function", @@ -14051,6 +17080,7 @@ "id": 9124, "nodeType": "FunctionDefinition", "src": "18931:33:12", + "nodes": [], "functionSelector": "f4844814", "implemented": false, "kind": "function", @@ -14078,6 +17108,7 @@ "id": 9135, "nodeType": "FunctionDefinition", "src": "19297:99:12", + "nodes": [], "functionSelector": "491cc7c2", "implemented": false, "kind": "function", @@ -14214,6 +17245,7 @@ "id": 9148, "nodeType": "FunctionDefinition", "src": "19401:124:12", + "nodes": [], "functionSelector": "81bad6f3", "implemented": false, "kind": "function", @@ -14378,6 +17410,7 @@ "id": 9157, "nodeType": "FunctionDefinition", "src": "19780:91:12", + "nodes": [], "functionSelector": "b96213e4", "implemented": false, "kind": "function", @@ -14488,6 +17521,7 @@ "id": 9168, "nodeType": "FunctionDefinition", "src": "20039:109:12", + "nodes": [], "functionSelector": "81409b91", "implemented": false, "kind": "function", @@ -14625,6 +17659,7 @@ "id": 9171, "nodeType": "FunctionDefinition", "src": "20184:37:12", + "nodes": [], "functionSelector": "3fdf4e15", "implemented": false, "kind": "function", @@ -14652,6 +17687,7 @@ "id": 9178, "nodeType": "FunctionDefinition", "src": "20349:66:12", + "nodes": [], "functionSelector": "bd6af434", "implemented": false, "kind": "function", @@ -14735,6 +17771,7 @@ "id": 9187, "nodeType": "FunctionDefinition", "src": "20498:84:12", + "nodes": [], "functionSelector": "f30c7ba3", "implemented": false, "kind": "function", @@ -14845,6 +17882,7 @@ "id": 9192, "nodeType": "FunctionDefinition", "src": "20614:48:12", + "nodes": [], "functionSelector": "ff483c54", "implemented": false, "kind": "function", @@ -14901,6 +17939,7 @@ "id": 9197, "nodeType": "FunctionDefinition", "src": "20812:58:12", + "nodes": [], "functionSelector": "9711715a", "implemented": false, "kind": "function", @@ -14956,6 +17995,7 @@ "id": 9204, "nodeType": "FunctionDefinition", "src": "21062:70:12", + "nodes": [], "functionSelector": "44d7f0a4", "implemented": false, "kind": "function", @@ -15039,6 +18079,7 @@ "id": 9213, "nodeType": "FunctionDefinition", "src": "21236:103:12", + "nodes": [], "functionSelector": "6ba3ba2b", "implemented": false, "kind": "function", @@ -15149,6 +18190,7 @@ "id": 9220, "nodeType": "FunctionDefinition", "src": "21456:82:12", + "nodes": [], "functionSelector": "31ba3498", "implemented": false, "kind": "function", @@ -15232,6 +18274,7 @@ "id": 9229, "nodeType": "FunctionDefinition", "src": "21759:98:12", + "nodes": [], "functionSelector": "7ca29682", "implemented": false, "kind": "function", @@ -15342,6 +18385,7 @@ "id": 9238, "nodeType": "FunctionDefinition", "src": "21980:109:12", + "nodes": [], "functionSelector": "71ee464d", "implemented": false, "kind": "function", @@ -15452,6 +18496,7 @@ "id": 9247, "nodeType": "FunctionDefinition", "src": "22323:104:12", + "nodes": [], "functionSelector": "84d52b7a", "implemented": false, "kind": "function", @@ -15562,6 +18607,7 @@ "id": 9254, "nodeType": "FunctionDefinition", "src": "22561:88:12", + "nodes": [], "functionSelector": "98680034", "implemented": false, "kind": "function", @@ -15645,6 +18691,7 @@ "id": 9259, "nodeType": "FunctionDefinition", "src": "22760:45:12", + "nodes": [], "functionSelector": "9ebf6827", "implemented": false, "kind": "function", @@ -15700,6 +18747,7 @@ "id": 9265, "nodeType": "FunctionDefinition", "src": "22911:61:12", + "nodes": [], "documentation": { "id": 9260, "nodeType": "StructuredDocumentation", @@ -15761,6 +18809,7 @@ "id": 9270, "nodeType": "FunctionDefinition", "src": "23107:48:12", + "nodes": [], "functionSelector": "d9bbf3a1", "implemented": false, "kind": "function", @@ -15816,6 +18865,7 @@ "id": 9275, "nodeType": "FunctionDefinition", "src": "23365:43:12", + "nodes": [], "functionSelector": "0f29772b", "implemented": false, "kind": "function", @@ -15871,6 +18921,7 @@ "id": 9282, "nodeType": "FunctionDefinition", "src": "23465:64:12", + "nodes": [], "functionSelector": "d74c83a4", "implemented": false, "kind": "function", @@ -15953,6 +19004,7 @@ "id": 9289, "nodeType": "FunctionDefinition", "src": "23662:59:12", + "nodes": [], "functionSelector": "f2830f7b", "implemented": false, "kind": "function", @@ -16035,6 +19087,7 @@ "id": 9294, "nodeType": "FunctionDefinition", "src": "23920:50:12", + "nodes": [], "functionSelector": "57e22dde", "implemented": false, "kind": "function", @@ -16091,6 +19144,7 @@ "id": 9301, "nodeType": "FunctionDefinition", "src": "23975:69:12", + "nodes": [], "functionSelector": "4074e0a8", "implemented": false, "kind": "function", @@ -16175,6 +19229,7 @@ "id": 9310, "nodeType": "FunctionDefinition", "src": "24049:87:12", + "nodes": [], "functionSelector": "efb77a75", "implemented": false, "kind": "function", @@ -16287,6 +19342,7 @@ "id": 9316, "nodeType": "FunctionDefinition", "src": "24141:62:12", + "nodes": [], "functionSelector": "1d9e269e", "implemented": false, "kind": "function", @@ -16352,6 +19408,7 @@ "id": 9321, "nodeType": "FunctionDefinition", "src": "24297:52:12", + "nodes": [], "functionSelector": "997a0222", "implemented": false, "kind": "function", @@ -16408,6 +19465,7 @@ "id": 9327, "nodeType": "FunctionDefinition", "src": "24354:64:12", + "nodes": [], "functionSelector": "3ce969e6", "implemented": false, "kind": "function", @@ -16473,6 +19531,7 @@ "id": 9334, "nodeType": "FunctionDefinition", "src": "24482:79:12", + "nodes": [], "functionSelector": "d92d8efd", "implemented": false, "kind": "function", @@ -16557,6 +19616,7 @@ "id": 9339, "nodeType": "FunctionDefinition", "src": "24642:51:12", + "nodes": [], "functionSelector": "ea060291", "implemented": false, "kind": "function", @@ -16613,6 +19673,7 @@ "id": 9344, "nodeType": "FunctionDefinition", "src": "24793:43:12", + "nodes": [], "functionSelector": "be646da1", "implemented": false, "kind": "function", @@ -16668,6 +19729,7 @@ "id": 9351, "nodeType": "FunctionDefinition", "src": "24935:59:12", + "nodes": [], "functionSelector": "4d8abc4b", "implemented": false, "kind": "function", @@ -16753,6 +19815,9 @@ "baseName": { "id": 9028, "name": "VmSafe", + "nameLocations": [ + "17145:6:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "17145:6:12" diff --git a/out/Vm.sol/VmSafe.json b/out/Vm.sol/VmSafe.json index 18cf938..7899d00 100644 --- a/out/Vm.sol/VmSafe.json +++ b/out/Vm.sol/VmSafe.json @@ -2192,6 +2192,2116 @@ "writeJson(string,string,string)": "35d6ad46", "writeLine(string,string)": "619d897f" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"accesses\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"readSlots\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"writeSlots\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"condition\",\"type\":\"bool\"}],\"name\":\"assume\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"closeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"derivationPath\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"defaultValue\",\"type\":\"bytes32[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"defaultValue\",\"type\":\"int256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"defaultValue\",\"type\":\"bool\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"defaultValue\",\"type\":\"address\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"defaultValue\",\"type\":\"uint256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"defaultValue\",\"type\":\"bytes[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"defaultValue\",\"type\":\"uint256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"defaultValue\",\"type\":\"string[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"defaultValue\",\"type\":\"bytes\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"defaultValue\",\"type\":\"bytes32\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"defaultValue\",\"type\":\"int256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"defaultValue\",\"type\":\"address[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"defaultValue\",\"type\":\"string\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"defaultValue\",\"type\":\"bool[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"commandInput\",\"type\":\"string[]\"}],\"name\":\"ffi\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"fileOrDir\",\"type\":\"string\"}],\"name\":\"fsMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"readOnly\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"modified\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"created\",\"type\":\"uint256\"}],\"internalType\":\"struct VmSafe.FsMetadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"creationBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getDeployedCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"runtimeBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getNonce\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"nonce\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRecordedLogs\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32[]\",\"name\":\"topics\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"emitter\",\"type\":\"address\"}],\"internalType\":\"struct VmSafe.Log[]\",\"name\":\"logs\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"newLabel\",\"type\":\"string\"}],\"name\":\"label\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"}],\"name\":\"load\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"parsedValue\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"parsedValue\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"parsedValue\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"parsedValue\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"parsedValue\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"parsedValue\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pauseGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"projectRoot\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFile\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFileBinary\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readLine\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"line\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"record\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recordLogs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"rememberKey\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"removeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resumeGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"rpcAlias\",\"type\":\"string\"}],\"name\":\"rpcUrl\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrlStructs\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"internalType\":\"struct VmSafe.Rpc[]\",\"name\":\"urls\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrls\",\"outputs\":[{\"internalType\":\"string[2][]\",\"name\":\"urls\",\"type\":\"string[2][]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"values\",\"type\":\"address[]\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"values\",\"type\":\"bool[]\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"values\",\"type\":\"bytes32[]\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"values\",\"type\":\"int256[]\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"values\",\"type\":\"string[]\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setEnv\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"digest\",\"type\":\"bytes32\"}],\"name\":\"sign\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"writeFileBinary\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeLine\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Vm.sol\":\"VmSafe\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "accesses", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "readSlots", + "type": "bytes32[]" + }, + { + "internalType": "bytes32[]", + "name": "writeSlots", + "type": "bytes32[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "addr", + "outputs": [ + { + "internalType": "address", + "name": "keyAddr", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "condition", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "assume" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "broadcast" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "signer", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "broadcast" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "broadcast" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "closeFile" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "mnemonic", + "type": "string" + }, + { + "internalType": "uint32", + "name": "index", + "type": "uint32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "deriveKey", + "outputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "mnemonic", + "type": "string" + }, + { + "internalType": "string", + "name": "derivationPath", + "type": "string" + }, + { + "internalType": "uint32", + "name": "index", + "type": "uint32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "deriveKey", + "outputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envAddress", + "outputs": [ + { + "internalType": "address", + "name": "value", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envAddress", + "outputs": [ + { + "internalType": "address[]", + "name": "value", + "type": "address[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBool", + "outputs": [ + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBool", + "outputs": [ + { + "internalType": "bool[]", + "name": "value", + "type": "bool[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes", + "outputs": [ + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes", + "outputs": [ + { + "internalType": "bytes[]", + "name": "value", + "type": "bytes[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes32", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "value", + "type": "bytes32[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envBytes32", + "outputs": [ + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envInt", + "outputs": [ + { + "internalType": "int256[]", + "name": "value", + "type": "int256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envInt", + "outputs": [ + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "bytes32[]", + "name": "defaultValue", + "type": "bytes32[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "value", + "type": "bytes32[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "int256[]", + "name": "defaultValue", + "type": "int256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "int256[]", + "name": "value", + "type": "int256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "bool", + "name": "defaultValue", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "address", + "name": "defaultValue", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "address", + "name": "value", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "uint256", + "name": "defaultValue", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "bytes[]", + "name": "defaultValue", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes[]", + "name": "value", + "type": "bytes[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "uint256[]", + "name": "defaultValue", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "uint256[]", + "name": "value", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "string[]", + "name": "defaultValue", + "type": "string[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "string[]", + "name": "value", + "type": "string[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "bytes", + "name": "defaultValue", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "defaultValue", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "int256", + "name": "defaultValue", + "type": "int256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "address[]", + "name": "defaultValue", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "address[]", + "name": "value", + "type": "address[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "defaultValue", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "string", + "name": "value", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + }, + { + "internalType": "bool[]", + "name": "defaultValue", + "type": "bool[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "envOr", + "outputs": [ + { + "internalType": "bool[]", + "name": "value", + "type": "bool[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envString", + "outputs": [ + { + "internalType": "string[]", + "name": "value", + "type": "string[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envString", + "outputs": [ + { + "internalType": "string", + "name": "value", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envUint", + "outputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "delim", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "envUint", + "outputs": [ + { + "internalType": "uint256[]", + "name": "value", + "type": "uint256[]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string[]", + "name": "commandInput", + "type": "string[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "ffi", + "outputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "fileOrDir", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "fsMetadata", + "outputs": [ + { + "internalType": "struct VmSafe.FsMetadata", + "name": "metadata", + "type": "tuple", + "components": [ + { + "internalType": "bool", + "name": "isDir", + "type": "bool" + }, + { + "internalType": "bool", + "name": "isSymlink", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "readOnly", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "modified", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accessed", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "created", + "type": "uint256" + } + ] + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "artifactPath", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getCode", + "outputs": [ + { + "internalType": "bytes", + "name": "creationBytecode", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "artifactPath", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getDeployedCode", + "outputs": [ + { + "internalType": "bytes", + "name": "runtimeBytecode", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function", + "name": "getNonce", + "outputs": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "getRecordedLogs", + "outputs": [ + { + "internalType": "struct VmSafe.Log[]", + "name": "logs", + "type": "tuple[]", + "components": [ + { + "internalType": "bytes32[]", + "name": "topics", + "type": "bytes32[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "address", + "name": "emitter", + "type": "address" + } + ] + } + ] + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "string", + "name": "newLabel", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "label" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "slot", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function", + "name": "load", + "outputs": [ + { + "internalType": "bytes32", + "name": "data", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseAddress", + "outputs": [ + { + "internalType": "address", + "name": "parsedValue", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseBool", + "outputs": [ + { + "internalType": "bool", + "name": "parsedValue", + "type": "bool" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseBytes", + "outputs": [ + { + "internalType": "bytes", + "name": "parsedValue", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseBytes32", + "outputs": [ + { + "internalType": "bytes32", + "name": "parsedValue", + "type": "bytes32" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseInt", + "outputs": [ + { + "internalType": "int256", + "name": "parsedValue", + "type": "int256" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseJson", + "outputs": [ + { + "internalType": "bytes", + "name": "abiEncodedData", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + }, + { + "internalType": "string", + "name": "key", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseJson", + "outputs": [ + { + "internalType": "bytes", + "name": "abiEncodedData", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "parseUint", + "outputs": [ + { + "internalType": "uint256", + "name": "parsedValue", + "type": "uint256" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "pauseGasMetering" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "projectRoot", + "outputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "readFile", + "outputs": [ + { + "internalType": "string", + "name": "data", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "readFileBinary", + "outputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "readLine", + "outputs": [ + { + "internalType": "string", + "name": "line", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "record" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "recordLogs" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "rememberKey", + "outputs": [ + { + "internalType": "address", + "name": "keyAddr", + "type": "address" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeFile" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "resumeGasMetering" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "rpcAlias", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function", + "name": "rpcUrl", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "rpcUrlStructs", + "outputs": [ + { + "internalType": "struct VmSafe.Rpc[]", + "name": "urls", + "type": "tuple[]", + "components": [ + { + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "internalType": "string", + "name": "url", + "type": "string" + } + ] + } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "rpcUrls", + "outputs": [ + { + "internalType": "string[2][]", + "name": "urls", + "type": "string[2][]" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "address[]", + "name": "values", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeAddress", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "address", + "name": "value", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeAddress", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bool[]", + "name": "values", + "type": "bool[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBool", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBool", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes[]", + "name": "values", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes32[]", + "name": "values", + "type": "bytes32[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes32", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeBytes32", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeInt", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "int256[]", + "name": "values", + "type": "int256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeInt", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "string[]", + "name": "values", + "type": "string[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeString", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeString", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeUint", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "objectKey", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + }, + { + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "serializeUint", + "outputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "value", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setEnv" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "digest", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "sign", + "outputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "startBroadcast" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "signer", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "startBroadcast" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "privateKey", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "startBroadcast" + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "stopBroadcast" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "value", + "type": "address" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "value", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "value", + "type": "int256" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "value", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function", + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "stringifiedValue", + "type": "string" + } + ] + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "string", + "name": "data", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeFile" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeFileBinary" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + }, + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "string", + "name": "valueKey", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeJson" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "json", + "type": "string" + }, + { + "internalType": "string", + "name": "path", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeJson" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "path", + "type": "string" + }, + { + "internalType": "string", + "name": "data", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "writeLine" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/Vm.sol": "VmSafe" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/Vm.sol", "id": 9353, @@ -2210,6 +4320,7 @@ "id": 8197, "nodeType": "PragmaDirective", "src": "32:31:12", + "nodes": [], "literals": [ "solidity", ">=", @@ -2224,6 +4335,7 @@ "id": 8198, "nodeType": "PragmaDirective", "src": "65:33:12", + "nodes": [], "literals": [ "experimental", "ABIEncoderV2" @@ -2238,6 +4350,7 @@ "id": 8206, "nodeType": "StructDefinition", "src": "594:89:12", + "nodes": [], "canonicalName": "VmSafe.Log", "members": [ { @@ -2341,6 +4454,7 @@ "id": 8211, "nodeType": "StructDefinition", "src": "689:58:12", + "nodes": [], "canonicalName": "VmSafe.Rpc", "members": [ { @@ -2407,6 +4521,7 @@ "id": 8226, "nodeType": "StructDefinition", "src": "753:193:12", + "nodes": [], "canonicalName": "VmSafe.FsMetadata", "members": [ { @@ -2608,6 +4723,7 @@ "id": 8235, "nodeType": "FunctionDefinition", "src": "996:81:12", + "nodes": [], "functionSelector": "667f9d70", "implemented": false, "kind": "function", @@ -2719,6 +4835,7 @@ "id": 8248, "nodeType": "FunctionDefinition", "src": "1100:104:12", + "nodes": [], "functionSelector": "e341eaa4", "implemented": false, "kind": "function", @@ -2883,6 +5000,7 @@ "id": 8255, "nodeType": "FunctionDefinition", "src": "1257:74:12", + "nodes": [], "functionSelector": "ffa18649", "implemented": false, "kind": "function", @@ -2967,6 +5085,7 @@ "id": 8262, "nodeType": "FunctionDefinition", "src": "1372:72:12", + "nodes": [], "functionSelector": "2d0335ab", "implemented": false, "kind": "function", @@ -3051,6 +5170,7 @@ "id": 8270, "nodeType": "FunctionDefinition", "src": "1506:84:12", + "nodes": [], "functionSelector": "89160467", "implemented": false, "kind": "function", @@ -3143,6 +5263,7 @@ "id": 8277, "nodeType": "FunctionDefinition", "src": "1629:70:12", + "nodes": [], "functionSelector": "3d5923ee", "implemented": false, "kind": "function", @@ -3225,6 +5346,7 @@ "id": 8284, "nodeType": "FunctionDefinition", "src": "1758:74:12", + "nodes": [], "functionSelector": "7ed1ec7d", "implemented": false, "kind": "function", @@ -3308,6 +5430,7 @@ "id": 8291, "nodeType": "FunctionDefinition", "src": "1837:77:12", + "nodes": [], "functionSelector": "c1978d1f", "implemented": false, "kind": "function", @@ -3391,6 +5514,7 @@ "id": 8298, "nodeType": "FunctionDefinition", "src": "1919:75:12", + "nodes": [], "functionSelector": "892a0c61", "implemented": false, "kind": "function", @@ -3474,6 +5598,7 @@ "id": 8305, "nodeType": "FunctionDefinition", "src": "1999:80:12", + "nodes": [], "functionSelector": "350d56bf", "implemented": false, "kind": "function", @@ -3558,6 +5683,7 @@ "id": 8312, "nodeType": "FunctionDefinition", "src": "2084:80:12", + "nodes": [], "functionSelector": "97949042", "implemented": false, "kind": "function", @@ -3641,6 +5767,7 @@ "id": 8319, "nodeType": "FunctionDefinition", "src": "2169:85:12", + "nodes": [], "functionSelector": "f877cb19", "implemented": false, "kind": "function", @@ -3724,6 +5851,7 @@ "id": 8326, "nodeType": "FunctionDefinition", "src": "2259:83:12", + "nodes": [], "functionSelector": "4d7baf06", "implemented": false, "kind": "function", @@ -3807,6 +5935,7 @@ "id": 8336, "nodeType": "FunctionDefinition", "src": "2392:106:12", + "nodes": [], "functionSelector": "aaaddeaf", "implemented": false, "kind": "function", @@ -3926,6 +6055,7 @@ "id": 8346, "nodeType": "FunctionDefinition", "src": "2503:109:12", + "nodes": [], "functionSelector": "f3dec099", "implemented": false, "kind": "function", @@ -4045,6 +6175,7 @@ "id": 8356, "nodeType": "FunctionDefinition", "src": "2617:107:12", + "nodes": [], "functionSelector": "42181150", "implemented": false, "kind": "function", @@ -4164,6 +6295,7 @@ "id": 8366, "nodeType": "FunctionDefinition", "src": "2729:112:12", + "nodes": [], "functionSelector": "ad31b9fa", "implemented": false, "kind": "function", @@ -4284,6 +6416,7 @@ "id": 8376, "nodeType": "FunctionDefinition", "src": "2846:112:12", + "nodes": [], "functionSelector": "5af231c1", "implemented": false, "kind": "function", @@ -4403,6 +6536,7 @@ "id": 8386, "nodeType": "FunctionDefinition", "src": "2963:110:12", + "nodes": [], "functionSelector": "14b02bc9", "implemented": false, "kind": "function", @@ -4522,6 +6656,7 @@ "id": 8396, "nodeType": "FunctionDefinition", "src": "3078:108:12", + "nodes": [], "functionSelector": "ddc2651b", "implemented": false, "kind": "function", @@ -4641,6 +6776,7 @@ "id": 8405, "nodeType": "FunctionDefinition", "src": "3244:86:12", + "nodes": [], "functionSelector": "4777f3cf", "implemented": false, "kind": "function", @@ -4751,6 +6887,7 @@ "id": 8414, "nodeType": "FunctionDefinition", "src": "3335:92:12", + "nodes": [], "functionSelector": "5e97348f", "implemented": false, "kind": "function", @@ -4861,6 +6998,7 @@ "id": 8423, "nodeType": "FunctionDefinition", "src": "3432:90:12", + "nodes": [], "functionSelector": "bbcb713e", "implemented": false, "kind": "function", @@ -4971,6 +7109,7 @@ "id": 8432, "nodeType": "FunctionDefinition", "src": "3527:92:12", + "nodes": [], "functionSelector": "561fe540", "implemented": false, "kind": "function", @@ -5083,6 +7222,7 @@ "id": 8441, "nodeType": "FunctionDefinition", "src": "3624:92:12", + "nodes": [], "functionSelector": "b4a85892", "implemented": false, "kind": "function", @@ -5193,6 +7333,7 @@ "id": 8450, "nodeType": "FunctionDefinition", "src": "3721:106:12", + "nodes": [], "functionSelector": "d145736c", "implemented": false, "kind": "function", @@ -5303,6 +7444,7 @@ "id": 8459, "nodeType": "FunctionDefinition", "src": "3832:104:12", + "nodes": [], "functionSelector": "b3e47705", "implemented": false, "kind": "function", @@ -5413,6 +7555,7 @@ "id": 8472, "nodeType": "FunctionDefinition", "src": "4004:145:12", + "nodes": [], "functionSelector": "eb85e83b", "implemented": false, "kind": "function", @@ -5568,6 +7711,7 @@ "id": 8485, "nodeType": "FunctionDefinition", "src": "4154:151:12", + "nodes": [], "functionSelector": "74318528", "implemented": false, "kind": "function", @@ -5723,6 +7867,7 @@ "id": 8498, "nodeType": "FunctionDefinition", "src": "4310:149:12", + "nodes": [], "functionSelector": "4700d74b", "implemented": false, "kind": "function", @@ -5878,6 +8023,7 @@ "id": 8511, "nodeType": "FunctionDefinition", "src": "4464:151:12", + "nodes": [], "functionSelector": "c74e9deb", "implemented": false, "kind": "function", @@ -6035,6 +8181,7 @@ "id": 8524, "nodeType": "FunctionDefinition", "src": "4620:151:12", + "nodes": [], "functionSelector": "2281f367", "implemented": false, "kind": "function", @@ -6190,6 +8337,7 @@ "id": 8537, "nodeType": "FunctionDefinition", "src": "4776:149:12", + "nodes": [], "functionSelector": "859216bc", "implemented": false, "kind": "function", @@ -6345,6 +8493,7 @@ "id": 8550, "nodeType": "FunctionDefinition", "src": "4930:147:12", + "nodes": [], "functionSelector": "64bc3e64", "implemented": false, "kind": "function", @@ -6500,6 +8649,7 @@ "id": 8553, "nodeType": "FunctionDefinition", "src": "5126:27:12", + "nodes": [], "functionSelector": "266cf109", "implemented": false, "kind": "function", @@ -6527,6 +8677,7 @@ "id": 8564, "nodeType": "FunctionDefinition", "src": "5250:109:12", + "nodes": [], "functionSelector": "65bc9481", "implemented": false, "kind": "function", @@ -6656,6 +8807,7 @@ "id": 8571, "nodeType": "FunctionDefinition", "src": "5467:101:12", + "nodes": [], "functionSelector": "8d1cc925", "implemented": false, "kind": "function", @@ -6739,6 +8891,7 @@ "id": 8578, "nodeType": "FunctionDefinition", "src": "5676:108:12", + "nodes": [], "functionSelector": "3ebf73b4", "implemented": false, "kind": "function", @@ -6822,6 +8975,7 @@ "id": 8585, "nodeType": "FunctionDefinition", "src": "5829:67:12", + "nodes": [], "functionSelector": "c657c718", "implemented": false, "kind": "function", @@ -6905,6 +9059,7 @@ "id": 8588, "nodeType": "FunctionDefinition", "src": "6063:30:12", + "nodes": [], "functionSelector": "afc98040", "implemented": false, "kind": "function", @@ -6932,6 +9087,7 @@ "id": 8593, "nodeType": "FunctionDefinition", "src": "6252:44:12", + "nodes": [], "functionSelector": "e6962cdb", "implemented": false, "kind": "function", @@ -6988,6 +9144,7 @@ "id": 8598, "nodeType": "FunctionDefinition", "src": "6459:48:12", + "nodes": [], "functionSelector": "f67a965b", "implemented": false, "kind": "function", @@ -7043,6 +9200,7 @@ "id": 8601, "nodeType": "FunctionDefinition", "src": "6680:35:12", + "nodes": [], "functionSelector": "7fb5297f", "implemented": false, "kind": "function", @@ -7070,6 +9228,7 @@ "id": 8606, "nodeType": "FunctionDefinition", "src": "6866:49:12", + "nodes": [], "functionSelector": "7fec2a8d", "implemented": false, "kind": "function", @@ -7126,6 +9285,7 @@ "id": 8611, "nodeType": "FunctionDefinition", "src": "7070:53:12", + "nodes": [], "functionSelector": "ce817d47", "implemented": false, "kind": "function", @@ -7181,6 +9341,7 @@ "id": 8614, "nodeType": "FunctionDefinition", "src": "7173:34:12", + "nodes": [], "functionSelector": "76eadd36", "implemented": false, "kind": "function", @@ -7208,6 +9369,7 @@ "id": 8621, "nodeType": "FunctionDefinition", "src": "7262:83:12", + "nodes": [], "functionSelector": "60f9bb11", "implemented": false, "kind": "function", @@ -7291,6 +9453,7 @@ "id": 8628, "nodeType": "FunctionDefinition", "src": "7439:88:12", + "nodes": [], "functionSelector": "16ed7bc4", "implemented": false, "kind": "function", @@ -7374,6 +9537,7 @@ "id": 8633, "nodeType": "FunctionDefinition", "src": "7580:66:12", + "nodes": [], "functionSelector": "d930a0e6", "implemented": false, "kind": "function", @@ -7429,6 +9593,7 @@ "id": 8641, "nodeType": "FunctionDefinition", "src": "7696:93:12", + "nodes": [], "functionSelector": "af368a08", "implemented": false, "kind": "function", @@ -7494,6 +9659,9 @@ "pathNode": { "id": 8637, "name": "FsMetadata", + "nameLocations": [ + "7761:10:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8226, "src": "7761:10:12" @@ -7519,6 +9687,7 @@ "id": 8648, "nodeType": "FunctionDefinition", "src": "7835:83:12", + "nodes": [], "functionSelector": "70f55728", "implemented": false, "kind": "function", @@ -7602,6 +9771,7 @@ "id": 8655, "nodeType": "FunctionDefinition", "src": "8037:72:12", + "nodes": [], "functionSelector": "897e0a97", "implemented": false, "kind": "function", @@ -7684,6 +9854,7 @@ "id": 8662, "nodeType": "FunctionDefinition", "src": "8282:77:12", + "nodes": [], "functionSelector": "1f21fc80", "implemented": false, "kind": "function", @@ -7766,6 +9937,7 @@ "id": 8669, "nodeType": "FunctionDefinition", "src": "8430:72:12", + "nodes": [], "functionSelector": "619d897f", "implemented": false, "kind": "function", @@ -7848,6 +10020,7 @@ "id": 8674, "nodeType": "FunctionDefinition", "src": "8614:50:12", + "nodes": [], "functionSelector": "48c3241f", "implemented": false, "kind": "function", @@ -7903,6 +10076,7 @@ "id": 8679, "nodeType": "FunctionDefinition", "src": "8912:51:12", + "nodes": [], "functionSelector": "f1afe04d", "implemented": false, "kind": "function", @@ -7958,6 +10132,7 @@ "id": 8686, "nodeType": "FunctionDefinition", "src": "9002:88:12", + "nodes": [], "functionSelector": "56ca623e", "implemented": false, "kind": "function", @@ -8042,6 +10217,7 @@ "id": 8693, "nodeType": "FunctionDefinition", "src": "9095:95:12", + "nodes": [], "functionSelector": "71aad10d", "implemented": false, "kind": "function", @@ -8125,6 +10301,7 @@ "id": 8700, "nodeType": "FunctionDefinition", "src": "9195:88:12", + "nodes": [], "functionSelector": "b11a19e8", "implemented": false, "kind": "function", @@ -8208,6 +10385,7 @@ "id": 8707, "nodeType": "FunctionDefinition", "src": "9288:85:12", + "nodes": [], "functionSelector": "71dce7da", "implemented": false, "kind": "function", @@ -8291,6 +10469,7 @@ "id": 8714, "nodeType": "FunctionDefinition", "src": "9378:88:12", + "nodes": [], "functionSelector": "6900a3ae", "implemented": false, "kind": "function", @@ -8374,6 +10553,7 @@ "id": 8721, "nodeType": "FunctionDefinition", "src": "9471:87:12", + "nodes": [], "functionSelector": "a322c40e", "implemented": false, "kind": "function", @@ -8457,6 +10637,7 @@ "id": 8728, "nodeType": "FunctionDefinition", "src": "9599:103:12", + "nodes": [], "functionSelector": "8f5d232d", "implemented": false, "kind": "function", @@ -8540,6 +10721,7 @@ "id": 8735, "nodeType": "FunctionDefinition", "src": "9707:100:12", + "nodes": [], "functionSelector": "c6ce059d", "implemented": false, "kind": "function", @@ -8624,6 +10806,7 @@ "id": 8742, "nodeType": "FunctionDefinition", "src": "9812:97:12", + "nodes": [], "functionSelector": "fa91454d", "implemented": false, "kind": "function", @@ -8707,6 +10890,7 @@ "id": 8749, "nodeType": "FunctionDefinition", "src": "9914:95:12", + "nodes": [], "functionSelector": "42346c5e", "implemented": false, "kind": "function", @@ -8790,6 +10974,7 @@ "id": 8756, "nodeType": "FunctionDefinition", "src": "10014:100:12", + "nodes": [], "functionSelector": "087e6e81", "implemented": false, "kind": "function", @@ -8873,6 +11058,7 @@ "id": 8763, "nodeType": "FunctionDefinition", "src": "10119:94:12", + "nodes": [], "functionSelector": "974ef924", "implemented": false, "kind": "function", @@ -8956,6 +11142,7 @@ "id": 8766, "nodeType": "FunctionDefinition", "src": "10257:31:12", + "nodes": [], "functionSelector": "41af2f52", "implemented": false, "kind": "function", @@ -8983,6 +11170,7 @@ "id": 8773, "nodeType": "FunctionDefinition", "src": "10327:64:12", + "nodes": [], "functionSelector": "191553a4", "implemented": false, "kind": "function", @@ -9021,6 +11209,9 @@ "pathNode": { "id": 8768, "name": "Log", + "nameLocations": [ + "10372:3:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8206, "src": "10372:3:12" @@ -9054,6 +11245,7 @@ "id": 8782, "nodeType": "FunctionDefinition", "src": "10526:102:12", + "nodes": [], "functionSelector": "6229498b", "implemented": false, "kind": "function", @@ -9164,6 +11356,7 @@ "id": 8793, "nodeType": "FunctionDefinition", "src": "10744:158:12", + "nodes": [], "functionSelector": "6bcb2c1b", "implemented": false, "kind": "function", @@ -9301,6 +11494,7 @@ "id": 8800, "nodeType": "FunctionDefinition", "src": "10983:76:12", + "nodes": [], "functionSelector": "22100064", "implemented": false, "kind": "function", @@ -9385,6 +11579,7 @@ "id": 8809, "nodeType": "FunctionDefinition", "src": "12092:114:12", + "nodes": [], "functionSelector": "85940ef1", "implemented": false, "kind": "function", @@ -9495,6 +11690,7 @@ "id": 8816, "nodeType": "FunctionDefinition", "src": "12211:93:12", + "nodes": [], "functionSelector": "6a82600a", "implemented": false, "kind": "function", @@ -9578,6 +11774,7 @@ "id": 8827, "nodeType": "FunctionDefinition", "src": "12500:142:12", + "nodes": [], "functionSelector": "ac22e971", "implemented": false, "kind": "function", @@ -9715,6 +11912,7 @@ "id": 8838, "nodeType": "FunctionDefinition", "src": "12647:145:12", + "nodes": [], "functionSelector": "129e9002", "implemented": false, "kind": "function", @@ -9852,6 +12050,7 @@ "id": 8849, "nodeType": "FunctionDefinition", "src": "12797:143:12", + "nodes": [], "functionSelector": "3f33db60", "implemented": false, "kind": "function", @@ -9989,6 +12188,7 @@ "id": 8860, "nodeType": "FunctionDefinition", "src": "12945:148:12", + "nodes": [], "functionSelector": "972c6062", "implemented": false, "kind": "function", @@ -10127,6 +12327,7 @@ "id": 8871, "nodeType": "FunctionDefinition", "src": "13098:148:12", + "nodes": [], "functionSelector": "2d812b44", "implemented": false, "kind": "function", @@ -10264,6 +12465,7 @@ "id": 8882, "nodeType": "FunctionDefinition", "src": "13251:155:12", + "nodes": [], "functionSelector": "88da6d35", "implemented": false, "kind": "function", @@ -10401,6 +12603,7 @@ "id": 8893, "nodeType": "FunctionDefinition", "src": "13411:153:12", + "nodes": [], "functionSelector": "f21d52c7", "implemented": false, "kind": "function", @@ -10538,6 +12741,7 @@ "id": 8905, "nodeType": "FunctionDefinition", "src": "13570:154:12", + "nodes": [], "functionSelector": "92925aa1", "implemented": false, "kind": "function", @@ -10684,6 +12888,7 @@ "id": 8917, "nodeType": "FunctionDefinition", "src": "13729:157:12", + "nodes": [], "functionSelector": "fee9a469", "implemented": false, "kind": "function", @@ -10830,6 +13035,7 @@ "id": 8929, "nodeType": "FunctionDefinition", "src": "13891:155:12", + "nodes": [], "functionSelector": "7676e127", "implemented": false, "kind": "function", @@ -10976,6 +13182,7 @@ "id": 8941, "nodeType": "FunctionDefinition", "src": "14051:160:12", + "nodes": [], "functionSelector": "1e356e1a", "implemented": false, "kind": "function", @@ -11123,6 +13330,7 @@ "id": 8953, "nodeType": "FunctionDefinition", "src": "14216:160:12", + "nodes": [], "functionSelector": "201e43e2", "implemented": false, "kind": "function", @@ -11269,6 +13477,7 @@ "id": 8965, "nodeType": "FunctionDefinition", "src": "14381:158:12", + "nodes": [], "functionSelector": "561cd6f3", "implemented": false, "kind": "function", @@ -11415,6 +13624,7 @@ "id": 8977, "nodeType": "FunctionDefinition", "src": "14544:156:12", + "nodes": [], "functionSelector": "9884b232", "implemented": false, "kind": "function", @@ -11561,6 +13771,7 @@ "id": 8984, "nodeType": "FunctionDefinition", "src": "15941:72:12", + "nodes": [], "functionSelector": "e23cd19f", "implemented": false, "kind": "function", @@ -11643,6 +13854,7 @@ "id": 8993, "nodeType": "FunctionDefinition", "src": "16234:98:12", + "nodes": [], "functionSelector": "35d6ad46", "implemented": false, "kind": "function", @@ -11752,6 +13964,7 @@ "id": 9000, "nodeType": "FunctionDefinition", "src": "16384:85:12", + "nodes": [], "functionSelector": "975a6ce9", "implemented": false, "kind": "function", @@ -11835,6 +14048,7 @@ "id": 9008, "nodeType": "FunctionDefinition", "src": "16537:67:12", + "nodes": [], "functionSelector": "a85a8418", "implemented": false, "kind": "function", @@ -11924,6 +14138,7 @@ "id": 9015, "nodeType": "FunctionDefinition", "src": "16667:67:12", + "nodes": [], "functionSelector": "9d2ad72a", "implemented": false, "kind": "function", @@ -11962,6 +14177,9 @@ "pathNode": { "id": 9010, "name": "Rpc", + "nameLocations": [ + "16715:3:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8211, "src": "16715:3:12" @@ -11995,6 +14213,7 @@ "id": 9020, "nodeType": "FunctionDefinition", "src": "16827:46:12", + "nodes": [], "functionSelector": "4c63e562", "implemented": false, "kind": "function", @@ -12050,6 +14269,7 @@ "id": 9023, "nodeType": "FunctionDefinition", "src": "16962:37:12", + "nodes": [], "functionSelector": "d1a5b36f", "implemented": false, "kind": "function", @@ -12077,6 +14297,7 @@ "id": 9026, "nodeType": "FunctionDefinition", "src": "17087:38:12", + "nodes": [], "functionSelector": "2bcd50e0", "implemented": false, "kind": "function", @@ -12124,6 +14345,7 @@ "id": 9034, "nodeType": "FunctionDefinition", "src": "17186:45:12", + "nodes": [], "functionSelector": "e5d6bf02", "implemented": false, "kind": "function", @@ -12179,6 +14401,7 @@ "id": 9039, "nodeType": "FunctionDefinition", "src": "17261:42:12", + "nodes": [], "functionSelector": "1f7b4f30", "implemented": false, "kind": "function", @@ -12234,6 +14457,7 @@ "id": 9044, "nodeType": "FunctionDefinition", "src": "17334:42:12", + "nodes": [], "functionSelector": "39b37ab0", "implemented": false, "kind": "function", @@ -12289,6 +14513,7 @@ "id": 9049, "nodeType": "FunctionDefinition", "src": "17410:52:12", + "nodes": [], "functionSelector": "46cc92d9", "implemented": false, "kind": "function", @@ -12344,6 +14569,7 @@ "id": 9054, "nodeType": "FunctionDefinition", "src": "17493:46:12", + "nodes": [], "functionSelector": "4049ddd2", "implemented": false, "kind": "function", @@ -12399,6 +14625,7 @@ "id": 9063, "nodeType": "FunctionDefinition", "src": "17595:69:12", + "nodes": [], "functionSelector": "70ca10bb", "implemented": false, "kind": "function", @@ -12509,6 +14736,7 @@ "id": 9070, "nodeType": "FunctionDefinition", "src": "17759:61:12", + "nodes": [], "functionSelector": "f8e18b57", "implemented": false, "kind": "function", @@ -12592,6 +14820,7 @@ "id": 9075, "nodeType": "FunctionDefinition", "src": "17890:43:12", + "nodes": [], "functionSelector": "ca669fa7", "implemented": false, "kind": "function", @@ -12648,6 +14877,7 @@ "id": 9080, "nodeType": "FunctionDefinition", "src": "18035:48:12", + "nodes": [], "functionSelector": "06447d56", "implemented": false, "kind": "function", @@ -12704,6 +14934,7 @@ "id": 9087, "nodeType": "FunctionDefinition", "src": "18195:61:12", + "nodes": [], "functionSelector": "47e50cce", "implemented": false, "kind": "function", @@ -12788,6 +15019,7 @@ "id": 9094, "nodeType": "FunctionDefinition", "src": "18400:66:12", + "nodes": [], "functionSelector": "45b56078", "implemented": false, "kind": "function", @@ -12872,6 +15104,7 @@ "id": 9097, "nodeType": "FunctionDefinition", "src": "18536:30:12", + "nodes": [], "functionSelector": "90c5013b", "implemented": false, "kind": "function", @@ -12899,6 +15132,7 @@ "id": 9104, "nodeType": "FunctionDefinition", "src": "18603:60:12", + "nodes": [], "functionSelector": "c88a5e6d", "implemented": false, "kind": "function", @@ -12982,6 +15216,7 @@ "id": 9111, "nodeType": "FunctionDefinition", "src": "18697:74:12", + "nodes": [], "functionSelector": "b4d6c782", "implemented": false, "kind": "function", @@ -13065,6 +15300,7 @@ "id": 9116, "nodeType": "FunctionDefinition", "src": "18813:58:12", + "nodes": [], "functionSelector": "f28dceb3", "implemented": false, "kind": "function", @@ -13120,6 +15356,7 @@ "id": 9121, "nodeType": "FunctionDefinition", "src": "18876:50:12", + "nodes": [], "functionSelector": "c31eb0e0", "implemented": false, "kind": "function", @@ -13175,6 +15412,7 @@ "id": 9124, "nodeType": "FunctionDefinition", "src": "18931:33:12", + "nodes": [], "functionSelector": "f4844814", "implemented": false, "kind": "function", @@ -13202,6 +15440,7 @@ "id": 9135, "nodeType": "FunctionDefinition", "src": "19297:99:12", + "nodes": [], "functionSelector": "491cc7c2", "implemented": false, "kind": "function", @@ -13338,6 +15577,7 @@ "id": 9148, "nodeType": "FunctionDefinition", "src": "19401:124:12", + "nodes": [], "functionSelector": "81bad6f3", "implemented": false, "kind": "function", @@ -13502,6 +15742,7 @@ "id": 9157, "nodeType": "FunctionDefinition", "src": "19780:91:12", + "nodes": [], "functionSelector": "b96213e4", "implemented": false, "kind": "function", @@ -13612,6 +15853,7 @@ "id": 9168, "nodeType": "FunctionDefinition", "src": "20039:109:12", + "nodes": [], "functionSelector": "81409b91", "implemented": false, "kind": "function", @@ -13749,6 +15991,7 @@ "id": 9171, "nodeType": "FunctionDefinition", "src": "20184:37:12", + "nodes": [], "functionSelector": "3fdf4e15", "implemented": false, "kind": "function", @@ -13776,6 +16019,7 @@ "id": 9178, "nodeType": "FunctionDefinition", "src": "20349:66:12", + "nodes": [], "functionSelector": "bd6af434", "implemented": false, "kind": "function", @@ -13859,6 +16103,7 @@ "id": 9187, "nodeType": "FunctionDefinition", "src": "20498:84:12", + "nodes": [], "functionSelector": "f30c7ba3", "implemented": false, "kind": "function", @@ -13969,6 +16214,7 @@ "id": 9192, "nodeType": "FunctionDefinition", "src": "20614:48:12", + "nodes": [], "functionSelector": "ff483c54", "implemented": false, "kind": "function", @@ -14025,6 +16271,7 @@ "id": 9197, "nodeType": "FunctionDefinition", "src": "20812:58:12", + "nodes": [], "functionSelector": "9711715a", "implemented": false, "kind": "function", @@ -14080,6 +16327,7 @@ "id": 9204, "nodeType": "FunctionDefinition", "src": "21062:70:12", + "nodes": [], "functionSelector": "44d7f0a4", "implemented": false, "kind": "function", @@ -14163,6 +16411,7 @@ "id": 9213, "nodeType": "FunctionDefinition", "src": "21236:103:12", + "nodes": [], "functionSelector": "6ba3ba2b", "implemented": false, "kind": "function", @@ -14273,6 +16522,7 @@ "id": 9220, "nodeType": "FunctionDefinition", "src": "21456:82:12", + "nodes": [], "functionSelector": "31ba3498", "implemented": false, "kind": "function", @@ -14356,6 +16606,7 @@ "id": 9229, "nodeType": "FunctionDefinition", "src": "21759:98:12", + "nodes": [], "functionSelector": "7ca29682", "implemented": false, "kind": "function", @@ -14466,6 +16717,7 @@ "id": 9238, "nodeType": "FunctionDefinition", "src": "21980:109:12", + "nodes": [], "functionSelector": "71ee464d", "implemented": false, "kind": "function", @@ -14576,6 +16828,7 @@ "id": 9247, "nodeType": "FunctionDefinition", "src": "22323:104:12", + "nodes": [], "functionSelector": "84d52b7a", "implemented": false, "kind": "function", @@ -14686,6 +16939,7 @@ "id": 9254, "nodeType": "FunctionDefinition", "src": "22561:88:12", + "nodes": [], "functionSelector": "98680034", "implemented": false, "kind": "function", @@ -14769,6 +17023,7 @@ "id": 9259, "nodeType": "FunctionDefinition", "src": "22760:45:12", + "nodes": [], "functionSelector": "9ebf6827", "implemented": false, "kind": "function", @@ -14824,6 +17079,7 @@ "id": 9265, "nodeType": "FunctionDefinition", "src": "22911:61:12", + "nodes": [], "documentation": { "id": 9260, "nodeType": "StructuredDocumentation", @@ -14885,6 +17141,7 @@ "id": 9270, "nodeType": "FunctionDefinition", "src": "23107:48:12", + "nodes": [], "functionSelector": "d9bbf3a1", "implemented": false, "kind": "function", @@ -14940,6 +17197,7 @@ "id": 9275, "nodeType": "FunctionDefinition", "src": "23365:43:12", + "nodes": [], "functionSelector": "0f29772b", "implemented": false, "kind": "function", @@ -14995,6 +17253,7 @@ "id": 9282, "nodeType": "FunctionDefinition", "src": "23465:64:12", + "nodes": [], "functionSelector": "d74c83a4", "implemented": false, "kind": "function", @@ -15077,6 +17336,7 @@ "id": 9289, "nodeType": "FunctionDefinition", "src": "23662:59:12", + "nodes": [], "functionSelector": "f2830f7b", "implemented": false, "kind": "function", @@ -15159,6 +17419,7 @@ "id": 9294, "nodeType": "FunctionDefinition", "src": "23920:50:12", + "nodes": [], "functionSelector": "57e22dde", "implemented": false, "kind": "function", @@ -15215,6 +17476,7 @@ "id": 9301, "nodeType": "FunctionDefinition", "src": "23975:69:12", + "nodes": [], "functionSelector": "4074e0a8", "implemented": false, "kind": "function", @@ -15299,6 +17561,7 @@ "id": 9310, "nodeType": "FunctionDefinition", "src": "24049:87:12", + "nodes": [], "functionSelector": "efb77a75", "implemented": false, "kind": "function", @@ -15411,6 +17674,7 @@ "id": 9316, "nodeType": "FunctionDefinition", "src": "24141:62:12", + "nodes": [], "functionSelector": "1d9e269e", "implemented": false, "kind": "function", @@ -15476,6 +17740,7 @@ "id": 9321, "nodeType": "FunctionDefinition", "src": "24297:52:12", + "nodes": [], "functionSelector": "997a0222", "implemented": false, "kind": "function", @@ -15532,6 +17797,7 @@ "id": 9327, "nodeType": "FunctionDefinition", "src": "24354:64:12", + "nodes": [], "functionSelector": "3ce969e6", "implemented": false, "kind": "function", @@ -15597,6 +17863,7 @@ "id": 9334, "nodeType": "FunctionDefinition", "src": "24482:79:12", + "nodes": [], "functionSelector": "d92d8efd", "implemented": false, "kind": "function", @@ -15681,6 +17948,7 @@ "id": 9339, "nodeType": "FunctionDefinition", "src": "24642:51:12", + "nodes": [], "functionSelector": "ea060291", "implemented": false, "kind": "function", @@ -15737,6 +18005,7 @@ "id": 9344, "nodeType": "FunctionDefinition", "src": "24793:43:12", + "nodes": [], "functionSelector": "be646da1", "implemented": false, "kind": "function", @@ -15792,6 +18061,7 @@ "id": 9351, "nodeType": "FunctionDefinition", "src": "24935:59:12", + "nodes": [], "functionSelector": "4d8abc4b", "implemented": false, "kind": "function", @@ -15877,6 +18147,9 @@ "baseName": { "id": 9028, "name": "VmSafe", + "nameLocations": [ + "17145:6:12" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 9027, "src": "17145:6:12" diff --git a/out/console.sol/console.json b/out/console.sol/console.json index 494465f..c59149f 100644 --- a/out/console.sol/console.json +++ b/out/console.sol/console.json @@ -1,16 +1,64 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122051d8b5082dbf3862e9d424856c78fca6660ef4de728a06b71d17694397308ccb64736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212201ce7f2bd38eeb571b8b11d8dcfcd60bba05a1a395a18814b612f6568d00f6c0164736f6c63430008110033", "sourceMap": "66:66622:13:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;66:66622:13;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122051d8b5082dbf3862e9d424856c78fca6660ef4de728a06b71d17694397308ccb64736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212201ce7f2bd38eeb571b8b11d8dcfcd60bba05a1a395a18814b612f6568d00f6c0164736f6c63430008110033", "sourceMap": "66:66622:13:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/console.sol\":\"console\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/console.sol": "console" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/console.sol", "id": 17417, @@ -26,6 +74,7 @@ "id": 9354, "nodeType": "PragmaDirective", "src": "32:32:13", + "nodes": [], "literals": [ "solidity", ">=", @@ -45,6 +94,7 @@ "id": 9360, "nodeType": "VariableDeclaration", "src": "88:86:13", + "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE_ADDRESS", @@ -118,6 +168,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "123:51:13", @@ -133,10 +184,12 @@ "id": 9376, "nodeType": "FunctionDefinition", "src": "181:376:13", + "nodes": [], "body": { "id": 9375, "nodeType": "Block", "src": "241:316:13", + "nodes": [], "statements": [ { "assignments": [ @@ -190,6 +243,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "283:6:13", "memberName": "length", "nodeType": "MemberAccess", "src": "275:14:13", @@ -440,10 +494,12 @@ "id": 9387, "nodeType": "FunctionDefinition", "src": "563:95:13", + "nodes": [], "body": { "id": 9386, "nodeType": "Block", "src": "592:66:13", + "nodes": [], "statements": [ { "expression": { @@ -491,6 +547,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "622:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "618:23:13", @@ -505,6 +562,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "618:32:13", @@ -539,6 +597,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "602:49:13", @@ -580,10 +639,12 @@ "id": 9401, "nodeType": "FunctionDefinition", "src": "664:111:13", + "nodes": [], "body": { "id": 9400, "nodeType": "Block", "src": "702:73:13", + "nodes": [], "statements": [ { "expression": { @@ -647,6 +708,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "732:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "728:23:13", @@ -661,6 +723,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "728:39:13", @@ -695,6 +758,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "712:56:13", @@ -764,10 +828,12 @@ "id": 9415, "nodeType": "FunctionDefinition", "src": "781:114:13", + "nodes": [], "body": { "id": 9414, "nodeType": "Block", "src": "821:74:13", + "nodes": [], "statements": [ { "expression": { @@ -831,6 +897,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "851:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "847:23:13", @@ -845,6 +912,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "847:40:13", @@ -879,6 +947,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "831:57:13", @@ -948,10 +1017,12 @@ "id": 9429, "nodeType": "FunctionDefinition", "src": "901:127:13", + "nodes": [], "body": { "id": 9428, "nodeType": "Block", "src": "952:76:13", + "nodes": [], "statements": [ { "expression": { @@ -1015,6 +1086,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "982:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "978:23:13", @@ -1029,6 +1101,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "978:42:13", @@ -1063,6 +1136,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "962:59:13", @@ -1132,10 +1206,12 @@ "id": 9443, "nodeType": "FunctionDefinition", "src": "1034:114:13", + "nodes": [], "body": { "id": 9442, "nodeType": "Block", "src": "1074:74:13", + "nodes": [], "statements": [ { "expression": { @@ -1199,6 +1275,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1104:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1100:23:13", @@ -1213,6 +1290,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1100:40:13", @@ -1247,6 +1325,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1084:57:13", @@ -1316,10 +1395,12 @@ "id": 9457, "nodeType": "FunctionDefinition", "src": "1154:123:13", + "nodes": [], "body": { "id": 9456, "nodeType": "Block", "src": "1200:77:13", + "nodes": [], "statements": [ { "expression": { @@ -1383,6 +1464,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1230:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1226:23:13", @@ -1397,6 +1479,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1226:43:13", @@ -1431,6 +1514,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1210:60:13", @@ -1501,10 +1585,12 @@ "id": 9471, "nodeType": "FunctionDefinition", "src": "1283:124:13", + "nodes": [], "body": { "id": 9470, "nodeType": "Block", "src": "1332:75:13", + "nodes": [], "statements": [ { "expression": { @@ -1568,6 +1654,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1362:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1358:23:13", @@ -1582,6 +1669,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1358:41:13", @@ -1616,6 +1704,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1342:58:13", @@ -1685,10 +1774,12 @@ "id": 9485, "nodeType": "FunctionDefinition", "src": "1413:120:13", + "nodes": [], "body": { "id": 9484, "nodeType": "Block", "src": "1457:76:13", + "nodes": [], "statements": [ { "expression": { @@ -1752,6 +1843,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1487:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1483:23:13", @@ -1766,6 +1858,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1483:42:13", @@ -1800,6 +1893,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1467:59:13", @@ -1869,10 +1963,12 @@ "id": 9499, "nodeType": "FunctionDefinition", "src": "1539:120:13", + "nodes": [], "body": { "id": 9498, "nodeType": "Block", "src": "1583:76:13", + "nodes": [], "statements": [ { "expression": { @@ -1936,6 +2032,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1613:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1609:23:13", @@ -1950,6 +2047,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1609:42:13", @@ -1984,6 +2082,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1593:59:13", @@ -2053,10 +2152,12 @@ "id": 9513, "nodeType": "FunctionDefinition", "src": "1665:120:13", + "nodes": [], "body": { "id": 9512, "nodeType": "Block", "src": "1709:76:13", + "nodes": [], "statements": [ { "expression": { @@ -2120,6 +2221,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1739:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1735:23:13", @@ -2134,6 +2236,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1735:42:13", @@ -2168,6 +2271,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1719:59:13", @@ -2237,10 +2341,12 @@ "id": 9527, "nodeType": "FunctionDefinition", "src": "1791:120:13", + "nodes": [], "body": { "id": 9526, "nodeType": "Block", "src": "1835:76:13", + "nodes": [], "statements": [ { "expression": { @@ -2304,6 +2410,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1865:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1861:23:13", @@ -2318,6 +2425,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1861:42:13", @@ -2352,6 +2460,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1845:59:13", @@ -2421,10 +2530,12 @@ "id": 9541, "nodeType": "FunctionDefinition", "src": "1917:120:13", + "nodes": [], "body": { "id": 9540, "nodeType": "Block", "src": "1961:76:13", + "nodes": [], "statements": [ { "expression": { @@ -2488,6 +2599,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1991:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1987:23:13", @@ -2502,6 +2614,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1987:42:13", @@ -2536,6 +2649,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1971:59:13", @@ -2605,10 +2719,12 @@ "id": 9555, "nodeType": "FunctionDefinition", "src": "2043:120:13", + "nodes": [], "body": { "id": 9554, "nodeType": "Block", "src": "2087:76:13", + "nodes": [], "statements": [ { "expression": { @@ -2672,6 +2788,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2117:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2113:23:13", @@ -2686,6 +2803,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2113:42:13", @@ -2720,6 +2838,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2097:59:13", @@ -2789,10 +2908,12 @@ "id": 9569, "nodeType": "FunctionDefinition", "src": "2169:120:13", + "nodes": [], "body": { "id": 9568, "nodeType": "Block", "src": "2213:76:13", + "nodes": [], "statements": [ { "expression": { @@ -2856,6 +2977,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2243:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2239:23:13", @@ -2870,6 +2992,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2239:42:13", @@ -2904,6 +3027,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2223:59:13", @@ -2973,10 +3097,12 @@ "id": 9583, "nodeType": "FunctionDefinition", "src": "2295:120:13", + "nodes": [], "body": { "id": 9582, "nodeType": "Block", "src": "2339:76:13", + "nodes": [], "statements": [ { "expression": { @@ -3040,6 +3166,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2369:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2365:23:13", @@ -3054,6 +3181,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2365:42:13", @@ -3088,6 +3216,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2349:59:13", @@ -3157,10 +3286,12 @@ "id": 9597, "nodeType": "FunctionDefinition", "src": "2421:120:13", + "nodes": [], "body": { "id": 9596, "nodeType": "Block", "src": "2465:76:13", + "nodes": [], "statements": [ { "expression": { @@ -3224,6 +3355,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2495:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2491:23:13", @@ -3238,6 +3370,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2491:42:13", @@ -3272,6 +3405,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2475:59:13", @@ -3341,10 +3475,12 @@ "id": 9611, "nodeType": "FunctionDefinition", "src": "2547:123:13", + "nodes": [], "body": { "id": 9610, "nodeType": "Block", "src": "2593:77:13", + "nodes": [], "statements": [ { "expression": { @@ -3408,6 +3544,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2623:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2619:23:13", @@ -3422,6 +3559,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2619:43:13", @@ -3456,6 +3594,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2603:60:13", @@ -3525,10 +3664,12 @@ "id": 9625, "nodeType": "FunctionDefinition", "src": "2676:123:13", + "nodes": [], "body": { "id": 9624, "nodeType": "Block", "src": "2722:77:13", + "nodes": [], "statements": [ { "expression": { @@ -3592,6 +3733,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2752:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2748:23:13", @@ -3606,6 +3748,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2748:43:13", @@ -3640,6 +3783,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2732:60:13", @@ -3709,10 +3853,12 @@ "id": 9639, "nodeType": "FunctionDefinition", "src": "2805:123:13", + "nodes": [], "body": { "id": 9638, "nodeType": "Block", "src": "2851:77:13", + "nodes": [], "statements": [ { "expression": { @@ -3776,6 +3922,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2881:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2877:23:13", @@ -3790,6 +3937,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2877:43:13", @@ -3824,6 +3972,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2861:60:13", @@ -3893,10 +4042,12 @@ "id": 9653, "nodeType": "FunctionDefinition", "src": "2934:123:13", + "nodes": [], "body": { "id": 9652, "nodeType": "Block", "src": "2980:77:13", + "nodes": [], "statements": [ { "expression": { @@ -3960,6 +4111,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3010:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3006:23:13", @@ -3974,6 +4126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3006:43:13", @@ -4008,6 +4161,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2990:60:13", @@ -4077,10 +4231,12 @@ "id": 9667, "nodeType": "FunctionDefinition", "src": "3063:123:13", + "nodes": [], "body": { "id": 9666, "nodeType": "Block", "src": "3109:77:13", + "nodes": [], "statements": [ { "expression": { @@ -4144,6 +4300,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3139:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3135:23:13", @@ -4158,6 +4315,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3135:43:13", @@ -4192,6 +4350,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3119:60:13", @@ -4261,10 +4420,12 @@ "id": 9681, "nodeType": "FunctionDefinition", "src": "3192:123:13", + "nodes": [], "body": { "id": 9680, "nodeType": "Block", "src": "3238:77:13", + "nodes": [], "statements": [ { "expression": { @@ -4328,6 +4489,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3268:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3264:23:13", @@ -4342,6 +4504,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3264:43:13", @@ -4376,6 +4539,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3248:60:13", @@ -4445,10 +4609,12 @@ "id": 9695, "nodeType": "FunctionDefinition", "src": "3321:123:13", + "nodes": [], "body": { "id": 9694, "nodeType": "Block", "src": "3367:77:13", + "nodes": [], "statements": [ { "expression": { @@ -4512,6 +4678,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3397:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3393:23:13", @@ -4526,6 +4693,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3393:43:13", @@ -4560,6 +4728,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3377:60:13", @@ -4629,10 +4798,12 @@ "id": 9709, "nodeType": "FunctionDefinition", "src": "3450:123:13", + "nodes": [], "body": { "id": 9708, "nodeType": "Block", "src": "3496:77:13", + "nodes": [], "statements": [ { "expression": { @@ -4696,6 +4867,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3526:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3522:23:13", @@ -4710,6 +4882,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3522:43:13", @@ -4744,6 +4917,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3506:60:13", @@ -4813,10 +4987,12 @@ "id": 9723, "nodeType": "FunctionDefinition", "src": "3579:123:13", + "nodes": [], "body": { "id": 9722, "nodeType": "Block", "src": "3625:77:13", + "nodes": [], "statements": [ { "expression": { @@ -4880,6 +5056,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3655:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3651:23:13", @@ -4894,6 +5071,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3651:43:13", @@ -4928,6 +5106,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3635:60:13", @@ -4997,10 +5176,12 @@ "id": 9737, "nodeType": "FunctionDefinition", "src": "3708:123:13", + "nodes": [], "body": { "id": 9736, "nodeType": "Block", "src": "3754:77:13", + "nodes": [], "statements": [ { "expression": { @@ -5064,6 +5245,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3784:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3780:23:13", @@ -5078,6 +5260,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3780:43:13", @@ -5112,6 +5295,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3764:60:13", @@ -5181,10 +5365,12 @@ "id": 9751, "nodeType": "FunctionDefinition", "src": "3837:123:13", + "nodes": [], "body": { "id": 9750, "nodeType": "Block", "src": "3883:77:13", + "nodes": [], "statements": [ { "expression": { @@ -5248,6 +5434,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3913:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3909:23:13", @@ -5262,6 +5449,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3909:43:13", @@ -5296,6 +5484,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3893:60:13", @@ -5365,10 +5554,12 @@ "id": 9765, "nodeType": "FunctionDefinition", "src": "3966:123:13", + "nodes": [], "body": { "id": 9764, "nodeType": "Block", "src": "4012:77:13", + "nodes": [], "statements": [ { "expression": { @@ -5432,6 +5623,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4042:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4038:23:13", @@ -5446,6 +5638,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4038:43:13", @@ -5480,6 +5673,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4022:60:13", @@ -5549,10 +5743,12 @@ "id": 9779, "nodeType": "FunctionDefinition", "src": "4095:123:13", + "nodes": [], "body": { "id": 9778, "nodeType": "Block", "src": "4141:77:13", + "nodes": [], "statements": [ { "expression": { @@ -5616,6 +5812,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4171:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4167:23:13", @@ -5630,6 +5827,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4167:43:13", @@ -5664,6 +5862,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4151:60:13", @@ -5733,10 +5932,12 @@ "id": 9793, "nodeType": "FunctionDefinition", "src": "4224:123:13", + "nodes": [], "body": { "id": 9792, "nodeType": "Block", "src": "4270:77:13", + "nodes": [], "statements": [ { "expression": { @@ -5800,6 +6001,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4300:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4296:23:13", @@ -5814,6 +6016,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4296:43:13", @@ -5848,6 +6051,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4280:60:13", @@ -5917,10 +6121,12 @@ "id": 9807, "nodeType": "FunctionDefinition", "src": "4353:123:13", + "nodes": [], "body": { "id": 9806, "nodeType": "Block", "src": "4399:77:13", + "nodes": [], "statements": [ { "expression": { @@ -5984,6 +6190,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4429:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4425:23:13", @@ -5998,6 +6205,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4425:43:13", @@ -6032,6 +6240,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4409:60:13", @@ -6101,10 +6310,12 @@ "id": 9821, "nodeType": "FunctionDefinition", "src": "4482:123:13", + "nodes": [], "body": { "id": 9820, "nodeType": "Block", "src": "4528:77:13", + "nodes": [], "statements": [ { "expression": { @@ -6168,6 +6379,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4558:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4554:23:13", @@ -6182,6 +6394,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4554:43:13", @@ -6216,6 +6429,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4538:60:13", @@ -6285,10 +6499,12 @@ "id": 9835, "nodeType": "FunctionDefinition", "src": "4611:123:13", + "nodes": [], "body": { "id": 9834, "nodeType": "Block", "src": "4657:77:13", + "nodes": [], "statements": [ { "expression": { @@ -6352,6 +6568,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4687:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4683:23:13", @@ -6366,6 +6583,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4683:43:13", @@ -6400,6 +6618,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4667:60:13", @@ -6469,10 +6688,12 @@ "id": 9849, "nodeType": "FunctionDefinition", "src": "4740:123:13", + "nodes": [], "body": { "id": 9848, "nodeType": "Block", "src": "4786:77:13", + "nodes": [], "statements": [ { "expression": { @@ -6536,6 +6757,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4816:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4812:23:13", @@ -6550,6 +6772,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4812:43:13", @@ -6584,6 +6807,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4796:60:13", @@ -6653,10 +6877,12 @@ "id": 9863, "nodeType": "FunctionDefinition", "src": "4869:123:13", + "nodes": [], "body": { "id": 9862, "nodeType": "Block", "src": "4915:77:13", + "nodes": [], "statements": [ { "expression": { @@ -6720,6 +6946,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4945:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4941:23:13", @@ -6734,6 +6961,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4941:43:13", @@ -6768,6 +6996,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4925:60:13", @@ -6837,10 +7066,12 @@ "id": 9877, "nodeType": "FunctionDefinition", "src": "4998:123:13", + "nodes": [], "body": { "id": 9876, "nodeType": "Block", "src": "5044:77:13", + "nodes": [], "statements": [ { "expression": { @@ -6904,6 +7135,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5074:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5070:23:13", @@ -6918,6 +7150,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5070:43:13", @@ -6952,6 +7185,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5054:60:13", @@ -7021,10 +7255,12 @@ "id": 9891, "nodeType": "FunctionDefinition", "src": "5127:123:13", + "nodes": [], "body": { "id": 9890, "nodeType": "Block", "src": "5173:77:13", + "nodes": [], "statements": [ { "expression": { @@ -7088,6 +7324,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5203:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5199:23:13", @@ -7102,6 +7339,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5199:43:13", @@ -7136,6 +7374,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5183:60:13", @@ -7205,10 +7444,12 @@ "id": 9905, "nodeType": "FunctionDefinition", "src": "5256:123:13", + "nodes": [], "body": { "id": 9904, "nodeType": "Block", "src": "5302:77:13", + "nodes": [], "statements": [ { "expression": { @@ -7272,6 +7513,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5332:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5328:23:13", @@ -7286,6 +7528,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5328:43:13", @@ -7320,6 +7563,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5312:60:13", @@ -7389,10 +7633,12 @@ "id": 9919, "nodeType": "FunctionDefinition", "src": "5385:123:13", + "nodes": [], "body": { "id": 9918, "nodeType": "Block", "src": "5431:77:13", + "nodes": [], "statements": [ { "expression": { @@ -7456,6 +7702,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5461:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5457:23:13", @@ -7470,6 +7717,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5457:43:13", @@ -7504,6 +7752,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5441:60:13", @@ -7573,10 +7822,12 @@ "id": 9933, "nodeType": "FunctionDefinition", "src": "5514:110:13", + "nodes": [], "body": { "id": 9932, "nodeType": "Block", "src": "5550:74:13", + "nodes": [], "statements": [ { "expression": { @@ -7640,6 +7891,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5580:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5576:23:13", @@ -7654,6 +7906,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5576:40:13", @@ -7688,6 +7941,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5560:57:13", @@ -7757,10 +8011,12 @@ "id": 9947, "nodeType": "FunctionDefinition", "src": "5630:121:13", + "nodes": [], "body": { "id": 9946, "nodeType": "Block", "src": "5675:76:13", + "nodes": [], "statements": [ { "expression": { @@ -7824,6 +8080,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5705:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5701:23:13", @@ -7838,6 +8095,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5701:42:13", @@ -7872,6 +8130,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5685:59:13", @@ -7941,10 +8200,12 @@ "id": 9961, "nodeType": "FunctionDefinition", "src": "5757:110:13", + "nodes": [], "body": { "id": 9960, "nodeType": "Block", "src": "5793:74:13", + "nodes": [], "statements": [ { "expression": { @@ -8008,6 +8269,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5823:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5819:23:13", @@ -8022,6 +8284,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5819:40:13", @@ -8056,6 +8319,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5803:57:13", @@ -8125,10 +8389,12 @@ "id": 9975, "nodeType": "FunctionDefinition", "src": "5873:116:13", + "nodes": [], "body": { "id": 9974, "nodeType": "Block", "src": "5912:77:13", + "nodes": [], "statements": [ { "expression": { @@ -8192,6 +8458,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5942:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5938:23:13", @@ -8206,6 +8473,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5938:43:13", @@ -8240,6 +8508,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5922:60:13", @@ -8310,10 +8579,12 @@ "id": 9992, "nodeType": "FunctionDefinition", "src": "5995:128:13", + "nodes": [], "body": { "id": 9991, "nodeType": "Block", "src": "6040:83:13", + "nodes": [], "statements": [ { "expression": { @@ -8393,6 +8664,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6070:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6066:23:13", @@ -8407,6 +8679,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6066:49:13", @@ -8441,6 +8714,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6050:66:13", @@ -8537,10 +8811,12 @@ "id": 10009, "nodeType": "FunctionDefinition", "src": "6129:139:13", + "nodes": [], "body": { "id": 10008, "nodeType": "Block", "src": "6183:85:13", + "nodes": [], "statements": [ { "expression": { @@ -8620,6 +8896,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6213:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6209:23:13", @@ -8634,6 +8911,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6209:51:13", @@ -8668,6 +8946,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6193:68:13", @@ -8764,10 +9043,12 @@ "id": 10026, "nodeType": "FunctionDefinition", "src": "6274:128:13", + "nodes": [], "body": { "id": 10025, "nodeType": "Block", "src": "6319:83:13", + "nodes": [], "statements": [ { "expression": { @@ -8847,6 +9128,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6349:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6345:23:13", @@ -8861,6 +9143,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6345:49:13", @@ -8895,6 +9178,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6329:66:13", @@ -8991,10 +9275,12 @@ "id": 10043, "nodeType": "FunctionDefinition", "src": "6408:134:13", + "nodes": [], "body": { "id": 10042, "nodeType": "Block", "src": "6456:86:13", + "nodes": [], "statements": [ { "expression": { @@ -9074,6 +9360,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6486:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6482:23:13", @@ -9088,6 +9375,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6482:52:13", @@ -9122,6 +9410,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6466:69:13", @@ -9219,10 +9508,12 @@ "id": 10060, "nodeType": "FunctionDefinition", "src": "6548:139:13", + "nodes": [], "body": { "id": 10059, "nodeType": "Block", "src": "6602:85:13", + "nodes": [], "statements": [ { "expression": { @@ -9302,6 +9593,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6632:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6628:23:13", @@ -9316,6 +9608,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6628:51:13", @@ -9350,6 +9643,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6612:68:13", @@ -9446,10 +9740,12 @@ "id": 10077, "nodeType": "FunctionDefinition", "src": "6693:150:13", + "nodes": [], "body": { "id": 10076, "nodeType": "Block", "src": "6756:87:13", + "nodes": [], "statements": [ { "expression": { @@ -9529,6 +9825,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6786:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6782:23:13", @@ -9543,6 +9840,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6782:53:13", @@ -9577,6 +9875,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6766:70:13", @@ -9673,10 +9972,12 @@ "id": 10094, "nodeType": "FunctionDefinition", "src": "6849:139:13", + "nodes": [], "body": { "id": 10093, "nodeType": "Block", "src": "6903:85:13", + "nodes": [], "statements": [ { "expression": { @@ -9756,6 +10057,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6933:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6929:23:13", @@ -9770,6 +10072,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6929:51:13", @@ -9804,6 +10107,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6913:68:13", @@ -9900,10 +10204,12 @@ "id": 10111, "nodeType": "FunctionDefinition", "src": "6994:145:13", + "nodes": [], "body": { "id": 10110, "nodeType": "Block", "src": "7051:88:13", + "nodes": [], "statements": [ { "expression": { @@ -9983,6 +10289,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7081:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7077:23:13", @@ -9997,6 +10304,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7077:54:13", @@ -10031,6 +10339,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7061:71:13", @@ -10128,10 +10437,12 @@ "id": 10128, "nodeType": "FunctionDefinition", "src": "7145:128:13", + "nodes": [], "body": { "id": 10127, "nodeType": "Block", "src": "7190:83:13", + "nodes": [], "statements": [ { "expression": { @@ -10211,6 +10522,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7220:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7216:23:13", @@ -10225,6 +10537,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7216:49:13", @@ -10259,6 +10572,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7200:66:13", @@ -10355,10 +10669,12 @@ "id": 10145, "nodeType": "FunctionDefinition", "src": "7279:139:13", + "nodes": [], "body": { "id": 10144, "nodeType": "Block", "src": "7333:85:13", + "nodes": [], "statements": [ { "expression": { @@ -10438,6 +10754,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7363:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7359:23:13", @@ -10452,6 +10769,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7359:51:13", @@ -10486,6 +10804,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7343:68:13", @@ -10582,10 +10901,12 @@ "id": 10162, "nodeType": "FunctionDefinition", "src": "7424:128:13", + "nodes": [], "body": { "id": 10161, "nodeType": "Block", "src": "7469:83:13", + "nodes": [], "statements": [ { "expression": { @@ -10665,6 +10986,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7499:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7495:23:13", @@ -10679,6 +11001,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7495:49:13", @@ -10713,6 +11036,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7479:66:13", @@ -10809,10 +11133,12 @@ "id": 10179, "nodeType": "FunctionDefinition", "src": "7558:134:13", + "nodes": [], "body": { "id": 10178, "nodeType": "Block", "src": "7606:86:13", + "nodes": [], "statements": [ { "expression": { @@ -10892,6 +11218,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7636:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7632:23:13", @@ -10906,6 +11233,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7632:52:13", @@ -10940,6 +11268,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7616:69:13", @@ -11037,10 +11366,12 @@ "id": 10196, "nodeType": "FunctionDefinition", "src": "7698:134:13", + "nodes": [], "body": { "id": 10195, "nodeType": "Block", "src": "7746:86:13", + "nodes": [], "statements": [ { "expression": { @@ -11120,6 +11451,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7776:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7772:23:13", @@ -11134,6 +11466,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7772:52:13", @@ -11168,6 +11501,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7756:69:13", @@ -11265,10 +11599,12 @@ "id": 10213, "nodeType": "FunctionDefinition", "src": "7838:145:13", + "nodes": [], "body": { "id": 10212, "nodeType": "Block", "src": "7895:88:13", + "nodes": [], "statements": [ { "expression": { @@ -11348,6 +11684,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7925:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7921:23:13", @@ -11362,6 +11699,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7921:54:13", @@ -11396,6 +11734,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7905:71:13", @@ -11493,10 +11832,12 @@ "id": 10230, "nodeType": "FunctionDefinition", "src": "7989:134:13", + "nodes": [], "body": { "id": 10229, "nodeType": "Block", "src": "8037:86:13", + "nodes": [], "statements": [ { "expression": { @@ -11576,6 +11917,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8067:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8063:23:13", @@ -11590,6 +11932,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8063:52:13", @@ -11624,6 +11967,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8047:69:13", @@ -11721,10 +12065,12 @@ "id": 10247, "nodeType": "FunctionDefinition", "src": "8129:140:13", + "nodes": [], "body": { "id": 10246, "nodeType": "Block", "src": "8180:89:13", + "nodes": [], "statements": [ { "expression": { @@ -11804,6 +12150,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8210:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8206:23:13", @@ -11818,6 +12165,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8206:55:13", @@ -11852,6 +12200,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8190:72:13", @@ -11950,10 +12299,12 @@ "id": 10267, "nodeType": "FunctionDefinition", "src": "8275:146:13", + "nodes": [], "body": { "id": 10266, "nodeType": "Block", "src": "8329:92:13", + "nodes": [], "statements": [ { "expression": { @@ -12049,6 +12400,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8359:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8355:23:13", @@ -12063,6 +12415,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8355:58:13", @@ -12097,6 +12450,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8339:75:13", @@ -12220,10 +12574,12 @@ "id": 10287, "nodeType": "FunctionDefinition", "src": "8427:157:13", + "nodes": [], "body": { "id": 10286, "nodeType": "Block", "src": "8490:94:13", + "nodes": [], "statements": [ { "expression": { @@ -12319,6 +12675,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8520:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8516:23:13", @@ -12333,6 +12690,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8516:60:13", @@ -12367,6 +12725,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8500:77:13", @@ -12490,10 +12849,12 @@ "id": 10307, "nodeType": "FunctionDefinition", "src": "8590:146:13", + "nodes": [], "body": { "id": 10306, "nodeType": "Block", "src": "8644:92:13", + "nodes": [], "statements": [ { "expression": { @@ -12589,6 +12950,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8674:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8670:23:13", @@ -12603,6 +12965,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8670:58:13", @@ -12637,6 +13000,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8654:75:13", @@ -12760,10 +13124,12 @@ "id": 10327, "nodeType": "FunctionDefinition", "src": "8742:152:13", + "nodes": [], "body": { "id": 10326, "nodeType": "Block", "src": "8799:95:13", + "nodes": [], "statements": [ { "expression": { @@ -12859,6 +13225,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8829:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8825:23:13", @@ -12873,6 +13240,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8825:61:13", @@ -12907,6 +13275,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8809:78:13", @@ -13031,10 +13400,12 @@ "id": 10347, "nodeType": "FunctionDefinition", "src": "8900:157:13", + "nodes": [], "body": { "id": 10346, "nodeType": "Block", "src": "8963:94:13", + "nodes": [], "statements": [ { "expression": { @@ -13130,6 +13501,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8993:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8989:23:13", @@ -13144,6 +13516,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8989:60:13", @@ -13178,6 +13551,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8973:77:13", @@ -13301,10 +13675,12 @@ "id": 10367, "nodeType": "FunctionDefinition", "src": "9063:168:13", + "nodes": [], "body": { "id": 10366, "nodeType": "Block", "src": "9135:96:13", + "nodes": [], "statements": [ { "expression": { @@ -13400,6 +13776,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9165:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9161:23:13", @@ -13414,6 +13791,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9161:62:13", @@ -13448,6 +13826,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9145:79:13", @@ -13571,10 +13950,12 @@ "id": 10387, "nodeType": "FunctionDefinition", "src": "9237:157:13", + "nodes": [], "body": { "id": 10386, "nodeType": "Block", "src": "9300:94:13", + "nodes": [], "statements": [ { "expression": { @@ -13670,6 +14051,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9330:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9326:23:13", @@ -13684,6 +14066,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9326:60:13", @@ -13718,6 +14101,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9310:77:13", @@ -13841,10 +14225,12 @@ "id": 10407, "nodeType": "FunctionDefinition", "src": "9400:163:13", + "nodes": [], "body": { "id": 10406, "nodeType": "Block", "src": "9466:97:13", + "nodes": [], "statements": [ { "expression": { @@ -13940,6 +14326,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9496:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9492:23:13", @@ -13954,6 +14341,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9492:63:13", @@ -13988,6 +14376,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9476:80:13", @@ -14112,10 +14501,12 @@ "id": 10427, "nodeType": "FunctionDefinition", "src": "9569:146:13", + "nodes": [], "body": { "id": 10426, "nodeType": "Block", "src": "9623:92:13", + "nodes": [], "statements": [ { "expression": { @@ -14211,6 +14602,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9653:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9649:23:13", @@ -14225,6 +14617,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9649:58:13", @@ -14259,6 +14652,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9633:75:13", @@ -14382,10 +14776,12 @@ "id": 10447, "nodeType": "FunctionDefinition", "src": "9721:157:13", + "nodes": [], "body": { "id": 10446, "nodeType": "Block", "src": "9784:94:13", + "nodes": [], "statements": [ { "expression": { @@ -14481,6 +14877,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9814:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9810:23:13", @@ -14495,6 +14892,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9810:60:13", @@ -14529,6 +14927,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9794:77:13", @@ -14652,10 +15051,12 @@ "id": 10467, "nodeType": "FunctionDefinition", "src": "9884:146:13", + "nodes": [], "body": { "id": 10466, "nodeType": "Block", "src": "9938:92:13", + "nodes": [], "statements": [ { "expression": { @@ -14751,6 +15152,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9968:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9964:23:13", @@ -14765,6 +15167,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9964:58:13", @@ -14799,6 +15202,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9948:75:13", @@ -14922,10 +15326,12 @@ "id": 10487, "nodeType": "FunctionDefinition", "src": "10036:152:13", + "nodes": [], "body": { "id": 10486, "nodeType": "Block", "src": "10093:95:13", + "nodes": [], "statements": [ { "expression": { @@ -15021,6 +15427,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10123:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10119:23:13", @@ -15035,6 +15442,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10119:61:13", @@ -15069,6 +15477,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10103:78:13", @@ -15193,10 +15602,12 @@ "id": 10507, "nodeType": "FunctionDefinition", "src": "10194:152:13", + "nodes": [], "body": { "id": 10506, "nodeType": "Block", "src": "10251:95:13", + "nodes": [], "statements": [ { "expression": { @@ -15292,6 +15703,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10281:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10277:23:13", @@ -15306,6 +15718,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10277:61:13", @@ -15340,6 +15753,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10261:78:13", @@ -15464,10 +15878,12 @@ "id": 10527, "nodeType": "FunctionDefinition", "src": "10352:163:13", + "nodes": [], "body": { "id": 10526, "nodeType": "Block", "src": "10418:97:13", + "nodes": [], "statements": [ { "expression": { @@ -15563,6 +15979,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10448:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10444:23:13", @@ -15577,6 +15994,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10444:63:13", @@ -15611,6 +16029,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10428:80:13", @@ -15735,10 +16154,12 @@ "id": 10547, "nodeType": "FunctionDefinition", "src": "10521:152:13", + "nodes": [], "body": { "id": 10546, "nodeType": "Block", "src": "10578:95:13", + "nodes": [], "statements": [ { "expression": { @@ -15834,6 +16255,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10608:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10604:23:13", @@ -15848,6 +16270,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10604:61:13", @@ -15882,6 +16305,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10588:78:13", @@ -16006,10 +16430,12 @@ "id": 10567, "nodeType": "FunctionDefinition", "src": "10679:158:13", + "nodes": [], "body": { "id": 10566, "nodeType": "Block", "src": "10739:98:13", + "nodes": [], "statements": [ { "expression": { @@ -16105,6 +16531,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10769:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10765:23:13", @@ -16119,6 +16546,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10765:64:13", @@ -16153,6 +16581,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10749:81:13", @@ -16278,10 +16707,12 @@ "id": 10587, "nodeType": "FunctionDefinition", "src": "10843:157:13", + "nodes": [], "body": { "id": 10586, "nodeType": "Block", "src": "10906:94:13", + "nodes": [], "statements": [ { "expression": { @@ -16377,6 +16808,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10936:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10932:23:13", @@ -16391,6 +16823,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10932:60:13", @@ -16425,6 +16858,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10916:77:13", @@ -16548,10 +16982,12 @@ "id": 10607, "nodeType": "FunctionDefinition", "src": "11006:168:13", + "nodes": [], "body": { "id": 10606, "nodeType": "Block", "src": "11078:96:13", + "nodes": [], "statements": [ { "expression": { @@ -16647,6 +17083,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11108:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11104:23:13", @@ -16661,6 +17098,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11104:62:13", @@ -16695,6 +17133,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11088:79:13", @@ -16818,10 +17257,12 @@ "id": 10627, "nodeType": "FunctionDefinition", "src": "11180:157:13", + "nodes": [], "body": { "id": 10626, "nodeType": "Block", "src": "11243:94:13", + "nodes": [], "statements": [ { "expression": { @@ -16917,6 +17358,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11273:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11269:23:13", @@ -16931,6 +17373,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11269:60:13", @@ -16965,6 +17408,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11253:77:13", @@ -17088,10 +17532,12 @@ "id": 10647, "nodeType": "FunctionDefinition", "src": "11343:163:13", + "nodes": [], "body": { "id": 10646, "nodeType": "Block", "src": "11409:97:13", + "nodes": [], "statements": [ { "expression": { @@ -17187,6 +17633,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11439:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11435:23:13", @@ -17201,6 +17648,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11435:63:13", @@ -17235,6 +17683,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11419:80:13", @@ -17359,10 +17808,12 @@ "id": 10667, "nodeType": "FunctionDefinition", "src": "11512:168:13", + "nodes": [], "body": { "id": 10666, "nodeType": "Block", "src": "11584:96:13", + "nodes": [], "statements": [ { "expression": { @@ -17458,6 +17909,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11614:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11610:23:13", @@ -17472,6 +17924,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11610:62:13", @@ -17506,6 +17959,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11594:79:13", @@ -17629,10 +18083,12 @@ "id": 10687, "nodeType": "FunctionDefinition", "src": "11686:179:13", + "nodes": [], "body": { "id": 10686, "nodeType": "Block", "src": "11767:98:13", + "nodes": [], "statements": [ { "expression": { @@ -17728,6 +18184,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11797:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11793:23:13", @@ -17742,6 +18199,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11793:64:13", @@ -17776,6 +18234,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11777:81:13", @@ -17899,10 +18358,12 @@ "id": 10707, "nodeType": "FunctionDefinition", "src": "11871:168:13", + "nodes": [], "body": { "id": 10706, "nodeType": "Block", "src": "11943:96:13", + "nodes": [], "statements": [ { "expression": { @@ -17998,6 +18459,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11973:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11969:23:13", @@ -18012,6 +18474,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11969:62:13", @@ -18046,6 +18509,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11953:79:13", @@ -18169,10 +18633,12 @@ "id": 10727, "nodeType": "FunctionDefinition", "src": "12045:174:13", + "nodes": [], "body": { "id": 10726, "nodeType": "Block", "src": "12120:99:13", + "nodes": [], "statements": [ { "expression": { @@ -18268,6 +18734,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12150:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12146:23:13", @@ -18282,6 +18749,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12146:65:13", @@ -18316,6 +18784,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12130:82:13", @@ -18440,10 +18909,12 @@ "id": 10747, "nodeType": "FunctionDefinition", "src": "12225:157:13", + "nodes": [], "body": { "id": 10746, "nodeType": "Block", "src": "12288:94:13", + "nodes": [], "statements": [ { "expression": { @@ -18539,6 +19010,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12318:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12314:23:13", @@ -18553,6 +19025,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12314:60:13", @@ -18587,6 +19060,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12298:77:13", @@ -18710,10 +19184,12 @@ "id": 10767, "nodeType": "FunctionDefinition", "src": "12388:168:13", + "nodes": [], "body": { "id": 10766, "nodeType": "Block", "src": "12460:96:13", + "nodes": [], "statements": [ { "expression": { @@ -18809,6 +19285,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12490:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12486:23:13", @@ -18823,6 +19300,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12486:62:13", @@ -18857,6 +19335,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12470:79:13", @@ -18980,10 +19459,12 @@ "id": 10787, "nodeType": "FunctionDefinition", "src": "12562:157:13", + "nodes": [], "body": { "id": 10786, "nodeType": "Block", "src": "12625:94:13", + "nodes": [], "statements": [ { "expression": { @@ -19079,6 +19560,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12655:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12651:23:13", @@ -19093,6 +19575,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12651:60:13", @@ -19127,6 +19610,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12635:77:13", @@ -19250,10 +19734,12 @@ "id": 10807, "nodeType": "FunctionDefinition", "src": "12725:163:13", + "nodes": [], "body": { "id": 10806, "nodeType": "Block", "src": "12791:97:13", + "nodes": [], "statements": [ { "expression": { @@ -19349,6 +19835,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12821:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12817:23:13", @@ -19363,6 +19850,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12817:63:13", @@ -19397,6 +19885,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12801:80:13", @@ -19521,10 +20010,12 @@ "id": 10827, "nodeType": "FunctionDefinition", "src": "12894:163:13", + "nodes": [], "body": { "id": 10826, "nodeType": "Block", "src": "12960:97:13", + "nodes": [], "statements": [ { "expression": { @@ -19620,6 +20111,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12990:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12986:23:13", @@ -19634,6 +20126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12986:63:13", @@ -19668,6 +20161,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12970:80:13", @@ -19792,10 +20286,12 @@ "id": 10847, "nodeType": "FunctionDefinition", "src": "13063:174:13", + "nodes": [], "body": { "id": 10846, "nodeType": "Block", "src": "13138:99:13", + "nodes": [], "statements": [ { "expression": { @@ -19891,6 +20387,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13168:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13164:23:13", @@ -19905,6 +20402,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13164:65:13", @@ -19939,6 +20437,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13148:82:13", @@ -20063,10 +20562,12 @@ "id": 10867, "nodeType": "FunctionDefinition", "src": "13243:163:13", + "nodes": [], "body": { "id": 10866, "nodeType": "Block", "src": "13309:97:13", + "nodes": [], "statements": [ { "expression": { @@ -20162,6 +20663,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13339:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13335:23:13", @@ -20176,6 +20678,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13335:63:13", @@ -20210,6 +20713,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13319:80:13", @@ -20334,10 +20838,12 @@ "id": 10887, "nodeType": "FunctionDefinition", "src": "13412:169:13", + "nodes": [], "body": { "id": 10886, "nodeType": "Block", "src": "13481:100:13", + "nodes": [], "statements": [ { "expression": { @@ -20433,6 +20939,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13511:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13507:23:13", @@ -20447,6 +20954,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13507:66:13", @@ -20481,6 +20989,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13491:83:13", @@ -20606,10 +21115,12 @@ "id": 10907, "nodeType": "FunctionDefinition", "src": "13587:146:13", + "nodes": [], "body": { "id": 10906, "nodeType": "Block", "src": "13641:92:13", + "nodes": [], "statements": [ { "expression": { @@ -20705,6 +21216,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13671:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13667:23:13", @@ -20719,6 +21231,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13667:58:13", @@ -20753,6 +21266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13651:75:13", @@ -20876,10 +21390,12 @@ "id": 10927, "nodeType": "FunctionDefinition", "src": "13739:157:13", + "nodes": [], "body": { "id": 10926, "nodeType": "Block", "src": "13802:94:13", + "nodes": [], "statements": [ { "expression": { @@ -20975,6 +21491,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13832:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13828:23:13", @@ -20989,6 +21506,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13828:60:13", @@ -21023,6 +21541,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13812:77:13", @@ -21146,10 +21665,12 @@ "id": 10947, "nodeType": "FunctionDefinition", "src": "13902:146:13", + "nodes": [], "body": { "id": 10946, "nodeType": "Block", "src": "13956:92:13", + "nodes": [], "statements": [ { "expression": { @@ -21245,6 +21766,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13986:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13982:23:13", @@ -21259,6 +21781,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13982:58:13", @@ -21293,6 +21816,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13966:75:13", @@ -21416,10 +21940,12 @@ "id": 10967, "nodeType": "FunctionDefinition", "src": "14054:152:13", + "nodes": [], "body": { "id": 10966, "nodeType": "Block", "src": "14111:95:13", + "nodes": [], "statements": [ { "expression": { @@ -21515,6 +22041,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14141:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14137:23:13", @@ -21529,6 +22056,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14137:61:13", @@ -21563,6 +22091,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14121:78:13", @@ -21687,10 +22216,12 @@ "id": 10987, "nodeType": "FunctionDefinition", "src": "14212:157:13", + "nodes": [], "body": { "id": 10986, "nodeType": "Block", "src": "14275:94:13", + "nodes": [], "statements": [ { "expression": { @@ -21786,6 +22317,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14305:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14301:23:13", @@ -21800,6 +22332,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14301:60:13", @@ -21834,6 +22367,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14285:77:13", @@ -21957,10 +22491,12 @@ "id": 11007, "nodeType": "FunctionDefinition", "src": "14375:168:13", + "nodes": [], "body": { "id": 11006, "nodeType": "Block", "src": "14447:96:13", + "nodes": [], "statements": [ { "expression": { @@ -22056,6 +22592,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14477:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14473:23:13", @@ -22070,6 +22607,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14473:62:13", @@ -22104,6 +22642,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14457:79:13", @@ -22227,10 +22766,12 @@ "id": 11027, "nodeType": "FunctionDefinition", "src": "14549:157:13", + "nodes": [], "body": { "id": 11026, "nodeType": "Block", "src": "14612:94:13", + "nodes": [], "statements": [ { "expression": { @@ -22326,6 +22867,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14642:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14638:23:13", @@ -22340,6 +22882,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14638:60:13", @@ -22374,6 +22917,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14622:77:13", @@ -22497,10 +23041,12 @@ "id": 11047, "nodeType": "FunctionDefinition", "src": "14712:163:13", + "nodes": [], "body": { "id": 11046, "nodeType": "Block", "src": "14778:97:13", + "nodes": [], "statements": [ { "expression": { @@ -22596,6 +23142,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14808:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14804:23:13", @@ -22610,6 +23157,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14804:63:13", @@ -22644,6 +23192,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14788:80:13", @@ -22768,10 +23317,12 @@ "id": 11067, "nodeType": "FunctionDefinition", "src": "14881:146:13", + "nodes": [], "body": { "id": 11066, "nodeType": "Block", "src": "14935:92:13", + "nodes": [], "statements": [ { "expression": { @@ -22867,6 +23418,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14965:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14961:23:13", @@ -22881,6 +23433,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14961:58:13", @@ -22915,6 +23468,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14945:75:13", @@ -23038,10 +23592,12 @@ "id": 11087, "nodeType": "FunctionDefinition", "src": "15033:157:13", + "nodes": [], "body": { "id": 11086, "nodeType": "Block", "src": "15096:94:13", + "nodes": [], "statements": [ { "expression": { @@ -23137,6 +23693,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15126:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15122:23:13", @@ -23151,6 +23708,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15122:60:13", @@ -23185,6 +23743,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15106:77:13", @@ -23308,10 +23867,12 @@ "id": 11107, "nodeType": "FunctionDefinition", "src": "15196:146:13", + "nodes": [], "body": { "id": 11106, "nodeType": "Block", "src": "15250:92:13", + "nodes": [], "statements": [ { "expression": { @@ -23407,6 +23968,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15280:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15276:23:13", @@ -23421,6 +23983,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15276:58:13", @@ -23455,6 +24018,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15260:75:13", @@ -23578,10 +24142,12 @@ "id": 11127, "nodeType": "FunctionDefinition", "src": "15348:152:13", + "nodes": [], "body": { "id": 11126, "nodeType": "Block", "src": "15405:95:13", + "nodes": [], "statements": [ { "expression": { @@ -23677,6 +24243,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15435:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15431:23:13", @@ -23691,6 +24258,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15431:61:13", @@ -23725,6 +24293,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15415:78:13", @@ -23849,10 +24418,12 @@ "id": 11147, "nodeType": "FunctionDefinition", "src": "15506:152:13", + "nodes": [], "body": { "id": 11146, "nodeType": "Block", "src": "15563:95:13", + "nodes": [], "statements": [ { "expression": { @@ -23948,6 +24519,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15593:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15589:23:13", @@ -23962,6 +24534,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15589:61:13", @@ -23996,6 +24569,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15573:78:13", @@ -24120,10 +24694,12 @@ "id": 11167, "nodeType": "FunctionDefinition", "src": "15664:163:13", + "nodes": [], "body": { "id": 11166, "nodeType": "Block", "src": "15730:97:13", + "nodes": [], "statements": [ { "expression": { @@ -24219,6 +24795,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15760:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15756:23:13", @@ -24233,6 +24810,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15756:63:13", @@ -24267,6 +24845,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15740:80:13", @@ -24391,10 +24970,12 @@ "id": 11187, "nodeType": "FunctionDefinition", "src": "15833:152:13", + "nodes": [], "body": { "id": 11186, "nodeType": "Block", "src": "15890:95:13", + "nodes": [], "statements": [ { "expression": { @@ -24490,6 +25071,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15920:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15916:23:13", @@ -24504,6 +25086,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15916:61:13", @@ -24538,6 +25121,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15900:78:13", @@ -24662,10 +25246,12 @@ "id": 11207, "nodeType": "FunctionDefinition", "src": "15991:158:13", + "nodes": [], "body": { "id": 11206, "nodeType": "Block", "src": "16051:98:13", + "nodes": [], "statements": [ { "expression": { @@ -24761,6 +25347,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16081:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16077:23:13", @@ -24775,6 +25362,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16077:64:13", @@ -24809,6 +25397,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16061:81:13", @@ -24934,10 +25523,12 @@ "id": 11227, "nodeType": "FunctionDefinition", "src": "16155:152:13", + "nodes": [], "body": { "id": 11226, "nodeType": "Block", "src": "16212:95:13", + "nodes": [], "statements": [ { "expression": { @@ -25033,6 +25624,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16242:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16238:23:13", @@ -25047,6 +25639,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16238:61:13", @@ -25081,6 +25674,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16222:78:13", @@ -25205,10 +25799,12 @@ "id": 11247, "nodeType": "FunctionDefinition", "src": "16313:163:13", + "nodes": [], "body": { "id": 11246, "nodeType": "Block", "src": "16379:97:13", + "nodes": [], "statements": [ { "expression": { @@ -25304,6 +25900,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16409:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16405:23:13", @@ -25318,6 +25915,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16405:63:13", @@ -25352,6 +25950,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16389:80:13", @@ -25476,10 +26075,12 @@ "id": 11267, "nodeType": "FunctionDefinition", "src": "16482:152:13", + "nodes": [], "body": { "id": 11266, "nodeType": "Block", "src": "16539:95:13", + "nodes": [], "statements": [ { "expression": { @@ -25575,6 +26176,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16569:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16565:23:13", @@ -25589,6 +26191,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16565:61:13", @@ -25623,6 +26226,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16549:78:13", @@ -25747,10 +26351,12 @@ "id": 11287, "nodeType": "FunctionDefinition", "src": "16640:158:13", + "nodes": [], "body": { "id": 11286, "nodeType": "Block", "src": "16700:98:13", + "nodes": [], "statements": [ { "expression": { @@ -25846,6 +26452,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16730:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16726:23:13", @@ -25860,6 +26467,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16726:64:13", @@ -25894,6 +26502,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16710:81:13", @@ -26019,10 +26628,12 @@ "id": 11307, "nodeType": "FunctionDefinition", "src": "16804:163:13", + "nodes": [], "body": { "id": 11306, "nodeType": "Block", "src": "16870:97:13", + "nodes": [], "statements": [ { "expression": { @@ -26118,6 +26729,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16900:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16896:23:13", @@ -26132,6 +26744,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16896:63:13", @@ -26166,6 +26779,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16880:80:13", @@ -26290,10 +26904,12 @@ "id": 11327, "nodeType": "FunctionDefinition", "src": "16973:174:13", + "nodes": [], "body": { "id": 11326, "nodeType": "Block", "src": "17048:99:13", + "nodes": [], "statements": [ { "expression": { @@ -26389,6 +27005,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17078:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17074:23:13", @@ -26403,6 +27020,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17074:65:13", @@ -26437,6 +27055,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17058:82:13", @@ -26561,10 +27180,12 @@ "id": 11347, "nodeType": "FunctionDefinition", "src": "17153:163:13", + "nodes": [], "body": { "id": 11346, "nodeType": "Block", "src": "17219:97:13", + "nodes": [], "statements": [ { "expression": { @@ -26660,6 +27281,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17249:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17245:23:13", @@ -26674,6 +27296,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17245:63:13", @@ -26708,6 +27331,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17229:80:13", @@ -26832,10 +27456,12 @@ "id": 11367, "nodeType": "FunctionDefinition", "src": "17322:169:13", + "nodes": [], "body": { "id": 11366, "nodeType": "Block", "src": "17391:100:13", + "nodes": [], "statements": [ { "expression": { @@ -26931,6 +27557,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17421:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17417:23:13", @@ -26945,6 +27572,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17417:66:13", @@ -26979,6 +27607,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17401:83:13", @@ -27104,10 +27733,12 @@ "id": 11387, "nodeType": "FunctionDefinition", "src": "17497:152:13", + "nodes": [], "body": { "id": 11386, "nodeType": "Block", "src": "17554:95:13", + "nodes": [], "statements": [ { "expression": { @@ -27203,6 +27834,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17584:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17580:23:13", @@ -27217,6 +27849,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17580:61:13", @@ -27251,6 +27884,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17564:78:13", @@ -27375,10 +28009,12 @@ "id": 11407, "nodeType": "FunctionDefinition", "src": "17655:163:13", + "nodes": [], "body": { "id": 11406, "nodeType": "Block", "src": "17721:97:13", + "nodes": [], "statements": [ { "expression": { @@ -27474,6 +28110,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17751:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17747:23:13", @@ -27488,6 +28125,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17747:63:13", @@ -27522,6 +28160,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17731:80:13", @@ -27646,10 +28285,12 @@ "id": 11427, "nodeType": "FunctionDefinition", "src": "17824:152:13", + "nodes": [], "body": { "id": 11426, "nodeType": "Block", "src": "17881:95:13", + "nodes": [], "statements": [ { "expression": { @@ -27745,6 +28386,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17911:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17907:23:13", @@ -27759,6 +28401,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17907:61:13", @@ -27793,6 +28436,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17891:78:13", @@ -27917,10 +28561,12 @@ "id": 11447, "nodeType": "FunctionDefinition", "src": "17982:158:13", + "nodes": [], "body": { "id": 11446, "nodeType": "Block", "src": "18042:98:13", + "nodes": [], "statements": [ { "expression": { @@ -28016,6 +28662,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18072:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18068:23:13", @@ -28030,6 +28677,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18068:64:13", @@ -28064,6 +28712,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18052:81:13", @@ -28189,10 +28838,12 @@ "id": 11467, "nodeType": "FunctionDefinition", "src": "18146:158:13", + "nodes": [], "body": { "id": 11466, "nodeType": "Block", "src": "18206:98:13", + "nodes": [], "statements": [ { "expression": { @@ -28288,6 +28939,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18236:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18232:23:13", @@ -28302,6 +28954,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18232:64:13", @@ -28336,6 +28989,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18216:81:13", @@ -28461,10 +29115,12 @@ "id": 11487, "nodeType": "FunctionDefinition", "src": "18310:169:13", + "nodes": [], "body": { "id": 11486, "nodeType": "Block", "src": "18379:100:13", + "nodes": [], "statements": [ { "expression": { @@ -28560,6 +29216,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18409:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18405:23:13", @@ -28574,6 +29231,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18405:66:13", @@ -28608,6 +29266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18389:83:13", @@ -28733,10 +29392,12 @@ "id": 11507, "nodeType": "FunctionDefinition", "src": "18485:158:13", + "nodes": [], "body": { "id": 11506, "nodeType": "Block", "src": "18545:98:13", + "nodes": [], "statements": [ { "expression": { @@ -28832,6 +29493,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18575:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18571:23:13", @@ -28846,6 +29508,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18571:64:13", @@ -28880,6 +29543,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18555:81:13", @@ -29005,10 +29669,12 @@ "id": 11527, "nodeType": "FunctionDefinition", "src": "18649:164:13", + "nodes": [], "body": { "id": 11526, "nodeType": "Block", "src": "18712:101:13", + "nodes": [], "statements": [ { "expression": { @@ -29104,6 +29770,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18742:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18738:23:13", @@ -29118,6 +29785,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18738:67:13", @@ -29152,6 +29820,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18722:84:13", @@ -29278,10 +29947,12 @@ "id": 11550, "nodeType": "FunctionDefinition", "src": "18819:164:13", + "nodes": [], "body": { "id": 11549, "nodeType": "Block", "src": "18882:101:13", + "nodes": [], "statements": [ { "expression": { @@ -29393,6 +30064,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18912:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18908:23:13", @@ -29407,6 +30079,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18908:67:13", @@ -29441,6 +30114,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18892:84:13", @@ -29591,10 +30265,12 @@ "id": 11573, "nodeType": "FunctionDefinition", "src": "18989:175:13", + "nodes": [], "body": { "id": 11572, "nodeType": "Block", "src": "19061:103:13", + "nodes": [], "statements": [ { "expression": { @@ -29706,6 +30382,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19091:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19087:23:13", @@ -29720,6 +30397,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19087:69:13", @@ -29754,6 +30432,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19071:86:13", @@ -29904,10 +30583,12 @@ "id": 11596, "nodeType": "FunctionDefinition", "src": "19170:164:13", + "nodes": [], "body": { "id": 11595, "nodeType": "Block", "src": "19233:101:13", + "nodes": [], "statements": [ { "expression": { @@ -30019,6 +30700,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19263:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19259:23:13", @@ -30033,6 +30715,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19259:67:13", @@ -30067,6 +30750,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19243:84:13", @@ -30217,10 +30901,12 @@ "id": 11619, "nodeType": "FunctionDefinition", "src": "19340:170:13", + "nodes": [], "body": { "id": 11618, "nodeType": "Block", "src": "19406:104:13", + "nodes": [], "statements": [ { "expression": { @@ -30332,6 +31018,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19436:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19432:23:13", @@ -30346,6 +31033,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19432:70:13", @@ -30380,6 +31068,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19416:87:13", @@ -30531,10 +31220,12 @@ "id": 11642, "nodeType": "FunctionDefinition", "src": "19516:175:13", + "nodes": [], "body": { "id": 11641, "nodeType": "Block", "src": "19588:103:13", + "nodes": [], "statements": [ { "expression": { @@ -30646,6 +31337,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19618:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19614:23:13", @@ -30660,6 +31352,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19614:69:13", @@ -30694,6 +31387,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19598:86:13", @@ -30844,10 +31538,12 @@ "id": 11665, "nodeType": "FunctionDefinition", "src": "19697:186:13", + "nodes": [], "body": { "id": 11664, "nodeType": "Block", "src": "19778:105:13", + "nodes": [], "statements": [ { "expression": { @@ -30959,6 +31655,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19808:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19804:23:13", @@ -30973,6 +31670,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19804:71:13", @@ -31007,6 +31705,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19788:88:13", @@ -31157,10 +31856,12 @@ "id": 11688, "nodeType": "FunctionDefinition", "src": "19889:175:13", + "nodes": [], "body": { "id": 11687, "nodeType": "Block", "src": "19961:103:13", + "nodes": [], "statements": [ { "expression": { @@ -31272,6 +31973,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19991:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19987:23:13", @@ -31286,6 +31988,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19987:69:13", @@ -31320,6 +32023,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19971:86:13", @@ -31470,10 +32174,12 @@ "id": 11711, "nodeType": "FunctionDefinition", "src": "20070:181:13", + "nodes": [], "body": { "id": 11710, "nodeType": "Block", "src": "20145:106:13", + "nodes": [], "statements": [ { "expression": { @@ -31585,6 +32291,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20175:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20171:23:13", @@ -31599,6 +32306,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20171:72:13", @@ -31633,6 +32341,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20155:89:13", @@ -31784,10 +32493,12 @@ "id": 11734, "nodeType": "FunctionDefinition", "src": "20257:164:13", + "nodes": [], "body": { "id": 11733, "nodeType": "Block", "src": "20320:101:13", + "nodes": [], "statements": [ { "expression": { @@ -31899,6 +32610,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20350:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20346:23:13", @@ -31913,6 +32625,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20346:67:13", @@ -31947,6 +32660,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20330:84:13", @@ -32097,10 +32811,12 @@ "id": 11757, "nodeType": "FunctionDefinition", "src": "20427:175:13", + "nodes": [], "body": { "id": 11756, "nodeType": "Block", "src": "20499:103:13", + "nodes": [], "statements": [ { "expression": { @@ -32212,6 +32928,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20529:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20525:23:13", @@ -32226,6 +32943,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20525:69:13", @@ -32260,6 +32978,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20509:86:13", @@ -32410,10 +33129,12 @@ "id": 11780, "nodeType": "FunctionDefinition", "src": "20608:164:13", + "nodes": [], "body": { "id": 11779, "nodeType": "Block", "src": "20671:101:13", + "nodes": [], "statements": [ { "expression": { @@ -32525,6 +33246,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20701:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20697:23:13", @@ -32539,6 +33261,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20697:67:13", @@ -32573,6 +33296,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20681:84:13", @@ -32723,10 +33447,12 @@ "id": 11803, "nodeType": "FunctionDefinition", "src": "20778:170:13", + "nodes": [], "body": { "id": 11802, "nodeType": "Block", "src": "20844:104:13", + "nodes": [], "statements": [ { "expression": { @@ -32838,6 +33564,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20874:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20870:23:13", @@ -32852,6 +33579,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20870:70:13", @@ -32886,6 +33614,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20854:87:13", @@ -33037,10 +33766,12 @@ "id": 11826, "nodeType": "FunctionDefinition", "src": "20954:170:13", + "nodes": [], "body": { "id": 11825, "nodeType": "Block", "src": "21020:104:13", + "nodes": [], "statements": [ { "expression": { @@ -33152,6 +33883,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21050:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21046:23:13", @@ -33166,6 +33898,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21046:70:13", @@ -33200,6 +33933,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21030:87:13", @@ -33351,10 +34085,12 @@ "id": 11849, "nodeType": "FunctionDefinition", "src": "21130:181:13", + "nodes": [], "body": { "id": 11848, "nodeType": "Block", "src": "21205:106:13", + "nodes": [], "statements": [ { "expression": { @@ -33466,6 +34202,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21235:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21231:23:13", @@ -33480,6 +34217,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21231:72:13", @@ -33514,6 +34252,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21215:89:13", @@ -33665,10 +34404,12 @@ "id": 11872, "nodeType": "FunctionDefinition", "src": "21317:170:13", + "nodes": [], "body": { "id": 11871, "nodeType": "Block", "src": "21383:104:13", + "nodes": [], "statements": [ { "expression": { @@ -33780,6 +34521,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21413:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21409:23:13", @@ -33794,6 +34536,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21409:70:13", @@ -33828,6 +34571,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21393:87:13", @@ -33979,10 +34723,12 @@ "id": 11895, "nodeType": "FunctionDefinition", "src": "21493:176:13", + "nodes": [], "body": { "id": 11894, "nodeType": "Block", "src": "21562:107:13", + "nodes": [], "statements": [ { "expression": { @@ -34094,6 +34840,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21592:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21588:23:13", @@ -34108,6 +34855,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21588:73:13", @@ -34142,6 +34890,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21572:90:13", @@ -34294,10 +35043,12 @@ "id": 11918, "nodeType": "FunctionDefinition", "src": "21675:175:13", + "nodes": [], "body": { "id": 11917, "nodeType": "Block", "src": "21747:103:13", + "nodes": [], "statements": [ { "expression": { @@ -34409,6 +35160,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21777:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21773:23:13", @@ -34423,6 +35175,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21773:69:13", @@ -34457,6 +35210,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21757:86:13", @@ -34607,10 +35361,12 @@ "id": 11941, "nodeType": "FunctionDefinition", "src": "21856:186:13", + "nodes": [], "body": { "id": 11940, "nodeType": "Block", "src": "21937:105:13", + "nodes": [], "statements": [ { "expression": { @@ -34722,6 +35478,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21967:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21963:23:13", @@ -34736,6 +35493,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21963:71:13", @@ -34770,6 +35528,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21947:88:13", @@ -34920,10 +35679,12 @@ "id": 11964, "nodeType": "FunctionDefinition", "src": "22048:175:13", + "nodes": [], "body": { "id": 11963, "nodeType": "Block", "src": "22120:103:13", + "nodes": [], "statements": [ { "expression": { @@ -35035,6 +35796,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22150:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22146:23:13", @@ -35049,6 +35811,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22146:69:13", @@ -35083,6 +35846,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22130:86:13", @@ -35233,10 +35997,12 @@ "id": 11987, "nodeType": "FunctionDefinition", "src": "22229:181:13", + "nodes": [], "body": { "id": 11986, "nodeType": "Block", "src": "22304:106:13", + "nodes": [], "statements": [ { "expression": { @@ -35348,6 +36114,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22334:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22330:23:13", @@ -35362,6 +36129,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22330:72:13", @@ -35396,6 +36164,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22314:89:13", @@ -35547,10 +36316,12 @@ "id": 12010, "nodeType": "FunctionDefinition", "src": "22416:186:13", + "nodes": [], "body": { "id": 12009, "nodeType": "Block", "src": "22497:105:13", + "nodes": [], "statements": [ { "expression": { @@ -35662,6 +36433,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22527:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22523:23:13", @@ -35676,6 +36448,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22523:71:13", @@ -35710,6 +36483,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22507:88:13", @@ -35860,10 +36634,12 @@ "id": 12033, "nodeType": "FunctionDefinition", "src": "22608:197:13", + "nodes": [], "body": { "id": 12032, "nodeType": "Block", "src": "22698:107:13", + "nodes": [], "statements": [ { "expression": { @@ -35975,6 +36751,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22728:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22724:23:13", @@ -35989,6 +36766,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22724:73:13", @@ -36023,6 +36801,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22708:90:13", @@ -36173,10 +36952,12 @@ "id": 12056, "nodeType": "FunctionDefinition", "src": "22811:186:13", + "nodes": [], "body": { "id": 12055, "nodeType": "Block", "src": "22892:105:13", + "nodes": [], "statements": [ { "expression": { @@ -36288,6 +37069,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22922:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22918:23:13", @@ -36302,6 +37084,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22918:71:13", @@ -36336,6 +37119,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22902:88:13", @@ -36486,10 +37270,12 @@ "id": 12079, "nodeType": "FunctionDefinition", "src": "23003:192:13", + "nodes": [], "body": { "id": 12078, "nodeType": "Block", "src": "23087:108:13", + "nodes": [], "statements": [ { "expression": { @@ -36601,6 +37387,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23117:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23113:23:13", @@ -36615,6 +37402,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23113:74:13", @@ -36649,6 +37437,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23097:91:13", @@ -36800,10 +37589,12 @@ "id": 12102, "nodeType": "FunctionDefinition", "src": "23201:175:13", + "nodes": [], "body": { "id": 12101, "nodeType": "Block", "src": "23273:103:13", + "nodes": [], "statements": [ { "expression": { @@ -36915,6 +37706,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23303:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23299:23:13", @@ -36929,6 +37721,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23299:69:13", @@ -36963,6 +37756,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23283:86:13", @@ -37113,10 +37907,12 @@ "id": 12125, "nodeType": "FunctionDefinition", "src": "23382:186:13", + "nodes": [], "body": { "id": 12124, "nodeType": "Block", "src": "23463:105:13", + "nodes": [], "statements": [ { "expression": { @@ -37228,6 +38024,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23493:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23489:23:13", @@ -37242,6 +38039,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23489:71:13", @@ -37276,6 +38074,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23473:88:13", @@ -37426,10 +38225,12 @@ "id": 12148, "nodeType": "FunctionDefinition", "src": "23574:175:13", + "nodes": [], "body": { "id": 12147, "nodeType": "Block", "src": "23646:103:13", + "nodes": [], "statements": [ { "expression": { @@ -37541,6 +38342,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23676:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23672:23:13", @@ -37555,6 +38357,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23672:69:13", @@ -37589,6 +38392,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23656:86:13", @@ -37739,10 +38543,12 @@ "id": 12171, "nodeType": "FunctionDefinition", "src": "23755:181:13", + "nodes": [], "body": { "id": 12170, "nodeType": "Block", "src": "23830:106:13", + "nodes": [], "statements": [ { "expression": { @@ -37854,6 +38660,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23860:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23856:23:13", @@ -37868,6 +38675,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23856:72:13", @@ -37902,6 +38710,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23840:89:13", @@ -38053,10 +38862,12 @@ "id": 12194, "nodeType": "FunctionDefinition", "src": "23942:181:13", + "nodes": [], "body": { "id": 12193, "nodeType": "Block", "src": "24017:106:13", + "nodes": [], "statements": [ { "expression": { @@ -38168,6 +38979,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24047:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24043:23:13", @@ -38182,6 +38994,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24043:72:13", @@ -38216,6 +39029,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24027:89:13", @@ -38367,10 +39181,12 @@ "id": 12217, "nodeType": "FunctionDefinition", "src": "24129:192:13", + "nodes": [], "body": { "id": 12216, "nodeType": "Block", "src": "24213:108:13", + "nodes": [], "statements": [ { "expression": { @@ -38482,6 +39298,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24243:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24239:23:13", @@ -38496,6 +39313,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24239:74:13", @@ -38530,6 +39348,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24223:91:13", @@ -38681,10 +39500,12 @@ "id": 12240, "nodeType": "FunctionDefinition", "src": "24327:181:13", + "nodes": [], "body": { "id": 12239, "nodeType": "Block", "src": "24402:106:13", + "nodes": [], "statements": [ { "expression": { @@ -38796,6 +39617,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24432:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24428:23:13", @@ -38810,6 +39632,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24428:72:13", @@ -38844,6 +39667,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24412:89:13", @@ -38995,10 +39819,12 @@ "id": 12263, "nodeType": "FunctionDefinition", "src": "24514:187:13", + "nodes": [], "body": { "id": 12262, "nodeType": "Block", "src": "24592:109:13", + "nodes": [], "statements": [ { "expression": { @@ -39110,6 +39936,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24622:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24618:23:13", @@ -39124,6 +39951,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24618:75:13", @@ -39158,6 +39986,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24602:92:13", @@ -39310,10 +40139,12 @@ "id": 12286, "nodeType": "FunctionDefinition", "src": "24707:164:13", + "nodes": [], "body": { "id": 12285, "nodeType": "Block", "src": "24770:101:13", + "nodes": [], "statements": [ { "expression": { @@ -39425,6 +40256,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24800:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24796:23:13", @@ -39439,6 +40271,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24796:67:13", @@ -39473,6 +40306,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24780:84:13", @@ -39623,10 +40457,12 @@ "id": 12309, "nodeType": "FunctionDefinition", "src": "24877:175:13", + "nodes": [], "body": { "id": 12308, "nodeType": "Block", "src": "24949:103:13", + "nodes": [], "statements": [ { "expression": { @@ -39738,6 +40574,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24979:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24975:23:13", @@ -39752,6 +40589,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24975:69:13", @@ -39786,6 +40624,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24959:86:13", @@ -39936,10 +40775,12 @@ "id": 12332, "nodeType": "FunctionDefinition", "src": "25058:164:13", + "nodes": [], "body": { "id": 12331, "nodeType": "Block", "src": "25121:101:13", + "nodes": [], "statements": [ { "expression": { @@ -40051,6 +40892,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25151:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25147:23:13", @@ -40065,6 +40907,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25147:67:13", @@ -40099,6 +40942,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25131:84:13", @@ -40249,10 +41093,12 @@ "id": 12355, "nodeType": "FunctionDefinition", "src": "25228:170:13", + "nodes": [], "body": { "id": 12354, "nodeType": "Block", "src": "25294:104:13", + "nodes": [], "statements": [ { "expression": { @@ -40364,6 +41210,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25324:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25320:23:13", @@ -40378,6 +41225,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25320:70:13", @@ -40412,6 +41260,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25304:87:13", @@ -40563,10 +41412,12 @@ "id": 12378, "nodeType": "FunctionDefinition", "src": "25404:175:13", + "nodes": [], "body": { "id": 12377, "nodeType": "Block", "src": "25476:103:13", + "nodes": [], "statements": [ { "expression": { @@ -40678,6 +41529,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25506:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25502:23:13", @@ -40692,6 +41544,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25502:69:13", @@ -40726,6 +41579,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25486:86:13", @@ -40876,10 +41730,12 @@ "id": 12401, "nodeType": "FunctionDefinition", "src": "25585:186:13", + "nodes": [], "body": { "id": 12400, "nodeType": "Block", "src": "25666:105:13", + "nodes": [], "statements": [ { "expression": { @@ -40991,6 +41847,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25696:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25692:23:13", @@ -41005,6 +41862,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25692:71:13", @@ -41039,6 +41897,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25676:88:13", @@ -41189,10 +42048,12 @@ "id": 12424, "nodeType": "FunctionDefinition", "src": "25777:175:13", + "nodes": [], "body": { "id": 12423, "nodeType": "Block", "src": "25849:103:13", + "nodes": [], "statements": [ { "expression": { @@ -41304,6 +42165,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25879:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25875:23:13", @@ -41318,6 +42180,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25875:69:13", @@ -41352,6 +42215,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25859:86:13", @@ -41502,10 +42366,12 @@ "id": 12447, "nodeType": "FunctionDefinition", "src": "25958:181:13", + "nodes": [], "body": { "id": 12446, "nodeType": "Block", "src": "26033:106:13", + "nodes": [], "statements": [ { "expression": { @@ -41617,6 +42483,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26063:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26059:23:13", @@ -41631,6 +42498,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26059:72:13", @@ -41665,6 +42533,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26043:89:13", @@ -41816,10 +42685,12 @@ "id": 12470, "nodeType": "FunctionDefinition", "src": "26145:164:13", + "nodes": [], "body": { "id": 12469, "nodeType": "Block", "src": "26208:101:13", + "nodes": [], "statements": [ { "expression": { @@ -41931,6 +42802,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26238:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26234:23:13", @@ -41945,6 +42817,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26234:67:13", @@ -41979,6 +42852,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26218:84:13", @@ -42129,10 +43003,12 @@ "id": 12493, "nodeType": "FunctionDefinition", "src": "26315:175:13", + "nodes": [], "body": { "id": 12492, "nodeType": "Block", "src": "26387:103:13", + "nodes": [], "statements": [ { "expression": { @@ -42244,6 +43120,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26417:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26413:23:13", @@ -42258,6 +43135,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26413:69:13", @@ -42292,6 +43170,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26397:86:13", @@ -42442,10 +43321,12 @@ "id": 12516, "nodeType": "FunctionDefinition", "src": "26496:164:13", + "nodes": [], "body": { "id": 12515, "nodeType": "Block", "src": "26559:101:13", + "nodes": [], "statements": [ { "expression": { @@ -42557,6 +43438,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26589:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26585:23:13", @@ -42571,6 +43453,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26585:67:13", @@ -42605,6 +43488,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26569:84:13", @@ -42755,10 +43639,12 @@ "id": 12539, "nodeType": "FunctionDefinition", "src": "26666:170:13", + "nodes": [], "body": { "id": 12538, "nodeType": "Block", "src": "26732:104:13", + "nodes": [], "statements": [ { "expression": { @@ -42870,6 +43756,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26762:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26758:23:13", @@ -42884,6 +43771,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26758:70:13", @@ -42918,6 +43806,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26742:87:13", @@ -43069,10 +43958,12 @@ "id": 12562, "nodeType": "FunctionDefinition", "src": "26842:170:13", + "nodes": [], "body": { "id": 12561, "nodeType": "Block", "src": "26908:104:13", + "nodes": [], "statements": [ { "expression": { @@ -43184,6 +44075,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26938:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26934:23:13", @@ -43198,6 +44090,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26934:70:13", @@ -43232,6 +44125,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26918:87:13", @@ -43383,10 +44277,12 @@ "id": 12585, "nodeType": "FunctionDefinition", "src": "27018:181:13", + "nodes": [], "body": { "id": 12584, "nodeType": "Block", "src": "27093:106:13", + "nodes": [], "statements": [ { "expression": { @@ -43498,6 +44394,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27123:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27119:23:13", @@ -43512,6 +44409,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27119:72:13", @@ -43546,6 +44444,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27103:89:13", @@ -43697,10 +44596,12 @@ "id": 12608, "nodeType": "FunctionDefinition", "src": "27205:170:13", + "nodes": [], "body": { "id": 12607, "nodeType": "Block", "src": "27271:104:13", + "nodes": [], "statements": [ { "expression": { @@ -43812,6 +44713,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27301:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27297:23:13", @@ -43826,6 +44728,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27297:70:13", @@ -43860,6 +44763,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27281:87:13", @@ -44011,10 +44915,12 @@ "id": 12631, "nodeType": "FunctionDefinition", "src": "27381:176:13", + "nodes": [], "body": { "id": 12630, "nodeType": "Block", "src": "27450:107:13", + "nodes": [], "statements": [ { "expression": { @@ -44126,6 +45032,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27480:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27476:23:13", @@ -44140,6 +45047,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27476:73:13", @@ -44174,6 +45082,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27460:90:13", @@ -44326,10 +45235,12 @@ "id": 12654, "nodeType": "FunctionDefinition", "src": "27563:170:13", + "nodes": [], "body": { "id": 12653, "nodeType": "Block", "src": "27629:104:13", + "nodes": [], "statements": [ { "expression": { @@ -44441,6 +45352,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27659:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27655:23:13", @@ -44455,6 +45367,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27655:70:13", @@ -44489,6 +45402,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27639:87:13", @@ -44640,10 +45554,12 @@ "id": 12677, "nodeType": "FunctionDefinition", "src": "27739:181:13", + "nodes": [], "body": { "id": 12676, "nodeType": "Block", "src": "27814:106:13", + "nodes": [], "statements": [ { "expression": { @@ -44755,6 +45671,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27844:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27840:23:13", @@ -44769,6 +45686,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27840:72:13", @@ -44803,6 +45721,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27824:89:13", @@ -44954,10 +45873,12 @@ "id": 12700, "nodeType": "FunctionDefinition", "src": "27926:170:13", + "nodes": [], "body": { "id": 12699, "nodeType": "Block", "src": "27992:104:13", + "nodes": [], "statements": [ { "expression": { @@ -45069,6 +45990,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28022:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28018:23:13", @@ -45083,6 +46005,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28018:70:13", @@ -45117,6 +46040,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28002:87:13", @@ -45268,10 +46192,12 @@ "id": 12723, "nodeType": "FunctionDefinition", "src": "28102:176:13", + "nodes": [], "body": { "id": 12722, "nodeType": "Block", "src": "28171:107:13", + "nodes": [], "statements": [ { "expression": { @@ -45383,6 +46309,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28201:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28197:23:13", @@ -45397,6 +46324,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28197:73:13", @@ -45431,6 +46359,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28181:90:13", @@ -45583,10 +46512,12 @@ "id": 12746, "nodeType": "FunctionDefinition", "src": "28284:181:13", + "nodes": [], "body": { "id": 12745, "nodeType": "Block", "src": "28359:106:13", + "nodes": [], "statements": [ { "expression": { @@ -45698,6 +46629,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28389:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28385:23:13", @@ -45712,6 +46644,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28385:72:13", @@ -45746,6 +46679,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28369:89:13", @@ -45897,10 +46831,12 @@ "id": 12769, "nodeType": "FunctionDefinition", "src": "28471:192:13", + "nodes": [], "body": { "id": 12768, "nodeType": "Block", "src": "28555:108:13", + "nodes": [], "statements": [ { "expression": { @@ -46012,6 +46948,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28585:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28581:23:13", @@ -46026,6 +46963,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28581:74:13", @@ -46060,6 +46998,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28565:91:13", @@ -46211,10 +47150,12 @@ "id": 12792, "nodeType": "FunctionDefinition", "src": "28669:181:13", + "nodes": [], "body": { "id": 12791, "nodeType": "Block", "src": "28744:106:13", + "nodes": [], "statements": [ { "expression": { @@ -46326,6 +47267,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28774:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28770:23:13", @@ -46340,6 +47282,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28770:72:13", @@ -46374,6 +47317,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28754:89:13", @@ -46525,10 +47469,12 @@ "id": 12815, "nodeType": "FunctionDefinition", "src": "28856:187:13", + "nodes": [], "body": { "id": 12814, "nodeType": "Block", "src": "28934:109:13", + "nodes": [], "statements": [ { "expression": { @@ -46640,6 +47586,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28964:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28960:23:13", @@ -46654,6 +47601,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28960:75:13", @@ -46688,6 +47636,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28944:92:13", @@ -46840,10 +47789,12 @@ "id": 12838, "nodeType": "FunctionDefinition", "src": "29049:170:13", + "nodes": [], "body": { "id": 12837, "nodeType": "Block", "src": "29115:104:13", + "nodes": [], "statements": [ { "expression": { @@ -46955,6 +47906,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29145:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29141:23:13", @@ -46969,6 +47921,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29141:70:13", @@ -47003,6 +47956,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29125:87:13", @@ -47154,10 +48108,12 @@ "id": 12861, "nodeType": "FunctionDefinition", "src": "29225:181:13", + "nodes": [], "body": { "id": 12860, "nodeType": "Block", "src": "29300:106:13", + "nodes": [], "statements": [ { "expression": { @@ -47269,6 +48225,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29330:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29326:23:13", @@ -47283,6 +48240,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29326:72:13", @@ -47317,6 +48275,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29310:89:13", @@ -47468,10 +48427,12 @@ "id": 12884, "nodeType": "FunctionDefinition", "src": "29412:170:13", + "nodes": [], "body": { "id": 12883, "nodeType": "Block", "src": "29478:104:13", + "nodes": [], "statements": [ { "expression": { @@ -47583,6 +48544,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29508:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29504:23:13", @@ -47597,6 +48559,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29504:70:13", @@ -47631,6 +48594,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29488:87:13", @@ -47782,10 +48746,12 @@ "id": 12907, "nodeType": "FunctionDefinition", "src": "29588:176:13", + "nodes": [], "body": { "id": 12906, "nodeType": "Block", "src": "29657:107:13", + "nodes": [], "statements": [ { "expression": { @@ -47897,6 +48863,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29687:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29683:23:13", @@ -47911,6 +48878,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29683:73:13", @@ -47945,6 +48913,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29667:90:13", @@ -48097,10 +49066,12 @@ "id": 12930, "nodeType": "FunctionDefinition", "src": "29770:176:13", + "nodes": [], "body": { "id": 12929, "nodeType": "Block", "src": "29839:107:13", + "nodes": [], "statements": [ { "expression": { @@ -48212,6 +49183,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29869:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29865:23:13", @@ -48226,6 +49198,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29865:73:13", @@ -48260,6 +49233,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29849:90:13", @@ -48412,10 +49386,12 @@ "id": 12953, "nodeType": "FunctionDefinition", "src": "29952:187:13", + "nodes": [], "body": { "id": 12952, "nodeType": "Block", "src": "30030:109:13", + "nodes": [], "statements": [ { "expression": { @@ -48527,6 +49503,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30060:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30056:23:13", @@ -48541,6 +49518,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30056:75:13", @@ -48575,6 +49553,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30040:92:13", @@ -48727,10 +49706,12 @@ "id": 12976, "nodeType": "FunctionDefinition", "src": "30145:176:13", + "nodes": [], "body": { "id": 12975, "nodeType": "Block", "src": "30214:107:13", + "nodes": [], "statements": [ { "expression": { @@ -48842,6 +49823,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30244:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30240:23:13", @@ -48856,6 +49838,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30240:73:13", @@ -48890,6 +49873,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30224:90:13", @@ -49042,10 +50026,12 @@ "id": 12999, "nodeType": "FunctionDefinition", "src": "30327:182:13", + "nodes": [], "body": { "id": 12998, "nodeType": "Block", "src": "30399:110:13", + "nodes": [], "statements": [ { "expression": { @@ -49157,6 +50143,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30429:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30425:23:13", @@ -49171,6 +50158,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30425:76:13", @@ -49205,6 +50193,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30409:93:13", @@ -49358,10 +50347,12 @@ "id": 13022, "nodeType": "FunctionDefinition", "src": "30515:175:13", + "nodes": [], "body": { "id": 13021, "nodeType": "Block", "src": "30587:103:13", + "nodes": [], "statements": [ { "expression": { @@ -49473,6 +50464,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30617:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30613:23:13", @@ -49487,6 +50479,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30613:69:13", @@ -49521,6 +50514,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30597:86:13", @@ -49671,10 +50665,12 @@ "id": 13045, "nodeType": "FunctionDefinition", "src": "30696:186:13", + "nodes": [], "body": { "id": 13044, "nodeType": "Block", "src": "30777:105:13", + "nodes": [], "statements": [ { "expression": { @@ -49786,6 +50782,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30807:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30803:23:13", @@ -49800,6 +50797,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30803:71:13", @@ -49834,6 +50832,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30787:88:13", @@ -49984,10 +50983,12 @@ "id": 13068, "nodeType": "FunctionDefinition", "src": "30888:175:13", + "nodes": [], "body": { "id": 13067, "nodeType": "Block", "src": "30960:103:13", + "nodes": [], "statements": [ { "expression": { @@ -50099,6 +51100,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30990:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30986:23:13", @@ -50113,6 +51115,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30986:69:13", @@ -50147,6 +51150,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30970:86:13", @@ -50297,10 +51301,12 @@ "id": 13091, "nodeType": "FunctionDefinition", "src": "31069:181:13", + "nodes": [], "body": { "id": 13090, "nodeType": "Block", "src": "31144:106:13", + "nodes": [], "statements": [ { "expression": { @@ -50412,6 +51418,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31174:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31170:23:13", @@ -50426,6 +51433,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31170:72:13", @@ -50460,6 +51468,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31154:89:13", @@ -50611,10 +51620,12 @@ "id": 13114, "nodeType": "FunctionDefinition", "src": "31256:186:13", + "nodes": [], "body": { "id": 13113, "nodeType": "Block", "src": "31337:105:13", + "nodes": [], "statements": [ { "expression": { @@ -50726,6 +51737,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31367:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31363:23:13", @@ -50740,6 +51752,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31363:71:13", @@ -50774,6 +51787,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31347:88:13", @@ -50924,10 +51938,12 @@ "id": 13137, "nodeType": "FunctionDefinition", "src": "31448:197:13", + "nodes": [], "body": { "id": 13136, "nodeType": "Block", "src": "31538:107:13", + "nodes": [], "statements": [ { "expression": { @@ -51039,6 +52055,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31568:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31564:23:13", @@ -51053,6 +52070,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31564:73:13", @@ -51087,6 +52105,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31548:90:13", @@ -51237,10 +52256,12 @@ "id": 13160, "nodeType": "FunctionDefinition", "src": "31651:186:13", + "nodes": [], "body": { "id": 13159, "nodeType": "Block", "src": "31732:105:13", + "nodes": [], "statements": [ { "expression": { @@ -51352,6 +52373,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31762:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31758:23:13", @@ -51366,6 +52388,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31758:71:13", @@ -51400,6 +52423,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31742:88:13", @@ -51550,10 +52574,12 @@ "id": 13183, "nodeType": "FunctionDefinition", "src": "31843:192:13", + "nodes": [], "body": { "id": 13182, "nodeType": "Block", "src": "31927:108:13", + "nodes": [], "statements": [ { "expression": { @@ -51665,6 +52691,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31957:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31953:23:13", @@ -51679,6 +52706,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31953:74:13", @@ -51713,6 +52741,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31937:91:13", @@ -51864,10 +52893,12 @@ "id": 13206, "nodeType": "FunctionDefinition", "src": "32041:175:13", + "nodes": [], "body": { "id": 13205, "nodeType": "Block", "src": "32113:103:13", + "nodes": [], "statements": [ { "expression": { @@ -51979,6 +53010,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32143:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32139:23:13", @@ -51993,6 +53025,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32139:69:13", @@ -52027,6 +53060,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32123:86:13", @@ -52177,10 +53211,12 @@ "id": 13229, "nodeType": "FunctionDefinition", "src": "32222:186:13", + "nodes": [], "body": { "id": 13228, "nodeType": "Block", "src": "32303:105:13", + "nodes": [], "statements": [ { "expression": { @@ -52292,6 +53328,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32333:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32329:23:13", @@ -52306,6 +53343,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32329:71:13", @@ -52340,6 +53378,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32313:88:13", @@ -52490,10 +53529,12 @@ "id": 13252, "nodeType": "FunctionDefinition", "src": "32414:175:13", + "nodes": [], "body": { "id": 13251, "nodeType": "Block", "src": "32486:103:13", + "nodes": [], "statements": [ { "expression": { @@ -52605,6 +53646,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32516:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32512:23:13", @@ -52619,6 +53661,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32512:69:13", @@ -52653,6 +53696,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32496:86:13", @@ -52803,10 +53847,12 @@ "id": 13275, "nodeType": "FunctionDefinition", "src": "32595:181:13", + "nodes": [], "body": { "id": 13274, "nodeType": "Block", "src": "32670:106:13", + "nodes": [], "statements": [ { "expression": { @@ -52918,6 +53964,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32700:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32696:23:13", @@ -52932,6 +53979,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32696:72:13", @@ -52966,6 +54014,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32680:89:13", @@ -53117,10 +54166,12 @@ "id": 13298, "nodeType": "FunctionDefinition", "src": "32782:181:13", + "nodes": [], "body": { "id": 13297, "nodeType": "Block", "src": "32857:106:13", + "nodes": [], "statements": [ { "expression": { @@ -53232,6 +54283,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32887:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32883:23:13", @@ -53246,6 +54298,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32883:72:13", @@ -53280,6 +54333,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32867:89:13", @@ -53431,10 +54485,12 @@ "id": 13321, "nodeType": "FunctionDefinition", "src": "32969:192:13", + "nodes": [], "body": { "id": 13320, "nodeType": "Block", "src": "33053:108:13", + "nodes": [], "statements": [ { "expression": { @@ -53546,6 +54602,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33083:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33079:23:13", @@ -53560,6 +54617,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33079:74:13", @@ -53594,6 +54652,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33063:91:13", @@ -53745,10 +54804,12 @@ "id": 13344, "nodeType": "FunctionDefinition", "src": "33167:181:13", + "nodes": [], "body": { "id": 13343, "nodeType": "Block", "src": "33242:106:13", + "nodes": [], "statements": [ { "expression": { @@ -53860,6 +54921,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33272:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33268:23:13", @@ -53874,6 +54936,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33268:72:13", @@ -53908,6 +54971,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33252:89:13", @@ -54059,10 +55123,12 @@ "id": 13367, "nodeType": "FunctionDefinition", "src": "33354:187:13", + "nodes": [], "body": { "id": 13366, "nodeType": "Block", "src": "33432:109:13", + "nodes": [], "statements": [ { "expression": { @@ -54174,6 +55240,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33462:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33458:23:13", @@ -54188,6 +55255,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33458:75:13", @@ -54222,6 +55290,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33442:92:13", @@ -54374,10 +55443,12 @@ "id": 13390, "nodeType": "FunctionDefinition", "src": "33547:186:13", + "nodes": [], "body": { "id": 13389, "nodeType": "Block", "src": "33628:105:13", + "nodes": [], "statements": [ { "expression": { @@ -54489,6 +55560,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33658:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33654:23:13", @@ -54503,6 +55575,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33654:71:13", @@ -54537,6 +55610,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33638:88:13", @@ -54687,10 +55761,12 @@ "id": 13413, "nodeType": "FunctionDefinition", "src": "33739:197:13", + "nodes": [], "body": { "id": 13412, "nodeType": "Block", "src": "33829:107:13", + "nodes": [], "statements": [ { "expression": { @@ -54802,6 +55878,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33859:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33855:23:13", @@ -54816,6 +55893,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33855:73:13", @@ -54850,6 +55928,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33839:90:13", @@ -55000,10 +56079,12 @@ "id": 13436, "nodeType": "FunctionDefinition", "src": "33942:186:13", + "nodes": [], "body": { "id": 13435, "nodeType": "Block", "src": "34023:105:13", + "nodes": [], "statements": [ { "expression": { @@ -55115,6 +56196,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34053:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34049:23:13", @@ -55129,6 +56211,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34049:71:13", @@ -55163,6 +56246,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34033:88:13", @@ -55313,10 +56397,12 @@ "id": 13459, "nodeType": "FunctionDefinition", "src": "34134:192:13", + "nodes": [], "body": { "id": 13458, "nodeType": "Block", "src": "34218:108:13", + "nodes": [], "statements": [ { "expression": { @@ -55428,6 +56514,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34248:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34244:23:13", @@ -55442,6 +56529,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34244:74:13", @@ -55476,6 +56564,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34228:91:13", @@ -55627,10 +56716,12 @@ "id": 13482, "nodeType": "FunctionDefinition", "src": "34332:197:13", + "nodes": [], "body": { "id": 13481, "nodeType": "Block", "src": "34422:107:13", + "nodes": [], "statements": [ { "expression": { @@ -55742,6 +56833,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34452:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34448:23:13", @@ -55756,6 +56848,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34448:73:13", @@ -55790,6 +56883,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34432:90:13", @@ -55940,10 +57034,12 @@ "id": 13505, "nodeType": "FunctionDefinition", "src": "34535:208:13", + "nodes": [], "body": { "id": 13504, "nodeType": "Block", "src": "34634:109:13", + "nodes": [], "statements": [ { "expression": { @@ -56055,6 +57151,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34664:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34660:23:13", @@ -56069,6 +57166,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34660:75:13", @@ -56103,6 +57201,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34644:92:13", @@ -56253,10 +57352,12 @@ "id": 13528, "nodeType": "FunctionDefinition", "src": "34749:197:13", + "nodes": [], "body": { "id": 13527, "nodeType": "Block", "src": "34839:107:13", + "nodes": [], "statements": [ { "expression": { @@ -56368,6 +57469,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34869:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34865:23:13", @@ -56382,6 +57484,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34865:73:13", @@ -56416,6 +57519,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34849:90:13", @@ -56566,10 +57670,12 @@ "id": 13551, "nodeType": "FunctionDefinition", "src": "34952:203:13", + "nodes": [], "body": { "id": 13550, "nodeType": "Block", "src": "35045:110:13", + "nodes": [], "statements": [ { "expression": { @@ -56681,6 +57787,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35075:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35071:23:13", @@ -56695,6 +57802,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35071:76:13", @@ -56729,6 +57837,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35055:93:13", @@ -56880,10 +57989,12 @@ "id": 13574, "nodeType": "FunctionDefinition", "src": "35161:186:13", + "nodes": [], "body": { "id": 13573, "nodeType": "Block", "src": "35242:105:13", + "nodes": [], "statements": [ { "expression": { @@ -56995,6 +58106,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35272:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35268:23:13", @@ -57009,6 +58121,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35268:71:13", @@ -57043,6 +58156,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35252:88:13", @@ -57193,10 +58307,12 @@ "id": 13597, "nodeType": "FunctionDefinition", "src": "35353:197:13", + "nodes": [], "body": { "id": 13596, "nodeType": "Block", "src": "35443:107:13", + "nodes": [], "statements": [ { "expression": { @@ -57308,6 +58424,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35473:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35469:23:13", @@ -57322,6 +58439,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35469:73:13", @@ -57356,6 +58474,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35453:90:13", @@ -57506,10 +58625,12 @@ "id": 13620, "nodeType": "FunctionDefinition", "src": "35556:186:13", + "nodes": [], "body": { "id": 13619, "nodeType": "Block", "src": "35637:105:13", + "nodes": [], "statements": [ { "expression": { @@ -57621,6 +58742,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35667:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35663:23:13", @@ -57635,6 +58757,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35663:71:13", @@ -57669,6 +58792,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35647:88:13", @@ -57819,10 +58943,12 @@ "id": 13643, "nodeType": "FunctionDefinition", "src": "35748:192:13", + "nodes": [], "body": { "id": 13642, "nodeType": "Block", "src": "35832:108:13", + "nodes": [], "statements": [ { "expression": { @@ -57934,6 +59060,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35862:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35858:23:13", @@ -57948,6 +59075,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35858:74:13", @@ -57982,6 +59110,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35842:91:13", @@ -58133,10 +59262,12 @@ "id": 13666, "nodeType": "FunctionDefinition", "src": "35946:192:13", + "nodes": [], "body": { "id": 13665, "nodeType": "Block", "src": "36030:108:13", + "nodes": [], "statements": [ { "expression": { @@ -58248,6 +59379,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36060:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36056:23:13", @@ -58262,6 +59394,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36056:74:13", @@ -58296,6 +59429,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36040:91:13", @@ -58447,10 +59581,12 @@ "id": 13689, "nodeType": "FunctionDefinition", "src": "36144:203:13", + "nodes": [], "body": { "id": 13688, "nodeType": "Block", "src": "36237:110:13", + "nodes": [], "statements": [ { "expression": { @@ -58562,6 +59698,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36267:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36263:23:13", @@ -58576,6 +59713,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36263:76:13", @@ -58610,6 +59748,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36247:93:13", @@ -58761,10 +59900,12 @@ "id": 13712, "nodeType": "FunctionDefinition", "src": "36353:192:13", + "nodes": [], "body": { "id": 13711, "nodeType": "Block", "src": "36437:108:13", + "nodes": [], "statements": [ { "expression": { @@ -58876,6 +60017,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36467:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36463:23:13", @@ -58890,6 +60032,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36463:74:13", @@ -58924,6 +60067,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36447:91:13", @@ -59075,10 +60219,12 @@ "id": 13735, "nodeType": "FunctionDefinition", "src": "36551:198:13", + "nodes": [], "body": { "id": 13734, "nodeType": "Block", "src": "36638:111:13", + "nodes": [], "statements": [ { "expression": { @@ -59190,6 +60336,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36668:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36664:23:13", @@ -59204,6 +60351,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36664:77:13", @@ -59238,6 +60386,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36648:94:13", @@ -59390,10 +60539,12 @@ "id": 13758, "nodeType": "FunctionDefinition", "src": "36755:175:13", + "nodes": [], "body": { "id": 13757, "nodeType": "Block", "src": "36827:103:13", + "nodes": [], "statements": [ { "expression": { @@ -59505,6 +60656,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36857:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36853:23:13", @@ -59519,6 +60671,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36853:69:13", @@ -59553,6 +60706,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36837:86:13", @@ -59703,10 +60857,12 @@ "id": 13781, "nodeType": "FunctionDefinition", "src": "36936:186:13", + "nodes": [], "body": { "id": 13780, "nodeType": "Block", "src": "37017:105:13", + "nodes": [], "statements": [ { "expression": { @@ -59818,6 +60974,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37047:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37043:23:13", @@ -59832,6 +60989,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37043:71:13", @@ -59866,6 +61024,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37027:88:13", @@ -60016,10 +61175,12 @@ "id": 13804, "nodeType": "FunctionDefinition", "src": "37128:175:13", + "nodes": [], "body": { "id": 13803, "nodeType": "Block", "src": "37200:103:13", + "nodes": [], "statements": [ { "expression": { @@ -60131,6 +61292,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37230:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37226:23:13", @@ -60145,6 +61307,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37226:69:13", @@ -60179,6 +61342,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37210:86:13", @@ -60329,10 +61493,12 @@ "id": 13827, "nodeType": "FunctionDefinition", "src": "37309:181:13", + "nodes": [], "body": { "id": 13826, "nodeType": "Block", "src": "37384:106:13", + "nodes": [], "statements": [ { "expression": { @@ -60444,6 +61610,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37414:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37410:23:13", @@ -60458,6 +61625,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37410:72:13", @@ -60492,6 +61660,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37394:89:13", @@ -60643,10 +61812,12 @@ "id": 13850, "nodeType": "FunctionDefinition", "src": "37496:186:13", + "nodes": [], "body": { "id": 13849, "nodeType": "Block", "src": "37577:105:13", + "nodes": [], "statements": [ { "expression": { @@ -60758,6 +61929,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37607:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37603:23:13", @@ -60772,6 +61944,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37603:71:13", @@ -60806,6 +61979,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37587:88:13", @@ -60956,10 +62130,12 @@ "id": 13873, "nodeType": "FunctionDefinition", "src": "37688:197:13", + "nodes": [], "body": { "id": 13872, "nodeType": "Block", "src": "37778:107:13", + "nodes": [], "statements": [ { "expression": { @@ -61071,6 +62247,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37808:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37804:23:13", @@ -61085,6 +62262,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37804:73:13", @@ -61119,6 +62297,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37788:90:13", @@ -61269,10 +62448,12 @@ "id": 13896, "nodeType": "FunctionDefinition", "src": "37891:186:13", + "nodes": [], "body": { "id": 13895, "nodeType": "Block", "src": "37972:105:13", + "nodes": [], "statements": [ { "expression": { @@ -61384,6 +62565,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38002:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37998:23:13", @@ -61398,6 +62580,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37998:71:13", @@ -61432,6 +62615,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37982:88:13", @@ -61582,10 +62766,12 @@ "id": 13919, "nodeType": "FunctionDefinition", "src": "38083:192:13", + "nodes": [], "body": { "id": 13918, "nodeType": "Block", "src": "38167:108:13", + "nodes": [], "statements": [ { "expression": { @@ -61697,6 +62883,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38197:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38193:23:13", @@ -61711,6 +62898,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38193:74:13", @@ -61745,6 +62933,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38177:91:13", @@ -61896,10 +63085,12 @@ "id": 13942, "nodeType": "FunctionDefinition", "src": "38281:175:13", + "nodes": [], "body": { "id": 13941, "nodeType": "Block", "src": "38353:103:13", + "nodes": [], "statements": [ { "expression": { @@ -62011,6 +63202,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38383:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38379:23:13", @@ -62025,6 +63217,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38379:69:13", @@ -62059,6 +63252,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38363:86:13", @@ -62209,10 +63403,12 @@ "id": 13965, "nodeType": "FunctionDefinition", "src": "38462:186:13", + "nodes": [], "body": { "id": 13964, "nodeType": "Block", "src": "38543:105:13", + "nodes": [], "statements": [ { "expression": { @@ -62324,6 +63520,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38573:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38569:23:13", @@ -62338,6 +63535,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38569:71:13", @@ -62372,6 +63570,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38553:88:13", @@ -62522,10 +63721,12 @@ "id": 13988, "nodeType": "FunctionDefinition", "src": "38654:175:13", + "nodes": [], "body": { "id": 13987, "nodeType": "Block", "src": "38726:103:13", + "nodes": [], "statements": [ { "expression": { @@ -62637,6 +63838,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38756:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38752:23:13", @@ -62651,6 +63853,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38752:69:13", @@ -62685,6 +63888,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38736:86:13", @@ -62835,10 +64039,12 @@ "id": 14011, "nodeType": "FunctionDefinition", "src": "38835:181:13", + "nodes": [], "body": { "id": 14010, "nodeType": "Block", "src": "38910:106:13", + "nodes": [], "statements": [ { "expression": { @@ -62950,6 +64156,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38940:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38936:23:13", @@ -62964,6 +64171,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38936:72:13", @@ -62998,6 +64206,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38920:89:13", @@ -63149,10 +64358,12 @@ "id": 14034, "nodeType": "FunctionDefinition", "src": "39022:181:13", + "nodes": [], "body": { "id": 14033, "nodeType": "Block", "src": "39097:106:13", + "nodes": [], "statements": [ { "expression": { @@ -63264,6 +64475,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39127:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39123:23:13", @@ -63278,6 +64490,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39123:72:13", @@ -63312,6 +64525,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39107:89:13", @@ -63463,10 +64677,12 @@ "id": 14057, "nodeType": "FunctionDefinition", "src": "39209:192:13", + "nodes": [], "body": { "id": 14056, "nodeType": "Block", "src": "39293:108:13", + "nodes": [], "statements": [ { "expression": { @@ -63578,6 +64794,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39323:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39319:23:13", @@ -63592,6 +64809,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39319:74:13", @@ -63626,6 +64844,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39303:91:13", @@ -63777,10 +64996,12 @@ "id": 14080, "nodeType": "FunctionDefinition", "src": "39407:181:13", + "nodes": [], "body": { "id": 14079, "nodeType": "Block", "src": "39482:106:13", + "nodes": [], "statements": [ { "expression": { @@ -63892,6 +65113,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39512:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39508:23:13", @@ -63906,6 +65128,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39508:72:13", @@ -63940,6 +65163,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39492:89:13", @@ -64091,10 +65315,12 @@ "id": 14103, "nodeType": "FunctionDefinition", "src": "39594:187:13", + "nodes": [], "body": { "id": 14102, "nodeType": "Block", "src": "39672:109:13", + "nodes": [], "statements": [ { "expression": { @@ -64206,6 +65432,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39702:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39698:23:13", @@ -64220,6 +65447,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39698:75:13", @@ -64254,6 +65482,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39682:92:13", @@ -64406,10 +65635,12 @@ "id": 14126, "nodeType": "FunctionDefinition", "src": "39787:181:13", + "nodes": [], "body": { "id": 14125, "nodeType": "Block", "src": "39862:106:13", + "nodes": [], "statements": [ { "expression": { @@ -64521,6 +65752,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39892:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39888:23:13", @@ -64535,6 +65767,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39888:72:13", @@ -64569,6 +65802,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39872:89:13", @@ -64720,10 +65954,12 @@ "id": 14149, "nodeType": "FunctionDefinition", "src": "39974:192:13", + "nodes": [], "body": { "id": 14148, "nodeType": "Block", "src": "40058:108:13", + "nodes": [], "statements": [ { "expression": { @@ -64835,6 +66071,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40088:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40084:23:13", @@ -64849,6 +66086,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40084:74:13", @@ -64883,6 +66121,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40068:91:13", @@ -65034,10 +66273,12 @@ "id": 14172, "nodeType": "FunctionDefinition", "src": "40172:181:13", + "nodes": [], "body": { "id": 14171, "nodeType": "Block", "src": "40247:106:13", + "nodes": [], "statements": [ { "expression": { @@ -65149,6 +66390,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40277:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40273:23:13", @@ -65163,6 +66405,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40273:72:13", @@ -65197,6 +66440,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40257:89:13", @@ -65348,10 +66592,12 @@ "id": 14195, "nodeType": "FunctionDefinition", "src": "40359:187:13", + "nodes": [], "body": { "id": 14194, "nodeType": "Block", "src": "40437:109:13", + "nodes": [], "statements": [ { "expression": { @@ -65463,6 +66709,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40467:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40463:23:13", @@ -65477,6 +66724,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40463:75:13", @@ -65511,6 +66759,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40447:92:13", @@ -65663,10 +66912,12 @@ "id": 14218, "nodeType": "FunctionDefinition", "src": "40552:192:13", + "nodes": [], "body": { "id": 14217, "nodeType": "Block", "src": "40636:108:13", + "nodes": [], "statements": [ { "expression": { @@ -65778,6 +67029,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40666:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40662:23:13", @@ -65792,6 +67044,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40662:74:13", @@ -65826,6 +67079,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40646:91:13", @@ -65977,10 +67231,12 @@ "id": 14241, "nodeType": "FunctionDefinition", "src": "40750:203:13", + "nodes": [], "body": { "id": 14240, "nodeType": "Block", "src": "40843:110:13", + "nodes": [], "statements": [ { "expression": { @@ -66092,6 +67348,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40873:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40869:23:13", @@ -66106,6 +67363,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40869:76:13", @@ -66140,6 +67398,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40853:93:13", @@ -66291,10 +67550,12 @@ "id": 14264, "nodeType": "FunctionDefinition", "src": "40959:192:13", + "nodes": [], "body": { "id": 14263, "nodeType": "Block", "src": "41043:108:13", + "nodes": [], "statements": [ { "expression": { @@ -66406,6 +67667,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41073:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41069:23:13", @@ -66420,6 +67682,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41069:74:13", @@ -66454,6 +67717,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41053:91:13", @@ -66605,10 +67869,12 @@ "id": 14287, "nodeType": "FunctionDefinition", "src": "41157:198:13", + "nodes": [], "body": { "id": 14286, "nodeType": "Block", "src": "41244:111:13", + "nodes": [], "statements": [ { "expression": { @@ -66720,6 +67986,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41274:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41270:23:13", @@ -66734,6 +68001,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41270:77:13", @@ -66768,6 +68036,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41254:94:13", @@ -66920,10 +68189,12 @@ "id": 14310, "nodeType": "FunctionDefinition", "src": "41361:181:13", + "nodes": [], "body": { "id": 14309, "nodeType": "Block", "src": "41436:106:13", + "nodes": [], "statements": [ { "expression": { @@ -67035,6 +68306,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41466:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41462:23:13", @@ -67049,6 +68321,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41462:72:13", @@ -67083,6 +68356,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41446:89:13", @@ -67234,10 +68508,12 @@ "id": 14333, "nodeType": "FunctionDefinition", "src": "41548:192:13", + "nodes": [], "body": { "id": 14332, "nodeType": "Block", "src": "41632:108:13", + "nodes": [], "statements": [ { "expression": { @@ -67349,6 +68625,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41662:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41658:23:13", @@ -67363,6 +68640,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41658:74:13", @@ -67397,6 +68675,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41642:91:13", @@ -67548,10 +68827,12 @@ "id": 14356, "nodeType": "FunctionDefinition", "src": "41746:181:13", + "nodes": [], "body": { "id": 14355, "nodeType": "Block", "src": "41821:106:13", + "nodes": [], "statements": [ { "expression": { @@ -67663,6 +68944,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41851:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41847:23:13", @@ -67677,6 +68959,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41847:72:13", @@ -67711,6 +68994,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41831:89:13", @@ -67862,10 +69146,12 @@ "id": 14379, "nodeType": "FunctionDefinition", "src": "41933:187:13", + "nodes": [], "body": { "id": 14378, "nodeType": "Block", "src": "42011:109:13", + "nodes": [], "statements": [ { "expression": { @@ -67977,6 +69263,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42041:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42037:23:13", @@ -67991,6 +69278,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42037:75:13", @@ -68025,6 +69313,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42021:92:13", @@ -68177,10 +69466,12 @@ "id": 14402, "nodeType": "FunctionDefinition", "src": "42126:187:13", + "nodes": [], "body": { "id": 14401, "nodeType": "Block", "src": "42204:109:13", + "nodes": [], "statements": [ { "expression": { @@ -68292,6 +69583,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42234:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42230:23:13", @@ -68306,6 +69598,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42230:75:13", @@ -68340,6 +69633,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42214:92:13", @@ -68492,10 +69786,12 @@ "id": 14425, "nodeType": "FunctionDefinition", "src": "42319:198:13", + "nodes": [], "body": { "id": 14424, "nodeType": "Block", "src": "42406:111:13", + "nodes": [], "statements": [ { "expression": { @@ -68607,6 +69903,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42436:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42432:23:13", @@ -68621,6 +69918,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42432:77:13", @@ -68655,6 +69953,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42416:94:13", @@ -68807,10 +70106,12 @@ "id": 14448, "nodeType": "FunctionDefinition", "src": "42523:187:13", + "nodes": [], "body": { "id": 14447, "nodeType": "Block", "src": "42601:109:13", + "nodes": [], "statements": [ { "expression": { @@ -68922,6 +70223,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42631:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42627:23:13", @@ -68936,6 +70238,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42627:75:13", @@ -68970,6 +70273,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42611:92:13", @@ -69122,10 +70426,12 @@ "id": 14471, "nodeType": "FunctionDefinition", "src": "42716:193:13", + "nodes": [], "body": { "id": 14470, "nodeType": "Block", "src": "42797:112:13", + "nodes": [], "statements": [ { "expression": { @@ -69237,6 +70543,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42827:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42823:23:13", @@ -69251,6 +70558,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42823:78:13", @@ -69285,6 +70593,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42807:95:13", @@ -69438,10 +70747,12 @@ "id": 14494, "nodeType": "FunctionDefinition", "src": "42915:164:13", + "nodes": [], "body": { "id": 14493, "nodeType": "Block", "src": "42978:101:13", + "nodes": [], "statements": [ { "expression": { @@ -69553,6 +70864,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43008:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43004:23:13", @@ -69567,6 +70879,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43004:67:13", @@ -69601,6 +70914,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42988:84:13", @@ -69751,10 +71065,12 @@ "id": 14517, "nodeType": "FunctionDefinition", "src": "43085:175:13", + "nodes": [], "body": { "id": 14516, "nodeType": "Block", "src": "43157:103:13", + "nodes": [], "statements": [ { "expression": { @@ -69866,6 +71182,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43187:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43183:23:13", @@ -69880,6 +71197,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43183:69:13", @@ -69914,6 +71232,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43167:86:13", @@ -70064,10 +71383,12 @@ "id": 14540, "nodeType": "FunctionDefinition", "src": "43266:164:13", + "nodes": [], "body": { "id": 14539, "nodeType": "Block", "src": "43329:101:13", + "nodes": [], "statements": [ { "expression": { @@ -70179,6 +71500,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43359:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43355:23:13", @@ -70193,6 +71515,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43355:67:13", @@ -70227,6 +71550,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43339:84:13", @@ -70377,10 +71701,12 @@ "id": 14563, "nodeType": "FunctionDefinition", "src": "43436:170:13", + "nodes": [], "body": { "id": 14562, "nodeType": "Block", "src": "43502:104:13", + "nodes": [], "statements": [ { "expression": { @@ -70492,6 +71818,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43532:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43528:23:13", @@ -70506,6 +71833,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43528:70:13", @@ -70540,6 +71868,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43512:87:13", @@ -70691,10 +72020,12 @@ "id": 14586, "nodeType": "FunctionDefinition", "src": "43612:175:13", + "nodes": [], "body": { "id": 14585, "nodeType": "Block", "src": "43684:103:13", + "nodes": [], "statements": [ { "expression": { @@ -70806,6 +72137,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43714:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43710:23:13", @@ -70820,6 +72152,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43710:69:13", @@ -70854,6 +72187,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43694:86:13", @@ -71004,10 +72338,12 @@ "id": 14609, "nodeType": "FunctionDefinition", "src": "43793:186:13", + "nodes": [], "body": { "id": 14608, "nodeType": "Block", "src": "43874:105:13", + "nodes": [], "statements": [ { "expression": { @@ -71119,6 +72455,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43904:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43900:23:13", @@ -71133,6 +72470,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43900:71:13", @@ -71167,6 +72505,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43884:88:13", @@ -71317,10 +72656,12 @@ "id": 14632, "nodeType": "FunctionDefinition", "src": "43985:175:13", + "nodes": [], "body": { "id": 14631, "nodeType": "Block", "src": "44057:103:13", + "nodes": [], "statements": [ { "expression": { @@ -71432,6 +72773,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44087:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44083:23:13", @@ -71446,6 +72788,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44083:69:13", @@ -71480,6 +72823,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44067:86:13", @@ -71630,10 +72974,12 @@ "id": 14655, "nodeType": "FunctionDefinition", "src": "44166:181:13", + "nodes": [], "body": { "id": 14654, "nodeType": "Block", "src": "44241:106:13", + "nodes": [], "statements": [ { "expression": { @@ -71745,6 +73091,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44271:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44267:23:13", @@ -71759,6 +73106,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44267:72:13", @@ -71793,6 +73141,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44251:89:13", @@ -71944,10 +73293,12 @@ "id": 14678, "nodeType": "FunctionDefinition", "src": "44353:164:13", + "nodes": [], "body": { "id": 14677, "nodeType": "Block", "src": "44416:101:13", + "nodes": [], "statements": [ { "expression": { @@ -72059,6 +73410,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44446:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44442:23:13", @@ -72073,6 +73425,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44442:67:13", @@ -72107,6 +73460,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44426:84:13", @@ -72257,10 +73611,12 @@ "id": 14701, "nodeType": "FunctionDefinition", "src": "44523:175:13", + "nodes": [], "body": { "id": 14700, "nodeType": "Block", "src": "44595:103:13", + "nodes": [], "statements": [ { "expression": { @@ -72372,6 +73728,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44625:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44621:23:13", @@ -72386,6 +73743,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44621:69:13", @@ -72420,6 +73778,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44605:86:13", @@ -72570,10 +73929,12 @@ "id": 14724, "nodeType": "FunctionDefinition", "src": "44704:164:13", + "nodes": [], "body": { "id": 14723, "nodeType": "Block", "src": "44767:101:13", + "nodes": [], "statements": [ { "expression": { @@ -72685,6 +74046,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44797:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44793:23:13", @@ -72699,6 +74061,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44793:67:13", @@ -72733,6 +74096,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44777:84:13", @@ -72883,10 +74247,12 @@ "id": 14747, "nodeType": "FunctionDefinition", "src": "44874:170:13", + "nodes": [], "body": { "id": 14746, "nodeType": "Block", "src": "44940:104:13", + "nodes": [], "statements": [ { "expression": { @@ -72998,6 +74364,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44970:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44966:23:13", @@ -73012,6 +74379,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44966:70:13", @@ -73046,6 +74414,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44950:87:13", @@ -73197,10 +74566,12 @@ "id": 14770, "nodeType": "FunctionDefinition", "src": "45050:170:13", + "nodes": [], "body": { "id": 14769, "nodeType": "Block", "src": "45116:104:13", + "nodes": [], "statements": [ { "expression": { @@ -73312,6 +74683,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45146:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45142:23:13", @@ -73326,6 +74698,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45142:70:13", @@ -73360,6 +74733,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45126:87:13", @@ -73511,10 +74885,12 @@ "id": 14793, "nodeType": "FunctionDefinition", "src": "45226:181:13", + "nodes": [], "body": { "id": 14792, "nodeType": "Block", "src": "45301:106:13", + "nodes": [], "statements": [ { "expression": { @@ -73626,6 +75002,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45331:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45327:23:13", @@ -73640,6 +75017,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45327:72:13", @@ -73674,6 +75052,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45311:89:13", @@ -73825,10 +75204,12 @@ "id": 14816, "nodeType": "FunctionDefinition", "src": "45413:170:13", + "nodes": [], "body": { "id": 14815, "nodeType": "Block", "src": "45479:104:13", + "nodes": [], "statements": [ { "expression": { @@ -73940,6 +75321,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45509:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45505:23:13", @@ -73954,6 +75336,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45505:70:13", @@ -73988,6 +75371,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45489:87:13", @@ -74139,10 +75523,12 @@ "id": 14839, "nodeType": "FunctionDefinition", "src": "45589:176:13", + "nodes": [], "body": { "id": 14838, "nodeType": "Block", "src": "45658:107:13", + "nodes": [], "statements": [ { "expression": { @@ -74254,6 +75640,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45688:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45684:23:13", @@ -74268,6 +75655,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45684:73:13", @@ -74302,6 +75690,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45668:90:13", @@ -74454,10 +75843,12 @@ "id": 14862, "nodeType": "FunctionDefinition", "src": "45771:175:13", + "nodes": [], "body": { "id": 14861, "nodeType": "Block", "src": "45843:103:13", + "nodes": [], "statements": [ { "expression": { @@ -74569,6 +75960,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45873:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45869:23:13", @@ -74583,6 +75975,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45869:69:13", @@ -74617,6 +76010,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45853:86:13", @@ -74767,10 +76161,12 @@ "id": 14885, "nodeType": "FunctionDefinition", "src": "45952:186:13", + "nodes": [], "body": { "id": 14884, "nodeType": "Block", "src": "46033:105:13", + "nodes": [], "statements": [ { "expression": { @@ -74882,6 +76278,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46063:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46059:23:13", @@ -74896,6 +76293,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46059:71:13", @@ -74930,6 +76328,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46043:88:13", @@ -75080,10 +76479,12 @@ "id": 14908, "nodeType": "FunctionDefinition", "src": "46144:175:13", + "nodes": [], "body": { "id": 14907, "nodeType": "Block", "src": "46216:103:13", + "nodes": [], "statements": [ { "expression": { @@ -75195,6 +76596,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46246:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46242:23:13", @@ -75209,6 +76611,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46242:69:13", @@ -75243,6 +76646,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46226:86:13", @@ -75393,10 +76797,12 @@ "id": 14931, "nodeType": "FunctionDefinition", "src": "46325:181:13", + "nodes": [], "body": { "id": 14930, "nodeType": "Block", "src": "46400:106:13", + "nodes": [], "statements": [ { "expression": { @@ -75508,6 +76914,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46430:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46426:23:13", @@ -75522,6 +76929,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46426:72:13", @@ -75556,6 +76964,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46410:89:13", @@ -75707,10 +77116,12 @@ "id": 14954, "nodeType": "FunctionDefinition", "src": "46512:186:13", + "nodes": [], "body": { "id": 14953, "nodeType": "Block", "src": "46593:105:13", + "nodes": [], "statements": [ { "expression": { @@ -75822,6 +77233,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46623:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46619:23:13", @@ -75836,6 +77248,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46619:71:13", @@ -75870,6 +77283,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46603:88:13", @@ -76020,10 +77434,12 @@ "id": 14977, "nodeType": "FunctionDefinition", "src": "46704:197:13", + "nodes": [], "body": { "id": 14976, "nodeType": "Block", "src": "46794:107:13", + "nodes": [], "statements": [ { "expression": { @@ -76135,6 +77551,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46824:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46820:23:13", @@ -76149,6 +77566,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46820:73:13", @@ -76183,6 +77601,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46804:90:13", @@ -76333,10 +77752,12 @@ "id": 15000, "nodeType": "FunctionDefinition", "src": "46907:186:13", + "nodes": [], "body": { "id": 14999, "nodeType": "Block", "src": "46988:105:13", + "nodes": [], "statements": [ { "expression": { @@ -76448,6 +77869,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47018:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47014:23:13", @@ -76462,6 +77884,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47014:71:13", @@ -76496,6 +77919,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46998:88:13", @@ -76646,10 +78070,12 @@ "id": 15023, "nodeType": "FunctionDefinition", "src": "47099:192:13", + "nodes": [], "body": { "id": 15022, "nodeType": "Block", "src": "47183:108:13", + "nodes": [], "statements": [ { "expression": { @@ -76761,6 +78187,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47213:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47209:23:13", @@ -76775,6 +78202,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47209:74:13", @@ -76809,6 +78237,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47193:91:13", @@ -76960,10 +78389,12 @@ "id": 15046, "nodeType": "FunctionDefinition", "src": "47297:175:13", + "nodes": [], "body": { "id": 15045, "nodeType": "Block", "src": "47369:103:13", + "nodes": [], "statements": [ { "expression": { @@ -77075,6 +78506,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47399:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47395:23:13", @@ -77089,6 +78521,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47395:69:13", @@ -77123,6 +78556,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47379:86:13", @@ -77273,10 +78707,12 @@ "id": 15069, "nodeType": "FunctionDefinition", "src": "47478:186:13", + "nodes": [], "body": { "id": 15068, "nodeType": "Block", "src": "47559:105:13", + "nodes": [], "statements": [ { "expression": { @@ -77388,6 +78824,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47589:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47585:23:13", @@ -77402,6 +78839,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47585:71:13", @@ -77436,6 +78874,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47569:88:13", @@ -77586,10 +79025,12 @@ "id": 15092, "nodeType": "FunctionDefinition", "src": "47670:175:13", + "nodes": [], "body": { "id": 15091, "nodeType": "Block", "src": "47742:103:13", + "nodes": [], "statements": [ { "expression": { @@ -77701,6 +79142,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47772:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47768:23:13", @@ -77715,6 +79157,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47768:69:13", @@ -77749,6 +79192,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47752:86:13", @@ -77899,10 +79343,12 @@ "id": 15115, "nodeType": "FunctionDefinition", "src": "47851:181:13", + "nodes": [], "body": { "id": 15114, "nodeType": "Block", "src": "47926:106:13", + "nodes": [], "statements": [ { "expression": { @@ -78014,6 +79460,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47956:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47952:23:13", @@ -78028,6 +79475,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47952:72:13", @@ -78062,6 +79510,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47936:89:13", @@ -78213,10 +79662,12 @@ "id": 15138, "nodeType": "FunctionDefinition", "src": "48038:181:13", + "nodes": [], "body": { "id": 15137, "nodeType": "Block", "src": "48113:106:13", + "nodes": [], "statements": [ { "expression": { @@ -78328,6 +79779,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48143:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48139:23:13", @@ -78342,6 +79794,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48139:72:13", @@ -78376,6 +79829,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48123:89:13", @@ -78527,10 +79981,12 @@ "id": 15161, "nodeType": "FunctionDefinition", "src": "48225:192:13", + "nodes": [], "body": { "id": 15160, "nodeType": "Block", "src": "48309:108:13", + "nodes": [], "statements": [ { "expression": { @@ -78642,6 +80098,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48339:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48335:23:13", @@ -78656,6 +80113,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48335:74:13", @@ -78690,6 +80148,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48319:91:13", @@ -78841,10 +80300,12 @@ "id": 15184, "nodeType": "FunctionDefinition", "src": "48423:181:13", + "nodes": [], "body": { "id": 15183, "nodeType": "Block", "src": "48498:106:13", + "nodes": [], "statements": [ { "expression": { @@ -78956,6 +80417,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48528:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48524:23:13", @@ -78970,6 +80432,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48524:72:13", @@ -79004,6 +80467,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48508:89:13", @@ -79155,10 +80619,12 @@ "id": 15207, "nodeType": "FunctionDefinition", "src": "48610:187:13", + "nodes": [], "body": { "id": 15206, "nodeType": "Block", "src": "48688:109:13", + "nodes": [], "statements": [ { "expression": { @@ -79270,6 +80736,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48718:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48714:23:13", @@ -79284,6 +80751,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48714:75:13", @@ -79318,6 +80786,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48698:92:13", @@ -79470,10 +80939,12 @@ "id": 15230, "nodeType": "FunctionDefinition", "src": "48803:164:13", + "nodes": [], "body": { "id": 15229, "nodeType": "Block", "src": "48866:101:13", + "nodes": [], "statements": [ { "expression": { @@ -79585,6 +81056,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48896:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48892:23:13", @@ -79599,6 +81071,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48892:67:13", @@ -79633,6 +81106,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48876:84:13", @@ -79783,10 +81257,12 @@ "id": 15253, "nodeType": "FunctionDefinition", "src": "48973:175:13", + "nodes": [], "body": { "id": 15252, "nodeType": "Block", "src": "49045:103:13", + "nodes": [], "statements": [ { "expression": { @@ -79898,6 +81374,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49075:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49071:23:13", @@ -79912,6 +81389,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49071:69:13", @@ -79946,6 +81424,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49055:86:13", @@ -80096,10 +81575,12 @@ "id": 15276, "nodeType": "FunctionDefinition", "src": "49154:164:13", + "nodes": [], "body": { "id": 15275, "nodeType": "Block", "src": "49217:101:13", + "nodes": [], "statements": [ { "expression": { @@ -80211,6 +81692,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49247:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49243:23:13", @@ -80225,6 +81707,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49243:67:13", @@ -80259,6 +81742,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49227:84:13", @@ -80409,10 +81893,12 @@ "id": 15299, "nodeType": "FunctionDefinition", "src": "49324:170:13", + "nodes": [], "body": { "id": 15298, "nodeType": "Block", "src": "49390:104:13", + "nodes": [], "statements": [ { "expression": { @@ -80524,6 +82010,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49420:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49416:23:13", @@ -80538,6 +82025,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49416:70:13", @@ -80572,6 +82060,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49400:87:13", @@ -80723,10 +82212,12 @@ "id": 15322, "nodeType": "FunctionDefinition", "src": "49500:175:13", + "nodes": [], "body": { "id": 15321, "nodeType": "Block", "src": "49572:103:13", + "nodes": [], "statements": [ { "expression": { @@ -80838,6 +82329,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49602:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49598:23:13", @@ -80852,6 +82344,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49598:69:13", @@ -80886,6 +82379,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49582:86:13", @@ -81036,10 +82530,12 @@ "id": 15345, "nodeType": "FunctionDefinition", "src": "49681:186:13", + "nodes": [], "body": { "id": 15344, "nodeType": "Block", "src": "49762:105:13", + "nodes": [], "statements": [ { "expression": { @@ -81151,6 +82647,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49792:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49788:23:13", @@ -81165,6 +82662,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49788:71:13", @@ -81199,6 +82697,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49772:88:13", @@ -81349,10 +82848,12 @@ "id": 15368, "nodeType": "FunctionDefinition", "src": "49873:175:13", + "nodes": [], "body": { "id": 15367, "nodeType": "Block", "src": "49945:103:13", + "nodes": [], "statements": [ { "expression": { @@ -81464,6 +82965,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49975:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49971:23:13", @@ -81478,6 +82980,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49971:69:13", @@ -81512,6 +83015,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49955:86:13", @@ -81662,10 +83166,12 @@ "id": 15391, "nodeType": "FunctionDefinition", "src": "50054:181:13", + "nodes": [], "body": { "id": 15390, "nodeType": "Block", "src": "50129:106:13", + "nodes": [], "statements": [ { "expression": { @@ -81777,6 +83283,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50159:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50155:23:13", @@ -81791,6 +83298,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50155:72:13", @@ -81825,6 +83333,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50139:89:13", @@ -81976,10 +83485,12 @@ "id": 15414, "nodeType": "FunctionDefinition", "src": "50241:164:13", + "nodes": [], "body": { "id": 15413, "nodeType": "Block", "src": "50304:101:13", + "nodes": [], "statements": [ { "expression": { @@ -82091,6 +83602,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50334:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50330:23:13", @@ -82105,6 +83617,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50330:67:13", @@ -82139,6 +83652,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50314:84:13", @@ -82289,10 +83803,12 @@ "id": 15437, "nodeType": "FunctionDefinition", "src": "50411:175:13", + "nodes": [], "body": { "id": 15436, "nodeType": "Block", "src": "50483:103:13", + "nodes": [], "statements": [ { "expression": { @@ -82404,6 +83920,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50513:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50509:23:13", @@ -82418,6 +83935,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50509:69:13", @@ -82452,6 +83970,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50493:86:13", @@ -82602,10 +84121,12 @@ "id": 15460, "nodeType": "FunctionDefinition", "src": "50592:164:13", + "nodes": [], "body": { "id": 15459, "nodeType": "Block", "src": "50655:101:13", + "nodes": [], "statements": [ { "expression": { @@ -82717,6 +84238,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50685:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50681:23:13", @@ -82731,6 +84253,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50681:67:13", @@ -82765,6 +84288,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50665:84:13", @@ -82915,10 +84439,12 @@ "id": 15483, "nodeType": "FunctionDefinition", "src": "50762:170:13", + "nodes": [], "body": { "id": 15482, "nodeType": "Block", "src": "50828:104:13", + "nodes": [], "statements": [ { "expression": { @@ -83030,6 +84556,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50858:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50854:23:13", @@ -83044,6 +84571,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50854:70:13", @@ -83078,6 +84606,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50838:87:13", @@ -83229,10 +84758,12 @@ "id": 15506, "nodeType": "FunctionDefinition", "src": "50938:170:13", + "nodes": [], "body": { "id": 15505, "nodeType": "Block", "src": "51004:104:13", + "nodes": [], "statements": [ { "expression": { @@ -83344,6 +84875,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51034:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51030:23:13", @@ -83358,6 +84890,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51030:70:13", @@ -83392,6 +84925,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51014:87:13", @@ -83543,10 +85077,12 @@ "id": 15529, "nodeType": "FunctionDefinition", "src": "51114:181:13", + "nodes": [], "body": { "id": 15528, "nodeType": "Block", "src": "51189:106:13", + "nodes": [], "statements": [ { "expression": { @@ -83658,6 +85194,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51219:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51215:23:13", @@ -83672,6 +85209,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51215:72:13", @@ -83706,6 +85244,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51199:89:13", @@ -83857,10 +85396,12 @@ "id": 15552, "nodeType": "FunctionDefinition", "src": "51301:170:13", + "nodes": [], "body": { "id": 15551, "nodeType": "Block", "src": "51367:104:13", + "nodes": [], "statements": [ { "expression": { @@ -83972,6 +85513,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51397:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51393:23:13", @@ -83986,6 +85528,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51393:70:13", @@ -84020,6 +85563,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51377:87:13", @@ -84171,10 +85715,12 @@ "id": 15575, "nodeType": "FunctionDefinition", "src": "51477:176:13", + "nodes": [], "body": { "id": 15574, "nodeType": "Block", "src": "51546:107:13", + "nodes": [], "statements": [ { "expression": { @@ -84286,6 +85832,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51576:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51572:23:13", @@ -84300,6 +85847,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51572:73:13", @@ -84334,6 +85882,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51556:90:13", @@ -84486,10 +86035,12 @@ "id": 15598, "nodeType": "FunctionDefinition", "src": "51659:170:13", + "nodes": [], "body": { "id": 15597, "nodeType": "Block", "src": "51725:104:13", + "nodes": [], "statements": [ { "expression": { @@ -84601,6 +86152,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51755:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51751:23:13", @@ -84615,6 +86167,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51751:70:13", @@ -84649,6 +86202,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51735:87:13", @@ -84800,10 +86354,12 @@ "id": 15621, "nodeType": "FunctionDefinition", "src": "51835:181:13", + "nodes": [], "body": { "id": 15620, "nodeType": "Block", "src": "51910:106:13", + "nodes": [], "statements": [ { "expression": { @@ -84915,6 +86471,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51940:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51936:23:13", @@ -84929,6 +86486,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51936:72:13", @@ -84963,6 +86521,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51920:89:13", @@ -85114,10 +86673,12 @@ "id": 15644, "nodeType": "FunctionDefinition", "src": "52022:170:13", + "nodes": [], "body": { "id": 15643, "nodeType": "Block", "src": "52088:104:13", + "nodes": [], "statements": [ { "expression": { @@ -85229,6 +86790,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52118:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52114:23:13", @@ -85243,6 +86805,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52114:70:13", @@ -85277,6 +86840,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52098:87:13", @@ -85428,10 +86992,12 @@ "id": 15667, "nodeType": "FunctionDefinition", "src": "52198:176:13", + "nodes": [], "body": { "id": 15666, "nodeType": "Block", "src": "52267:107:13", + "nodes": [], "statements": [ { "expression": { @@ -85543,6 +87109,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52297:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52293:23:13", @@ -85557,6 +87124,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52293:73:13", @@ -85591,6 +87159,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52277:90:13", @@ -85743,10 +87312,12 @@ "id": 15690, "nodeType": "FunctionDefinition", "src": "52380:181:13", + "nodes": [], "body": { "id": 15689, "nodeType": "Block", "src": "52455:106:13", + "nodes": [], "statements": [ { "expression": { @@ -85858,6 +87429,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52485:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52481:23:13", @@ -85872,6 +87444,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52481:72:13", @@ -85906,6 +87479,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52465:89:13", @@ -86057,10 +87631,12 @@ "id": 15713, "nodeType": "FunctionDefinition", "src": "52567:192:13", + "nodes": [], "body": { "id": 15712, "nodeType": "Block", "src": "52651:108:13", + "nodes": [], "statements": [ { "expression": { @@ -86172,6 +87748,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52681:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52677:23:13", @@ -86186,6 +87763,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52677:74:13", @@ -86220,6 +87798,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52661:91:13", @@ -86371,10 +87950,12 @@ "id": 15736, "nodeType": "FunctionDefinition", "src": "52765:181:13", + "nodes": [], "body": { "id": 15735, "nodeType": "Block", "src": "52840:106:13", + "nodes": [], "statements": [ { "expression": { @@ -86486,6 +88067,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52870:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52866:23:13", @@ -86500,6 +88082,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52866:72:13", @@ -86534,6 +88117,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52850:89:13", @@ -86685,10 +88269,12 @@ "id": 15759, "nodeType": "FunctionDefinition", "src": "52952:187:13", + "nodes": [], "body": { "id": 15758, "nodeType": "Block", "src": "53030:109:13", + "nodes": [], "statements": [ { "expression": { @@ -86800,6 +88386,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53060:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53056:23:13", @@ -86814,6 +88401,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53056:75:13", @@ -86848,6 +88436,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53040:92:13", @@ -87000,10 +88589,12 @@ "id": 15782, "nodeType": "FunctionDefinition", "src": "53145:170:13", + "nodes": [], "body": { "id": 15781, "nodeType": "Block", "src": "53211:104:13", + "nodes": [], "statements": [ { "expression": { @@ -87115,6 +88706,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53241:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53237:23:13", @@ -87129,6 +88721,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53237:70:13", @@ -87163,6 +88756,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53221:87:13", @@ -87314,10 +88908,12 @@ "id": 15805, "nodeType": "FunctionDefinition", "src": "53321:181:13", + "nodes": [], "body": { "id": 15804, "nodeType": "Block", "src": "53396:106:13", + "nodes": [], "statements": [ { "expression": { @@ -87429,6 +89025,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53426:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53422:23:13", @@ -87443,6 +89040,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53422:72:13", @@ -87477,6 +89075,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53406:89:13", @@ -87628,10 +89227,12 @@ "id": 15828, "nodeType": "FunctionDefinition", "src": "53508:170:13", + "nodes": [], "body": { "id": 15827, "nodeType": "Block", "src": "53574:104:13", + "nodes": [], "statements": [ { "expression": { @@ -87743,6 +89344,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53604:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53600:23:13", @@ -87757,6 +89359,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53600:70:13", @@ -87791,6 +89394,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53584:87:13", @@ -87942,10 +89546,12 @@ "id": 15851, "nodeType": "FunctionDefinition", "src": "53684:176:13", + "nodes": [], "body": { "id": 15850, "nodeType": "Block", "src": "53753:107:13", + "nodes": [], "statements": [ { "expression": { @@ -88057,6 +89663,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53783:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53779:23:13", @@ -88071,6 +89678,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53779:73:13", @@ -88105,6 +89713,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53763:90:13", @@ -88257,10 +89866,12 @@ "id": 15874, "nodeType": "FunctionDefinition", "src": "53866:176:13", + "nodes": [], "body": { "id": 15873, "nodeType": "Block", "src": "53935:107:13", + "nodes": [], "statements": [ { "expression": { @@ -88372,6 +89983,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53965:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53961:23:13", @@ -88386,6 +89998,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53961:73:13", @@ -88420,6 +90033,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53945:90:13", @@ -88572,10 +90186,12 @@ "id": 15897, "nodeType": "FunctionDefinition", "src": "54048:187:13", + "nodes": [], "body": { "id": 15896, "nodeType": "Block", "src": "54126:109:13", + "nodes": [], "statements": [ { "expression": { @@ -88687,6 +90303,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54156:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54152:23:13", @@ -88701,6 +90318,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54152:75:13", @@ -88735,6 +90353,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54136:92:13", @@ -88887,10 +90506,12 @@ "id": 15920, "nodeType": "FunctionDefinition", "src": "54241:176:13", + "nodes": [], "body": { "id": 15919, "nodeType": "Block", "src": "54310:107:13", + "nodes": [], "statements": [ { "expression": { @@ -89002,6 +90623,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54340:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54336:23:13", @@ -89016,6 +90638,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54336:73:13", @@ -89050,6 +90673,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54320:90:13", @@ -89202,10 +90826,12 @@ "id": 15943, "nodeType": "FunctionDefinition", "src": "54423:182:13", + "nodes": [], "body": { "id": 15942, "nodeType": "Block", "src": "54495:110:13", + "nodes": [], "statements": [ { "expression": { @@ -89317,6 +90943,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54525:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54521:23:13", @@ -89331,6 +90958,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54521:76:13", @@ -89365,6 +90993,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54505:93:13", @@ -89518,10 +91147,12 @@ "id": 15966, "nodeType": "FunctionDefinition", "src": "54611:170:13", + "nodes": [], "body": { "id": 15965, "nodeType": "Block", "src": "54677:104:13", + "nodes": [], "statements": [ { "expression": { @@ -89633,6 +91264,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54707:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54703:23:13", @@ -89647,6 +91279,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54703:70:13", @@ -89681,6 +91314,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54687:87:13", @@ -89832,10 +91466,12 @@ "id": 15989, "nodeType": "FunctionDefinition", "src": "54787:181:13", + "nodes": [], "body": { "id": 15988, "nodeType": "Block", "src": "54862:106:13", + "nodes": [], "statements": [ { "expression": { @@ -89947,6 +91583,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54892:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54888:23:13", @@ -89961,6 +91598,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54888:72:13", @@ -89995,6 +91633,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54872:89:13", @@ -90146,10 +91785,12 @@ "id": 16012, "nodeType": "FunctionDefinition", "src": "54974:170:13", + "nodes": [], "body": { "id": 16011, "nodeType": "Block", "src": "55040:104:13", + "nodes": [], "statements": [ { "expression": { @@ -90261,6 +91902,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55070:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55066:23:13", @@ -90275,6 +91917,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55066:70:13", @@ -90309,6 +91952,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55050:87:13", @@ -90460,10 +92104,12 @@ "id": 16035, "nodeType": "FunctionDefinition", "src": "55150:176:13", + "nodes": [], "body": { "id": 16034, "nodeType": "Block", "src": "55219:107:13", + "nodes": [], "statements": [ { "expression": { @@ -90575,6 +92221,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55249:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55245:23:13", @@ -90589,6 +92236,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55245:73:13", @@ -90623,6 +92271,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55229:90:13", @@ -90775,10 +92424,12 @@ "id": 16058, "nodeType": "FunctionDefinition", "src": "55332:181:13", + "nodes": [], "body": { "id": 16057, "nodeType": "Block", "src": "55407:106:13", + "nodes": [], "statements": [ { "expression": { @@ -90890,6 +92541,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55437:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55433:23:13", @@ -90904,6 +92556,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55433:72:13", @@ -90938,6 +92591,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55417:89:13", @@ -91089,10 +92743,12 @@ "id": 16081, "nodeType": "FunctionDefinition", "src": "55519:192:13", + "nodes": [], "body": { "id": 16080, "nodeType": "Block", "src": "55603:108:13", + "nodes": [], "statements": [ { "expression": { @@ -91204,6 +92860,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55633:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55629:23:13", @@ -91218,6 +92875,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55629:74:13", @@ -91252,6 +92910,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55613:91:13", @@ -91403,10 +93062,12 @@ "id": 16104, "nodeType": "FunctionDefinition", "src": "55717:181:13", + "nodes": [], "body": { "id": 16103, "nodeType": "Block", "src": "55792:106:13", + "nodes": [], "statements": [ { "expression": { @@ -91518,6 +93179,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55822:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55818:23:13", @@ -91532,6 +93194,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55818:72:13", @@ -91566,6 +93229,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55802:89:13", @@ -91717,10 +93381,12 @@ "id": 16127, "nodeType": "FunctionDefinition", "src": "55904:187:13", + "nodes": [], "body": { "id": 16126, "nodeType": "Block", "src": "55982:109:13", + "nodes": [], "statements": [ { "expression": { @@ -91832,6 +93498,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56012:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56008:23:13", @@ -91846,6 +93513,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56008:75:13", @@ -91880,6 +93548,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55992:92:13", @@ -92032,10 +93701,12 @@ "id": 16150, "nodeType": "FunctionDefinition", "src": "56097:170:13", + "nodes": [], "body": { "id": 16149, "nodeType": "Block", "src": "56163:104:13", + "nodes": [], "statements": [ { "expression": { @@ -92147,6 +93818,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56193:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56189:23:13", @@ -92161,6 +93833,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56189:70:13", @@ -92195,6 +93868,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56173:87:13", @@ -92346,10 +94020,12 @@ "id": 16173, "nodeType": "FunctionDefinition", "src": "56273:181:13", + "nodes": [], "body": { "id": 16172, "nodeType": "Block", "src": "56348:106:13", + "nodes": [], "statements": [ { "expression": { @@ -92461,6 +94137,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56378:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56374:23:13", @@ -92475,6 +94152,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56374:72:13", @@ -92509,6 +94187,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56358:89:13", @@ -92660,10 +94339,12 @@ "id": 16196, "nodeType": "FunctionDefinition", "src": "56460:170:13", + "nodes": [], "body": { "id": 16195, "nodeType": "Block", "src": "56526:104:13", + "nodes": [], "statements": [ { "expression": { @@ -92775,6 +94456,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56556:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56552:23:13", @@ -92789,6 +94471,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56552:70:13", @@ -92823,6 +94506,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56536:87:13", @@ -92974,10 +94658,12 @@ "id": 16219, "nodeType": "FunctionDefinition", "src": "56636:176:13", + "nodes": [], "body": { "id": 16218, "nodeType": "Block", "src": "56705:107:13", + "nodes": [], "statements": [ { "expression": { @@ -93089,6 +94775,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56735:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56731:23:13", @@ -93103,6 +94790,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56731:73:13", @@ -93137,6 +94825,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56715:90:13", @@ -93289,10 +94978,12 @@ "id": 16242, "nodeType": "FunctionDefinition", "src": "56818:176:13", + "nodes": [], "body": { "id": 16241, "nodeType": "Block", "src": "56887:107:13", + "nodes": [], "statements": [ { "expression": { @@ -93404,6 +95095,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56917:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56913:23:13", @@ -93418,6 +95110,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56913:73:13", @@ -93452,6 +95145,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56897:90:13", @@ -93604,10 +95298,12 @@ "id": 16265, "nodeType": "FunctionDefinition", "src": "57000:187:13", + "nodes": [], "body": { "id": 16264, "nodeType": "Block", "src": "57078:109:13", + "nodes": [], "statements": [ { "expression": { @@ -93719,6 +95415,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57108:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57104:23:13", @@ -93733,6 +95430,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57104:75:13", @@ -93767,6 +95465,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57088:92:13", @@ -93919,10 +95618,12 @@ "id": 16288, "nodeType": "FunctionDefinition", "src": "57193:176:13", + "nodes": [], "body": { "id": 16287, "nodeType": "Block", "src": "57262:107:13", + "nodes": [], "statements": [ { "expression": { @@ -94034,6 +95735,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57292:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57288:23:13", @@ -94048,6 +95750,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57288:73:13", @@ -94082,6 +95785,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57272:90:13", @@ -94234,10 +95938,12 @@ "id": 16311, "nodeType": "FunctionDefinition", "src": "57375:182:13", + "nodes": [], "body": { "id": 16310, "nodeType": "Block", "src": "57447:110:13", + "nodes": [], "statements": [ { "expression": { @@ -94349,6 +96055,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57477:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57473:23:13", @@ -94363,6 +96070,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57473:76:13", @@ -94397,6 +96105,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57457:93:13", @@ -94550,10 +96259,12 @@ "id": 16334, "nodeType": "FunctionDefinition", "src": "57563:181:13", + "nodes": [], "body": { "id": 16333, "nodeType": "Block", "src": "57638:106:13", + "nodes": [], "statements": [ { "expression": { @@ -94665,6 +96376,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57668:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57664:23:13", @@ -94679,6 +96391,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57664:72:13", @@ -94713,6 +96426,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57648:89:13", @@ -94864,10 +96578,12 @@ "id": 16357, "nodeType": "FunctionDefinition", "src": "57750:192:13", + "nodes": [], "body": { "id": 16356, "nodeType": "Block", "src": "57834:108:13", + "nodes": [], "statements": [ { "expression": { @@ -94979,6 +96695,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57864:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57860:23:13", @@ -94993,6 +96710,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57860:74:13", @@ -95027,6 +96745,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57844:91:13", @@ -95178,10 +96897,12 @@ "id": 16380, "nodeType": "FunctionDefinition", "src": "57948:181:13", + "nodes": [], "body": { "id": 16379, "nodeType": "Block", "src": "58023:106:13", + "nodes": [], "statements": [ { "expression": { @@ -95293,6 +97014,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58053:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58049:23:13", @@ -95307,6 +97029,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58049:72:13", @@ -95341,6 +97064,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58033:89:13", @@ -95492,10 +97216,12 @@ "id": 16403, "nodeType": "FunctionDefinition", "src": "58135:187:13", + "nodes": [], "body": { "id": 16402, "nodeType": "Block", "src": "58213:109:13", + "nodes": [], "statements": [ { "expression": { @@ -95607,6 +97333,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58243:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58239:23:13", @@ -95621,6 +97348,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58239:75:13", @@ -95655,6 +97383,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58223:92:13", @@ -95807,10 +97536,12 @@ "id": 16426, "nodeType": "FunctionDefinition", "src": "58328:192:13", + "nodes": [], "body": { "id": 16425, "nodeType": "Block", "src": "58412:108:13", + "nodes": [], "statements": [ { "expression": { @@ -95922,6 +97653,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58442:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58438:23:13", @@ -95936,6 +97668,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58438:74:13", @@ -95970,6 +97703,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58422:91:13", @@ -96121,10 +97855,12 @@ "id": 16449, "nodeType": "FunctionDefinition", "src": "58526:203:13", + "nodes": [], "body": { "id": 16448, "nodeType": "Block", "src": "58619:110:13", + "nodes": [], "statements": [ { "expression": { @@ -96236,6 +97972,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58649:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58645:23:13", @@ -96250,6 +97987,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58645:76:13", @@ -96284,6 +98022,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58629:93:13", @@ -96435,10 +98174,12 @@ "id": 16472, "nodeType": "FunctionDefinition", "src": "58735:192:13", + "nodes": [], "body": { "id": 16471, "nodeType": "Block", "src": "58819:108:13", + "nodes": [], "statements": [ { "expression": { @@ -96550,6 +98291,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58849:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58845:23:13", @@ -96564,6 +98306,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58845:74:13", @@ -96598,6 +98341,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58829:91:13", @@ -96749,10 +98493,12 @@ "id": 16495, "nodeType": "FunctionDefinition", "src": "58933:198:13", + "nodes": [], "body": { "id": 16494, "nodeType": "Block", "src": "59020:111:13", + "nodes": [], "statements": [ { "expression": { @@ -96864,6 +98610,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59050:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59046:23:13", @@ -96878,6 +98625,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59046:77:13", @@ -96912,6 +98660,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59030:94:13", @@ -97064,10 +98813,12 @@ "id": 16518, "nodeType": "FunctionDefinition", "src": "59137:181:13", + "nodes": [], "body": { "id": 16517, "nodeType": "Block", "src": "59212:106:13", + "nodes": [], "statements": [ { "expression": { @@ -97179,6 +98930,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59242:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59238:23:13", @@ -97193,6 +98945,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59238:72:13", @@ -97227,6 +98980,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59222:89:13", @@ -97378,10 +99132,12 @@ "id": 16541, "nodeType": "FunctionDefinition", "src": "59324:192:13", + "nodes": [], "body": { "id": 16540, "nodeType": "Block", "src": "59408:108:13", + "nodes": [], "statements": [ { "expression": { @@ -97493,6 +99249,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59438:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59434:23:13", @@ -97507,6 +99264,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59434:74:13", @@ -97541,6 +99299,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59418:91:13", @@ -97692,10 +99451,12 @@ "id": 16564, "nodeType": "FunctionDefinition", "src": "59522:181:13", + "nodes": [], "body": { "id": 16563, "nodeType": "Block", "src": "59597:106:13", + "nodes": [], "statements": [ { "expression": { @@ -97807,6 +99568,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59627:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59623:23:13", @@ -97821,6 +99583,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59623:72:13", @@ -97855,6 +99618,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59607:89:13", @@ -98006,10 +99770,12 @@ "id": 16587, "nodeType": "FunctionDefinition", "src": "59709:187:13", + "nodes": [], "body": { "id": 16586, "nodeType": "Block", "src": "59787:109:13", + "nodes": [], "statements": [ { "expression": { @@ -98121,6 +99887,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59817:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59813:23:13", @@ -98135,6 +99902,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59813:75:13", @@ -98169,6 +99937,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59797:92:13", @@ -98321,10 +100090,12 @@ "id": 16610, "nodeType": "FunctionDefinition", "src": "59902:187:13", + "nodes": [], "body": { "id": 16609, "nodeType": "Block", "src": "59980:109:13", + "nodes": [], "statements": [ { "expression": { @@ -98436,6 +100207,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60010:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60006:23:13", @@ -98450,6 +100222,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60006:75:13", @@ -98484,6 +100257,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59990:92:13", @@ -98636,10 +100410,12 @@ "id": 16633, "nodeType": "FunctionDefinition", "src": "60095:198:13", + "nodes": [], "body": { "id": 16632, "nodeType": "Block", "src": "60182:111:13", + "nodes": [], "statements": [ { "expression": { @@ -98751,6 +100527,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60212:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60208:23:13", @@ -98765,6 +100542,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60208:77:13", @@ -98799,6 +100577,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60192:94:13", @@ -98951,10 +100730,12 @@ "id": 16656, "nodeType": "FunctionDefinition", "src": "60299:187:13", + "nodes": [], "body": { "id": 16655, "nodeType": "Block", "src": "60377:109:13", + "nodes": [], "statements": [ { "expression": { @@ -99066,6 +100847,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60407:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60403:23:13", @@ -99080,6 +100862,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60403:75:13", @@ -99114,6 +100897,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60387:92:13", @@ -99266,10 +101050,12 @@ "id": 16679, "nodeType": "FunctionDefinition", "src": "60492:193:13", + "nodes": [], "body": { "id": 16678, "nodeType": "Block", "src": "60573:112:13", + "nodes": [], "statements": [ { "expression": { @@ -99381,6 +101167,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60603:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60599:23:13", @@ -99395,6 +101182,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60599:78:13", @@ -99429,6 +101217,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60583:95:13", @@ -99582,10 +101371,12 @@ "id": 16702, "nodeType": "FunctionDefinition", "src": "60691:170:13", + "nodes": [], "body": { "id": 16701, "nodeType": "Block", "src": "60757:104:13", + "nodes": [], "statements": [ { "expression": { @@ -99697,6 +101488,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60787:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60783:23:13", @@ -99711,6 +101503,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60783:70:13", @@ -99745,6 +101538,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60767:87:13", @@ -99896,10 +101690,12 @@ "id": 16725, "nodeType": "FunctionDefinition", "src": "60867:181:13", + "nodes": [], "body": { "id": 16724, "nodeType": "Block", "src": "60942:106:13", + "nodes": [], "statements": [ { "expression": { @@ -100011,6 +101807,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60972:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60968:23:13", @@ -100025,6 +101822,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60968:72:13", @@ -100059,6 +101857,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60952:89:13", @@ -100210,10 +102009,12 @@ "id": 16748, "nodeType": "FunctionDefinition", "src": "61054:170:13", + "nodes": [], "body": { "id": 16747, "nodeType": "Block", "src": "61120:104:13", + "nodes": [], "statements": [ { "expression": { @@ -100325,6 +102126,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61150:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61146:23:13", @@ -100339,6 +102141,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61146:70:13", @@ -100373,6 +102176,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61130:87:13", @@ -100524,10 +102328,12 @@ "id": 16771, "nodeType": "FunctionDefinition", "src": "61230:176:13", + "nodes": [], "body": { "id": 16770, "nodeType": "Block", "src": "61299:107:13", + "nodes": [], "statements": [ { "expression": { @@ -100639,6 +102445,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61329:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61325:23:13", @@ -100653,6 +102460,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61325:73:13", @@ -100687,6 +102495,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61309:90:13", @@ -100839,10 +102648,12 @@ "id": 16794, "nodeType": "FunctionDefinition", "src": "61412:181:13", + "nodes": [], "body": { "id": 16793, "nodeType": "Block", "src": "61487:106:13", + "nodes": [], "statements": [ { "expression": { @@ -100954,6 +102765,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61517:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61513:23:13", @@ -100968,6 +102780,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61513:72:13", @@ -101002,6 +102815,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61497:89:13", @@ -101153,10 +102967,12 @@ "id": 16817, "nodeType": "FunctionDefinition", "src": "61599:192:13", + "nodes": [], "body": { "id": 16816, "nodeType": "Block", "src": "61683:108:13", + "nodes": [], "statements": [ { "expression": { @@ -101268,6 +103084,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61713:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61709:23:13", @@ -101282,6 +103099,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61709:74:13", @@ -101316,6 +103134,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61693:91:13", @@ -101467,10 +103286,12 @@ "id": 16840, "nodeType": "FunctionDefinition", "src": "61797:181:13", + "nodes": [], "body": { "id": 16839, "nodeType": "Block", "src": "61872:106:13", + "nodes": [], "statements": [ { "expression": { @@ -101582,6 +103403,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61902:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61898:23:13", @@ -101596,6 +103418,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61898:72:13", @@ -101630,6 +103453,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61882:89:13", @@ -101781,10 +103605,12 @@ "id": 16863, "nodeType": "FunctionDefinition", "src": "61984:187:13", + "nodes": [], "body": { "id": 16862, "nodeType": "Block", "src": "62062:109:13", + "nodes": [], "statements": [ { "expression": { @@ -101896,6 +103722,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62092:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62088:23:13", @@ -101910,6 +103737,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62088:75:13", @@ -101944,6 +103772,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62072:92:13", @@ -102096,10 +103925,12 @@ "id": 16886, "nodeType": "FunctionDefinition", "src": "62177:170:13", + "nodes": [], "body": { "id": 16885, "nodeType": "Block", "src": "62243:104:13", + "nodes": [], "statements": [ { "expression": { @@ -102211,6 +104042,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62273:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62269:23:13", @@ -102225,6 +104057,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62269:70:13", @@ -102259,6 +104092,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62253:87:13", @@ -102410,10 +104244,12 @@ "id": 16909, "nodeType": "FunctionDefinition", "src": "62353:181:13", + "nodes": [], "body": { "id": 16908, "nodeType": "Block", "src": "62428:106:13", + "nodes": [], "statements": [ { "expression": { @@ -102525,6 +104361,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62458:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62454:23:13", @@ -102539,6 +104376,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62454:72:13", @@ -102573,6 +104411,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62438:89:13", @@ -102724,10 +104563,12 @@ "id": 16932, "nodeType": "FunctionDefinition", "src": "62540:170:13", + "nodes": [], "body": { "id": 16931, "nodeType": "Block", "src": "62606:104:13", + "nodes": [], "statements": [ { "expression": { @@ -102839,6 +104680,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62636:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62632:23:13", @@ -102853,6 +104695,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62632:70:13", @@ -102887,6 +104730,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62616:87:13", @@ -103038,10 +104882,12 @@ "id": 16955, "nodeType": "FunctionDefinition", "src": "62716:176:13", + "nodes": [], "body": { "id": 16954, "nodeType": "Block", "src": "62785:107:13", + "nodes": [], "statements": [ { "expression": { @@ -103153,6 +104999,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62815:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62811:23:13", @@ -103167,6 +105014,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62811:73:13", @@ -103201,6 +105049,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62795:90:13", @@ -103353,10 +105202,12 @@ "id": 16978, "nodeType": "FunctionDefinition", "src": "62898:176:13", + "nodes": [], "body": { "id": 16977, "nodeType": "Block", "src": "62967:107:13", + "nodes": [], "statements": [ { "expression": { @@ -103468,6 +105319,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62997:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62993:23:13", @@ -103482,6 +105334,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62993:73:13", @@ -103516,6 +105369,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62977:90:13", @@ -103668,10 +105522,12 @@ "id": 17001, "nodeType": "FunctionDefinition", "src": "63080:187:13", + "nodes": [], "body": { "id": 17000, "nodeType": "Block", "src": "63158:109:13", + "nodes": [], "statements": [ { "expression": { @@ -103783,6 +105639,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63188:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63184:23:13", @@ -103797,6 +105654,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63184:75:13", @@ -103831,6 +105689,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63168:92:13", @@ -103983,10 +105842,12 @@ "id": 17024, "nodeType": "FunctionDefinition", "src": "63273:176:13", + "nodes": [], "body": { "id": 17023, "nodeType": "Block", "src": "63342:107:13", + "nodes": [], "statements": [ { "expression": { @@ -104098,6 +105959,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63372:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63368:23:13", @@ -104112,6 +105974,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63368:73:13", @@ -104146,6 +106009,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63352:90:13", @@ -104298,10 +106162,12 @@ "id": 17047, "nodeType": "FunctionDefinition", "src": "63455:182:13", + "nodes": [], "body": { "id": 17046, "nodeType": "Block", "src": "63527:110:13", + "nodes": [], "statements": [ { "expression": { @@ -104413,6 +106279,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63557:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63553:23:13", @@ -104427,6 +106294,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63553:76:13", @@ -104461,6 +106329,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63537:93:13", @@ -104614,10 +106483,12 @@ "id": 17070, "nodeType": "FunctionDefinition", "src": "63643:176:13", + "nodes": [], "body": { "id": 17069, "nodeType": "Block", "src": "63712:107:13", + "nodes": [], "statements": [ { "expression": { @@ -104729,6 +106600,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63742:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63738:23:13", @@ -104743,6 +106615,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63738:73:13", @@ -104777,6 +106650,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63722:90:13", @@ -104929,10 +106803,12 @@ "id": 17093, "nodeType": "FunctionDefinition", "src": "63825:187:13", + "nodes": [], "body": { "id": 17092, "nodeType": "Block", "src": "63903:109:13", + "nodes": [], "statements": [ { "expression": { @@ -105044,6 +106920,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63933:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63929:23:13", @@ -105058,6 +106935,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63929:75:13", @@ -105092,6 +106970,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63913:92:13", @@ -105244,10 +107123,12 @@ "id": 17116, "nodeType": "FunctionDefinition", "src": "64018:176:13", + "nodes": [], "body": { "id": 17115, "nodeType": "Block", "src": "64087:107:13", + "nodes": [], "statements": [ { "expression": { @@ -105359,6 +107240,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64117:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64113:23:13", @@ -105373,6 +107255,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64113:73:13", @@ -105407,6 +107290,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64097:90:13", @@ -105559,10 +107443,12 @@ "id": 17139, "nodeType": "FunctionDefinition", "src": "64200:182:13", + "nodes": [], "body": { "id": 17138, "nodeType": "Block", "src": "64272:110:13", + "nodes": [], "statements": [ { "expression": { @@ -105674,6 +107560,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64302:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64298:23:13", @@ -105688,6 +107575,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64298:76:13", @@ -105722,6 +107610,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64282:93:13", @@ -105875,10 +107764,12 @@ "id": 17162, "nodeType": "FunctionDefinition", "src": "64388:187:13", + "nodes": [], "body": { "id": 17161, "nodeType": "Block", "src": "64466:109:13", + "nodes": [], "statements": [ { "expression": { @@ -105990,6 +107881,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64496:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64492:23:13", @@ -106004,6 +107896,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64492:75:13", @@ -106038,6 +107931,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64476:92:13", @@ -106190,10 +108084,12 @@ "id": 17185, "nodeType": "FunctionDefinition", "src": "64581:198:13", + "nodes": [], "body": { "id": 17184, "nodeType": "Block", "src": "64668:111:13", + "nodes": [], "statements": [ { "expression": { @@ -106305,6 +108201,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64698:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64694:23:13", @@ -106319,6 +108216,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64694:77:13", @@ -106353,6 +108251,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64678:94:13", @@ -106505,10 +108404,12 @@ "id": 17208, "nodeType": "FunctionDefinition", "src": "64785:187:13", + "nodes": [], "body": { "id": 17207, "nodeType": "Block", "src": "64863:109:13", + "nodes": [], "statements": [ { "expression": { @@ -106620,6 +108521,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64893:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64889:23:13", @@ -106634,6 +108536,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64889:75:13", @@ -106668,6 +108571,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64873:92:13", @@ -106820,10 +108724,12 @@ "id": 17231, "nodeType": "FunctionDefinition", "src": "64978:193:13", + "nodes": [], "body": { "id": 17230, "nodeType": "Block", "src": "65059:112:13", + "nodes": [], "statements": [ { "expression": { @@ -106935,6 +108841,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65089:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65085:23:13", @@ -106949,6 +108856,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65085:78:13", @@ -106983,6 +108891,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65069:95:13", @@ -107136,10 +109045,12 @@ "id": 17254, "nodeType": "FunctionDefinition", "src": "65177:176:13", + "nodes": [], "body": { "id": 17253, "nodeType": "Block", "src": "65246:107:13", + "nodes": [], "statements": [ { "expression": { @@ -107251,6 +109162,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65276:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65272:23:13", @@ -107265,6 +109177,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65272:73:13", @@ -107299,6 +109212,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65256:90:13", @@ -107451,10 +109365,12 @@ "id": 17277, "nodeType": "FunctionDefinition", "src": "65359:187:13", + "nodes": [], "body": { "id": 17276, "nodeType": "Block", "src": "65437:109:13", + "nodes": [], "statements": [ { "expression": { @@ -107566,6 +109482,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65467:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65463:23:13", @@ -107580,6 +109497,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65463:75:13", @@ -107614,6 +109532,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65447:92:13", @@ -107766,10 +109685,12 @@ "id": 17300, "nodeType": "FunctionDefinition", "src": "65552:176:13", + "nodes": [], "body": { "id": 17299, "nodeType": "Block", "src": "65621:107:13", + "nodes": [], "statements": [ { "expression": { @@ -107881,6 +109802,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65651:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65647:23:13", @@ -107895,6 +109817,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65647:73:13", @@ -107929,6 +109852,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65631:90:13", @@ -108081,10 +110005,12 @@ "id": 17323, "nodeType": "FunctionDefinition", "src": "65734:182:13", + "nodes": [], "body": { "id": 17322, "nodeType": "Block", "src": "65806:110:13", + "nodes": [], "statements": [ { "expression": { @@ -108196,6 +110122,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65836:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65832:23:13", @@ -108210,6 +110137,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65832:76:13", @@ -108244,6 +110172,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65816:93:13", @@ -108397,10 +110326,12 @@ "id": 17346, "nodeType": "FunctionDefinition", "src": "65922:182:13", + "nodes": [], "body": { "id": 17345, "nodeType": "Block", "src": "65994:110:13", + "nodes": [], "statements": [ { "expression": { @@ -108512,6 +110443,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66024:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66020:23:13", @@ -108526,6 +110458,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66020:76:13", @@ -108560,6 +110493,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66004:93:13", @@ -108713,10 +110647,12 @@ "id": 17369, "nodeType": "FunctionDefinition", "src": "66110:193:13", + "nodes": [], "body": { "id": 17368, "nodeType": "Block", "src": "66191:112:13", + "nodes": [], "statements": [ { "expression": { @@ -108828,6 +110764,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66221:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66217:23:13", @@ -108842,6 +110779,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66217:78:13", @@ -108876,6 +110814,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66201:95:13", @@ -109029,10 +110968,12 @@ "id": 17392, "nodeType": "FunctionDefinition", "src": "66309:182:13", + "nodes": [], "body": { "id": 17391, "nodeType": "Block", "src": "66381:110:13", + "nodes": [], "statements": [ { "expression": { @@ -109144,6 +111085,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66411:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66407:23:13", @@ -109158,6 +111100,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66407:76:13", @@ -109192,6 +111135,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66391:93:13", @@ -109345,10 +111289,12 @@ "id": 17415, "nodeType": "FunctionDefinition", "src": "66497:188:13", + "nodes": [], "body": { "id": 17414, "nodeType": "Block", "src": "66572:113:13", + "nodes": [], "statements": [ { "expression": { @@ -109460,6 +111406,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66602:19:13", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66598:23:13", @@ -109474,6 +111421,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66598:79:13", @@ -109508,6 +111456,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66582:96:13", diff --git a/out/console2.sol/console2.json b/out/console2.sol/console2.json index fe1c2c9..e0d4fcf 100644 --- a/out/console2.sol/console2.json +++ b/out/console2.sol/console2.json @@ -1,16 +1,64 @@ { "abi": [], "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c028c1dd0ed19188e7c6dc80e4408b81260e0145589ebacd77a3b08b177589a164736f6c634300080f0033", + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220050355f1c76e40fbe7e61ab05f95467caa58518ba7dae3395e52b7a99342facd64736f6c63430008110033", "sourceMap": "525:68782:14:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;525:68782:14;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c028c1dd0ed19188e7c6dc80e4408b81260e0145589ebacd77a3b08b177589a164736f6c634300080f0033", + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220050355f1c76e40fbe7e61ab05f95467caa58518ba7dae3395e52b7a99342facd64736f6c63430008110033", "sourceMap": "525:68782:14:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"The original console.sol uses `int` and `uint` for computing function selectors, but it should use `int256` and `uint256`. This modified version fixes that. This version is recommended over `console.sol` if you don't need compatibility with Hardhat as the logs will show up in forge stack traces. If you do need compatibility with Hardhat, you must use `console.sol`. Reference: https://github.com/NomicFoundation/hardhat/issues/2178\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/console2.sol\":\"console2\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/console2.sol": "console2" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/console2.sol", "id": 25513, @@ -26,6 +74,7 @@ "id": 17418, "nodeType": "PragmaDirective", "src": "32:32:14", + "nodes": [], "literals": [ "solidity", ">=", @@ -45,6 +94,7 @@ "id": 17425, "nodeType": "VariableDeclaration", "src": "548:86:14", + "nodes": [], "constant": true, "mutability": "constant", "name": "CONSOLE_ADDRESS", @@ -118,6 +168,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "583:51:14", @@ -133,10 +184,12 @@ "id": 17441, "nodeType": "FunctionDefinition", "src": "641:376:14", + "nodes": [], "body": { "id": 17440, "nodeType": "Block", "src": "701:316:14", + "nodes": [], "statements": [ { "assignments": [ @@ -190,6 +243,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "743:6:14", "memberName": "length", "nodeType": "MemberAccess", "src": "735:14:14", @@ -440,10 +494,12 @@ "id": 17452, "nodeType": "FunctionDefinition", "src": "1023:95:14", + "nodes": [], "body": { "id": 17451, "nodeType": "Block", "src": "1052:66:14", + "nodes": [], "statements": [ { "expression": { @@ -491,6 +547,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1082:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1078:23:14", @@ -505,6 +562,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1078:32:14", @@ -539,6 +597,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1062:49:14", @@ -580,10 +639,12 @@ "id": 17466, "nodeType": "FunctionDefinition", "src": "1124:117:14", + "nodes": [], "body": { "id": 17465, "nodeType": "Block", "src": "1165:76:14", + "nodes": [], "statements": [ { "expression": { @@ -647,6 +708,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1195:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1191:23:14", @@ -661,6 +723,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1191:42:14", @@ -695,6 +758,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1175:59:14", @@ -764,10 +828,12 @@ "id": 17480, "nodeType": "FunctionDefinition", "src": "1247:120:14", + "nodes": [], "body": { "id": 17479, "nodeType": "Block", "src": "1290:77:14", + "nodes": [], "statements": [ { "expression": { @@ -831,6 +897,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1320:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1316:23:14", @@ -845,6 +912,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1316:43:14", @@ -879,6 +947,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1300:60:14", @@ -948,10 +1017,12 @@ "id": 17494, "nodeType": "FunctionDefinition", "src": "1373:127:14", + "nodes": [], "body": { "id": 17493, "nodeType": "Block", "src": "1424:76:14", + "nodes": [], "statements": [ { "expression": { @@ -1015,6 +1086,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1454:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1450:23:14", @@ -1029,6 +1101,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1450:42:14", @@ -1063,6 +1136,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1434:59:14", @@ -1132,10 +1206,12 @@ "id": 17508, "nodeType": "FunctionDefinition", "src": "1506:114:14", + "nodes": [], "body": { "id": 17507, "nodeType": "Block", "src": "1546:74:14", + "nodes": [], "statements": [ { "expression": { @@ -1199,6 +1275,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1576:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1572:23:14", @@ -1213,6 +1290,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1572:40:14", @@ -1247,6 +1325,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1556:57:14", @@ -1316,10 +1395,12 @@ "id": 17522, "nodeType": "FunctionDefinition", "src": "1626:123:14", + "nodes": [], "body": { "id": 17521, "nodeType": "Block", "src": "1672:77:14", + "nodes": [], "statements": [ { "expression": { @@ -1383,6 +1464,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1702:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1698:23:14", @@ -1397,6 +1479,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1698:43:14", @@ -1431,6 +1514,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1682:60:14", @@ -1501,10 +1585,12 @@ "id": 17536, "nodeType": "FunctionDefinition", "src": "1755:124:14", + "nodes": [], "body": { "id": 17535, "nodeType": "Block", "src": "1804:75:14", + "nodes": [], "statements": [ { "expression": { @@ -1568,6 +1654,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1834:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1830:23:14", @@ -1582,6 +1669,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1830:41:14", @@ -1616,6 +1704,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1814:58:14", @@ -1685,10 +1774,12 @@ "id": 17550, "nodeType": "FunctionDefinition", "src": "1885:120:14", + "nodes": [], "body": { "id": 17549, "nodeType": "Block", "src": "1929:76:14", + "nodes": [], "statements": [ { "expression": { @@ -1752,6 +1843,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "1959:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "1955:23:14", @@ -1766,6 +1858,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1955:42:14", @@ -1800,6 +1893,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1939:59:14", @@ -1869,10 +1963,12 @@ "id": 17564, "nodeType": "FunctionDefinition", "src": "2011:120:14", + "nodes": [], "body": { "id": 17563, "nodeType": "Block", "src": "2055:76:14", + "nodes": [], "statements": [ { "expression": { @@ -1936,6 +2032,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2085:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2081:23:14", @@ -1950,6 +2047,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2081:42:14", @@ -1984,6 +2082,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2065:59:14", @@ -2053,10 +2152,12 @@ "id": 17578, "nodeType": "FunctionDefinition", "src": "2137:120:14", + "nodes": [], "body": { "id": 17577, "nodeType": "Block", "src": "2181:76:14", + "nodes": [], "statements": [ { "expression": { @@ -2120,6 +2221,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2211:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2207:23:14", @@ -2134,6 +2236,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2207:42:14", @@ -2168,6 +2271,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2191:59:14", @@ -2237,10 +2341,12 @@ "id": 17592, "nodeType": "FunctionDefinition", "src": "2263:120:14", + "nodes": [], "body": { "id": 17591, "nodeType": "Block", "src": "2307:76:14", + "nodes": [], "statements": [ { "expression": { @@ -2304,6 +2410,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2337:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2333:23:14", @@ -2318,6 +2425,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2333:42:14", @@ -2352,6 +2460,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2317:59:14", @@ -2421,10 +2530,12 @@ "id": 17606, "nodeType": "FunctionDefinition", "src": "2389:120:14", + "nodes": [], "body": { "id": 17605, "nodeType": "Block", "src": "2433:76:14", + "nodes": [], "statements": [ { "expression": { @@ -2488,6 +2599,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2463:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2459:23:14", @@ -2502,6 +2614,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2459:42:14", @@ -2536,6 +2649,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2443:59:14", @@ -2605,10 +2719,12 @@ "id": 17620, "nodeType": "FunctionDefinition", "src": "2515:120:14", + "nodes": [], "body": { "id": 17619, "nodeType": "Block", "src": "2559:76:14", + "nodes": [], "statements": [ { "expression": { @@ -2672,6 +2788,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2589:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2585:23:14", @@ -2686,6 +2803,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2585:42:14", @@ -2720,6 +2838,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2569:59:14", @@ -2789,10 +2908,12 @@ "id": 17634, "nodeType": "FunctionDefinition", "src": "2641:120:14", + "nodes": [], "body": { "id": 17633, "nodeType": "Block", "src": "2685:76:14", + "nodes": [], "statements": [ { "expression": { @@ -2856,6 +2977,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2715:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2711:23:14", @@ -2870,6 +2992,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2711:42:14", @@ -2904,6 +3027,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2695:59:14", @@ -2973,10 +3097,12 @@ "id": 17648, "nodeType": "FunctionDefinition", "src": "2767:120:14", + "nodes": [], "body": { "id": 17647, "nodeType": "Block", "src": "2811:76:14", + "nodes": [], "statements": [ { "expression": { @@ -3040,6 +3166,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2841:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2837:23:14", @@ -3054,6 +3181,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2837:42:14", @@ -3088,6 +3216,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2821:59:14", @@ -3157,10 +3286,12 @@ "id": 17662, "nodeType": "FunctionDefinition", "src": "2893:120:14", + "nodes": [], "body": { "id": 17661, "nodeType": "Block", "src": "2937:76:14", + "nodes": [], "statements": [ { "expression": { @@ -3224,6 +3355,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2967:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "2963:23:14", @@ -3238,6 +3370,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2963:42:14", @@ -3272,6 +3405,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2947:59:14", @@ -3341,10 +3475,12 @@ "id": 17676, "nodeType": "FunctionDefinition", "src": "3019:123:14", + "nodes": [], "body": { "id": 17675, "nodeType": "Block", "src": "3065:77:14", + "nodes": [], "statements": [ { "expression": { @@ -3408,6 +3544,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3095:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3091:23:14", @@ -3422,6 +3559,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3091:43:14", @@ -3456,6 +3594,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3075:60:14", @@ -3525,10 +3664,12 @@ "id": 17690, "nodeType": "FunctionDefinition", "src": "3148:123:14", + "nodes": [], "body": { "id": 17689, "nodeType": "Block", "src": "3194:77:14", + "nodes": [], "statements": [ { "expression": { @@ -3592,6 +3733,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3224:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3220:23:14", @@ -3606,6 +3748,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3220:43:14", @@ -3640,6 +3783,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3204:60:14", @@ -3709,10 +3853,12 @@ "id": 17704, "nodeType": "FunctionDefinition", "src": "3277:123:14", + "nodes": [], "body": { "id": 17703, "nodeType": "Block", "src": "3323:77:14", + "nodes": [], "statements": [ { "expression": { @@ -3776,6 +3922,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3353:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3349:23:14", @@ -3790,6 +3937,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3349:43:14", @@ -3824,6 +3972,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3333:60:14", @@ -3893,10 +4042,12 @@ "id": 17718, "nodeType": "FunctionDefinition", "src": "3406:123:14", + "nodes": [], "body": { "id": 17717, "nodeType": "Block", "src": "3452:77:14", + "nodes": [], "statements": [ { "expression": { @@ -3960,6 +4111,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3482:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3478:23:14", @@ -3974,6 +4126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3478:43:14", @@ -4008,6 +4161,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3462:60:14", @@ -4077,10 +4231,12 @@ "id": 17732, "nodeType": "FunctionDefinition", "src": "3535:123:14", + "nodes": [], "body": { "id": 17731, "nodeType": "Block", "src": "3581:77:14", + "nodes": [], "statements": [ { "expression": { @@ -4144,6 +4300,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3611:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3607:23:14", @@ -4158,6 +4315,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3607:43:14", @@ -4192,6 +4350,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3591:60:14", @@ -4261,10 +4420,12 @@ "id": 17746, "nodeType": "FunctionDefinition", "src": "3664:123:14", + "nodes": [], "body": { "id": 17745, "nodeType": "Block", "src": "3710:77:14", + "nodes": [], "statements": [ { "expression": { @@ -4328,6 +4489,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3740:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3736:23:14", @@ -4342,6 +4504,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3736:43:14", @@ -4376,6 +4539,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3720:60:14", @@ -4445,10 +4609,12 @@ "id": 17760, "nodeType": "FunctionDefinition", "src": "3793:123:14", + "nodes": [], "body": { "id": 17759, "nodeType": "Block", "src": "3839:77:14", + "nodes": [], "statements": [ { "expression": { @@ -4512,6 +4678,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3869:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3865:23:14", @@ -4526,6 +4693,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3865:43:14", @@ -4560,6 +4728,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3849:60:14", @@ -4629,10 +4798,12 @@ "id": 17774, "nodeType": "FunctionDefinition", "src": "3922:123:14", + "nodes": [], "body": { "id": 17773, "nodeType": "Block", "src": "3968:77:14", + "nodes": [], "statements": [ { "expression": { @@ -4696,6 +4867,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "3998:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "3994:23:14", @@ -4710,6 +4882,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3994:43:14", @@ -4744,6 +4917,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3978:60:14", @@ -4813,10 +4987,12 @@ "id": 17788, "nodeType": "FunctionDefinition", "src": "4051:123:14", + "nodes": [], "body": { "id": 17787, "nodeType": "Block", "src": "4097:77:14", + "nodes": [], "statements": [ { "expression": { @@ -4880,6 +5056,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4127:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4123:23:14", @@ -4894,6 +5071,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4123:43:14", @@ -4928,6 +5106,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4107:60:14", @@ -4997,10 +5176,12 @@ "id": 17802, "nodeType": "FunctionDefinition", "src": "4180:123:14", + "nodes": [], "body": { "id": 17801, "nodeType": "Block", "src": "4226:77:14", + "nodes": [], "statements": [ { "expression": { @@ -5064,6 +5245,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4256:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4252:23:14", @@ -5078,6 +5260,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4252:43:14", @@ -5112,6 +5295,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4236:60:14", @@ -5181,10 +5365,12 @@ "id": 17816, "nodeType": "FunctionDefinition", "src": "4309:123:14", + "nodes": [], "body": { "id": 17815, "nodeType": "Block", "src": "4355:77:14", + "nodes": [], "statements": [ { "expression": { @@ -5248,6 +5434,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4385:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4381:23:14", @@ -5262,6 +5449,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4381:43:14", @@ -5296,6 +5484,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4365:60:14", @@ -5365,10 +5554,12 @@ "id": 17830, "nodeType": "FunctionDefinition", "src": "4438:123:14", + "nodes": [], "body": { "id": 17829, "nodeType": "Block", "src": "4484:77:14", + "nodes": [], "statements": [ { "expression": { @@ -5432,6 +5623,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4514:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4510:23:14", @@ -5446,6 +5638,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4510:43:14", @@ -5480,6 +5673,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4494:60:14", @@ -5549,10 +5743,12 @@ "id": 17844, "nodeType": "FunctionDefinition", "src": "4567:123:14", + "nodes": [], "body": { "id": 17843, "nodeType": "Block", "src": "4613:77:14", + "nodes": [], "statements": [ { "expression": { @@ -5616,6 +5812,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4643:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4639:23:14", @@ -5630,6 +5827,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4639:43:14", @@ -5664,6 +5862,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4623:60:14", @@ -5733,10 +5932,12 @@ "id": 17858, "nodeType": "FunctionDefinition", "src": "4696:123:14", + "nodes": [], "body": { "id": 17857, "nodeType": "Block", "src": "4742:77:14", + "nodes": [], "statements": [ { "expression": { @@ -5800,6 +6001,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4772:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4768:23:14", @@ -5814,6 +6016,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4768:43:14", @@ -5848,6 +6051,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4752:60:14", @@ -5917,10 +6121,12 @@ "id": 17872, "nodeType": "FunctionDefinition", "src": "4825:123:14", + "nodes": [], "body": { "id": 17871, "nodeType": "Block", "src": "4871:77:14", + "nodes": [], "statements": [ { "expression": { @@ -5984,6 +6190,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "4901:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "4897:23:14", @@ -5998,6 +6205,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4897:43:14", @@ -6032,6 +6240,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4881:60:14", @@ -6101,10 +6310,12 @@ "id": 17886, "nodeType": "FunctionDefinition", "src": "4954:123:14", + "nodes": [], "body": { "id": 17885, "nodeType": "Block", "src": "5000:77:14", + "nodes": [], "statements": [ { "expression": { @@ -6168,6 +6379,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5030:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5026:23:14", @@ -6182,6 +6394,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5026:43:14", @@ -6216,6 +6429,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5010:60:14", @@ -6285,10 +6499,12 @@ "id": 17900, "nodeType": "FunctionDefinition", "src": "5083:123:14", + "nodes": [], "body": { "id": 17899, "nodeType": "Block", "src": "5129:77:14", + "nodes": [], "statements": [ { "expression": { @@ -6352,6 +6568,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5159:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5155:23:14", @@ -6366,6 +6583,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5155:43:14", @@ -6400,6 +6618,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5139:60:14", @@ -6469,10 +6688,12 @@ "id": 17914, "nodeType": "FunctionDefinition", "src": "5212:123:14", + "nodes": [], "body": { "id": 17913, "nodeType": "Block", "src": "5258:77:14", + "nodes": [], "statements": [ { "expression": { @@ -6536,6 +6757,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5288:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5284:23:14", @@ -6550,6 +6772,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5284:43:14", @@ -6584,6 +6807,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5268:60:14", @@ -6653,10 +6877,12 @@ "id": 17928, "nodeType": "FunctionDefinition", "src": "5341:123:14", + "nodes": [], "body": { "id": 17927, "nodeType": "Block", "src": "5387:77:14", + "nodes": [], "statements": [ { "expression": { @@ -6720,6 +6946,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5417:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5413:23:14", @@ -6734,6 +6961,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5413:43:14", @@ -6768,6 +6996,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5397:60:14", @@ -6837,10 +7066,12 @@ "id": 17942, "nodeType": "FunctionDefinition", "src": "5470:123:14", + "nodes": [], "body": { "id": 17941, "nodeType": "Block", "src": "5516:77:14", + "nodes": [], "statements": [ { "expression": { @@ -6904,6 +7135,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5546:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5542:23:14", @@ -6918,6 +7150,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5542:43:14", @@ -6952,6 +7185,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5526:60:14", @@ -7021,10 +7255,12 @@ "id": 17956, "nodeType": "FunctionDefinition", "src": "5599:123:14", + "nodes": [], "body": { "id": 17955, "nodeType": "Block", "src": "5645:77:14", + "nodes": [], "statements": [ { "expression": { @@ -7088,6 +7324,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5675:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5671:23:14", @@ -7102,6 +7339,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5671:43:14", @@ -7136,6 +7374,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5655:60:14", @@ -7205,10 +7444,12 @@ "id": 17970, "nodeType": "FunctionDefinition", "src": "5728:123:14", + "nodes": [], "body": { "id": 17969, "nodeType": "Block", "src": "5774:77:14", + "nodes": [], "statements": [ { "expression": { @@ -7272,6 +7513,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5804:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5800:23:14", @@ -7286,6 +7528,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5800:43:14", @@ -7320,6 +7563,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5784:60:14", @@ -7389,10 +7633,12 @@ "id": 17984, "nodeType": "FunctionDefinition", "src": "5857:123:14", + "nodes": [], "body": { "id": 17983, "nodeType": "Block", "src": "5903:77:14", + "nodes": [], "statements": [ { "expression": { @@ -7456,6 +7702,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "5933:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "5929:23:14", @@ -7470,6 +7717,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5929:43:14", @@ -7504,6 +7752,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5913:60:14", @@ -7573,10 +7822,12 @@ "id": 17998, "nodeType": "FunctionDefinition", "src": "5986:116:14", + "nodes": [], "body": { "id": 17997, "nodeType": "Block", "src": "6025:77:14", + "nodes": [], "statements": [ { "expression": { @@ -7640,6 +7891,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6055:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6051:23:14", @@ -7654,6 +7906,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6051:43:14", @@ -7688,6 +7941,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6035:60:14", @@ -7757,10 +8011,12 @@ "id": 18012, "nodeType": "FunctionDefinition", "src": "6108:114:14", + "nodes": [], "body": { "id": 18011, "nodeType": "Block", "src": "6146:76:14", + "nodes": [], "statements": [ { "expression": { @@ -7824,6 +8080,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6176:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6172:23:14", @@ -7838,6 +8095,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6172:42:14", @@ -7872,6 +8130,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6156:59:14", @@ -7941,10 +8200,12 @@ "id": 18026, "nodeType": "FunctionDefinition", "src": "6228:121:14", + "nodes": [], "body": { "id": 18025, "nodeType": "Block", "src": "6273:76:14", + "nodes": [], "statements": [ { "expression": { @@ -8008,6 +8269,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6303:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6299:23:14", @@ -8022,6 +8284,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6299:42:14", @@ -8056,6 +8319,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6283:59:14", @@ -8125,10 +8389,12 @@ "id": 18040, "nodeType": "FunctionDefinition", "src": "6355:110:14", + "nodes": [], "body": { "id": 18039, "nodeType": "Block", "src": "6391:74:14", + "nodes": [], "statements": [ { "expression": { @@ -8192,6 +8458,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6421:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6417:23:14", @@ -8206,6 +8473,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6417:40:14", @@ -8240,6 +8508,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6401:57:14", @@ -8309,10 +8578,12 @@ "id": 18054, "nodeType": "FunctionDefinition", "src": "6471:116:14", + "nodes": [], "body": { "id": 18053, "nodeType": "Block", "src": "6510:77:14", + "nodes": [], "statements": [ { "expression": { @@ -8376,6 +8647,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6540:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6536:23:14", @@ -8390,6 +8662,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6536:43:14", @@ -8424,6 +8697,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6520:60:14", @@ -8494,10 +8768,12 @@ "id": 18071, "nodeType": "FunctionDefinition", "src": "6593:140:14", + "nodes": [], "body": { "id": 18070, "nodeType": "Block", "src": "6644:89:14", + "nodes": [], "statements": [ { "expression": { @@ -8577,6 +8853,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6674:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6670:23:14", @@ -8591,6 +8868,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6670:55:14", @@ -8625,6 +8903,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6654:72:14", @@ -8721,10 +9000,12 @@ "id": 18088, "nodeType": "FunctionDefinition", "src": "6739:145:14", + "nodes": [], "body": { "id": 18087, "nodeType": "Block", "src": "6796:88:14", + "nodes": [], "statements": [ { "expression": { @@ -8804,6 +9085,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6826:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6822:23:14", @@ -8818,6 +9100,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6822:54:14", @@ -8852,6 +9135,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6806:71:14", @@ -8948,10 +9232,12 @@ "id": 18105, "nodeType": "FunctionDefinition", "src": "6890:134:14", + "nodes": [], "body": { "id": 18104, "nodeType": "Block", "src": "6938:86:14", + "nodes": [], "statements": [ { "expression": { @@ -9031,6 +9317,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "6968:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "6964:23:14", @@ -9045,6 +9332,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6964:52:14", @@ -9079,6 +9367,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6948:69:14", @@ -9175,10 +9464,12 @@ "id": 18122, "nodeType": "FunctionDefinition", "src": "7030:140:14", + "nodes": [], "body": { "id": 18121, "nodeType": "Block", "src": "7081:89:14", + "nodes": [], "statements": [ { "expression": { @@ -9258,6 +9549,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7111:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7107:23:14", @@ -9272,6 +9564,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7107:55:14", @@ -9306,6 +9599,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7091:72:14", @@ -9403,10 +9697,12 @@ "id": 18139, "nodeType": "FunctionDefinition", "src": "7176:145:14", + "nodes": [], "body": { "id": 18138, "nodeType": "Block", "src": "7233:88:14", + "nodes": [], "statements": [ { "expression": { @@ -9486,6 +9782,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7263:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7259:23:14", @@ -9500,6 +9797,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7259:54:14", @@ -9534,6 +9832,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7243:71:14", @@ -9630,10 +9929,12 @@ "id": 18156, "nodeType": "FunctionDefinition", "src": "7327:143:14", + "nodes": [], "body": { "id": 18155, "nodeType": "Block", "src": "7383:87:14", + "nodes": [], "statements": [ { "expression": { @@ -9713,6 +10014,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7413:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7409:23:14", @@ -9727,6 +10029,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7409:53:14", @@ -9761,6 +10064,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7393:70:14", @@ -9857,10 +10161,12 @@ "id": 18173, "nodeType": "FunctionDefinition", "src": "7476:150:14", + "nodes": [], "body": { "id": 18172, "nodeType": "Block", "src": "7539:87:14", + "nodes": [], "statements": [ { "expression": { @@ -9940,6 +10246,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7569:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7565:23:14", @@ -9954,6 +10261,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7565:53:14", @@ -9988,6 +10296,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7549:70:14", @@ -10084,10 +10393,12 @@ "id": 18190, "nodeType": "FunctionDefinition", "src": "7632:139:14", + "nodes": [], "body": { "id": 18189, "nodeType": "Block", "src": "7686:85:14", + "nodes": [], "statements": [ { "expression": { @@ -10167,6 +10478,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7716:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7712:23:14", @@ -10181,6 +10493,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7712:51:14", @@ -10215,6 +10528,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7696:68:14", @@ -10311,10 +10625,12 @@ "id": 18207, "nodeType": "FunctionDefinition", "src": "7777:145:14", + "nodes": [], "body": { "id": 18206, "nodeType": "Block", "src": "7834:88:14", + "nodes": [], "statements": [ { "expression": { @@ -10394,6 +10710,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "7864:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "7860:23:14", @@ -10408,6 +10725,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7860:54:14", @@ -10442,6 +10760,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7844:71:14", @@ -10539,10 +10858,12 @@ "id": 18224, "nodeType": "FunctionDefinition", "src": "7928:134:14", + "nodes": [], "body": { "id": 18223, "nodeType": "Block", "src": "7976:86:14", + "nodes": [], "statements": [ { "expression": { @@ -10622,6 +10943,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8006:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8002:23:14", @@ -10636,6 +10958,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8002:52:14", @@ -10670,6 +10993,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7986:69:14", @@ -10766,10 +11090,12 @@ "id": 18241, "nodeType": "FunctionDefinition", "src": "8068:139:14", + "nodes": [], "body": { "id": 18240, "nodeType": "Block", "src": "8122:85:14", + "nodes": [], "statements": [ { "expression": { @@ -10849,6 +11175,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8152:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8148:23:14", @@ -10863,6 +11190,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8148:51:14", @@ -10897,6 +11225,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8132:68:14", @@ -10993,10 +11322,12 @@ "id": 18258, "nodeType": "FunctionDefinition", "src": "8213:128:14", + "nodes": [], "body": { "id": 18257, "nodeType": "Block", "src": "8258:83:14", + "nodes": [], "statements": [ { "expression": { @@ -11076,6 +11407,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8288:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8284:23:14", @@ -11090,6 +11422,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8284:49:14", @@ -11124,6 +11457,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8268:66:14", @@ -11220,10 +11554,12 @@ "id": 18275, "nodeType": "FunctionDefinition", "src": "8347:134:14", + "nodes": [], "body": { "id": 18274, "nodeType": "Block", "src": "8395:86:14", + "nodes": [], "statements": [ { "expression": { @@ -11303,6 +11639,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8425:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8421:23:14", @@ -11317,6 +11654,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8421:52:14", @@ -11351,6 +11689,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8405:69:14", @@ -11448,10 +11787,12 @@ "id": 18292, "nodeType": "FunctionDefinition", "src": "8487:140:14", + "nodes": [], "body": { "id": 18291, "nodeType": "Block", "src": "8538:89:14", + "nodes": [], "statements": [ { "expression": { @@ -11531,6 +11872,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8568:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8564:23:14", @@ -11545,6 +11887,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8564:55:14", @@ -11579,6 +11922,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8548:72:14", @@ -11676,10 +12020,12 @@ "id": 18309, "nodeType": "FunctionDefinition", "src": "8633:145:14", + "nodes": [], "body": { "id": 18308, "nodeType": "Block", "src": "8690:88:14", + "nodes": [], "statements": [ { "expression": { @@ -11759,6 +12105,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8720:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8716:23:14", @@ -11773,6 +12120,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8716:54:14", @@ -11807,6 +12155,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8700:71:14", @@ -11904,10 +12253,12 @@ "id": 18326, "nodeType": "FunctionDefinition", "src": "8784:134:14", + "nodes": [], "body": { "id": 18325, "nodeType": "Block", "src": "8832:86:14", + "nodes": [], "statements": [ { "expression": { @@ -11987,6 +12338,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "8862:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "8858:23:14", @@ -12001,6 +12353,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8858:52:14", @@ -12035,6 +12388,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8842:69:14", @@ -12132,10 +12486,12 @@ "id": 18343, "nodeType": "FunctionDefinition", "src": "8924:140:14", + "nodes": [], "body": { "id": 18342, "nodeType": "Block", "src": "8975:89:14", + "nodes": [], "statements": [ { "expression": { @@ -12215,6 +12571,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9005:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9001:23:14", @@ -12229,6 +12586,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9001:55:14", @@ -12263,6 +12621,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8985:72:14", @@ -12361,10 +12720,12 @@ "id": 18363, "nodeType": "FunctionDefinition", "src": "9070:164:14", + "nodes": [], "body": { "id": 18362, "nodeType": "Block", "src": "9133:101:14", + "nodes": [], "statements": [ { "expression": { @@ -12460,6 +12821,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9163:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9159:23:14", @@ -12474,6 +12836,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9159:67:14", @@ -12508,6 +12871,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9143:84:14", @@ -12631,10 +12995,12 @@ "id": 18383, "nodeType": "FunctionDefinition", "src": "9240:169:14", + "nodes": [], "body": { "id": 18382, "nodeType": "Block", "src": "9309:100:14", + "nodes": [], "statements": [ { "expression": { @@ -12730,6 +13096,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9339:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9335:23:14", @@ -12744,6 +13111,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9335:66:14", @@ -12778,6 +13146,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9319:83:14", @@ -12901,10 +13270,12 @@ "id": 18403, "nodeType": "FunctionDefinition", "src": "9415:158:14", + "nodes": [], "body": { "id": 18402, "nodeType": "Block", "src": "9475:98:14", + "nodes": [], "statements": [ { "expression": { @@ -13000,6 +13371,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9505:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9501:23:14", @@ -13014,6 +13386,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9501:64:14", @@ -13048,6 +13421,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9485:81:14", @@ -13171,10 +13545,12 @@ "id": 18423, "nodeType": "FunctionDefinition", "src": "9579:164:14", + "nodes": [], "body": { "id": 18422, "nodeType": "Block", "src": "9642:101:14", + "nodes": [], "statements": [ { "expression": { @@ -13270,6 +13646,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9672:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9668:23:14", @@ -13284,6 +13661,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9668:67:14", @@ -13318,6 +13696,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9652:84:14", @@ -13442,10 +13821,12 @@ "id": 18443, "nodeType": "FunctionDefinition", "src": "9749:169:14", + "nodes": [], "body": { "id": 18442, "nodeType": "Block", "src": "9818:100:14", + "nodes": [], "statements": [ { "expression": { @@ -13541,6 +13922,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "9848:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "9844:23:14", @@ -13555,6 +13937,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9844:66:14", @@ -13589,6 +13972,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9828:83:14", @@ -13712,10 +14096,12 @@ "id": 18463, "nodeType": "FunctionDefinition", "src": "9924:174:14", + "nodes": [], "body": { "id": 18462, "nodeType": "Block", "src": "9999:99:14", + "nodes": [], "statements": [ { "expression": { @@ -13811,6 +14197,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10029:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10025:23:14", @@ -13825,6 +14212,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10025:65:14", @@ -13859,6 +14247,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10009:82:14", @@ -13982,10 +14371,12 @@ "id": 18483, "nodeType": "FunctionDefinition", "src": "10104:163:14", + "nodes": [], "body": { "id": 18482, "nodeType": "Block", "src": "10170:97:14", + "nodes": [], "statements": [ { "expression": { @@ -14081,6 +14472,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10200:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10196:23:14", @@ -14095,6 +14487,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10196:63:14", @@ -14129,6 +14522,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10180:80:14", @@ -14252,10 +14646,12 @@ "id": 18503, "nodeType": "FunctionDefinition", "src": "10273:169:14", + "nodes": [], "body": { "id": 18502, "nodeType": "Block", "src": "10342:100:14", + "nodes": [], "statements": [ { "expression": { @@ -14351,6 +14747,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10372:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10368:23:14", @@ -14365,6 +14762,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10368:66:14", @@ -14399,6 +14797,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10352:83:14", @@ -14523,10 +14922,12 @@ "id": 18523, "nodeType": "FunctionDefinition", "src": "10448:158:14", + "nodes": [], "body": { "id": 18522, "nodeType": "Block", "src": "10508:98:14", + "nodes": [], "statements": [ { "expression": { @@ -14622,6 +15023,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10538:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10534:23:14", @@ -14636,6 +15038,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10534:64:14", @@ -14670,6 +15073,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10518:81:14", @@ -14793,10 +15197,12 @@ "id": 18543, "nodeType": "FunctionDefinition", "src": "10612:163:14", + "nodes": [], "body": { "id": 18542, "nodeType": "Block", "src": "10678:97:14", + "nodes": [], "statements": [ { "expression": { @@ -14892,6 +15298,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10708:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10704:23:14", @@ -14906,6 +15313,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10704:63:14", @@ -14940,6 +15348,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10688:80:14", @@ -15063,10 +15472,12 @@ "id": 18563, "nodeType": "FunctionDefinition", "src": "10781:152:14", + "nodes": [], "body": { "id": 18562, "nodeType": "Block", "src": "10838:95:14", + "nodes": [], "statements": [ { "expression": { @@ -15162,6 +15573,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "10868:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "10864:23:14", @@ -15176,6 +15588,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10864:61:14", @@ -15210,6 +15623,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10848:78:14", @@ -15333,10 +15747,12 @@ "id": 18583, "nodeType": "FunctionDefinition", "src": "10939:158:14", + "nodes": [], "body": { "id": 18582, "nodeType": "Block", "src": "10999:98:14", + "nodes": [], "statements": [ { "expression": { @@ -15432,6 +15848,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11029:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11025:23:14", @@ -15446,6 +15863,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11025:64:14", @@ -15480,6 +15898,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11009:81:14", @@ -15604,10 +16023,12 @@ "id": 18603, "nodeType": "FunctionDefinition", "src": "11103:164:14", + "nodes": [], "body": { "id": 18602, "nodeType": "Block", "src": "11166:101:14", + "nodes": [], "statements": [ { "expression": { @@ -15703,6 +16124,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11196:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11192:23:14", @@ -15717,6 +16139,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11192:67:14", @@ -15751,6 +16174,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11176:84:14", @@ -15875,10 +16299,12 @@ "id": 18623, "nodeType": "FunctionDefinition", "src": "11273:169:14", + "nodes": [], "body": { "id": 18622, "nodeType": "Block", "src": "11342:100:14", + "nodes": [], "statements": [ { "expression": { @@ -15974,6 +16400,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11372:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11368:23:14", @@ -15988,6 +16415,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11368:66:14", @@ -16022,6 +16450,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11352:83:14", @@ -16146,10 +16575,12 @@ "id": 18643, "nodeType": "FunctionDefinition", "src": "11448:158:14", + "nodes": [], "body": { "id": 18642, "nodeType": "Block", "src": "11508:98:14", + "nodes": [], "statements": [ { "expression": { @@ -16245,6 +16676,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11538:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11534:23:14", @@ -16259,6 +16691,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11534:64:14", @@ -16293,6 +16726,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11518:81:14", @@ -16417,10 +16851,12 @@ "id": 18663, "nodeType": "FunctionDefinition", "src": "11612:164:14", + "nodes": [], "body": { "id": 18662, "nodeType": "Block", "src": "11675:101:14", + "nodes": [], "statements": [ { "expression": { @@ -16516,6 +16952,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11705:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11701:23:14", @@ -16530,6 +16967,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11701:67:14", @@ -16564,6 +17002,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11685:84:14", @@ -16689,10 +17128,12 @@ "id": 18683, "nodeType": "FunctionDefinition", "src": "11782:169:14", + "nodes": [], "body": { "id": 18682, "nodeType": "Block", "src": "11851:100:14", + "nodes": [], "statements": [ { "expression": { @@ -16788,6 +17229,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "11881:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "11877:23:14", @@ -16802,6 +17244,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11877:66:14", @@ -16836,6 +17279,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11861:83:14", @@ -16959,10 +17403,12 @@ "id": 18703, "nodeType": "FunctionDefinition", "src": "11957:174:14", + "nodes": [], "body": { "id": 18702, "nodeType": "Block", "src": "12032:99:14", + "nodes": [], "statements": [ { "expression": { @@ -17058,6 +17504,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12062:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12058:23:14", @@ -17072,6 +17519,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12058:65:14", @@ -17106,6 +17554,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12042:82:14", @@ -17229,10 +17678,12 @@ "id": 18723, "nodeType": "FunctionDefinition", "src": "12137:163:14", + "nodes": [], "body": { "id": 18722, "nodeType": "Block", "src": "12203:97:14", + "nodes": [], "statements": [ { "expression": { @@ -17328,6 +17779,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12233:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12229:23:14", @@ -17342,6 +17794,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12229:63:14", @@ -17376,6 +17829,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12213:80:14", @@ -17499,10 +17953,12 @@ "id": 18743, "nodeType": "FunctionDefinition", "src": "12306:169:14", + "nodes": [], "body": { "id": 18742, "nodeType": "Block", "src": "12375:100:14", + "nodes": [], "statements": [ { "expression": { @@ -17598,6 +18054,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12405:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12401:23:14", @@ -17612,6 +18069,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12401:66:14", @@ -17646,6 +18104,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12385:83:14", @@ -17770,10 +18229,12 @@ "id": 18763, "nodeType": "FunctionDefinition", "src": "12481:174:14", + "nodes": [], "body": { "id": 18762, "nodeType": "Block", "src": "12556:99:14", + "nodes": [], "statements": [ { "expression": { @@ -17869,6 +18330,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12586:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12582:23:14", @@ -17883,6 +18345,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12582:65:14", @@ -17917,6 +18380,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12566:82:14", @@ -18040,10 +18504,12 @@ "id": 18783, "nodeType": "FunctionDefinition", "src": "12661:179:14", + "nodes": [], "body": { "id": 18782, "nodeType": "Block", "src": "12742:98:14", + "nodes": [], "statements": [ { "expression": { @@ -18139,6 +18605,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12772:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12768:23:14", @@ -18153,6 +18620,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12768:64:14", @@ -18187,6 +18655,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12752:81:14", @@ -18310,10 +18779,12 @@ "id": 18803, "nodeType": "FunctionDefinition", "src": "12846:168:14", + "nodes": [], "body": { "id": 18802, "nodeType": "Block", "src": "12918:96:14", + "nodes": [], "statements": [ { "expression": { @@ -18409,6 +18880,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "12948:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "12944:23:14", @@ -18423,6 +18895,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12944:62:14", @@ -18457,6 +18930,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12928:79:14", @@ -18580,10 +19054,12 @@ "id": 18823, "nodeType": "FunctionDefinition", "src": "13020:174:14", + "nodes": [], "body": { "id": 18822, "nodeType": "Block", "src": "13095:99:14", + "nodes": [], "statements": [ { "expression": { @@ -18679,6 +19155,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13125:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13121:23:14", @@ -18693,6 +19170,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13121:65:14", @@ -18727,6 +19205,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13105:82:14", @@ -18851,10 +19330,12 @@ "id": 18843, "nodeType": "FunctionDefinition", "src": "13200:163:14", + "nodes": [], "body": { "id": 18842, "nodeType": "Block", "src": "13266:97:14", + "nodes": [], "statements": [ { "expression": { @@ -18950,6 +19431,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13296:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13292:23:14", @@ -18964,6 +19446,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13292:63:14", @@ -18998,6 +19481,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13276:80:14", @@ -19121,10 +19605,12 @@ "id": 18863, "nodeType": "FunctionDefinition", "src": "13369:168:14", + "nodes": [], "body": { "id": 18862, "nodeType": "Block", "src": "13441:96:14", + "nodes": [], "statements": [ { "expression": { @@ -19220,6 +19706,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13471:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13467:23:14", @@ -19234,6 +19721,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13467:62:14", @@ -19268,6 +19756,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13451:79:14", @@ -19391,10 +19880,12 @@ "id": 18883, "nodeType": "FunctionDefinition", "src": "13543:157:14", + "nodes": [], "body": { "id": 18882, "nodeType": "Block", "src": "13606:94:14", + "nodes": [], "statements": [ { "expression": { @@ -19490,6 +19981,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13636:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13632:23:14", @@ -19504,6 +19996,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13632:60:14", @@ -19538,6 +20031,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13616:77:14", @@ -19661,10 +20155,12 @@ "id": 18903, "nodeType": "FunctionDefinition", "src": "13706:163:14", + "nodes": [], "body": { "id": 18902, "nodeType": "Block", "src": "13772:97:14", + "nodes": [], "statements": [ { "expression": { @@ -19760,6 +20256,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13802:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13798:23:14", @@ -19774,6 +20271,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13798:63:14", @@ -19808,6 +20306,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13782:80:14", @@ -19932,10 +20431,12 @@ "id": 18923, "nodeType": "FunctionDefinition", "src": "13875:169:14", + "nodes": [], "body": { "id": 18922, "nodeType": "Block", "src": "13944:100:14", + "nodes": [], "statements": [ { "expression": { @@ -20031,6 +20532,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "13974:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "13970:23:14", @@ -20045,6 +20547,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13970:66:14", @@ -20079,6 +20582,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13954:83:14", @@ -20203,10 +20707,12 @@ "id": 18943, "nodeType": "FunctionDefinition", "src": "14050:174:14", + "nodes": [], "body": { "id": 18942, "nodeType": "Block", "src": "14125:99:14", + "nodes": [], "statements": [ { "expression": { @@ -20302,6 +20808,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14155:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14151:23:14", @@ -20316,6 +20823,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14151:65:14", @@ -20350,6 +20858,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14135:82:14", @@ -20474,10 +20983,12 @@ "id": 18963, "nodeType": "FunctionDefinition", "src": "14230:163:14", + "nodes": [], "body": { "id": 18962, "nodeType": "Block", "src": "14296:97:14", + "nodes": [], "statements": [ { "expression": { @@ -20573,6 +21084,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14326:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14322:23:14", @@ -20587,6 +21099,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14322:63:14", @@ -20621,6 +21134,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14306:80:14", @@ -20745,10 +21259,12 @@ "id": 18983, "nodeType": "FunctionDefinition", "src": "14399:169:14", + "nodes": [], "body": { "id": 18982, "nodeType": "Block", "src": "14468:100:14", + "nodes": [], "statements": [ { "expression": { @@ -20844,6 +21360,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14498:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14494:23:14", @@ -20858,6 +21375,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14494:66:14", @@ -20892,6 +21410,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14478:83:14", @@ -21017,10 +21536,12 @@ "id": 19003, "nodeType": "FunctionDefinition", "src": "14574:158:14", + "nodes": [], "body": { "id": 19002, "nodeType": "Block", "src": "14634:98:14", + "nodes": [], "statements": [ { "expression": { @@ -21116,6 +21637,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14664:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14660:23:14", @@ -21130,6 +21652,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14660:64:14", @@ -21164,6 +21687,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14644:81:14", @@ -21287,10 +21811,12 @@ "id": 19023, "nodeType": "FunctionDefinition", "src": "14738:163:14", + "nodes": [], "body": { "id": 19022, "nodeType": "Block", "src": "14804:97:14", + "nodes": [], "statements": [ { "expression": { @@ -21386,6 +21912,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14834:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14830:23:14", @@ -21400,6 +21927,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14830:63:14", @@ -21434,6 +21962,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14814:80:14", @@ -21557,10 +22086,12 @@ "id": 19043, "nodeType": "FunctionDefinition", "src": "14907:152:14", + "nodes": [], "body": { "id": 19042, "nodeType": "Block", "src": "14964:95:14", + "nodes": [], "statements": [ { "expression": { @@ -21656,6 +22187,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14994:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "14990:23:14", @@ -21670,6 +22202,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14990:61:14", @@ -21704,6 +22237,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14974:78:14", @@ -21827,10 +22361,12 @@ "id": 19063, "nodeType": "FunctionDefinition", "src": "15065:158:14", + "nodes": [], "body": { "id": 19062, "nodeType": "Block", "src": "15125:98:14", + "nodes": [], "statements": [ { "expression": { @@ -21926,6 +22462,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15155:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15151:23:14", @@ -21940,6 +22477,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15151:64:14", @@ -21974,6 +22512,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15135:81:14", @@ -22098,10 +22637,12 @@ "id": 19083, "nodeType": "FunctionDefinition", "src": "15229:163:14", + "nodes": [], "body": { "id": 19082, "nodeType": "Block", "src": "15295:97:14", + "nodes": [], "statements": [ { "expression": { @@ -22197,6 +22738,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15325:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15321:23:14", @@ -22211,6 +22753,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15321:63:14", @@ -22245,6 +22788,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15305:80:14", @@ -22368,10 +22912,12 @@ "id": 19103, "nodeType": "FunctionDefinition", "src": "15398:168:14", + "nodes": [], "body": { "id": 19102, "nodeType": "Block", "src": "15470:96:14", + "nodes": [], "statements": [ { "expression": { @@ -22467,6 +23013,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15500:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15496:23:14", @@ -22481,6 +23028,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15496:62:14", @@ -22515,6 +23063,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15480:79:14", @@ -22638,10 +23187,12 @@ "id": 19123, "nodeType": "FunctionDefinition", "src": "15572:157:14", + "nodes": [], "body": { "id": 19122, "nodeType": "Block", "src": "15635:94:14", + "nodes": [], "statements": [ { "expression": { @@ -22737,6 +23288,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15665:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15661:23:14", @@ -22751,6 +23303,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15661:60:14", @@ -22785,6 +23338,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15645:77:14", @@ -22908,10 +23462,12 @@ "id": 19143, "nodeType": "FunctionDefinition", "src": "15735:163:14", + "nodes": [], "body": { "id": 19142, "nodeType": "Block", "src": "15801:97:14", + "nodes": [], "statements": [ { "expression": { @@ -23007,6 +23563,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15831:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15827:23:14", @@ -23021,6 +23578,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15827:63:14", @@ -23055,6 +23613,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15811:80:14", @@ -23179,10 +23738,12 @@ "id": 19163, "nodeType": "FunctionDefinition", "src": "15904:152:14", + "nodes": [], "body": { "id": 19162, "nodeType": "Block", "src": "15961:95:14", + "nodes": [], "statements": [ { "expression": { @@ -23278,6 +23839,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15991:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "15987:23:14", @@ -23292,6 +23854,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15987:61:14", @@ -23326,6 +23889,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15971:78:14", @@ -23449,10 +24013,12 @@ "id": 19183, "nodeType": "FunctionDefinition", "src": "16062:157:14", + "nodes": [], "body": { "id": 19182, "nodeType": "Block", "src": "16125:94:14", + "nodes": [], "statements": [ { "expression": { @@ -23548,6 +24114,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16155:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16151:23:14", @@ -23562,6 +24129,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16151:60:14", @@ -23596,6 +24164,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16135:77:14", @@ -23719,10 +24288,12 @@ "id": 19203, "nodeType": "FunctionDefinition", "src": "16225:146:14", + "nodes": [], "body": { "id": 19202, "nodeType": "Block", "src": "16279:92:14", + "nodes": [], "statements": [ { "expression": { @@ -23818,6 +24389,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16309:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16305:23:14", @@ -23832,6 +24404,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16305:58:14", @@ -23866,6 +24439,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16289:75:14", @@ -23989,10 +24563,12 @@ "id": 19223, "nodeType": "FunctionDefinition", "src": "16377:152:14", + "nodes": [], "body": { "id": 19222, "nodeType": "Block", "src": "16434:95:14", + "nodes": [], "statements": [ { "expression": { @@ -24088,6 +24664,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16464:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16460:23:14", @@ -24102,6 +24679,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16460:61:14", @@ -24136,6 +24714,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16444:78:14", @@ -24260,10 +24839,12 @@ "id": 19243, "nodeType": "FunctionDefinition", "src": "16535:158:14", + "nodes": [], "body": { "id": 19242, "nodeType": "Block", "src": "16595:98:14", + "nodes": [], "statements": [ { "expression": { @@ -24359,6 +24940,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16625:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16621:23:14", @@ -24373,6 +24955,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16621:64:14", @@ -24407,6 +24990,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16605:81:14", @@ -24531,10 +25115,12 @@ "id": 19263, "nodeType": "FunctionDefinition", "src": "16699:163:14", + "nodes": [], "body": { "id": 19262, "nodeType": "Block", "src": "16765:97:14", + "nodes": [], "statements": [ { "expression": { @@ -24630,6 +25216,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16795:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16791:23:14", @@ -24644,6 +25231,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16791:63:14", @@ -24678,6 +25266,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16775:80:14", @@ -24802,10 +25391,12 @@ "id": 19283, "nodeType": "FunctionDefinition", "src": "16868:152:14", + "nodes": [], "body": { "id": 19282, "nodeType": "Block", "src": "16925:95:14", + "nodes": [], "statements": [ { "expression": { @@ -24901,6 +25492,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "16955:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "16951:23:14", @@ -24915,6 +25507,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16951:61:14", @@ -24949,6 +25542,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16935:78:14", @@ -25073,10 +25667,12 @@ "id": 19303, "nodeType": "FunctionDefinition", "src": "17026:158:14", + "nodes": [], "body": { "id": 19302, "nodeType": "Block", "src": "17086:98:14", + "nodes": [], "statements": [ { "expression": { @@ -25172,6 +25768,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17116:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17112:23:14", @@ -25186,6 +25783,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17112:64:14", @@ -25220,6 +25818,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17096:81:14", @@ -25345,10 +25944,12 @@ "id": 19323, "nodeType": "FunctionDefinition", "src": "17190:164:14", + "nodes": [], "body": { "id": 19322, "nodeType": "Block", "src": "17253:101:14", + "nodes": [], "statements": [ { "expression": { @@ -25444,6 +26045,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17283:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17279:23:14", @@ -25458,6 +26060,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17279:67:14", @@ -25492,6 +26095,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17263:84:14", @@ -25616,10 +26220,12 @@ "id": 19343, "nodeType": "FunctionDefinition", "src": "17360:169:14", + "nodes": [], "body": { "id": 19342, "nodeType": "Block", "src": "17429:100:14", + "nodes": [], "statements": [ { "expression": { @@ -25715,6 +26321,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17459:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17455:23:14", @@ -25729,6 +26336,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17455:66:14", @@ -25763,6 +26371,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17439:83:14", @@ -25887,10 +26496,12 @@ "id": 19363, "nodeType": "FunctionDefinition", "src": "17535:158:14", + "nodes": [], "body": { "id": 19362, "nodeType": "Block", "src": "17595:98:14", + "nodes": [], "statements": [ { "expression": { @@ -25986,6 +26597,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17625:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17621:23:14", @@ -26000,6 +26612,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17621:64:14", @@ -26034,6 +26647,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17605:81:14", @@ -26158,10 +26772,12 @@ "id": 19383, "nodeType": "FunctionDefinition", "src": "17699:164:14", + "nodes": [], "body": { "id": 19382, "nodeType": "Block", "src": "17762:101:14", + "nodes": [], "statements": [ { "expression": { @@ -26257,6 +26873,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17792:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17788:23:14", @@ -26271,6 +26888,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17788:67:14", @@ -26305,6 +26923,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17772:84:14", @@ -26430,10 +27049,12 @@ "id": 19403, "nodeType": "FunctionDefinition", "src": "17869:169:14", + "nodes": [], "body": { "id": 19402, "nodeType": "Block", "src": "17938:100:14", + "nodes": [], "statements": [ { "expression": { @@ -26529,6 +27150,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "17968:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "17964:23:14", @@ -26543,6 +27165,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17964:66:14", @@ -26577,6 +27200,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "17948:83:14", @@ -26701,10 +27325,12 @@ "id": 19423, "nodeType": "FunctionDefinition", "src": "18044:174:14", + "nodes": [], "body": { "id": 19422, "nodeType": "Block", "src": "18119:99:14", + "nodes": [], "statements": [ { "expression": { @@ -26800,6 +27426,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18149:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18145:23:14", @@ -26814,6 +27441,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18145:65:14", @@ -26848,6 +27476,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18129:82:14", @@ -26972,10 +27601,12 @@ "id": 19443, "nodeType": "FunctionDefinition", "src": "18224:163:14", + "nodes": [], "body": { "id": 19442, "nodeType": "Block", "src": "18290:97:14", + "nodes": [], "statements": [ { "expression": { @@ -27071,6 +27702,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18320:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18316:23:14", @@ -27085,6 +27717,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18316:63:14", @@ -27119,6 +27752,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18300:80:14", @@ -27243,10 +27877,12 @@ "id": 19463, "nodeType": "FunctionDefinition", "src": "18393:169:14", + "nodes": [], "body": { "id": 19462, "nodeType": "Block", "src": "18462:100:14", + "nodes": [], "statements": [ { "expression": { @@ -27342,6 +27978,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18492:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18488:23:14", @@ -27356,6 +27993,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18488:66:14", @@ -27390,6 +28028,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18472:83:14", @@ -27515,10 +28154,12 @@ "id": 19483, "nodeType": "FunctionDefinition", "src": "18568:158:14", + "nodes": [], "body": { "id": 19482, "nodeType": "Block", "src": "18628:98:14", + "nodes": [], "statements": [ { "expression": { @@ -27614,6 +28255,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18658:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18654:23:14", @@ -27628,6 +28270,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18654:64:14", @@ -27662,6 +28305,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18638:81:14", @@ -27786,10 +28430,12 @@ "id": 19503, "nodeType": "FunctionDefinition", "src": "18732:163:14", + "nodes": [], "body": { "id": 19502, "nodeType": "Block", "src": "18798:97:14", + "nodes": [], "statements": [ { "expression": { @@ -27885,6 +28531,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18828:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18824:23:14", @@ -27899,6 +28546,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18824:63:14", @@ -27933,6 +28581,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18808:80:14", @@ -28057,10 +28706,12 @@ "id": 19523, "nodeType": "FunctionDefinition", "src": "18901:152:14", + "nodes": [], "body": { "id": 19522, "nodeType": "Block", "src": "18958:95:14", + "nodes": [], "statements": [ { "expression": { @@ -28156,6 +28807,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "18988:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "18984:23:14", @@ -28170,6 +28822,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18984:61:14", @@ -28204,6 +28857,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "18968:78:14", @@ -28328,10 +28982,12 @@ "id": 19543, "nodeType": "FunctionDefinition", "src": "19059:158:14", + "nodes": [], "body": { "id": 19542, "nodeType": "Block", "src": "19119:98:14", + "nodes": [], "statements": [ { "expression": { @@ -28427,6 +29083,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19149:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19145:23:14", @@ -28441,6 +29098,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19145:64:14", @@ -28475,6 +29133,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19129:81:14", @@ -28600,10 +29259,12 @@ "id": 19563, "nodeType": "FunctionDefinition", "src": "19223:164:14", + "nodes": [], "body": { "id": 19562, "nodeType": "Block", "src": "19286:101:14", + "nodes": [], "statements": [ { "expression": { @@ -28699,6 +29360,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19316:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19312:23:14", @@ -28713,6 +29375,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19312:67:14", @@ -28747,6 +29410,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19296:84:14", @@ -28872,10 +29536,12 @@ "id": 19583, "nodeType": "FunctionDefinition", "src": "19393:169:14", + "nodes": [], "body": { "id": 19582, "nodeType": "Block", "src": "19462:100:14", + "nodes": [], "statements": [ { "expression": { @@ -28971,6 +29637,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19492:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19488:23:14", @@ -28985,6 +29652,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19488:66:14", @@ -29019,6 +29687,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19472:83:14", @@ -29144,10 +29813,12 @@ "id": 19603, "nodeType": "FunctionDefinition", "src": "19568:158:14", + "nodes": [], "body": { "id": 19602, "nodeType": "Block", "src": "19628:98:14", + "nodes": [], "statements": [ { "expression": { @@ -29243,6 +29914,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19658:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19654:23:14", @@ -29257,6 +29929,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19654:64:14", @@ -29291,6 +29964,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19638:81:14", @@ -29416,10 +30090,12 @@ "id": 19623, "nodeType": "FunctionDefinition", "src": "19732:164:14", + "nodes": [], "body": { "id": 19622, "nodeType": "Block", "src": "19795:101:14", + "nodes": [], "statements": [ { "expression": { @@ -29515,6 +30191,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "19825:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "19821:23:14", @@ -29529,6 +30206,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19821:67:14", @@ -29563,6 +30241,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19805:84:14", @@ -29689,10 +30368,12 @@ "id": 19646, "nodeType": "FunctionDefinition", "src": "19902:188:14", + "nodes": [], "body": { "id": 19645, "nodeType": "Block", "src": "19977:113:14", + "nodes": [], "statements": [ { "expression": { @@ -29804,6 +30485,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20007:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20003:23:14", @@ -29818,6 +30500,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20003:79:14", @@ -29852,6 +30535,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "19987:96:14", @@ -30002,10 +30686,12 @@ "id": 19669, "nodeType": "FunctionDefinition", "src": "20096:193:14", + "nodes": [], "body": { "id": 19668, "nodeType": "Block", "src": "20177:112:14", + "nodes": [], "statements": [ { "expression": { @@ -30117,6 +30803,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20207:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20203:23:14", @@ -30131,6 +30818,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20203:78:14", @@ -30165,6 +30853,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20187:95:14", @@ -30315,10 +31004,12 @@ "id": 19692, "nodeType": "FunctionDefinition", "src": "20295:182:14", + "nodes": [], "body": { "id": 19691, "nodeType": "Block", "src": "20367:110:14", + "nodes": [], "statements": [ { "expression": { @@ -30430,6 +31121,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20397:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20393:23:14", @@ -30444,6 +31136,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20393:76:14", @@ -30478,6 +31171,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20377:93:14", @@ -30628,10 +31322,12 @@ "id": 19715, "nodeType": "FunctionDefinition", "src": "20483:188:14", + "nodes": [], "body": { "id": 19714, "nodeType": "Block", "src": "20558:113:14", + "nodes": [], "statements": [ { "expression": { @@ -30743,6 +31439,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20588:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20584:23:14", @@ -30757,6 +31454,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20584:79:14", @@ -30791,6 +31489,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20568:96:14", @@ -30942,10 +31641,12 @@ "id": 19738, "nodeType": "FunctionDefinition", "src": "20677:193:14", + "nodes": [], "body": { "id": 19737, "nodeType": "Block", "src": "20758:112:14", + "nodes": [], "statements": [ { "expression": { @@ -31057,6 +31758,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20788:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20784:23:14", @@ -31071,6 +31773,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20784:78:14", @@ -31105,6 +31808,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20768:95:14", @@ -31255,10 +31959,12 @@ "id": 19761, "nodeType": "FunctionDefinition", "src": "20876:198:14", + "nodes": [], "body": { "id": 19760, "nodeType": "Block", "src": "20963:111:14", + "nodes": [], "statements": [ { "expression": { @@ -31370,6 +32076,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "20993:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "20989:23:14", @@ -31384,6 +32091,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20989:77:14", @@ -31418,6 +32126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "20973:94:14", @@ -31568,10 +32277,12 @@ "id": 19784, "nodeType": "FunctionDefinition", "src": "21080:187:14", + "nodes": [], "body": { "id": 19783, "nodeType": "Block", "src": "21158:109:14", + "nodes": [], "statements": [ { "expression": { @@ -31683,6 +32394,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21188:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21184:23:14", @@ -31697,6 +32409,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21184:75:14", @@ -31731,6 +32444,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21168:92:14", @@ -31881,10 +32595,12 @@ "id": 19807, "nodeType": "FunctionDefinition", "src": "21273:193:14", + "nodes": [], "body": { "id": 19806, "nodeType": "Block", "src": "21354:112:14", + "nodes": [], "statements": [ { "expression": { @@ -31996,6 +32712,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21384:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21380:23:14", @@ -32010,6 +32727,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21380:78:14", @@ -32044,6 +32762,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21364:95:14", @@ -32195,10 +32914,12 @@ "id": 19830, "nodeType": "FunctionDefinition", "src": "21472:182:14", + "nodes": [], "body": { "id": 19829, "nodeType": "Block", "src": "21544:110:14", + "nodes": [], "statements": [ { "expression": { @@ -32310,6 +33031,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21574:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21570:23:14", @@ -32324,6 +33046,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21570:76:14", @@ -32358,6 +33081,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21554:93:14", @@ -32508,10 +33232,12 @@ "id": 19853, "nodeType": "FunctionDefinition", "src": "21660:187:14", + "nodes": [], "body": { "id": 19852, "nodeType": "Block", "src": "21738:109:14", + "nodes": [], "statements": [ { "expression": { @@ -32623,6 +33349,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21768:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21764:23:14", @@ -32637,6 +33364,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21764:75:14", @@ -32671,6 +33399,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21748:92:14", @@ -32821,10 +33550,12 @@ "id": 19876, "nodeType": "FunctionDefinition", "src": "21853:176:14", + "nodes": [], "body": { "id": 19875, "nodeType": "Block", "src": "21922:107:14", + "nodes": [], "statements": [ { "expression": { @@ -32936,6 +33667,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "21952:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "21948:23:14", @@ -32950,6 +33682,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21948:73:14", @@ -32984,6 +33717,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "21932:90:14", @@ -33134,10 +33868,12 @@ "id": 19899, "nodeType": "FunctionDefinition", "src": "22035:182:14", + "nodes": [], "body": { "id": 19898, "nodeType": "Block", "src": "22107:110:14", + "nodes": [], "statements": [ { "expression": { @@ -33249,6 +33985,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22137:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22133:23:14", @@ -33263,6 +34000,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22133:76:14", @@ -33297,6 +34035,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22117:93:14", @@ -33448,10 +34187,12 @@ "id": 19922, "nodeType": "FunctionDefinition", "src": "22223:188:14", + "nodes": [], "body": { "id": 19921, "nodeType": "Block", "src": "22298:113:14", + "nodes": [], "statements": [ { "expression": { @@ -33563,6 +34304,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22328:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22324:23:14", @@ -33577,6 +34319,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22324:79:14", @@ -33611,6 +34354,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22308:96:14", @@ -33762,10 +34506,12 @@ "id": 19945, "nodeType": "FunctionDefinition", "src": "22417:193:14", + "nodes": [], "body": { "id": 19944, "nodeType": "Block", "src": "22498:112:14", + "nodes": [], "statements": [ { "expression": { @@ -33877,6 +34623,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22528:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22524:23:14", @@ -33891,6 +34638,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22524:78:14", @@ -33925,6 +34673,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22508:95:14", @@ -34076,10 +34825,12 @@ "id": 19968, "nodeType": "FunctionDefinition", "src": "22616:182:14", + "nodes": [], "body": { "id": 19967, "nodeType": "Block", "src": "22688:110:14", + "nodes": [], "statements": [ { "expression": { @@ -34191,6 +34942,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22718:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22714:23:14", @@ -34205,6 +34957,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22714:76:14", @@ -34239,6 +34992,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22698:93:14", @@ -34390,10 +35144,12 @@ "id": 19991, "nodeType": "FunctionDefinition", "src": "22804:188:14", + "nodes": [], "body": { "id": 19990, "nodeType": "Block", "src": "22879:113:14", + "nodes": [], "statements": [ { "expression": { @@ -34505,6 +35261,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "22909:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "22905:23:14", @@ -34519,6 +35276,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22905:79:14", @@ -34553,6 +35311,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "22889:96:14", @@ -34705,10 +35464,12 @@ "id": 20014, "nodeType": "FunctionDefinition", "src": "22998:193:14", + "nodes": [], "body": { "id": 20013, "nodeType": "Block", "src": "23079:112:14", + "nodes": [], "statements": [ { "expression": { @@ -34820,6 +35581,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23109:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23105:23:14", @@ -34834,6 +35596,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23105:78:14", @@ -34868,6 +35631,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23089:95:14", @@ -35018,10 +35782,12 @@ "id": 20037, "nodeType": "FunctionDefinition", "src": "23197:198:14", + "nodes": [], "body": { "id": 20036, "nodeType": "Block", "src": "23284:111:14", + "nodes": [], "statements": [ { "expression": { @@ -35133,6 +35899,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23314:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23310:23:14", @@ -35147,6 +35914,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23310:77:14", @@ -35181,6 +35949,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23294:94:14", @@ -35331,10 +36100,12 @@ "id": 20060, "nodeType": "FunctionDefinition", "src": "23401:187:14", + "nodes": [], "body": { "id": 20059, "nodeType": "Block", "src": "23479:109:14", + "nodes": [], "statements": [ { "expression": { @@ -35446,6 +36217,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23509:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23505:23:14", @@ -35460,6 +36232,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23505:75:14", @@ -35494,6 +36267,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23489:92:14", @@ -35644,10 +36418,12 @@ "id": 20083, "nodeType": "FunctionDefinition", "src": "23594:193:14", + "nodes": [], "body": { "id": 20082, "nodeType": "Block", "src": "23675:112:14", + "nodes": [], "statements": [ { "expression": { @@ -35759,6 +36535,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23705:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23701:23:14", @@ -35773,6 +36550,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23701:78:14", @@ -35807,6 +36585,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23685:95:14", @@ -35958,10 +36737,12 @@ "id": 20106, "nodeType": "FunctionDefinition", "src": "23793:198:14", + "nodes": [], "body": { "id": 20105, "nodeType": "Block", "src": "23880:111:14", + "nodes": [], "statements": [ { "expression": { @@ -36073,6 +36854,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "23910:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "23906:23:14", @@ -36087,6 +36869,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23906:77:14", @@ -36121,6 +36904,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "23890:94:14", @@ -36271,10 +37055,12 @@ "id": 20129, "nodeType": "FunctionDefinition", "src": "23997:203:14", + "nodes": [], "body": { "id": 20128, "nodeType": "Block", "src": "24090:110:14", + "nodes": [], "statements": [ { "expression": { @@ -36386,6 +37172,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24120:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24116:23:14", @@ -36400,6 +37187,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24116:76:14", @@ -36434,6 +37222,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24100:93:14", @@ -36584,10 +37373,12 @@ "id": 20152, "nodeType": "FunctionDefinition", "src": "24206:192:14", + "nodes": [], "body": { "id": 20151, "nodeType": "Block", "src": "24290:108:14", + "nodes": [], "statements": [ { "expression": { @@ -36699,6 +37490,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24320:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24316:23:14", @@ -36713,6 +37505,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24316:74:14", @@ -36747,6 +37540,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24300:91:14", @@ -36897,10 +37691,12 @@ "id": 20175, "nodeType": "FunctionDefinition", "src": "24404:198:14", + "nodes": [], "body": { "id": 20174, "nodeType": "Block", "src": "24491:111:14", + "nodes": [], "statements": [ { "expression": { @@ -37012,6 +37808,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24521:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24517:23:14", @@ -37026,6 +37823,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24517:77:14", @@ -37060,6 +37858,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24501:94:14", @@ -37211,10 +38010,12 @@ "id": 20198, "nodeType": "FunctionDefinition", "src": "24608:187:14", + "nodes": [], "body": { "id": 20197, "nodeType": "Block", "src": "24686:109:14", + "nodes": [], "statements": [ { "expression": { @@ -37326,6 +38127,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24716:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24712:23:14", @@ -37340,6 +38142,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24712:75:14", @@ -37374,6 +38177,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24696:92:14", @@ -37524,10 +38328,12 @@ "id": 20221, "nodeType": "FunctionDefinition", "src": "24801:192:14", + "nodes": [], "body": { "id": 20220, "nodeType": "Block", "src": "24885:108:14", + "nodes": [], "statements": [ { "expression": { @@ -37639,6 +38445,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "24915:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "24911:23:14", @@ -37653,6 +38460,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24911:74:14", @@ -37687,6 +38495,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "24895:91:14", @@ -37837,10 +38646,12 @@ "id": 20244, "nodeType": "FunctionDefinition", "src": "24999:181:14", + "nodes": [], "body": { "id": 20243, "nodeType": "Block", "src": "25074:106:14", + "nodes": [], "statements": [ { "expression": { @@ -37952,6 +38763,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25104:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25100:23:14", @@ -37966,6 +38778,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25100:72:14", @@ -38000,6 +38813,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25084:89:14", @@ -38150,10 +38964,12 @@ "id": 20267, "nodeType": "FunctionDefinition", "src": "25186:187:14", + "nodes": [], "body": { "id": 20266, "nodeType": "Block", "src": "25264:109:14", + "nodes": [], "statements": [ { "expression": { @@ -38265,6 +39081,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25294:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25290:23:14", @@ -38279,6 +39096,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25290:75:14", @@ -38313,6 +39131,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25274:92:14", @@ -38464,10 +39283,12 @@ "id": 20290, "nodeType": "FunctionDefinition", "src": "25379:193:14", + "nodes": [], "body": { "id": 20289, "nodeType": "Block", "src": "25460:112:14", + "nodes": [], "statements": [ { "expression": { @@ -38579,6 +39400,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25490:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25486:23:14", @@ -38593,6 +39415,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25486:78:14", @@ -38627,6 +39450,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25470:95:14", @@ -38778,10 +39602,12 @@ "id": 20313, "nodeType": "FunctionDefinition", "src": "25578:198:14", + "nodes": [], "body": { "id": 20312, "nodeType": "Block", "src": "25665:111:14", + "nodes": [], "statements": [ { "expression": { @@ -38893,6 +39719,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25695:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25691:23:14", @@ -38907,6 +39734,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25691:77:14", @@ -38941,6 +39769,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25675:94:14", @@ -39092,10 +39921,12 @@ "id": 20336, "nodeType": "FunctionDefinition", "src": "25782:187:14", + "nodes": [], "body": { "id": 20335, "nodeType": "Block", "src": "25860:109:14", + "nodes": [], "statements": [ { "expression": { @@ -39207,6 +40038,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "25890:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "25886:23:14", @@ -39221,6 +40053,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25886:75:14", @@ -39255,6 +40088,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "25870:92:14", @@ -39406,10 +40240,12 @@ "id": 20359, "nodeType": "FunctionDefinition", "src": "25975:193:14", + "nodes": [], "body": { "id": 20358, "nodeType": "Block", "src": "26056:112:14", + "nodes": [], "statements": [ { "expression": { @@ -39521,6 +40357,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26086:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26082:23:14", @@ -39535,6 +40372,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26082:78:14", @@ -39569,6 +40407,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26066:95:14", @@ -39721,10 +40560,12 @@ "id": 20382, "nodeType": "FunctionDefinition", "src": "26174:182:14", + "nodes": [], "body": { "id": 20381, "nodeType": "Block", "src": "26246:110:14", + "nodes": [], "statements": [ { "expression": { @@ -39836,6 +40677,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26276:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26272:23:14", @@ -39850,6 +40692,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26272:76:14", @@ -39884,6 +40727,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26256:93:14", @@ -40034,10 +40878,12 @@ "id": 20405, "nodeType": "FunctionDefinition", "src": "26362:187:14", + "nodes": [], "body": { "id": 20404, "nodeType": "Block", "src": "26440:109:14", + "nodes": [], "statements": [ { "expression": { @@ -40149,6 +40995,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26470:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26466:23:14", @@ -40163,6 +41010,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26466:75:14", @@ -40197,6 +41045,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26450:92:14", @@ -40347,10 +41196,12 @@ "id": 20428, "nodeType": "FunctionDefinition", "src": "26555:176:14", + "nodes": [], "body": { "id": 20427, "nodeType": "Block", "src": "26624:107:14", + "nodes": [], "statements": [ { "expression": { @@ -40462,6 +41313,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26654:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26650:23:14", @@ -40476,6 +41328,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26650:73:14", @@ -40510,6 +41363,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26634:90:14", @@ -40660,10 +41514,12 @@ "id": 20451, "nodeType": "FunctionDefinition", "src": "26737:182:14", + "nodes": [], "body": { "id": 20450, "nodeType": "Block", "src": "26809:110:14", + "nodes": [], "statements": [ { "expression": { @@ -40775,6 +41631,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "26839:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "26835:23:14", @@ -40789,6 +41646,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26835:76:14", @@ -40823,6 +41681,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "26819:93:14", @@ -40974,10 +41833,12 @@ "id": 20474, "nodeType": "FunctionDefinition", "src": "26925:187:14", + "nodes": [], "body": { "id": 20473, "nodeType": "Block", "src": "27003:109:14", + "nodes": [], "statements": [ { "expression": { @@ -41089,6 +41950,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27033:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27029:23:14", @@ -41103,6 +41965,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27029:75:14", @@ -41137,6 +42000,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27013:92:14", @@ -41287,10 +42151,12 @@ "id": 20497, "nodeType": "FunctionDefinition", "src": "27118:192:14", + "nodes": [], "body": { "id": 20496, "nodeType": "Block", "src": "27202:108:14", + "nodes": [], "statements": [ { "expression": { @@ -41402,6 +42268,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27232:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27228:23:14", @@ -41416,6 +42283,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27228:74:14", @@ -41450,6 +42318,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27212:91:14", @@ -41600,10 +42469,12 @@ "id": 20520, "nodeType": "FunctionDefinition", "src": "27316:181:14", + "nodes": [], "body": { "id": 20519, "nodeType": "Block", "src": "27391:106:14", + "nodes": [], "statements": [ { "expression": { @@ -41715,6 +42586,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27421:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27417:23:14", @@ -41729,6 +42601,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27417:72:14", @@ -41763,6 +42636,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27401:89:14", @@ -41913,10 +42787,12 @@ "id": 20543, "nodeType": "FunctionDefinition", "src": "27503:187:14", + "nodes": [], "body": { "id": 20542, "nodeType": "Block", "src": "27581:109:14", + "nodes": [], "statements": [ { "expression": { @@ -42028,6 +42904,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27611:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27607:23:14", @@ -42042,6 +42919,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27607:75:14", @@ -42076,6 +42954,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27591:92:14", @@ -42227,10 +43106,12 @@ "id": 20566, "nodeType": "FunctionDefinition", "src": "27696:176:14", + "nodes": [], "body": { "id": 20565, "nodeType": "Block", "src": "27765:107:14", + "nodes": [], "statements": [ { "expression": { @@ -42342,6 +43223,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27795:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27791:23:14", @@ -42356,6 +43238,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27791:73:14", @@ -42390,6 +43273,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27775:90:14", @@ -42540,10 +43424,12 @@ "id": 20589, "nodeType": "FunctionDefinition", "src": "27878:181:14", + "nodes": [], "body": { "id": 20588, "nodeType": "Block", "src": "27953:106:14", + "nodes": [], "statements": [ { "expression": { @@ -42655,6 +43541,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "27983:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "27979:23:14", @@ -42669,6 +43556,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27979:72:14", @@ -42703,6 +43591,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "27963:89:14", @@ -42853,10 +43742,12 @@ "id": 20612, "nodeType": "FunctionDefinition", "src": "28065:170:14", + "nodes": [], "body": { "id": 20611, "nodeType": "Block", "src": "28131:104:14", + "nodes": [], "statements": [ { "expression": { @@ -42968,6 +43859,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28161:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28157:23:14", @@ -42982,6 +43874,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28157:70:14", @@ -43016,6 +43909,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28141:87:14", @@ -43166,10 +44060,12 @@ "id": 20635, "nodeType": "FunctionDefinition", "src": "28241:176:14", + "nodes": [], "body": { "id": 20634, "nodeType": "Block", "src": "28310:107:14", + "nodes": [], "statements": [ { "expression": { @@ -43281,6 +44177,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28340:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28336:23:14", @@ -43295,6 +44192,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28336:73:14", @@ -43329,6 +44227,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28320:90:14", @@ -43480,10 +44379,12 @@ "id": 20658, "nodeType": "FunctionDefinition", "src": "28423:182:14", + "nodes": [], "body": { "id": 20657, "nodeType": "Block", "src": "28495:110:14", + "nodes": [], "statements": [ { "expression": { @@ -43595,6 +44496,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28525:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28521:23:14", @@ -43609,6 +44511,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28521:76:14", @@ -43643,6 +44546,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28505:93:14", @@ -43794,10 +44698,12 @@ "id": 20681, "nodeType": "FunctionDefinition", "src": "28611:187:14", + "nodes": [], "body": { "id": 20680, "nodeType": "Block", "src": "28689:109:14", + "nodes": [], "statements": [ { "expression": { @@ -43909,6 +44815,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28719:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28715:23:14", @@ -43923,6 +44830,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28715:75:14", @@ -43957,6 +44865,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28699:92:14", @@ -44108,10 +45017,12 @@ "id": 20704, "nodeType": "FunctionDefinition", "src": "28804:176:14", + "nodes": [], "body": { "id": 20703, "nodeType": "Block", "src": "28873:107:14", + "nodes": [], "statements": [ { "expression": { @@ -44223,6 +45134,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "28903:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "28899:23:14", @@ -44237,6 +45149,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28899:73:14", @@ -44271,6 +45184,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "28883:90:14", @@ -44422,10 +45336,12 @@ "id": 20727, "nodeType": "FunctionDefinition", "src": "28986:182:14", + "nodes": [], "body": { "id": 20726, "nodeType": "Block", "src": "29058:110:14", + "nodes": [], "statements": [ { "expression": { @@ -44537,6 +45453,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29088:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29084:23:14", @@ -44551,6 +45468,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29084:76:14", @@ -44585,6 +45503,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29068:93:14", @@ -44737,10 +45656,12 @@ "id": 20750, "nodeType": "FunctionDefinition", "src": "29174:188:14", + "nodes": [], "body": { "id": 20749, "nodeType": "Block", "src": "29249:113:14", + "nodes": [], "statements": [ { "expression": { @@ -44852,6 +45773,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29279:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29275:23:14", @@ -44866,6 +45788,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29275:79:14", @@ -44900,6 +45823,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29259:96:14", @@ -45051,10 +45975,12 @@ "id": 20773, "nodeType": "FunctionDefinition", "src": "29368:193:14", + "nodes": [], "body": { "id": 20772, "nodeType": "Block", "src": "29449:112:14", + "nodes": [], "statements": [ { "expression": { @@ -45166,6 +46092,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29479:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29475:23:14", @@ -45180,6 +46107,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29475:78:14", @@ -45214,6 +46142,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29459:95:14", @@ -45365,10 +46294,12 @@ "id": 20796, "nodeType": "FunctionDefinition", "src": "29567:182:14", + "nodes": [], "body": { "id": 20795, "nodeType": "Block", "src": "29639:110:14", + "nodes": [], "statements": [ { "expression": { @@ -45480,6 +46411,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29669:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29665:23:14", @@ -45494,6 +46426,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29665:76:14", @@ -45528,6 +46461,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29649:93:14", @@ -45679,10 +46613,12 @@ "id": 20819, "nodeType": "FunctionDefinition", "src": "29755:188:14", + "nodes": [], "body": { "id": 20818, "nodeType": "Block", "src": "29830:113:14", + "nodes": [], "statements": [ { "expression": { @@ -45794,6 +46730,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "29860:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "29856:23:14", @@ -45808,6 +46745,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29856:79:14", @@ -45842,6 +46780,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "29840:96:14", @@ -45994,10 +46933,12 @@ "id": 20842, "nodeType": "FunctionDefinition", "src": "29949:193:14", + "nodes": [], "body": { "id": 20841, "nodeType": "Block", "src": "30030:112:14", + "nodes": [], "statements": [ { "expression": { @@ -46109,6 +47050,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30060:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30056:23:14", @@ -46123,6 +47065,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30056:78:14", @@ -46157,6 +47100,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30040:95:14", @@ -46308,10 +47252,12 @@ "id": 20865, "nodeType": "FunctionDefinition", "src": "30148:198:14", + "nodes": [], "body": { "id": 20864, "nodeType": "Block", "src": "30235:111:14", + "nodes": [], "statements": [ { "expression": { @@ -46423,6 +47369,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30265:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30261:23:14", @@ -46437,6 +47384,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30261:77:14", @@ -46471,6 +47419,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30245:94:14", @@ -46622,10 +47571,12 @@ "id": 20888, "nodeType": "FunctionDefinition", "src": "30352:187:14", + "nodes": [], "body": { "id": 20887, "nodeType": "Block", "src": "30430:109:14", + "nodes": [], "statements": [ { "expression": { @@ -46737,6 +47688,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30460:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30456:23:14", @@ -46751,6 +47703,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30456:75:14", @@ -46785,6 +47738,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30440:92:14", @@ -46936,10 +47890,12 @@ "id": 20911, "nodeType": "FunctionDefinition", "src": "30545:193:14", + "nodes": [], "body": { "id": 20910, "nodeType": "Block", "src": "30626:112:14", + "nodes": [], "statements": [ { "expression": { @@ -47051,6 +48007,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30656:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30652:23:14", @@ -47065,6 +48022,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30652:78:14", @@ -47099,6 +48057,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30636:95:14", @@ -47251,10 +48210,12 @@ "id": 20934, "nodeType": "FunctionDefinition", "src": "30744:182:14", + "nodes": [], "body": { "id": 20933, "nodeType": "Block", "src": "30816:110:14", + "nodes": [], "statements": [ { "expression": { @@ -47366,6 +48327,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "30846:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "30842:23:14", @@ -47380,6 +48342,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30842:76:14", @@ -47414,6 +48377,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "30826:93:14", @@ -47565,10 +48529,12 @@ "id": 20957, "nodeType": "FunctionDefinition", "src": "30932:187:14", + "nodes": [], "body": { "id": 20956, "nodeType": "Block", "src": "31010:109:14", + "nodes": [], "statements": [ { "expression": { @@ -47680,6 +48646,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31040:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31036:23:14", @@ -47694,6 +48661,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31036:75:14", @@ -47728,6 +48696,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31020:92:14", @@ -47879,10 +48848,12 @@ "id": 20980, "nodeType": "FunctionDefinition", "src": "31125:176:14", + "nodes": [], "body": { "id": 20979, "nodeType": "Block", "src": "31194:107:14", + "nodes": [], "statements": [ { "expression": { @@ -47994,6 +48965,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31224:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31220:23:14", @@ -48008,6 +48980,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31220:73:14", @@ -48042,6 +49015,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31204:90:14", @@ -48193,10 +49167,12 @@ "id": 21003, "nodeType": "FunctionDefinition", "src": "31307:182:14", + "nodes": [], "body": { "id": 21002, "nodeType": "Block", "src": "31379:110:14", + "nodes": [], "statements": [ { "expression": { @@ -48308,6 +49284,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31409:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31405:23:14", @@ -48322,6 +49299,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31405:76:14", @@ -48356,6 +49334,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31389:93:14", @@ -48508,10 +49487,12 @@ "id": 21026, "nodeType": "FunctionDefinition", "src": "31495:188:14", + "nodes": [], "body": { "id": 21025, "nodeType": "Block", "src": "31570:113:14", + "nodes": [], "statements": [ { "expression": { @@ -48623,6 +49604,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31600:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31596:23:14", @@ -48637,6 +49619,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31596:79:14", @@ -48671,6 +49654,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31580:96:14", @@ -48823,10 +49807,12 @@ "id": 21049, "nodeType": "FunctionDefinition", "src": "31689:193:14", + "nodes": [], "body": { "id": 21048, "nodeType": "Block", "src": "31770:112:14", + "nodes": [], "statements": [ { "expression": { @@ -48938,6 +49924,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31800:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31796:23:14", @@ -48952,6 +49939,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31796:78:14", @@ -48986,6 +49974,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31780:95:14", @@ -49138,10 +50127,12 @@ "id": 21072, "nodeType": "FunctionDefinition", "src": "31888:182:14", + "nodes": [], "body": { "id": 21071, "nodeType": "Block", "src": "31960:110:14", + "nodes": [], "statements": [ { "expression": { @@ -49253,6 +50244,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "31990:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "31986:23:14", @@ -49267,6 +50259,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31986:76:14", @@ -49301,6 +50294,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "31970:93:14", @@ -49453,10 +50447,12 @@ "id": 21095, "nodeType": "FunctionDefinition", "src": "32076:188:14", + "nodes": [], "body": { "id": 21094, "nodeType": "Block", "src": "32151:113:14", + "nodes": [], "statements": [ { "expression": { @@ -49568,6 +50564,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32181:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32177:23:14", @@ -49582,6 +50579,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32177:79:14", @@ -49616,6 +50614,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32161:96:14", @@ -49769,10 +50768,12 @@ "id": 21118, "nodeType": "FunctionDefinition", "src": "32270:193:14", + "nodes": [], "body": { "id": 21117, "nodeType": "Block", "src": "32351:112:14", + "nodes": [], "statements": [ { "expression": { @@ -49884,6 +50885,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32381:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32377:23:14", @@ -49898,6 +50900,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32377:78:14", @@ -49932,6 +50935,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32361:95:14", @@ -50082,10 +51086,12 @@ "id": 21141, "nodeType": "FunctionDefinition", "src": "32469:198:14", + "nodes": [], "body": { "id": 21140, "nodeType": "Block", "src": "32556:111:14", + "nodes": [], "statements": [ { "expression": { @@ -50197,6 +51203,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32586:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32582:23:14", @@ -50211,6 +51218,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32582:77:14", @@ -50245,6 +51253,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32566:94:14", @@ -50395,10 +51404,12 @@ "id": 21164, "nodeType": "FunctionDefinition", "src": "32673:187:14", + "nodes": [], "body": { "id": 21163, "nodeType": "Block", "src": "32751:109:14", + "nodes": [], "statements": [ { "expression": { @@ -50510,6 +51521,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32781:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32777:23:14", @@ -50524,6 +51536,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32777:75:14", @@ -50558,6 +51571,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32761:92:14", @@ -50708,10 +51722,12 @@ "id": 21187, "nodeType": "FunctionDefinition", "src": "32866:193:14", + "nodes": [], "body": { "id": 21186, "nodeType": "Block", "src": "32947:112:14", + "nodes": [], "statements": [ { "expression": { @@ -50823,6 +51839,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "32977:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "32973:23:14", @@ -50837,6 +51854,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32973:78:14", @@ -50871,6 +51889,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "32957:95:14", @@ -51022,10 +52041,12 @@ "id": 21210, "nodeType": "FunctionDefinition", "src": "33065:198:14", + "nodes": [], "body": { "id": 21209, "nodeType": "Block", "src": "33152:111:14", + "nodes": [], "statements": [ { "expression": { @@ -51137,6 +52158,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33182:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33178:23:14", @@ -51151,6 +52173,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33178:77:14", @@ -51185,6 +52208,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33162:94:14", @@ -51335,10 +52359,12 @@ "id": 21233, "nodeType": "FunctionDefinition", "src": "33269:203:14", + "nodes": [], "body": { "id": 21232, "nodeType": "Block", "src": "33362:110:14", + "nodes": [], "statements": [ { "expression": { @@ -51450,6 +52476,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33392:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33388:23:14", @@ -51464,6 +52491,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33388:76:14", @@ -51498,6 +52526,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33372:93:14", @@ -51648,10 +52677,12 @@ "id": 21256, "nodeType": "FunctionDefinition", "src": "33478:192:14", + "nodes": [], "body": { "id": 21255, "nodeType": "Block", "src": "33562:108:14", + "nodes": [], "statements": [ { "expression": { @@ -51763,6 +52794,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33592:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33588:23:14", @@ -51777,6 +52809,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33588:74:14", @@ -51811,6 +52844,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33572:91:14", @@ -51961,10 +52995,12 @@ "id": 21279, "nodeType": "FunctionDefinition", "src": "33676:198:14", + "nodes": [], "body": { "id": 21278, "nodeType": "Block", "src": "33763:111:14", + "nodes": [], "statements": [ { "expression": { @@ -52076,6 +53112,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33793:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33789:23:14", @@ -52090,6 +53127,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33789:77:14", @@ -52124,6 +53162,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33773:94:14", @@ -52275,10 +53314,12 @@ "id": 21302, "nodeType": "FunctionDefinition", "src": "33880:187:14", + "nodes": [], "body": { "id": 21301, "nodeType": "Block", "src": "33958:109:14", + "nodes": [], "statements": [ { "expression": { @@ -52390,6 +53431,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "33988:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "33984:23:14", @@ -52404,6 +53446,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33984:75:14", @@ -52438,6 +53481,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "33968:92:14", @@ -52588,10 +53632,12 @@ "id": 21325, "nodeType": "FunctionDefinition", "src": "34073:192:14", + "nodes": [], "body": { "id": 21324, "nodeType": "Block", "src": "34157:108:14", + "nodes": [], "statements": [ { "expression": { @@ -52703,6 +53749,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34187:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34183:23:14", @@ -52717,6 +53764,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34183:74:14", @@ -52751,6 +53799,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34167:91:14", @@ -52901,10 +53950,12 @@ "id": 21348, "nodeType": "FunctionDefinition", "src": "34271:181:14", + "nodes": [], "body": { "id": 21347, "nodeType": "Block", "src": "34346:106:14", + "nodes": [], "statements": [ { "expression": { @@ -53016,6 +54067,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34376:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34372:23:14", @@ -53030,6 +54082,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34372:72:14", @@ -53064,6 +54117,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34356:89:14", @@ -53214,10 +54268,12 @@ "id": 21371, "nodeType": "FunctionDefinition", "src": "34458:187:14", + "nodes": [], "body": { "id": 21370, "nodeType": "Block", "src": "34536:109:14", + "nodes": [], "statements": [ { "expression": { @@ -53329,6 +54385,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34566:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34562:23:14", @@ -53343,6 +54400,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34562:75:14", @@ -53377,6 +54435,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34546:92:14", @@ -53528,10 +54587,12 @@ "id": 21394, "nodeType": "FunctionDefinition", "src": "34651:193:14", + "nodes": [], "body": { "id": 21393, "nodeType": "Block", "src": "34732:112:14", + "nodes": [], "statements": [ { "expression": { @@ -53643,6 +54704,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34762:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34758:23:14", @@ -53657,6 +54719,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34758:78:14", @@ -53691,6 +54754,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34742:95:14", @@ -53842,10 +54906,12 @@ "id": 21417, "nodeType": "FunctionDefinition", "src": "34850:198:14", + "nodes": [], "body": { "id": 21416, "nodeType": "Block", "src": "34937:111:14", + "nodes": [], "statements": [ { "expression": { @@ -53957,6 +55023,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "34967:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "34963:23:14", @@ -53971,6 +55038,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34963:77:14", @@ -54005,6 +55073,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "34947:94:14", @@ -54156,10 +55225,12 @@ "id": 21440, "nodeType": "FunctionDefinition", "src": "35054:187:14", + "nodes": [], "body": { "id": 21439, "nodeType": "Block", "src": "35132:109:14", + "nodes": [], "statements": [ { "expression": { @@ -54271,6 +55342,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35162:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35158:23:14", @@ -54285,6 +55357,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35158:75:14", @@ -54319,6 +55392,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35142:92:14", @@ -54470,10 +55544,12 @@ "id": 21463, "nodeType": "FunctionDefinition", "src": "35247:193:14", + "nodes": [], "body": { "id": 21462, "nodeType": "Block", "src": "35328:112:14", + "nodes": [], "statements": [ { "expression": { @@ -54585,6 +55661,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35358:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35354:23:14", @@ -54599,6 +55676,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35354:78:14", @@ -54633,6 +55711,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35338:95:14", @@ -54785,10 +55864,12 @@ "id": 21486, "nodeType": "FunctionDefinition", "src": "35446:198:14", + "nodes": [], "body": { "id": 21485, "nodeType": "Block", "src": "35533:111:14", + "nodes": [], "statements": [ { "expression": { @@ -54900,6 +55981,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35563:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35559:23:14", @@ -54914,6 +55996,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35559:77:14", @@ -54948,6 +56031,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35543:94:14", @@ -55098,10 +56182,12 @@ "id": 21509, "nodeType": "FunctionDefinition", "src": "35650:203:14", + "nodes": [], "body": { "id": 21508, "nodeType": "Block", "src": "35743:110:14", + "nodes": [], "statements": [ { "expression": { @@ -55213,6 +56299,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35773:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35769:23:14", @@ -55227,6 +56314,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35769:76:14", @@ -55261,6 +56349,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35753:93:14", @@ -55411,10 +56500,12 @@ "id": 21532, "nodeType": "FunctionDefinition", "src": "35859:192:14", + "nodes": [], "body": { "id": 21531, "nodeType": "Block", "src": "35943:108:14", + "nodes": [], "statements": [ { "expression": { @@ -55526,6 +56617,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "35973:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "35969:23:14", @@ -55540,6 +56632,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35969:74:14", @@ -55574,6 +56667,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "35953:91:14", @@ -55724,10 +56818,12 @@ "id": 21555, "nodeType": "FunctionDefinition", "src": "36057:198:14", + "nodes": [], "body": { "id": 21554, "nodeType": "Block", "src": "36144:111:14", + "nodes": [], "statements": [ { "expression": { @@ -55839,6 +56935,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36174:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36170:23:14", @@ -55853,6 +56950,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36170:77:14", @@ -55887,6 +56985,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36154:94:14", @@ -56038,10 +57137,12 @@ "id": 21578, "nodeType": "FunctionDefinition", "src": "36261:203:14", + "nodes": [], "body": { "id": 21577, "nodeType": "Block", "src": "36354:110:14", + "nodes": [], "statements": [ { "expression": { @@ -56153,6 +57254,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36384:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36380:23:14", @@ -56167,6 +57269,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36380:76:14", @@ -56201,6 +57304,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36364:93:14", @@ -56351,10 +57455,12 @@ "id": 21601, "nodeType": "FunctionDefinition", "src": "36470:208:14", + "nodes": [], "body": { "id": 21600, "nodeType": "Block", "src": "36569:109:14", + "nodes": [], "statements": [ { "expression": { @@ -56466,6 +57572,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36599:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36595:23:14", @@ -56480,6 +57587,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36595:75:14", @@ -56514,6 +57622,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36579:92:14", @@ -56664,10 +57773,12 @@ "id": 21624, "nodeType": "FunctionDefinition", "src": "36684:197:14", + "nodes": [], "body": { "id": 21623, "nodeType": "Block", "src": "36774:107:14", + "nodes": [], "statements": [ { "expression": { @@ -56779,6 +57890,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "36804:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "36800:23:14", @@ -56793,6 +57905,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36800:73:14", @@ -56827,6 +57940,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36784:90:14", @@ -56977,10 +58091,12 @@ "id": 21647, "nodeType": "FunctionDefinition", "src": "36887:203:14", + "nodes": [], "body": { "id": 21646, "nodeType": "Block", "src": "36980:110:14", + "nodes": [], "statements": [ { "expression": { @@ -57092,6 +58208,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37010:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37006:23:14", @@ -57106,6 +58223,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37006:76:14", @@ -57140,6 +58258,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "36990:93:14", @@ -57291,10 +58410,12 @@ "id": 21670, "nodeType": "FunctionDefinition", "src": "37096:192:14", + "nodes": [], "body": { "id": 21669, "nodeType": "Block", "src": "37180:108:14", + "nodes": [], "statements": [ { "expression": { @@ -57406,6 +58527,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37210:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37206:23:14", @@ -57420,6 +58542,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37206:74:14", @@ -57454,6 +58577,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37190:91:14", @@ -57604,10 +58728,12 @@ "id": 21693, "nodeType": "FunctionDefinition", "src": "37294:197:14", + "nodes": [], "body": { "id": 21692, "nodeType": "Block", "src": "37384:107:14", + "nodes": [], "statements": [ { "expression": { @@ -57719,6 +58845,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37414:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37410:23:14", @@ -57733,6 +58860,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37410:73:14", @@ -57767,6 +58895,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37394:90:14", @@ -57917,10 +59046,12 @@ "id": 21716, "nodeType": "FunctionDefinition", "src": "37497:186:14", + "nodes": [], "body": { "id": 21715, "nodeType": "Block", "src": "37578:105:14", + "nodes": [], "statements": [ { "expression": { @@ -58032,6 +59163,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37608:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37604:23:14", @@ -58046,6 +59178,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37604:71:14", @@ -58080,6 +59213,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37588:88:14", @@ -58230,10 +59364,12 @@ "id": 21739, "nodeType": "FunctionDefinition", "src": "37689:192:14", + "nodes": [], "body": { "id": 21738, "nodeType": "Block", "src": "37773:108:14", + "nodes": [], "statements": [ { "expression": { @@ -58345,6 +59481,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "37803:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "37799:23:14", @@ -58359,6 +59496,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37799:74:14", @@ -58393,6 +59531,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37783:91:14", @@ -58544,10 +59683,12 @@ "id": 21762, "nodeType": "FunctionDefinition", "src": "37887:198:14", + "nodes": [], "body": { "id": 21761, "nodeType": "Block", "src": "37974:111:14", + "nodes": [], "statements": [ { "expression": { @@ -58659,6 +59800,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38004:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38000:23:14", @@ -58673,6 +59815,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38000:77:14", @@ -58707,6 +59850,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "37984:94:14", @@ -58858,10 +60002,12 @@ "id": 21785, "nodeType": "FunctionDefinition", "src": "38091:203:14", + "nodes": [], "body": { "id": 21784, "nodeType": "Block", "src": "38184:110:14", + "nodes": [], "statements": [ { "expression": { @@ -58973,6 +60119,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38214:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38210:23:14", @@ -58987,6 +60134,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38210:76:14", @@ -59021,6 +60169,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38194:93:14", @@ -59172,10 +60321,12 @@ "id": 21808, "nodeType": "FunctionDefinition", "src": "38300:192:14", + "nodes": [], "body": { "id": 21807, "nodeType": "Block", "src": "38384:108:14", + "nodes": [], "statements": [ { "expression": { @@ -59287,6 +60438,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38414:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38410:23:14", @@ -59301,6 +60453,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38410:74:14", @@ -59335,6 +60488,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38394:91:14", @@ -59486,10 +60640,12 @@ "id": 21831, "nodeType": "FunctionDefinition", "src": "38498:198:14", + "nodes": [], "body": { "id": 21830, "nodeType": "Block", "src": "38585:111:14", + "nodes": [], "statements": [ { "expression": { @@ -59601,6 +60757,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38615:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38611:23:14", @@ -59615,6 +60772,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38611:77:14", @@ -59649,6 +60807,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38595:94:14", @@ -59801,10 +60960,12 @@ "id": 21854, "nodeType": "FunctionDefinition", "src": "38702:187:14", + "nodes": [], "body": { "id": 21853, "nodeType": "Block", "src": "38780:109:14", + "nodes": [], "statements": [ { "expression": { @@ -59916,6 +61077,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "38810:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "38806:23:14", @@ -59930,6 +61092,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38806:75:14", @@ -59964,6 +61127,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38790:92:14", @@ -60114,10 +61278,12 @@ "id": 21877, "nodeType": "FunctionDefinition", "src": "38895:192:14", + "nodes": [], "body": { "id": 21876, "nodeType": "Block", "src": "38979:108:14", + "nodes": [], "statements": [ { "expression": { @@ -60229,6 +61395,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39009:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39005:23:14", @@ -60243,6 +61410,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39005:74:14", @@ -60277,6 +61445,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38989:91:14", @@ -60427,10 +61596,12 @@ "id": 21900, "nodeType": "FunctionDefinition", "src": "39093:181:14", + "nodes": [], "body": { "id": 21899, "nodeType": "Block", "src": "39168:106:14", + "nodes": [], "statements": [ { "expression": { @@ -60542,6 +61713,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39198:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39194:23:14", @@ -60556,6 +61728,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39194:72:14", @@ -60590,6 +61763,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39178:89:14", @@ -60740,10 +61914,12 @@ "id": 21923, "nodeType": "FunctionDefinition", "src": "39280:187:14", + "nodes": [], "body": { "id": 21922, "nodeType": "Block", "src": "39358:109:14", + "nodes": [], "statements": [ { "expression": { @@ -60855,6 +62031,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39388:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39384:23:14", @@ -60869,6 +62046,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39384:75:14", @@ -60903,6 +62081,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39368:92:14", @@ -61054,10 +62233,12 @@ "id": 21946, "nodeType": "FunctionDefinition", "src": "39473:192:14", + "nodes": [], "body": { "id": 21945, "nodeType": "Block", "src": "39557:108:14", + "nodes": [], "statements": [ { "expression": { @@ -61169,6 +62350,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39587:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39583:23:14", @@ -61183,6 +62365,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39583:74:14", @@ -61217,6 +62400,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39567:91:14", @@ -61367,10 +62551,12 @@ "id": 21969, "nodeType": "FunctionDefinition", "src": "39671:197:14", + "nodes": [], "body": { "id": 21968, "nodeType": "Block", "src": "39761:107:14", + "nodes": [], "statements": [ { "expression": { @@ -61482,6 +62668,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39791:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39787:23:14", @@ -61496,6 +62683,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39787:73:14", @@ -61530,6 +62718,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39771:90:14", @@ -61680,10 +62869,12 @@ "id": 21992, "nodeType": "FunctionDefinition", "src": "39874:186:14", + "nodes": [], "body": { "id": 21991, "nodeType": "Block", "src": "39955:105:14", + "nodes": [], "statements": [ { "expression": { @@ -61795,6 +62986,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "39985:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "39981:23:14", @@ -61809,6 +63001,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39981:71:14", @@ -61843,6 +63036,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "39965:88:14", @@ -61993,10 +63187,12 @@ "id": 22015, "nodeType": "FunctionDefinition", "src": "40066:192:14", + "nodes": [], "body": { "id": 22014, "nodeType": "Block", "src": "40150:108:14", + "nodes": [], "statements": [ { "expression": { @@ -62108,6 +63304,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40180:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40176:23:14", @@ -62122,6 +63319,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40176:74:14", @@ -62156,6 +63354,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40160:91:14", @@ -62307,10 +63506,12 @@ "id": 22038, "nodeType": "FunctionDefinition", "src": "40264:181:14", + "nodes": [], "body": { "id": 22037, "nodeType": "Block", "src": "40339:106:14", + "nodes": [], "statements": [ { "expression": { @@ -62422,6 +63623,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40369:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40365:23:14", @@ -62436,6 +63638,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40365:72:14", @@ -62470,6 +63673,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40349:89:14", @@ -62620,10 +63824,12 @@ "id": 22061, "nodeType": "FunctionDefinition", "src": "40451:186:14", + "nodes": [], "body": { "id": 22060, "nodeType": "Block", "src": "40532:105:14", + "nodes": [], "statements": [ { "expression": { @@ -62735,6 +63941,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40562:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40558:23:14", @@ -62749,6 +63956,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40558:71:14", @@ -62783,6 +63991,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40542:88:14", @@ -62933,10 +64142,12 @@ "id": 22084, "nodeType": "FunctionDefinition", "src": "40643:175:14", + "nodes": [], "body": { "id": 22083, "nodeType": "Block", "src": "40715:103:14", + "nodes": [], "statements": [ { "expression": { @@ -63048,6 +64259,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40745:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40741:23:14", @@ -63062,6 +64274,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40741:69:14", @@ -63096,6 +64309,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40725:86:14", @@ -63246,10 +64460,12 @@ "id": 22107, "nodeType": "FunctionDefinition", "src": "40824:181:14", + "nodes": [], "body": { "id": 22106, "nodeType": "Block", "src": "40899:106:14", + "nodes": [], "statements": [ { "expression": { @@ -63361,6 +64577,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "40929:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "40925:23:14", @@ -63375,6 +64592,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40925:72:14", @@ -63409,6 +64627,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "40909:89:14", @@ -63560,10 +64779,12 @@ "id": 22130, "nodeType": "FunctionDefinition", "src": "41011:187:14", + "nodes": [], "body": { "id": 22129, "nodeType": "Block", "src": "41089:109:14", + "nodes": [], "statements": [ { "expression": { @@ -63675,6 +64896,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41119:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41115:23:14", @@ -63689,6 +64911,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41115:75:14", @@ -63723,6 +64946,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41099:92:14", @@ -63874,10 +65098,12 @@ "id": 22153, "nodeType": "FunctionDefinition", "src": "41204:192:14", + "nodes": [], "body": { "id": 22152, "nodeType": "Block", "src": "41288:108:14", + "nodes": [], "statements": [ { "expression": { @@ -63989,6 +65215,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41318:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41314:23:14", @@ -64003,6 +65230,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41314:74:14", @@ -64037,6 +65265,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41298:91:14", @@ -64188,10 +65417,12 @@ "id": 22176, "nodeType": "FunctionDefinition", "src": "41402:181:14", + "nodes": [], "body": { "id": 22175, "nodeType": "Block", "src": "41477:106:14", + "nodes": [], "statements": [ { "expression": { @@ -64303,6 +65534,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41507:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41503:23:14", @@ -64317,6 +65549,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41503:72:14", @@ -64351,6 +65584,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41487:89:14", @@ -64502,10 +65736,12 @@ "id": 22199, "nodeType": "FunctionDefinition", "src": "41589:187:14", + "nodes": [], "body": { "id": 22198, "nodeType": "Block", "src": "41667:109:14", + "nodes": [], "statements": [ { "expression": { @@ -64617,6 +65853,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41697:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41693:23:14", @@ -64631,6 +65868,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41693:75:14", @@ -64665,6 +65903,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41677:92:14", @@ -64817,10 +66056,12 @@ "id": 22222, "nodeType": "FunctionDefinition", "src": "41782:193:14", + "nodes": [], "body": { "id": 22221, "nodeType": "Block", "src": "41863:112:14", + "nodes": [], "statements": [ { "expression": { @@ -64932,6 +66173,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "41893:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "41889:23:14", @@ -64946,6 +66188,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41889:78:14", @@ -64980,6 +66223,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "41873:95:14", @@ -65131,10 +66375,12 @@ "id": 22245, "nodeType": "FunctionDefinition", "src": "41981:198:14", + "nodes": [], "body": { "id": 22244, "nodeType": "Block", "src": "42068:111:14", + "nodes": [], "statements": [ { "expression": { @@ -65246,6 +66492,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42098:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42094:23:14", @@ -65260,6 +66507,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42094:77:14", @@ -65294,6 +66542,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42078:94:14", @@ -65445,10 +66694,12 @@ "id": 22268, "nodeType": "FunctionDefinition", "src": "42185:187:14", + "nodes": [], "body": { "id": 22267, "nodeType": "Block", "src": "42263:109:14", + "nodes": [], "statements": [ { "expression": { @@ -65560,6 +66811,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42293:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42289:23:14", @@ -65574,6 +66826,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42289:75:14", @@ -65608,6 +66861,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42273:92:14", @@ -65759,10 +67013,12 @@ "id": 22291, "nodeType": "FunctionDefinition", "src": "42378:193:14", + "nodes": [], "body": { "id": 22290, "nodeType": "Block", "src": "42459:112:14", + "nodes": [], "statements": [ { "expression": { @@ -65874,6 +67130,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42489:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42485:23:14", @@ -65888,6 +67145,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42485:78:14", @@ -65922,6 +67180,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42469:95:14", @@ -66074,10 +67333,12 @@ "id": 22314, "nodeType": "FunctionDefinition", "src": "42577:198:14", + "nodes": [], "body": { "id": 22313, "nodeType": "Block", "src": "42664:111:14", + "nodes": [], "statements": [ { "expression": { @@ -66189,6 +67450,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42694:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42690:23:14", @@ -66203,6 +67465,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42690:77:14", @@ -66237,6 +67500,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42674:94:14", @@ -66388,10 +67652,12 @@ "id": 22337, "nodeType": "FunctionDefinition", "src": "42781:203:14", + "nodes": [], "body": { "id": 22336, "nodeType": "Block", "src": "42874:110:14", + "nodes": [], "statements": [ { "expression": { @@ -66503,6 +67769,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "42904:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "42900:23:14", @@ -66517,6 +67784,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42900:76:14", @@ -66551,6 +67819,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "42884:93:14", @@ -66702,10 +67971,12 @@ "id": 22360, "nodeType": "FunctionDefinition", "src": "42990:192:14", + "nodes": [], "body": { "id": 22359, "nodeType": "Block", "src": "43074:108:14", + "nodes": [], "statements": [ { "expression": { @@ -66817,6 +68088,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43104:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43100:23:14", @@ -66831,6 +68103,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43100:74:14", @@ -66865,6 +68138,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43084:91:14", @@ -67016,10 +68290,12 @@ "id": 22383, "nodeType": "FunctionDefinition", "src": "43188:198:14", + "nodes": [], "body": { "id": 22382, "nodeType": "Block", "src": "43275:111:14", + "nodes": [], "statements": [ { "expression": { @@ -67131,6 +68407,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43305:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43301:23:14", @@ -67145,6 +68422,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43301:77:14", @@ -67179,6 +68457,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43285:94:14", @@ -67331,10 +68610,12 @@ "id": 22406, "nodeType": "FunctionDefinition", "src": "43392:187:14", + "nodes": [], "body": { "id": 22405, "nodeType": "Block", "src": "43470:109:14", + "nodes": [], "statements": [ { "expression": { @@ -67446,6 +68727,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43500:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43496:23:14", @@ -67460,6 +68742,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43496:75:14", @@ -67494,6 +68777,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43480:92:14", @@ -67645,10 +68929,12 @@ "id": 22429, "nodeType": "FunctionDefinition", "src": "43585:192:14", + "nodes": [], "body": { "id": 22428, "nodeType": "Block", "src": "43669:108:14", + "nodes": [], "statements": [ { "expression": { @@ -67760,6 +69046,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43699:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43695:23:14", @@ -67774,6 +69061,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43695:74:14", @@ -67808,6 +69096,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43679:91:14", @@ -67959,10 +69248,12 @@ "id": 22452, "nodeType": "FunctionDefinition", "src": "43783:181:14", + "nodes": [], "body": { "id": 22451, "nodeType": "Block", "src": "43858:106:14", + "nodes": [], "statements": [ { "expression": { @@ -68074,6 +69365,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "43888:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "43884:23:14", @@ -68088,6 +69380,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43884:72:14", @@ -68122,6 +69415,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "43868:89:14", @@ -68273,10 +69567,12 @@ "id": 22475, "nodeType": "FunctionDefinition", "src": "43970:187:14", + "nodes": [], "body": { "id": 22474, "nodeType": "Block", "src": "44048:109:14", + "nodes": [], "statements": [ { "expression": { @@ -68388,6 +69684,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44078:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44074:23:14", @@ -68402,6 +69699,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44074:75:14", @@ -68436,6 +69734,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44058:92:14", @@ -68588,10 +69887,12 @@ "id": 22498, "nodeType": "FunctionDefinition", "src": "44163:193:14", + "nodes": [], "body": { "id": 22497, "nodeType": "Block", "src": "44244:112:14", + "nodes": [], "statements": [ { "expression": { @@ -68703,6 +70004,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44274:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44270:23:14", @@ -68717,6 +70019,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44270:78:14", @@ -68751,6 +70054,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44254:95:14", @@ -68903,10 +70207,12 @@ "id": 22521, "nodeType": "FunctionDefinition", "src": "44362:198:14", + "nodes": [], "body": { "id": 22520, "nodeType": "Block", "src": "44449:111:14", + "nodes": [], "statements": [ { "expression": { @@ -69018,6 +70324,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44479:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44475:23:14", @@ -69032,6 +70339,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44475:77:14", @@ -69066,6 +70374,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44459:94:14", @@ -69218,10 +70527,12 @@ "id": 22544, "nodeType": "FunctionDefinition", "src": "44566:187:14", + "nodes": [], "body": { "id": 22543, "nodeType": "Block", "src": "44644:109:14", + "nodes": [], "statements": [ { "expression": { @@ -69333,6 +70644,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44674:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44670:23:14", @@ -69347,6 +70659,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44670:75:14", @@ -69381,6 +70694,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44654:92:14", @@ -69533,10 +70847,12 @@ "id": 22567, "nodeType": "FunctionDefinition", "src": "44759:193:14", + "nodes": [], "body": { "id": 22566, "nodeType": "Block", "src": "44840:112:14", + "nodes": [], "statements": [ { "expression": { @@ -69648,6 +70964,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "44870:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "44866:23:14", @@ -69662,6 +70979,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44866:78:14", @@ -69696,6 +71014,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "44850:95:14", @@ -69849,10 +71168,12 @@ "id": 22590, "nodeType": "FunctionDefinition", "src": "44958:182:14", + "nodes": [], "body": { "id": 22589, "nodeType": "Block", "src": "45030:110:14", + "nodes": [], "statements": [ { "expression": { @@ -69964,6 +71285,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45060:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45056:23:14", @@ -69978,6 +71300,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45056:76:14", @@ -70012,6 +71335,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45040:93:14", @@ -70162,10 +71486,12 @@ "id": 22613, "nodeType": "FunctionDefinition", "src": "45146:187:14", + "nodes": [], "body": { "id": 22612, "nodeType": "Block", "src": "45224:109:14", + "nodes": [], "statements": [ { "expression": { @@ -70277,6 +71603,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45254:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45250:23:14", @@ -70291,6 +71618,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45250:75:14", @@ -70325,6 +71653,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45234:92:14", @@ -70475,10 +71804,12 @@ "id": 22636, "nodeType": "FunctionDefinition", "src": "45339:176:14", + "nodes": [], "body": { "id": 22635, "nodeType": "Block", "src": "45408:107:14", + "nodes": [], "statements": [ { "expression": { @@ -70590,6 +71921,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45438:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45434:23:14", @@ -70604,6 +71936,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45434:73:14", @@ -70638,6 +71971,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45418:90:14", @@ -70788,10 +72122,12 @@ "id": 22659, "nodeType": "FunctionDefinition", "src": "45521:182:14", + "nodes": [], "body": { "id": 22658, "nodeType": "Block", "src": "45593:110:14", + "nodes": [], "statements": [ { "expression": { @@ -70903,6 +72239,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45623:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45619:23:14", @@ -70917,6 +72254,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45619:76:14", @@ -70951,6 +72289,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45603:93:14", @@ -71102,10 +72441,12 @@ "id": 22682, "nodeType": "FunctionDefinition", "src": "45709:187:14", + "nodes": [], "body": { "id": 22681, "nodeType": "Block", "src": "45787:109:14", + "nodes": [], "statements": [ { "expression": { @@ -71217,6 +72558,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "45817:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "45813:23:14", @@ -71231,6 +72573,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45813:75:14", @@ -71265,6 +72608,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45797:92:14", @@ -71415,10 +72759,12 @@ "id": 22705, "nodeType": "FunctionDefinition", "src": "45902:192:14", + "nodes": [], "body": { "id": 22704, "nodeType": "Block", "src": "45986:108:14", + "nodes": [], "statements": [ { "expression": { @@ -71530,6 +72876,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46016:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46012:23:14", @@ -71544,6 +72891,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46012:74:14", @@ -71578,6 +72926,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "45996:91:14", @@ -71728,10 +73077,12 @@ "id": 22728, "nodeType": "FunctionDefinition", "src": "46100:181:14", + "nodes": [], "body": { "id": 22727, "nodeType": "Block", "src": "46175:106:14", + "nodes": [], "statements": [ { "expression": { @@ -71843,6 +73194,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46205:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46201:23:14", @@ -71857,6 +73209,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46201:72:14", @@ -71891,6 +73244,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46185:89:14", @@ -72041,10 +73395,12 @@ "id": 22751, "nodeType": "FunctionDefinition", "src": "46287:187:14", + "nodes": [], "body": { "id": 22750, "nodeType": "Block", "src": "46365:109:14", + "nodes": [], "statements": [ { "expression": { @@ -72156,6 +73512,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46395:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46391:23:14", @@ -72170,6 +73527,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46391:75:14", @@ -72204,6 +73562,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46375:92:14", @@ -72355,10 +73714,12 @@ "id": 22774, "nodeType": "FunctionDefinition", "src": "46480:176:14", + "nodes": [], "body": { "id": 22773, "nodeType": "Block", "src": "46549:107:14", + "nodes": [], "statements": [ { "expression": { @@ -72470,6 +73831,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46579:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46575:23:14", @@ -72484,6 +73846,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46575:73:14", @@ -72518,6 +73881,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46559:90:14", @@ -72668,10 +74032,12 @@ "id": 22797, "nodeType": "FunctionDefinition", "src": "46662:181:14", + "nodes": [], "body": { "id": 22796, "nodeType": "Block", "src": "46737:106:14", + "nodes": [], "statements": [ { "expression": { @@ -72783,6 +74149,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46767:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46763:23:14", @@ -72797,6 +74164,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46763:72:14", @@ -72831,6 +74199,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46747:89:14", @@ -72981,10 +74350,12 @@ "id": 22820, "nodeType": "FunctionDefinition", "src": "46849:170:14", + "nodes": [], "body": { "id": 22819, "nodeType": "Block", "src": "46915:104:14", + "nodes": [], "statements": [ { "expression": { @@ -73096,6 +74467,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "46945:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "46941:23:14", @@ -73110,6 +74482,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46941:70:14", @@ -73144,6 +74517,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "46925:87:14", @@ -73294,10 +74668,12 @@ "id": 22843, "nodeType": "FunctionDefinition", "src": "47025:176:14", + "nodes": [], "body": { "id": 22842, "nodeType": "Block", "src": "47094:107:14", + "nodes": [], "statements": [ { "expression": { @@ -73409,6 +74785,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47124:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47120:23:14", @@ -73423,6 +74800,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47120:73:14", @@ -73457,6 +74835,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47104:90:14", @@ -73608,10 +74987,12 @@ "id": 22866, "nodeType": "FunctionDefinition", "src": "47207:182:14", + "nodes": [], "body": { "id": 22865, "nodeType": "Block", "src": "47279:110:14", + "nodes": [], "statements": [ { "expression": { @@ -73723,6 +75104,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47309:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47305:23:14", @@ -73737,6 +75119,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47305:76:14", @@ -73771,6 +75154,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47289:93:14", @@ -73922,10 +75306,12 @@ "id": 22889, "nodeType": "FunctionDefinition", "src": "47395:187:14", + "nodes": [], "body": { "id": 22888, "nodeType": "Block", "src": "47473:109:14", + "nodes": [], "statements": [ { "expression": { @@ -74037,6 +75423,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47503:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47499:23:14", @@ -74051,6 +75438,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47499:75:14", @@ -74085,6 +75473,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47483:92:14", @@ -74236,10 +75625,12 @@ "id": 22912, "nodeType": "FunctionDefinition", "src": "47588:176:14", + "nodes": [], "body": { "id": 22911, "nodeType": "Block", "src": "47657:107:14", + "nodes": [], "statements": [ { "expression": { @@ -74351,6 +75742,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47687:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47683:23:14", @@ -74365,6 +75757,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47683:73:14", @@ -74399,6 +75792,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47667:90:14", @@ -74550,10 +75944,12 @@ "id": 22935, "nodeType": "FunctionDefinition", "src": "47770:182:14", + "nodes": [], "body": { "id": 22934, "nodeType": "Block", "src": "47842:110:14", + "nodes": [], "statements": [ { "expression": { @@ -74665,6 +76061,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "47872:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "47868:23:14", @@ -74679,6 +76076,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47868:76:14", @@ -74713,6 +76111,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "47852:93:14", @@ -74865,10 +76264,12 @@ "id": 22958, "nodeType": "FunctionDefinition", "src": "47958:187:14", + "nodes": [], "body": { "id": 22957, "nodeType": "Block", "src": "48036:109:14", + "nodes": [], "statements": [ { "expression": { @@ -74980,6 +76381,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48066:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48062:23:14", @@ -74994,6 +76396,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48062:75:14", @@ -75028,6 +76431,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48046:92:14", @@ -75178,10 +76582,12 @@ "id": 22981, "nodeType": "FunctionDefinition", "src": "48151:192:14", + "nodes": [], "body": { "id": 22980, "nodeType": "Block", "src": "48235:108:14", + "nodes": [], "statements": [ { "expression": { @@ -75293,6 +76699,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48265:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48261:23:14", @@ -75307,6 +76714,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48261:74:14", @@ -75341,6 +76749,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48245:91:14", @@ -75491,10 +76900,12 @@ "id": 23004, "nodeType": "FunctionDefinition", "src": "48349:181:14", + "nodes": [], "body": { "id": 23003, "nodeType": "Block", "src": "48424:106:14", + "nodes": [], "statements": [ { "expression": { @@ -75606,6 +77017,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48454:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48450:23:14", @@ -75620,6 +77032,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48450:72:14", @@ -75654,6 +77067,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48434:89:14", @@ -75804,10 +77218,12 @@ "id": 23027, "nodeType": "FunctionDefinition", "src": "48536:187:14", + "nodes": [], "body": { "id": 23026, "nodeType": "Block", "src": "48614:109:14", + "nodes": [], "statements": [ { "expression": { @@ -75919,6 +77335,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48644:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48640:23:14", @@ -75933,6 +77350,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48640:75:14", @@ -75967,6 +77385,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48624:92:14", @@ -76118,10 +77537,12 @@ "id": 23050, "nodeType": "FunctionDefinition", "src": "48729:192:14", + "nodes": [], "body": { "id": 23049, "nodeType": "Block", "src": "48813:108:14", + "nodes": [], "statements": [ { "expression": { @@ -76233,6 +77654,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "48843:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "48839:23:14", @@ -76247,6 +77669,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48839:74:14", @@ -76281,6 +77704,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "48823:91:14", @@ -76431,10 +77855,12 @@ "id": 23073, "nodeType": "FunctionDefinition", "src": "48927:197:14", + "nodes": [], "body": { "id": 23072, "nodeType": "Block", "src": "49017:107:14", + "nodes": [], "statements": [ { "expression": { @@ -76546,6 +77972,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49047:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49043:23:14", @@ -76560,6 +77987,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49043:73:14", @@ -76594,6 +78022,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49027:90:14", @@ -76744,10 +78173,12 @@ "id": 23096, "nodeType": "FunctionDefinition", "src": "49130:186:14", + "nodes": [], "body": { "id": 23095, "nodeType": "Block", "src": "49211:105:14", + "nodes": [], "statements": [ { "expression": { @@ -76859,6 +78290,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49241:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49237:23:14", @@ -76873,6 +78305,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49237:71:14", @@ -76907,6 +78340,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49221:88:14", @@ -77057,10 +78491,12 @@ "id": 23119, "nodeType": "FunctionDefinition", "src": "49322:192:14", + "nodes": [], "body": { "id": 23118, "nodeType": "Block", "src": "49406:108:14", + "nodes": [], "statements": [ { "expression": { @@ -77172,6 +78608,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49436:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49432:23:14", @@ -77186,6 +78623,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49432:74:14", @@ -77220,6 +78658,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49416:91:14", @@ -77371,10 +78810,12 @@ "id": 23142, "nodeType": "FunctionDefinition", "src": "49520:181:14", + "nodes": [], "body": { "id": 23141, "nodeType": "Block", "src": "49595:106:14", + "nodes": [], "statements": [ { "expression": { @@ -77486,6 +78927,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49625:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49621:23:14", @@ -77500,6 +78942,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49621:72:14", @@ -77534,6 +78977,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49605:89:14", @@ -77684,10 +79128,12 @@ "id": 23165, "nodeType": "FunctionDefinition", "src": "49707:186:14", + "nodes": [], "body": { "id": 23164, "nodeType": "Block", "src": "49788:105:14", + "nodes": [], "statements": [ { "expression": { @@ -77799,6 +79245,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "49818:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49814:23:14", @@ -77813,6 +79260,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49814:71:14", @@ -77847,6 +79295,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49798:88:14", @@ -77997,10 +79446,12 @@ "id": 23188, "nodeType": "FunctionDefinition", "src": "49899:175:14", + "nodes": [], "body": { "id": 23187, "nodeType": "Block", "src": "49971:103:14", + "nodes": [], "statements": [ { "expression": { @@ -78112,6 +79563,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50001:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "49997:23:14", @@ -78126,6 +79578,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49997:69:14", @@ -78160,6 +79613,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "49981:86:14", @@ -78310,10 +79764,12 @@ "id": 23211, "nodeType": "FunctionDefinition", "src": "50080:181:14", + "nodes": [], "body": { "id": 23210, "nodeType": "Block", "src": "50155:106:14", + "nodes": [], "statements": [ { "expression": { @@ -78425,6 +79881,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50185:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50181:23:14", @@ -78439,6 +79896,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50181:72:14", @@ -78473,6 +79931,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50165:89:14", @@ -78624,10 +80083,12 @@ "id": 23234, "nodeType": "FunctionDefinition", "src": "50267:187:14", + "nodes": [], "body": { "id": 23233, "nodeType": "Block", "src": "50345:109:14", + "nodes": [], "statements": [ { "expression": { @@ -78739,6 +80200,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50375:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50371:23:14", @@ -78753,6 +80215,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50371:75:14", @@ -78787,6 +80250,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50355:92:14", @@ -78938,10 +80402,12 @@ "id": 23257, "nodeType": "FunctionDefinition", "src": "50460:192:14", + "nodes": [], "body": { "id": 23256, "nodeType": "Block", "src": "50544:108:14", + "nodes": [], "statements": [ { "expression": { @@ -79053,6 +80519,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50574:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50570:23:14", @@ -79067,6 +80534,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50570:74:14", @@ -79101,6 +80569,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50554:91:14", @@ -79252,10 +80721,12 @@ "id": 23280, "nodeType": "FunctionDefinition", "src": "50658:181:14", + "nodes": [], "body": { "id": 23279, "nodeType": "Block", "src": "50733:106:14", + "nodes": [], "statements": [ { "expression": { @@ -79367,6 +80838,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50763:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50759:23:14", @@ -79381,6 +80853,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50759:72:14", @@ -79415,6 +80888,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50743:89:14", @@ -79566,10 +81040,12 @@ "id": 23303, "nodeType": "FunctionDefinition", "src": "50845:187:14", + "nodes": [], "body": { "id": 23302, "nodeType": "Block", "src": "50923:109:14", + "nodes": [], "statements": [ { "expression": { @@ -79681,6 +81157,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "50953:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "50949:23:14", @@ -79695,6 +81172,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50949:75:14", @@ -79729,6 +81207,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "50933:92:14", @@ -79881,10 +81360,12 @@ "id": 23326, "nodeType": "FunctionDefinition", "src": "51038:176:14", + "nodes": [], "body": { "id": 23325, "nodeType": "Block", "src": "51107:107:14", + "nodes": [], "statements": [ { "expression": { @@ -79996,6 +81477,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51137:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51133:23:14", @@ -80010,6 +81492,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51133:73:14", @@ -80044,6 +81527,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51117:90:14", @@ -80194,10 +81678,12 @@ "id": 23349, "nodeType": "FunctionDefinition", "src": "51220:181:14", + "nodes": [], "body": { "id": 23348, "nodeType": "Block", "src": "51295:106:14", + "nodes": [], "statements": [ { "expression": { @@ -80309,6 +81795,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51325:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51321:23:14", @@ -80323,6 +81810,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51321:72:14", @@ -80357,6 +81845,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51305:89:14", @@ -80507,10 +81996,12 @@ "id": 23372, "nodeType": "FunctionDefinition", "src": "51407:170:14", + "nodes": [], "body": { "id": 23371, "nodeType": "Block", "src": "51473:104:14", + "nodes": [], "statements": [ { "expression": { @@ -80622,6 +82113,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51503:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51499:23:14", @@ -80636,6 +82128,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51499:70:14", @@ -80670,6 +82163,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51483:87:14", @@ -80820,10 +82314,12 @@ "id": 23395, "nodeType": "FunctionDefinition", "src": "51583:176:14", + "nodes": [], "body": { "id": 23394, "nodeType": "Block", "src": "51652:107:14", + "nodes": [], "statements": [ { "expression": { @@ -80935,6 +82431,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51682:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51678:23:14", @@ -80949,6 +82446,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51678:73:14", @@ -80983,6 +82481,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51662:90:14", @@ -81134,10 +82633,12 @@ "id": 23418, "nodeType": "FunctionDefinition", "src": "51765:181:14", + "nodes": [], "body": { "id": 23417, "nodeType": "Block", "src": "51840:106:14", + "nodes": [], "statements": [ { "expression": { @@ -81249,6 +82750,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "51870:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "51866:23:14", @@ -81263,6 +82765,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51866:72:14", @@ -81297,6 +82800,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "51850:89:14", @@ -81447,10 +82951,12 @@ "id": 23441, "nodeType": "FunctionDefinition", "src": "51952:186:14", + "nodes": [], "body": { "id": 23440, "nodeType": "Block", "src": "52033:105:14", + "nodes": [], "statements": [ { "expression": { @@ -81562,6 +83068,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52063:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52059:23:14", @@ -81576,6 +83083,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52059:71:14", @@ -81610,6 +83118,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52043:88:14", @@ -81760,10 +83269,12 @@ "id": 23464, "nodeType": "FunctionDefinition", "src": "52144:175:14", + "nodes": [], "body": { "id": 23463, "nodeType": "Block", "src": "52216:103:14", + "nodes": [], "statements": [ { "expression": { @@ -81875,6 +83386,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52246:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52242:23:14", @@ -81889,6 +83401,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52242:69:14", @@ -81923,6 +83436,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52226:86:14", @@ -82073,10 +83587,12 @@ "id": 23487, "nodeType": "FunctionDefinition", "src": "52325:181:14", + "nodes": [], "body": { "id": 23486, "nodeType": "Block", "src": "52400:106:14", + "nodes": [], "statements": [ { "expression": { @@ -82188,6 +83704,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52430:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52426:23:14", @@ -82202,6 +83719,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52426:72:14", @@ -82236,6 +83754,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52410:89:14", @@ -82387,10 +83906,12 @@ "id": 23510, "nodeType": "FunctionDefinition", "src": "52512:170:14", + "nodes": [], "body": { "id": 23509, "nodeType": "Block", "src": "52578:104:14", + "nodes": [], "statements": [ { "expression": { @@ -82502,6 +84023,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52608:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52604:23:14", @@ -82516,6 +84038,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52604:70:14", @@ -82550,6 +84073,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52588:87:14", @@ -82700,10 +84224,12 @@ "id": 23533, "nodeType": "FunctionDefinition", "src": "52688:175:14", + "nodes": [], "body": { "id": 23532, "nodeType": "Block", "src": "52760:103:14", + "nodes": [], "statements": [ { "expression": { @@ -82815,6 +84341,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52790:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52786:23:14", @@ -82829,6 +84356,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52786:69:14", @@ -82863,6 +84391,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52770:86:14", @@ -83013,10 +84542,12 @@ "id": 23556, "nodeType": "FunctionDefinition", "src": "52869:164:14", + "nodes": [], "body": { "id": 23555, "nodeType": "Block", "src": "52932:101:14", + "nodes": [], "statements": [ { "expression": { @@ -83128,6 +84659,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "52962:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "52958:23:14", @@ -83142,6 +84674,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52958:67:14", @@ -83176,6 +84709,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "52942:84:14", @@ -83326,10 +84860,12 @@ "id": 23579, "nodeType": "FunctionDefinition", "src": "53039:170:14", + "nodes": [], "body": { "id": 23578, "nodeType": "Block", "src": "53105:104:14", + "nodes": [], "statements": [ { "expression": { @@ -83441,6 +84977,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53135:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53131:23:14", @@ -83455,6 +84992,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53131:70:14", @@ -83489,6 +85027,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53115:87:14", @@ -83640,10 +85179,12 @@ "id": 23602, "nodeType": "FunctionDefinition", "src": "53215:176:14", + "nodes": [], "body": { "id": 23601, "nodeType": "Block", "src": "53284:107:14", + "nodes": [], "statements": [ { "expression": { @@ -83755,6 +85296,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53314:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53310:23:14", @@ -83769,6 +85311,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53310:73:14", @@ -83803,6 +85346,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53294:90:14", @@ -83954,10 +85498,12 @@ "id": 23625, "nodeType": "FunctionDefinition", "src": "53397:181:14", + "nodes": [], "body": { "id": 23624, "nodeType": "Block", "src": "53472:106:14", + "nodes": [], "statements": [ { "expression": { @@ -84069,6 +85615,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53502:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53498:23:14", @@ -84083,6 +85630,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53498:72:14", @@ -84117,6 +85665,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53482:89:14", @@ -84268,10 +85817,12 @@ "id": 23648, "nodeType": "FunctionDefinition", "src": "53584:170:14", + "nodes": [], "body": { "id": 23647, "nodeType": "Block", "src": "53650:104:14", + "nodes": [], "statements": [ { "expression": { @@ -84383,6 +85934,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53680:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53676:23:14", @@ -84397,6 +85949,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53676:70:14", @@ -84431,6 +85984,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53660:87:14", @@ -84582,10 +86136,12 @@ "id": 23671, "nodeType": "FunctionDefinition", "src": "53760:176:14", + "nodes": [], "body": { "id": 23670, "nodeType": "Block", "src": "53829:107:14", + "nodes": [], "statements": [ { "expression": { @@ -84697,6 +86253,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "53859:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "53855:23:14", @@ -84711,6 +86268,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53855:73:14", @@ -84745,6 +86303,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "53839:90:14", @@ -84897,10 +86456,12 @@ "id": 23694, "nodeType": "FunctionDefinition", "src": "53942:182:14", + "nodes": [], "body": { "id": 23693, "nodeType": "Block", "src": "54014:110:14", + "nodes": [], "statements": [ { "expression": { @@ -85012,6 +86573,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54044:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54040:23:14", @@ -85026,6 +86588,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54040:76:14", @@ -85060,6 +86623,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54024:93:14", @@ -85211,10 +86775,12 @@ "id": 23717, "nodeType": "FunctionDefinition", "src": "54130:187:14", + "nodes": [], "body": { "id": 23716, "nodeType": "Block", "src": "54208:109:14", + "nodes": [], "statements": [ { "expression": { @@ -85326,6 +86892,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54238:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54234:23:14", @@ -85340,6 +86907,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54234:75:14", @@ -85374,6 +86942,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54218:92:14", @@ -85525,10 +87094,12 @@ "id": 23740, "nodeType": "FunctionDefinition", "src": "54323:176:14", + "nodes": [], "body": { "id": 23739, "nodeType": "Block", "src": "54392:107:14", + "nodes": [], "statements": [ { "expression": { @@ -85640,6 +87211,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54422:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54418:23:14", @@ -85654,6 +87226,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54418:73:14", @@ -85688,6 +87261,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54402:90:14", @@ -85839,10 +87413,12 @@ "id": 23763, "nodeType": "FunctionDefinition", "src": "54505:182:14", + "nodes": [], "body": { "id": 23762, "nodeType": "Block", "src": "54577:110:14", + "nodes": [], "statements": [ { "expression": { @@ -85954,6 +87530,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54607:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54603:23:14", @@ -85968,6 +87545,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54603:76:14", @@ -86002,6 +87580,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54587:93:14", @@ -86154,10 +87733,12 @@ "id": 23786, "nodeType": "FunctionDefinition", "src": "54693:187:14", + "nodes": [], "body": { "id": 23785, "nodeType": "Block", "src": "54771:109:14", + "nodes": [], "statements": [ { "expression": { @@ -86269,6 +87850,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "54801:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54797:23:14", @@ -86283,6 +87865,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54797:75:14", @@ -86317,6 +87900,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54781:92:14", @@ -86468,10 +88052,12 @@ "id": 23809, "nodeType": "FunctionDefinition", "src": "54886:192:14", + "nodes": [], "body": { "id": 23808, "nodeType": "Block", "src": "54970:108:14", + "nodes": [], "statements": [ { "expression": { @@ -86583,6 +88169,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55000:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "54996:23:14", @@ -86597,6 +88184,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54996:74:14", @@ -86631,6 +88219,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "54980:91:14", @@ -86782,10 +88371,12 @@ "id": 23832, "nodeType": "FunctionDefinition", "src": "55084:181:14", + "nodes": [], "body": { "id": 23831, "nodeType": "Block", "src": "55159:106:14", + "nodes": [], "statements": [ { "expression": { @@ -86897,6 +88488,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55189:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55185:23:14", @@ -86911,6 +88503,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55185:72:14", @@ -86945,6 +88538,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55169:89:14", @@ -87096,10 +88690,12 @@ "id": 23855, "nodeType": "FunctionDefinition", "src": "55271:187:14", + "nodes": [], "body": { "id": 23854, "nodeType": "Block", "src": "55349:109:14", + "nodes": [], "statements": [ { "expression": { @@ -87211,6 +88807,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55379:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55375:23:14", @@ -87225,6 +88822,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55375:75:14", @@ -87259,6 +88857,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55359:92:14", @@ -87411,10 +89010,12 @@ "id": 23878, "nodeType": "FunctionDefinition", "src": "55464:176:14", + "nodes": [], "body": { "id": 23877, "nodeType": "Block", "src": "55533:107:14", + "nodes": [], "statements": [ { "expression": { @@ -87526,6 +89127,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55563:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55559:23:14", @@ -87540,6 +89142,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55559:73:14", @@ -87574,6 +89177,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55543:90:14", @@ -87725,10 +89329,12 @@ "id": 23901, "nodeType": "FunctionDefinition", "src": "55646:181:14", + "nodes": [], "body": { "id": 23900, "nodeType": "Block", "src": "55721:106:14", + "nodes": [], "statements": [ { "expression": { @@ -87840,6 +89446,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55751:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55747:23:14", @@ -87854,6 +89461,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55747:72:14", @@ -87888,6 +89496,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55731:89:14", @@ -88039,10 +89648,12 @@ "id": 23924, "nodeType": "FunctionDefinition", "src": "55833:170:14", + "nodes": [], "body": { "id": 23923, "nodeType": "Block", "src": "55899:104:14", + "nodes": [], "statements": [ { "expression": { @@ -88154,6 +89765,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "55929:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "55925:23:14", @@ -88168,6 +89780,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55925:70:14", @@ -88202,6 +89815,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "55909:87:14", @@ -88353,10 +89967,12 @@ "id": 23947, "nodeType": "FunctionDefinition", "src": "56009:176:14", + "nodes": [], "body": { "id": 23946, "nodeType": "Block", "src": "56078:107:14", + "nodes": [], "statements": [ { "expression": { @@ -88468,6 +90084,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56108:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56104:23:14", @@ -88482,6 +90099,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56104:73:14", @@ -88516,6 +90134,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56088:90:14", @@ -88668,10 +90287,12 @@ "id": 23970, "nodeType": "FunctionDefinition", "src": "56191:182:14", + "nodes": [], "body": { "id": 23969, "nodeType": "Block", "src": "56263:110:14", + "nodes": [], "statements": [ { "expression": { @@ -88783,6 +90404,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56293:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56289:23:14", @@ -88797,6 +90419,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56289:76:14", @@ -88831,6 +90454,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56273:93:14", @@ -88983,10 +90607,12 @@ "id": 23993, "nodeType": "FunctionDefinition", "src": "56379:187:14", + "nodes": [], "body": { "id": 23992, "nodeType": "Block", "src": "56457:109:14", + "nodes": [], "statements": [ { "expression": { @@ -89098,6 +90724,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56487:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56483:23:14", @@ -89112,6 +90739,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56483:75:14", @@ -89146,6 +90774,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56467:92:14", @@ -89298,10 +90927,12 @@ "id": 24016, "nodeType": "FunctionDefinition", "src": "56572:176:14", + "nodes": [], "body": { "id": 24015, "nodeType": "Block", "src": "56641:107:14", + "nodes": [], "statements": [ { "expression": { @@ -89413,6 +91044,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56671:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56667:23:14", @@ -89427,6 +91059,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56667:73:14", @@ -89461,6 +91094,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56651:90:14", @@ -89613,10 +91247,12 @@ "id": 24039, "nodeType": "FunctionDefinition", "src": "56754:182:14", + "nodes": [], "body": { "id": 24038, "nodeType": "Block", "src": "56826:110:14", + "nodes": [], "statements": [ { "expression": { @@ -89728,6 +91364,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "56856:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "56852:23:14", @@ -89742,6 +91379,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56852:76:14", @@ -89776,6 +91414,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "56836:93:14", @@ -89929,10 +91568,12 @@ "id": 24062, "nodeType": "FunctionDefinition", "src": "56942:188:14", + "nodes": [], "body": { "id": 24061, "nodeType": "Block", "src": "57017:113:14", + "nodes": [], "statements": [ { "expression": { @@ -90044,6 +91685,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57047:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57043:23:14", @@ -90058,6 +91700,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57043:79:14", @@ -90092,6 +91735,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57027:96:14", @@ -90243,10 +91887,12 @@ "id": 24085, "nodeType": "FunctionDefinition", "src": "57136:193:14", + "nodes": [], "body": { "id": 24084, "nodeType": "Block", "src": "57217:112:14", + "nodes": [], "statements": [ { "expression": { @@ -90358,6 +92004,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57247:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57243:23:14", @@ -90372,6 +92019,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57243:78:14", @@ -90406,6 +92054,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57227:95:14", @@ -90557,10 +92206,12 @@ "id": 24108, "nodeType": "FunctionDefinition", "src": "57335:182:14", + "nodes": [], "body": { "id": 24107, "nodeType": "Block", "src": "57407:110:14", + "nodes": [], "statements": [ { "expression": { @@ -90672,6 +92323,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57437:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57433:23:14", @@ -90686,6 +92338,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57433:76:14", @@ -90720,6 +92373,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57417:93:14", @@ -90871,10 +92525,12 @@ "id": 24131, "nodeType": "FunctionDefinition", "src": "57523:188:14", + "nodes": [], "body": { "id": 24130, "nodeType": "Block", "src": "57598:113:14", + "nodes": [], "statements": [ { "expression": { @@ -90986,6 +92642,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57628:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57624:23:14", @@ -91000,6 +92657,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57624:79:14", @@ -91034,6 +92692,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57608:96:14", @@ -91186,10 +92845,12 @@ "id": 24154, "nodeType": "FunctionDefinition", "src": "57717:193:14", + "nodes": [], "body": { "id": 24153, "nodeType": "Block", "src": "57798:112:14", + "nodes": [], "statements": [ { "expression": { @@ -91301,6 +92962,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "57828:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "57824:23:14", @@ -91315,6 +92977,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57824:78:14", @@ -91349,6 +93012,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "57808:95:14", @@ -91500,10 +93164,12 @@ "id": 24177, "nodeType": "FunctionDefinition", "src": "57916:198:14", + "nodes": [], "body": { "id": 24176, "nodeType": "Block", "src": "58003:111:14", + "nodes": [], "statements": [ { "expression": { @@ -91615,6 +93281,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58033:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58029:23:14", @@ -91629,6 +93296,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58029:77:14", @@ -91663,6 +93331,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58013:94:14", @@ -91814,10 +93483,12 @@ "id": 24200, "nodeType": "FunctionDefinition", "src": "58120:187:14", + "nodes": [], "body": { "id": 24199, "nodeType": "Block", "src": "58198:109:14", + "nodes": [], "statements": [ { "expression": { @@ -91929,6 +93600,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58228:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58224:23:14", @@ -91943,6 +93615,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58224:75:14", @@ -91977,6 +93650,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58208:92:14", @@ -92128,10 +93802,12 @@ "id": 24223, "nodeType": "FunctionDefinition", "src": "58313:193:14", + "nodes": [], "body": { "id": 24222, "nodeType": "Block", "src": "58394:112:14", + "nodes": [], "statements": [ { "expression": { @@ -92243,6 +93919,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58424:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58420:23:14", @@ -92257,6 +93934,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58420:78:14", @@ -92291,6 +93969,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58404:95:14", @@ -92443,10 +94122,12 @@ "id": 24246, "nodeType": "FunctionDefinition", "src": "58512:182:14", + "nodes": [], "body": { "id": 24245, "nodeType": "Block", "src": "58584:110:14", + "nodes": [], "statements": [ { "expression": { @@ -92558,6 +94239,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58614:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58610:23:14", @@ -92572,6 +94254,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58610:76:14", @@ -92606,6 +94289,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58594:93:14", @@ -92757,10 +94441,12 @@ "id": 24269, "nodeType": "FunctionDefinition", "src": "58700:187:14", + "nodes": [], "body": { "id": 24268, "nodeType": "Block", "src": "58778:109:14", + "nodes": [], "statements": [ { "expression": { @@ -92872,6 +94558,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58808:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58804:23:14", @@ -92886,6 +94573,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58804:75:14", @@ -92920,6 +94608,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58788:92:14", @@ -93071,10 +94760,12 @@ "id": 24292, "nodeType": "FunctionDefinition", "src": "58893:176:14", + "nodes": [], "body": { "id": 24291, "nodeType": "Block", "src": "58962:107:14", + "nodes": [], "statements": [ { "expression": { @@ -93186,6 +94877,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "58992:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "58988:23:14", @@ -93200,6 +94892,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58988:73:14", @@ -93234,6 +94927,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "58972:90:14", @@ -93385,10 +95079,12 @@ "id": 24315, "nodeType": "FunctionDefinition", "src": "59075:182:14", + "nodes": [], "body": { "id": 24314, "nodeType": "Block", "src": "59147:110:14", + "nodes": [], "statements": [ { "expression": { @@ -93500,6 +95196,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59177:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59173:23:14", @@ -93514,6 +95211,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59173:76:14", @@ -93548,6 +95246,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59157:93:14", @@ -93700,10 +95399,12 @@ "id": 24338, "nodeType": "FunctionDefinition", "src": "59263:188:14", + "nodes": [], "body": { "id": 24337, "nodeType": "Block", "src": "59338:113:14", + "nodes": [], "statements": [ { "expression": { @@ -93815,6 +95516,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59368:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59364:23:14", @@ -93829,6 +95531,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59364:79:14", @@ -93863,6 +95566,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59348:96:14", @@ -94015,10 +95719,12 @@ "id": 24361, "nodeType": "FunctionDefinition", "src": "59457:193:14", + "nodes": [], "body": { "id": 24360, "nodeType": "Block", "src": "59538:112:14", + "nodes": [], "statements": [ { "expression": { @@ -94130,6 +95836,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59568:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59564:23:14", @@ -94144,6 +95851,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59564:78:14", @@ -94178,6 +95886,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59548:95:14", @@ -94330,10 +96039,12 @@ "id": 24384, "nodeType": "FunctionDefinition", "src": "59656:182:14", + "nodes": [], "body": { "id": 24383, "nodeType": "Block", "src": "59728:110:14", + "nodes": [], "statements": [ { "expression": { @@ -94445,6 +96156,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59758:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59754:23:14", @@ -94459,6 +96171,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59754:76:14", @@ -94493,6 +96206,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59738:93:14", @@ -94645,10 +96359,12 @@ "id": 24407, "nodeType": "FunctionDefinition", "src": "59844:188:14", + "nodes": [], "body": { "id": 24406, "nodeType": "Block", "src": "59919:113:14", + "nodes": [], "statements": [ { "expression": { @@ -94760,6 +96476,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "59949:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "59945:23:14", @@ -94774,6 +96491,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59945:79:14", @@ -94808,6 +96526,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "59929:96:14", @@ -94961,10 +96680,12 @@ "id": 24430, "nodeType": "FunctionDefinition", "src": "60038:193:14", + "nodes": [], "body": { "id": 24429, "nodeType": "Block", "src": "60119:112:14", + "nodes": [], "statements": [ { "expression": { @@ -95076,6 +96797,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60149:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60145:23:14", @@ -95090,6 +96812,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60145:78:14", @@ -95124,6 +96847,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60129:95:14", @@ -95275,10 +96999,12 @@ "id": 24453, "nodeType": "FunctionDefinition", "src": "60237:198:14", + "nodes": [], "body": { "id": 24452, "nodeType": "Block", "src": "60324:111:14", + "nodes": [], "statements": [ { "expression": { @@ -95390,6 +97116,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60354:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60350:23:14", @@ -95404,6 +97131,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60350:77:14", @@ -95438,6 +97166,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60334:94:14", @@ -95589,10 +97318,12 @@ "id": 24476, "nodeType": "FunctionDefinition", "src": "60441:187:14", + "nodes": [], "body": { "id": 24475, "nodeType": "Block", "src": "60519:109:14", + "nodes": [], "statements": [ { "expression": { @@ -95704,6 +97435,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60549:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60545:23:14", @@ -95718,6 +97450,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60545:75:14", @@ -95752,6 +97485,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60529:92:14", @@ -95903,10 +97637,12 @@ "id": 24499, "nodeType": "FunctionDefinition", "src": "60634:193:14", + "nodes": [], "body": { "id": 24498, "nodeType": "Block", "src": "60715:112:14", + "nodes": [], "statements": [ { "expression": { @@ -96018,6 +97754,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60745:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60741:23:14", @@ -96032,6 +97769,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60741:78:14", @@ -96066,6 +97804,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60725:95:14", @@ -96218,10 +97957,12 @@ "id": 24522, "nodeType": "FunctionDefinition", "src": "60833:198:14", + "nodes": [], "body": { "id": 24521, "nodeType": "Block", "src": "60920:111:14", + "nodes": [], "statements": [ { "expression": { @@ -96333,6 +98074,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "60950:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "60946:23:14", @@ -96347,6 +98089,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60946:77:14", @@ -96381,6 +98124,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "60930:94:14", @@ -96532,10 +98276,12 @@ "id": 24545, "nodeType": "FunctionDefinition", "src": "61037:203:14", + "nodes": [], "body": { "id": 24544, "nodeType": "Block", "src": "61130:110:14", + "nodes": [], "statements": [ { "expression": { @@ -96647,6 +98393,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61160:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61156:23:14", @@ -96661,6 +98408,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61156:76:14", @@ -96695,6 +98443,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61140:93:14", @@ -96846,10 +98595,12 @@ "id": 24568, "nodeType": "FunctionDefinition", "src": "61246:192:14", + "nodes": [], "body": { "id": 24567, "nodeType": "Block", "src": "61330:108:14", + "nodes": [], "statements": [ { "expression": { @@ -96961,6 +98712,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61360:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61356:23:14", @@ -96975,6 +98727,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61356:74:14", @@ -97009,6 +98762,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61340:91:14", @@ -97160,10 +98914,12 @@ "id": 24591, "nodeType": "FunctionDefinition", "src": "61444:198:14", + "nodes": [], "body": { "id": 24590, "nodeType": "Block", "src": "61531:111:14", + "nodes": [], "statements": [ { "expression": { @@ -97275,6 +99031,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61561:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61557:23:14", @@ -97289,6 +99046,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61557:77:14", @@ -97323,6 +99081,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61541:94:14", @@ -97475,10 +99234,12 @@ "id": 24614, "nodeType": "FunctionDefinition", "src": "61648:187:14", + "nodes": [], "body": { "id": 24613, "nodeType": "Block", "src": "61726:109:14", + "nodes": [], "statements": [ { "expression": { @@ -97590,6 +99351,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61756:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61752:23:14", @@ -97604,6 +99366,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61752:75:14", @@ -97638,6 +99401,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61736:92:14", @@ -97789,10 +99553,12 @@ "id": 24637, "nodeType": "FunctionDefinition", "src": "61841:192:14", + "nodes": [], "body": { "id": 24636, "nodeType": "Block", "src": "61925:108:14", + "nodes": [], "statements": [ { "expression": { @@ -97904,6 +99670,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "61955:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "61951:23:14", @@ -97918,6 +99685,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61951:74:14", @@ -97952,6 +99720,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "61935:91:14", @@ -98103,10 +99872,12 @@ "id": 24660, "nodeType": "FunctionDefinition", "src": "62039:181:14", + "nodes": [], "body": { "id": 24659, "nodeType": "Block", "src": "62114:106:14", + "nodes": [], "statements": [ { "expression": { @@ -98218,6 +99989,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62144:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62140:23:14", @@ -98232,6 +100004,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62140:72:14", @@ -98266,6 +100039,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62124:89:14", @@ -98417,10 +100191,12 @@ "id": 24683, "nodeType": "FunctionDefinition", "src": "62226:187:14", + "nodes": [], "body": { "id": 24682, "nodeType": "Block", "src": "62304:109:14", + "nodes": [], "statements": [ { "expression": { @@ -98532,6 +100308,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62334:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62330:23:14", @@ -98546,6 +100323,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62330:75:14", @@ -98580,6 +100358,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62314:92:14", @@ -98732,10 +100511,12 @@ "id": 24706, "nodeType": "FunctionDefinition", "src": "62419:193:14", + "nodes": [], "body": { "id": 24705, "nodeType": "Block", "src": "62500:112:14", + "nodes": [], "statements": [ { "expression": { @@ -98847,6 +100628,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62530:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62526:23:14", @@ -98861,6 +100643,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62526:78:14", @@ -98895,6 +100678,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62510:95:14", @@ -99047,10 +100831,12 @@ "id": 24729, "nodeType": "FunctionDefinition", "src": "62618:198:14", + "nodes": [], "body": { "id": 24728, "nodeType": "Block", "src": "62705:111:14", + "nodes": [], "statements": [ { "expression": { @@ -99162,6 +100948,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62735:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62731:23:14", @@ -99176,6 +100963,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62731:77:14", @@ -99210,6 +100998,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62715:94:14", @@ -99362,10 +101151,12 @@ "id": 24752, "nodeType": "FunctionDefinition", "src": "62822:187:14", + "nodes": [], "body": { "id": 24751, "nodeType": "Block", "src": "62900:109:14", + "nodes": [], "statements": [ { "expression": { @@ -99477,6 +101268,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "62930:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "62926:23:14", @@ -99491,6 +101283,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62926:75:14", @@ -99525,6 +101318,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "62910:92:14", @@ -99677,10 +101471,12 @@ "id": 24775, "nodeType": "FunctionDefinition", "src": "63015:193:14", + "nodes": [], "body": { "id": 24774, "nodeType": "Block", "src": "63096:112:14", + "nodes": [], "statements": [ { "expression": { @@ -99792,6 +101588,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63126:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63122:23:14", @@ -99806,6 +101603,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63122:78:14", @@ -99840,6 +101638,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63106:95:14", @@ -99993,10 +101792,12 @@ "id": 24798, "nodeType": "FunctionDefinition", "src": "63214:182:14", + "nodes": [], "body": { "id": 24797, "nodeType": "Block", "src": "63286:110:14", + "nodes": [], "statements": [ { "expression": { @@ -100108,6 +101909,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63316:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63312:23:14", @@ -100122,6 +101924,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63312:76:14", @@ -100156,6 +101959,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63296:93:14", @@ -100307,10 +102111,12 @@ "id": 24821, "nodeType": "FunctionDefinition", "src": "63402:187:14", + "nodes": [], "body": { "id": 24820, "nodeType": "Block", "src": "63480:109:14", + "nodes": [], "statements": [ { "expression": { @@ -100422,6 +102228,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63510:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63506:23:14", @@ -100436,6 +102243,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63506:75:14", @@ -100470,6 +102278,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63490:92:14", @@ -100621,10 +102430,12 @@ "id": 24844, "nodeType": "FunctionDefinition", "src": "63595:176:14", + "nodes": [], "body": { "id": 24843, "nodeType": "Block", "src": "63664:107:14", + "nodes": [], "statements": [ { "expression": { @@ -100736,6 +102547,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63694:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63690:23:14", @@ -100750,6 +102562,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63690:73:14", @@ -100784,6 +102597,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63674:90:14", @@ -100935,10 +102749,12 @@ "id": 24867, "nodeType": "FunctionDefinition", "src": "63777:182:14", + "nodes": [], "body": { "id": 24866, "nodeType": "Block", "src": "63849:110:14", + "nodes": [], "statements": [ { "expression": { @@ -101050,6 +102866,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "63879:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "63875:23:14", @@ -101064,6 +102881,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63875:76:14", @@ -101098,6 +102916,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "63859:93:14", @@ -101250,10 +103069,12 @@ "id": 24890, "nodeType": "FunctionDefinition", "src": "63965:187:14", + "nodes": [], "body": { "id": 24889, "nodeType": "Block", "src": "64043:109:14", + "nodes": [], "statements": [ { "expression": { @@ -101365,6 +103186,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64073:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64069:23:14", @@ -101379,6 +103201,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64069:75:14", @@ -101413,6 +103236,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64053:92:14", @@ -101564,10 +103388,12 @@ "id": 24913, "nodeType": "FunctionDefinition", "src": "64158:192:14", + "nodes": [], "body": { "id": 24912, "nodeType": "Block", "src": "64242:108:14", + "nodes": [], "statements": [ { "expression": { @@ -101679,6 +103505,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64272:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64268:23:14", @@ -101693,6 +103520,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64268:74:14", @@ -101727,6 +103555,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64252:91:14", @@ -101878,10 +103707,12 @@ "id": 24936, "nodeType": "FunctionDefinition", "src": "64356:181:14", + "nodes": [], "body": { "id": 24935, "nodeType": "Block", "src": "64431:106:14", + "nodes": [], "statements": [ { "expression": { @@ -101993,6 +103824,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64461:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64457:23:14", @@ -102007,6 +103839,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64457:72:14", @@ -102041,6 +103874,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64441:89:14", @@ -102192,10 +104026,12 @@ "id": 24959, "nodeType": "FunctionDefinition", "src": "64543:187:14", + "nodes": [], "body": { "id": 24958, "nodeType": "Block", "src": "64621:109:14", + "nodes": [], "statements": [ { "expression": { @@ -102307,6 +104143,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64651:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64647:23:14", @@ -102321,6 +104158,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64647:75:14", @@ -102355,6 +104193,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64631:92:14", @@ -102507,10 +104346,12 @@ "id": 24982, "nodeType": "FunctionDefinition", "src": "64736:176:14", + "nodes": [], "body": { "id": 24981, "nodeType": "Block", "src": "64805:107:14", + "nodes": [], "statements": [ { "expression": { @@ -102622,6 +104463,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "64835:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "64831:23:14", @@ -102636,6 +104478,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64831:73:14", @@ -102670,6 +104513,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "64815:90:14", @@ -102821,10 +104665,12 @@ "id": 25005, "nodeType": "FunctionDefinition", "src": "64918:181:14", + "nodes": [], "body": { "id": 25004, "nodeType": "Block", "src": "64993:106:14", + "nodes": [], "statements": [ { "expression": { @@ -102936,6 +104782,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65023:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65019:23:14", @@ -102950,6 +104797,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65019:72:14", @@ -102984,6 +104832,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65003:89:14", @@ -103135,10 +104984,12 @@ "id": 25028, "nodeType": "FunctionDefinition", "src": "65105:170:14", + "nodes": [], "body": { "id": 25027, "nodeType": "Block", "src": "65171:104:14", + "nodes": [], "statements": [ { "expression": { @@ -103250,6 +105101,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65201:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65197:23:14", @@ -103264,6 +105116,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65197:70:14", @@ -103298,6 +105151,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65181:87:14", @@ -103449,10 +105303,12 @@ "id": 25051, "nodeType": "FunctionDefinition", "src": "65281:176:14", + "nodes": [], "body": { "id": 25050, "nodeType": "Block", "src": "65350:107:14", + "nodes": [], "statements": [ { "expression": { @@ -103564,6 +105420,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65380:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65376:23:14", @@ -103578,6 +105435,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65376:73:14", @@ -103612,6 +105470,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65360:90:14", @@ -103764,10 +105623,12 @@ "id": 25074, "nodeType": "FunctionDefinition", "src": "65463:182:14", + "nodes": [], "body": { "id": 25073, "nodeType": "Block", "src": "65535:110:14", + "nodes": [], "statements": [ { "expression": { @@ -103879,6 +105740,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65565:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65561:23:14", @@ -103893,6 +105755,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65561:76:14", @@ -103927,6 +105790,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65545:93:14", @@ -104079,10 +105943,12 @@ "id": 25097, "nodeType": "FunctionDefinition", "src": "65651:187:14", + "nodes": [], "body": { "id": 25096, "nodeType": "Block", "src": "65729:109:14", + "nodes": [], "statements": [ { "expression": { @@ -104194,6 +106060,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65759:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65755:23:14", @@ -104208,6 +106075,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65755:75:14", @@ -104242,6 +106110,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65739:92:14", @@ -104394,10 +106263,12 @@ "id": 25120, "nodeType": "FunctionDefinition", "src": "65844:176:14", + "nodes": [], "body": { "id": 25119, "nodeType": "Block", "src": "65913:107:14", + "nodes": [], "statements": [ { "expression": { @@ -104509,6 +106380,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "65943:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "65939:23:14", @@ -104523,6 +106395,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65939:73:14", @@ -104557,6 +106430,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "65923:90:14", @@ -104709,10 +106583,12 @@ "id": 25143, "nodeType": "FunctionDefinition", "src": "66026:182:14", + "nodes": [], "body": { "id": 25142, "nodeType": "Block", "src": "66098:110:14", + "nodes": [], "statements": [ { "expression": { @@ -104824,6 +106700,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66128:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66124:23:14", @@ -104838,6 +106715,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66124:76:14", @@ -104872,6 +106750,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66108:93:14", @@ -105025,10 +106904,12 @@ "id": 25166, "nodeType": "FunctionDefinition", "src": "66214:188:14", + "nodes": [], "body": { "id": 25165, "nodeType": "Block", "src": "66289:113:14", + "nodes": [], "statements": [ { "expression": { @@ -105140,6 +107021,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66319:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66315:23:14", @@ -105154,6 +107036,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66315:79:14", @@ -105188,6 +107071,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66299:96:14", @@ -105340,10 +107224,12 @@ "id": 25189, "nodeType": "FunctionDefinition", "src": "66408:193:14", + "nodes": [], "body": { "id": 25188, "nodeType": "Block", "src": "66489:112:14", + "nodes": [], "statements": [ { "expression": { @@ -105455,6 +107341,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66519:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66515:23:14", @@ -105469,6 +107356,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66515:78:14", @@ -105503,6 +107391,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66499:95:14", @@ -105655,10 +107544,12 @@ "id": 25212, "nodeType": "FunctionDefinition", "src": "66607:182:14", + "nodes": [], "body": { "id": 25211, "nodeType": "Block", "src": "66679:110:14", + "nodes": [], "statements": [ { "expression": { @@ -105770,6 +107661,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66709:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66705:23:14", @@ -105784,6 +107676,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66705:76:14", @@ -105818,6 +107711,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66689:93:14", @@ -105970,10 +107864,12 @@ "id": 25235, "nodeType": "FunctionDefinition", "src": "66795:188:14", + "nodes": [], "body": { "id": 25234, "nodeType": "Block", "src": "66870:113:14", + "nodes": [], "statements": [ { "expression": { @@ -106085,6 +107981,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "66900:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "66896:23:14", @@ -106099,6 +107996,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66896:79:14", @@ -106133,6 +108031,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "66880:96:14", @@ -106286,10 +108185,12 @@ "id": 25258, "nodeType": "FunctionDefinition", "src": "66989:193:14", + "nodes": [], "body": { "id": 25257, "nodeType": "Block", "src": "67070:112:14", + "nodes": [], "statements": [ { "expression": { @@ -106401,6 +108302,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "67100:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67096:23:14", @@ -106415,6 +108317,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67096:78:14", @@ -106449,6 +108352,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67080:95:14", @@ -106601,10 +108505,12 @@ "id": 25281, "nodeType": "FunctionDefinition", "src": "67188:198:14", + "nodes": [], "body": { "id": 25280, "nodeType": "Block", "src": "67275:111:14", + "nodes": [], "statements": [ { "expression": { @@ -106716,6 +108622,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "67305:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67301:23:14", @@ -106730,6 +108637,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67301:77:14", @@ -106764,6 +108672,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67285:94:14", @@ -106916,10 +108825,12 @@ "id": 25304, "nodeType": "FunctionDefinition", "src": "67392:187:14", + "nodes": [], "body": { "id": 25303, "nodeType": "Block", "src": "67470:109:14", + "nodes": [], "statements": [ { "expression": { @@ -107031,6 +108942,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "67500:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67496:23:14", @@ -107045,6 +108957,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67496:75:14", @@ -107079,6 +108992,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67480:92:14", @@ -107231,10 +109145,12 @@ "id": 25327, "nodeType": "FunctionDefinition", "src": "67585:193:14", + "nodes": [], "body": { "id": 25326, "nodeType": "Block", "src": "67666:112:14", + "nodes": [], "statements": [ { "expression": { @@ -107346,6 +109262,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "67696:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67692:23:14", @@ -107360,6 +109277,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67692:78:14", @@ -107394,6 +109312,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67676:95:14", @@ -107547,10 +109466,12 @@ "id": 25350, "nodeType": "FunctionDefinition", "src": "67784:182:14", + "nodes": [], "body": { "id": 25349, "nodeType": "Block", "src": "67856:110:14", + "nodes": [], "statements": [ { "expression": { @@ -107662,6 +109583,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "67886:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "67882:23:14", @@ -107676,6 +109598,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67882:76:14", @@ -107710,6 +109633,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "67866:93:14", @@ -107862,10 +109786,12 @@ "id": 25373, "nodeType": "FunctionDefinition", "src": "67972:187:14", + "nodes": [], "body": { "id": 25372, "nodeType": "Block", "src": "68050:109:14", + "nodes": [], "statements": [ { "expression": { @@ -107977,6 +109903,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "68080:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68076:23:14", @@ -107991,6 +109918,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68076:75:14", @@ -108025,6 +109953,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68060:92:14", @@ -108177,10 +110106,12 @@ "id": 25396, "nodeType": "FunctionDefinition", "src": "68165:176:14", + "nodes": [], "body": { "id": 25395, "nodeType": "Block", "src": "68234:107:14", + "nodes": [], "statements": [ { "expression": { @@ -108292,6 +110223,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "68264:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68260:23:14", @@ -108306,6 +110238,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68260:73:14", @@ -108340,6 +110273,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68244:90:14", @@ -108492,10 +110426,12 @@ "id": 25419, "nodeType": "FunctionDefinition", "src": "68347:182:14", + "nodes": [], "body": { "id": 25418, "nodeType": "Block", "src": "68419:110:14", + "nodes": [], "statements": [ { "expression": { @@ -108607,6 +110543,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "68449:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68445:23:14", @@ -108621,6 +110558,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68445:76:14", @@ -108655,6 +110593,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68429:93:14", @@ -108808,10 +110747,12 @@ "id": 25442, "nodeType": "FunctionDefinition", "src": "68535:188:14", + "nodes": [], "body": { "id": 25441, "nodeType": "Block", "src": "68610:113:14", + "nodes": [], "statements": [ { "expression": { @@ -108923,6 +110864,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "68640:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68636:23:14", @@ -108937,6 +110879,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68636:79:14", @@ -108971,6 +110914,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68620:96:14", @@ -109124,10 +111068,12 @@ "id": 25465, "nodeType": "FunctionDefinition", "src": "68729:193:14", + "nodes": [], "body": { "id": 25464, "nodeType": "Block", "src": "68810:112:14", + "nodes": [], "statements": [ { "expression": { @@ -109239,6 +111185,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "68840:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "68836:23:14", @@ -109253,6 +111200,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68836:78:14", @@ -109287,6 +111235,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "68820:95:14", @@ -109440,10 +111389,12 @@ "id": 25488, "nodeType": "FunctionDefinition", "src": "68928:182:14", + "nodes": [], "body": { "id": 25487, "nodeType": "Block", "src": "69000:110:14", + "nodes": [], "statements": [ { "expression": { @@ -109555,6 +111506,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "69030:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "69026:23:14", @@ -109569,6 +111521,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69026:76:14", @@ -109603,6 +111556,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69010:93:14", @@ -109756,10 +111710,12 @@ "id": 25511, "nodeType": "FunctionDefinition", "src": "69116:188:14", + "nodes": [], "body": { "id": 25510, "nodeType": "Block", "src": "69191:113:14", + "nodes": [], "statements": [ { "expression": { @@ -109871,6 +111827,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "69221:19:14", "memberName": "encodeWithSignature", "nodeType": "MemberAccess", "src": "69217:23:14", @@ -109885,6 +111842,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69217:79:14", @@ -109919,6 +111877,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "69201:96:14", diff --git a/out/test.sol/DSTest.json b/out/test.sol/DSTest.json index 8e57027..9c89afb 100644 --- a/out/test.sol/DSTest.json +++ b/out/test.sol/DSTest.json @@ -296,19 +296,362 @@ } ], "bytecode": { - "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b506102598061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212205604e6eb3af0cee6761e0f0a6af86ca165749c50cae10bd75ef29b3fa6334d7f64736f6c634300080f0033", + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5061024e8061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101bf565b60408051601f198184030181529082905261012c916101e3565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b509150508080602001905181019061018691906101f6565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b50600093019283525090919050565b6001600160e01b03198316815260006101db600483018461018f565b949350505050565b60006101ef828461018f565b9392505050565b60006020828403121561020857600080fd5b815180151581146101ef57600080fdfea26469706673582212204ee3101c9c12fe2d58575b126113957847d2e8350823f104b6f1697b3aa96f3a64736f6c63430008110033", "sourceMap": "715:15435:0:-:0;;;1572:26;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;715:15435;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212205604e6eb3af0cee6761e0f0a6af86ca165749c50cae10bd75ef29b3fa6334d7f64736f6c634300080f0033", - "sourceMap": "715:15435:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1819:584;;;:::i;:::-;;;179:14:32;;172:22;154:41;;142:2;127:18;1819:584:0;;;;;;;1572:26;;;;;;;;;1819:584;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;380:51:32;;;-1:-1:-1;;;447:18:32;;;440:34;2196:43:0;;;;;;;;;353:18:32;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;485:336:32:-;526:3;564:5;558:12;588:1;598:128;612:6;609:1;606:13;598:128;;;709:4;694:13;;;690:24;;684:31;671:11;;;664:52;627:12;598:128;;;744:6;741:1;738:13;735:48;;;779:1;770:6;765:3;761:16;754:27;735:48;-1:-1:-1;799:16:32;;;;;485:336;-1:-1:-1;;485:336:32:o;826:278::-;-1:-1:-1;;;;;;1011:33:32;;999:46;;981:3;1061:37;1095:1;1086:11;;1078:6;1061:37;:::i;:::-;1054:44;826:278;-1:-1:-1;;;;826:278:32:o;1109:189::-;1238:3;1263:29;1288:3;1280:6;1263:29;:::i;:::-;1256:36;1109:189;-1:-1:-1;;;1109:189:32:o;1303:277::-;1370:6;1423:2;1411:9;1402:7;1398:23;1394:32;1391:52;;;1439:1;1436;1429:12;1391:52;1471:9;1465:16;1524:5;1517:13;1510:21;1503:5;1500:32;1490:60;;1546:1;1543;1536:12", + "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101bf565b60408051601f198184030181529082905261012c916101e3565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b509150508080602001905181019061018691906101f6565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b50600093019283525090919050565b6001600160e01b03198316815260006101db600483018461018f565b949350505050565b60006101ef828461018f565b9392505050565b60006020828403121561020857600080fd5b815180151581146101ef57600080fdfea26469706673582212204ee3101c9c12fe2d58575b126113957847d2e8350823f104b6f1697b3aa96f3a64736f6c63430008110033", + "sourceMap": "715:15435:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1819:584;;;:::i;:::-;;;179:14:32;;172:22;154:41;;142:2;127:18;1819:584:0;;;;;;;1572:26;;;;;;;;;1819:584;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;380:51:32;;;-1:-1:-1;;;447:18:32;;;440:34;2196:43:0;;;;;;;;;353:18:32;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;485:322:32:-;526:3;564:5;558:12;588:1;598:128;612:6;609:1;606:13;598:128;;;709:4;694:13;;;690:24;;684:31;671:11;;;664:52;627:12;598:128;;;-1:-1:-1;781:1:32;745:16;;770:13;;;-1:-1:-1;745:16:32;;485:322;-1:-1:-1;485:322:32:o;812:278::-;-1:-1:-1;;;;;;997:33:32;;985:46;;967:3;1047:37;1081:1;1072:11;;1064:6;1047:37;:::i;:::-;1040:44;812:278;-1:-1:-1;;;;812:278:32:o;1095:189::-;1224:3;1249:29;1274:3;1266:6;1249:29;:::i;:::-;1242:36;1095:189;-1:-1:-1;;;1095:189:32:o;1289:277::-;1356:6;1409:2;1397:9;1388:7;1384:23;1380:32;1377:52;;;1425:1;1422;1415:12;1377:52;1457:9;1451:16;1510:5;1503:13;1496:21;1489:5;1486:32;1476:60;;1532:1;1529;1522:12", "linkReferences": {} }, "methodIdentifiers": { "IS_TEST()": "fa7626d4", "failed()": "ba414fa6" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/lib/ds-test/src/test.sol\":\"DSTest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "val", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_named_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes", + "name": "val", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "val", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "val", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_named_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "logs", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/lib/ds-test/src/test.sol": "DSTest" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", "id": 1787, @@ -324,6 +667,7 @@ "id": 1, "nodeType": "PragmaDirective", "src": "689:24:0", + "nodes": [], "literals": [ "solidity", ">=", @@ -340,6 +684,7 @@ "id": 5, "nodeType": "EventDefinition", "src": "737:38:0", + "nodes": [], "anonymous": false, "eventSelector": "41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", "name": "log", @@ -384,6 +729,7 @@ "id": 9, "nodeType": "EventDefinition", "src": "780:37:0", + "nodes": [], "anonymous": false, "eventSelector": "e7950ede0394b9f2ce4a5a1bf5a7e1852411f7e6661b4308c913c4bfd11027e4", "name": "logs", @@ -428,6 +774,7 @@ "id": 13, "nodeType": "EventDefinition", "src": "823:39:0", + "nodes": [], "anonymous": false, "eventSelector": "7ae74c527414ae135fd97047b12921a5ec3911b804197855d67e25c7b75ee6f3", "name": "log_address", @@ -473,6 +820,7 @@ "id": 17, "nodeType": "EventDefinition", "src": "867:39:0", + "nodes": [], "anonymous": false, "eventSelector": "e81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e3", "name": "log_bytes32", @@ -517,6 +865,7 @@ "id": 21, "nodeType": "EventDefinition", "src": "911:35:0", + "nodes": [], "anonymous": false, "eventSelector": "0eb5d52624c8d28ada9fc55a8c502ed5aa3fbe2fb6e91b71b5f376882b1d2fb8", "name": "log_int", @@ -561,6 +910,7 @@ "id": 25, "nodeType": "EventDefinition", "src": "951:36:0", + "nodes": [], "anonymous": false, "eventSelector": "2cab9790510fd8bdfbd2115288db33fec66691d476efc5427cfd4c0969301755", "name": "log_uint", @@ -605,6 +955,7 @@ "id": 29, "nodeType": "EventDefinition", "src": "992:37:0", + "nodes": [], "anonymous": false, "eventSelector": "23b62ad0584d24a75f0bf3560391ef5659ec6db1269c56e11aa241d637f19b20", "name": "log_bytes", @@ -649,6 +1000,7 @@ "id": 33, "nodeType": "EventDefinition", "src": "1034:38:0", + "nodes": [], "anonymous": false, "eventSelector": "0b2e13ff20ac7b474198655583edf70dedd2c1dc980e329c4fbb2fc0748b796b", "name": "log_string", @@ -693,6 +1045,7 @@ "id": 39, "nodeType": "EventDefinition", "src": "1078:55:0", + "nodes": [], "anonymous": false, "eventSelector": "9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f", "name": "log_named_address", @@ -766,6 +1119,7 @@ "id": 45, "nodeType": "EventDefinition", "src": "1138:55:0", + "nodes": [], "anonymous": false, "eventSelector": "afb795c9c61e4fe7468c386f925d7a5429ecad9c0495ddb8d38d690614d32f99", "name": "log_named_bytes32", @@ -838,6 +1192,7 @@ "id": 53, "nodeType": "EventDefinition", "src": "1198:66:0", + "nodes": [], "anonymous": false, "eventSelector": "5da6ce9d51151ba10c09a559ef24d520b9dac5c5b8810ae8434e4d0d86411a95", "name": "log_named_decimal_int", @@ -938,6 +1293,7 @@ "id": 61, "nodeType": "EventDefinition", "src": "1269:67:0", + "nodes": [], "anonymous": false, "eventSelector": "eb8ba43ced7537421946bd43e828b8b2b8428927aa8f801c13d934bf11aca57b", "name": "log_named_decimal_uint", @@ -1038,6 +1394,7 @@ "id": 67, "nodeType": "EventDefinition", "src": "1341:51:0", + "nodes": [], "anonymous": false, "eventSelector": "2fe632779174374378442a8e978bccfbdcc1d6b2b0d81f7e8eb776ab2286f168", "name": "log_named_int", @@ -1110,6 +1467,7 @@ "id": 73, "nodeType": "EventDefinition", "src": "1397:52:0", + "nodes": [], "anonymous": false, "eventSelector": "b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8", "name": "log_named_uint", @@ -1182,6 +1540,7 @@ "id": 79, "nodeType": "EventDefinition", "src": "1454:53:0", + "nodes": [], "anonymous": false, "eventSelector": "d26e16cad4548705e4c9e2d94f98ee91c289085ee425594fd5635fa2964ccf18", "name": "log_named_bytes", @@ -1254,6 +1613,7 @@ "id": 85, "nodeType": "EventDefinition", "src": "1512:54:0", + "nodes": [], "anonymous": false, "eventSelector": "280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583", "name": "log_named_string", @@ -1326,6 +1686,7 @@ "id": 88, "nodeType": "VariableDeclaration", "src": "1572:26:0", + "nodes": [], "constant": false, "functionSelector": "fa7626d4", "mutability": "mutable", @@ -1370,6 +1731,7 @@ "id": 90, "nodeType": "VariableDeclaration", "src": "1604:20:0", + "nodes": [], "constant": false, "mutability": "mutable", "name": "_failed", @@ -1397,6 +1759,7 @@ "id": 107, "nodeType": "VariableDeclaration", "src": "1631:104:0", + "nodes": [], "constant": true, "mutability": "constant", "name": "HEVM_ADDRESS", @@ -1470,6 +1833,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1703:28:0", @@ -1512,6 +1876,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1695:37:0", @@ -1554,6 +1919,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1687:46:0", @@ -1596,6 +1962,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1679:55:0", @@ -1638,6 +2005,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1671:64:0", @@ -1653,10 +2021,12 @@ "id": 111, "nodeType": "ModifierDefinition", "src": "1742:27:0", + "nodes": [], "body": { "id": 110, "nodeType": "Block", "src": "1763:6:0", + "nodes": [], "statements": [ { "id": 109, @@ -1680,10 +2050,12 @@ "id": 117, "nodeType": "ModifierDefinition", "src": "1774:39:0", + "nodes": [], "body": { "id": 116, "nodeType": "Block", "src": "1807:6:0", + "nodes": [], "statements": [ { "id": 115, @@ -1735,10 +2107,12 @@ "id": 172, "nodeType": "FunctionDefinition", "src": "1819:584:0", + "nodes": [], "body": { "id": 171, "nodeType": "Block", "src": "1859:544:0", + "nodes": [], "statements": [ { "condition": { @@ -1833,6 +2207,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1984:16:0", @@ -1935,6 +2310,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2135:34:0", @@ -1977,6 +2353,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2128:42:0", @@ -2051,6 +2428,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2221:17:0", @@ -2089,6 +2467,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2200:6:0", "memberName": "encode", "nodeType": "MemberAccess", "src": "2196:10:0", @@ -2103,6 +2482,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2196:43:0", @@ -2141,6 +2521,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2090:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2086:16:0", @@ -2155,6 +2536,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2086:175:0", @@ -2189,6 +2571,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2060:4:0", "memberName": "call", "nodeType": "MemberAccess", "src": "2047:17:0", @@ -2203,6 +2586,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2047:232:0", @@ -2315,6 +2699,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2316:6:0", "memberName": "decode", "nodeType": "MemberAccess", "src": "2312:10:0", @@ -2329,6 +2714,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2312:27:0", @@ -2457,10 +2843,12 @@ "id": 216, "nodeType": "FunctionDefinition", "src": "2410:424:0", + "nodes": [], "body": { "id": 215, "nodeType": "Block", "src": "2435:399:0", + "nodes": [], "statements": [ { "condition": { @@ -2484,6 +2872,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2449:16:0", @@ -2586,6 +2975,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2579:43:0", @@ -2628,6 +3018,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2572:51:0", @@ -2702,6 +3093,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2670:17:0", @@ -2764,6 +3156,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2697:13:0", @@ -2806,6 +3199,7 @@ "isPure": true, "kind": "typeConversion", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2689:22:0", @@ -2848,6 +3242,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2649:6:0", "memberName": "encode", "nodeType": "MemberAccess", "src": "2645:10:0", @@ -2862,6 +3257,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2645:67:0", @@ -2900,6 +3296,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "2538:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2534:16:0", @@ -2914,6 +3311,7 @@ "isPure": true, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2534:196:0", @@ -2948,6 +3346,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "2512:4:0", "memberName": "call", "nodeType": "MemberAccess", "src": "2499:17:0", @@ -2962,6 +3361,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2499:245:0", @@ -3069,10 +3469,12 @@ "id": 231, "nodeType": "FunctionDefinition", "src": "2840:242:0", + "nodes": [], "body": { "id": 230, "nodeType": "Block", "src": "2895:187:0", + "nodes": [], "statements": [ { "assignments": [ @@ -3285,10 +3687,12 @@ "id": 252, "nodeType": "ModifierDefinition", "src": "3088:161:0", + "nodes": [], "body": { "id": 251, "nodeType": "Block", "src": "3108:141:0", + "nodes": [], "statements": [ { "assignments": [ @@ -3345,6 +3749,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3134:9:0", @@ -3417,6 +3822,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3178:9:0", @@ -3519,6 +3925,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3202:40:0", @@ -3549,10 +3956,12 @@ "id": 269, "nodeType": "FunctionDefinition", "src": "3255:157:0", + "nodes": [], "body": { "id": 268, "nodeType": "Block", "src": "3300:112:0", + "nodes": [], "statements": [ { "condition": { @@ -3634,6 +4043,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3345:30:0", @@ -3669,6 +4079,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3389:6:0", @@ -3741,10 +4152,12 @@ "id": 290, "nodeType": "FunctionDefinition", "src": "3418:191:0", + "nodes": [], "body": { "id": 289, "nodeType": "Block", "src": "3482:127:0", + "nodes": [], "statements": [ { "condition": { @@ -3842,6 +4255,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3527:30:0", @@ -3898,6 +4312,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3571:21:0", @@ -3997,10 +4412,12 @@ "id": 320, "nodeType": "FunctionDefinition", "src": "3615:277:0", + "nodes": [], "body": { "id": 319, "nodeType": "Block", "src": "3664:228:0", + "nodes": [], "statements": [ { "condition": { @@ -4097,6 +4514,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3705:44:0", @@ -4170,6 +4588,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3768:34:0", @@ -4243,6 +4662,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3821:34:0", @@ -4278,6 +4698,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3869:6:0", @@ -4379,10 +4800,12 @@ "id": 345, "nodeType": "FunctionDefinition", "src": "3897:185:0", + "nodes": [], "body": { "id": 344, "nodeType": "Block", "src": "3965:117:0", + "nodes": [], "statements": [ { "condition": { @@ -4495,6 +4918,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4006:31:0", @@ -4575,6 +4999,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4051:14:0", @@ -4703,10 +5128,12 @@ "id": 375, "nodeType": "FunctionDefinition", "src": "4088:277:0", + "nodes": [], "body": { "id": 374, "nodeType": "Block", "src": "4137:228:0", + "nodes": [], "statements": [ { "condition": { @@ -4803,6 +5230,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4178:44:0", @@ -4876,6 +5304,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4241:34:0", @@ -4949,6 +5378,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4294:34:0", @@ -4984,6 +5414,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4342:6:0", @@ -5083,10 +5514,12 @@ "id": 400, "nodeType": "FunctionDefinition", "src": "4370:185:0", + "nodes": [], "body": { "id": 399, "nodeType": "Block", "src": "4438:117:0", + "nodes": [], "statements": [ { "condition": { @@ -5199,6 +5632,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4479:31:0", @@ -5279,6 +5713,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4524:14:0", @@ -5405,10 +5840,12 @@ "id": 413, "nodeType": "FunctionDefinition", "src": "4560:82:0", + "nodes": [], "body": { "id": 412, "nodeType": "Block", "src": "4611:31:0", + "nodes": [], "statements": [ { "expression": { @@ -5477,6 +5914,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4621:14:0", @@ -5573,10 +6011,12 @@ "id": 429, "nodeType": "FunctionDefinition", "src": "4647:106:0", + "nodes": [], "body": { "id": 428, "nodeType": "Block", "src": "4717:36:0", + "nodes": [], "statements": [ { "expression": { @@ -5661,6 +6101,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4727:19:0", @@ -5784,10 +6225,12 @@ "id": 459, "nodeType": "FunctionDefinition", "src": "4759:257:0", + "nodes": [], "body": { "id": 458, "nodeType": "Block", "src": "4800:216:0", + "nodes": [], "statements": [ { "condition": { @@ -5884,6 +6327,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4841:40:0", @@ -5957,6 +6401,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4900:30:0", @@ -6030,6 +6475,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4949:30:0", @@ -6065,6 +6511,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4993:6:0", @@ -6164,10 +6611,12 @@ "id": 484, "nodeType": "FunctionDefinition", "src": "5021:176:0", + "nodes": [], "body": { "id": 483, "nodeType": "Block", "src": "5081:116:0", + "nodes": [], "statements": [ { "condition": { @@ -6280,6 +6729,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5122:30:0", @@ -6360,6 +6810,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5166:14:0", @@ -6486,10 +6937,12 @@ "id": 514, "nodeType": "FunctionDefinition", "src": "5202:262:0", + "nodes": [], "body": { "id": 513, "nodeType": "Block", "src": "5245:219:0", + "nodes": [], "statements": [ { "condition": { @@ -6586,6 +7039,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5286:41:0", @@ -6659,6 +7113,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5346:31:0", @@ -6732,6 +7187,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5396:31:0", @@ -6767,6 +7223,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5441:6:0", @@ -6866,10 +7323,12 @@ "id": 539, "nodeType": "FunctionDefinition", "src": "5469:178:0", + "nodes": [], "body": { "id": 538, "nodeType": "Block", "src": "5531:116:0", + "nodes": [], "statements": [ { "condition": { @@ -6982,6 +7441,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5572:30:0", @@ -7062,6 +7522,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5616:14:0", @@ -7188,10 +7649,12 @@ "id": 573, "nodeType": "FunctionDefinition", "src": "5652:323:0", + "nodes": [], "body": { "id": 572, "nodeType": "Block", "src": "5715:260:0", + "nodes": [], "statements": [ { "condition": { @@ -7288,6 +7751,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5756:48:0", @@ -7377,6 +7841,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5823:48:0", @@ -7466,6 +7931,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5890:48:0", @@ -7501,6 +7967,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5952:6:0", @@ -7627,10 +8094,12 @@ "id": 601, "nodeType": "FunctionDefinition", "src": "5980:215:0", + "nodes": [], "body": { "id": 600, "nodeType": "Block", "src": "6062:133:0", + "nodes": [], "statements": [ { "condition": { @@ -7743,6 +8212,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6103:30:0", @@ -7833,6 +8303,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6147:31:0", @@ -7986,10 +8457,12 @@ "id": 635, "nodeType": "FunctionDefinition", "src": "6200:328:0", + "nodes": [], "body": { "id": 634, "nodeType": "Block", "src": "6265:263:0", + "nodes": [], "statements": [ { "condition": { @@ -8086,6 +8559,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6306:49:0", @@ -8175,6 +8649,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6374:49:0", @@ -8264,6 +8739,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6442:49:0", @@ -8299,6 +8775,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6505:6:0", @@ -8425,10 +8902,12 @@ "id": 663, "nodeType": "FunctionDefinition", "src": "6533:217:0", + "nodes": [], "body": { "id": 662, "nodeType": "Block", "src": "6617:133:0", + "nodes": [], "statements": [ { "condition": { @@ -8541,6 +9020,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6658:30:0", @@ -8631,6 +9111,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6702:31:0", @@ -8784,10 +9265,12 @@ "id": 693, "nodeType": "FunctionDefinition", "src": "6756:259:0", + "nodes": [], "body": { "id": 692, "nodeType": "Block", "src": "6799:216:0", + "nodes": [], "statements": [ { "condition": { @@ -8884,6 +9367,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6840:40:0", @@ -8957,6 +9441,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6899:30:0", @@ -9030,6 +9515,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6948:30:0", @@ -9065,6 +9551,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6992:6:0", @@ -9164,10 +9651,12 @@ "id": 718, "nodeType": "FunctionDefinition", "src": "7020:178:0", + "nodes": [], "body": { "id": 717, "nodeType": "Block", "src": "7082:116:0", + "nodes": [], "statements": [ { "condition": { @@ -9280,6 +9769,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7123:30:0", @@ -9354,6 +9844,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7167:14:0", @@ -9480,10 +9971,12 @@ "id": 748, "nodeType": "FunctionDefinition", "src": "7203:254:0", + "nodes": [], "body": { "id": 747, "nodeType": "Block", "src": "7244:213:0", + "nodes": [], "statements": [ { "condition": { @@ -9580,6 +10073,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7285:39:0", @@ -9653,6 +10147,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7343:29:0", @@ -9726,6 +10221,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7391:29:0", @@ -9761,6 +10257,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7434:6:0", @@ -9860,10 +10357,12 @@ "id": 773, "nodeType": "FunctionDefinition", "src": "7462:176:0", + "nodes": [], "body": { "id": 772, "nodeType": "Block", "src": "7522:116:0", + "nodes": [], "statements": [ { "condition": { @@ -9976,6 +10475,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7563:30:0", @@ -10050,6 +10550,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7607:14:0", @@ -10176,10 +10677,12 @@ "id": 807, "nodeType": "FunctionDefinition", "src": "7643:320:0", + "nodes": [], "body": { "id": 806, "nodeType": "Block", "src": "7706:257:0", + "nodes": [], "statements": [ { "condition": { @@ -10276,6 +10779,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7747:47:0", @@ -10365,6 +10869,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7813:47:0", @@ -10454,6 +10959,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7879:47:0", @@ -10489,6 +10995,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7940:6:0", @@ -10615,10 +11122,12 @@ "id": 835, "nodeType": "FunctionDefinition", "src": "7968:215:0", + "nodes": [], "body": { "id": 834, "nodeType": "Block", "src": "8050:133:0", + "nodes": [], "statements": [ { "condition": { @@ -10731,6 +11240,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8091:30:0", @@ -10821,6 +11331,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8135:31:0", @@ -10974,10 +11485,12 @@ "id": 869, "nodeType": "FunctionDefinition", "src": "8188:325:0", + "nodes": [], "body": { "id": 868, "nodeType": "Block", "src": "8253:260:0", + "nodes": [], "statements": [ { "condition": { @@ -11074,6 +11587,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8294:48:0", @@ -11163,6 +11677,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8361:48:0", @@ -11252,6 +11767,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8428:48:0", @@ -11287,6 +11803,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8490:6:0", @@ -11413,10 +11930,12 @@ "id": 897, "nodeType": "FunctionDefinition", "src": "8518:217:0", + "nodes": [], "body": { "id": 896, "nodeType": "Block", "src": "8602:133:0", + "nodes": [], "statements": [ { "condition": { @@ -11529,6 +12048,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8643:30:0", @@ -11619,6 +12139,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8687:31:0", @@ -11772,10 +12293,12 @@ "id": 927, "nodeType": "FunctionDefinition", "src": "8741:259:0", + "nodes": [], "body": { "id": 926, "nodeType": "Block", "src": "8784:216:0", + "nodes": [], "statements": [ { "condition": { @@ -11872,6 +12395,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8824:41:0", @@ -11945,6 +12469,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8884:30:0", @@ -12018,6 +12543,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8933:30:0", @@ -12053,6 +12579,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8977:6:0", @@ -12152,10 +12679,12 @@ "id": 952, "nodeType": "FunctionDefinition", "src": "9005:177:0", + "nodes": [], "body": { "id": 951, "nodeType": "Block", "src": "9067:115:0", + "nodes": [], "statements": [ { "condition": { @@ -12268,6 +12797,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9107:30:0", @@ -12342,6 +12872,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9151:14:0", @@ -12468,10 +12999,12 @@ "id": 982, "nodeType": "FunctionDefinition", "src": "9187:254:0", + "nodes": [], "body": { "id": 981, "nodeType": "Block", "src": "9228:213:0", + "nodes": [], "statements": [ { "condition": { @@ -12568,6 +13101,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9268:40:0", @@ -12641,6 +13175,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9327:29:0", @@ -12714,6 +13249,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9375:29:0", @@ -12749,6 +13285,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9418:6:0", @@ -12848,10 +13385,12 @@ "id": 1007, "nodeType": "FunctionDefinition", "src": "9446:175:0", + "nodes": [], "body": { "id": 1006, "nodeType": "Block", "src": "9506:115:0", + "nodes": [], "statements": [ { "condition": { @@ -12964,6 +13503,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9546:30:0", @@ -13038,6 +13578,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9590:14:0", @@ -13164,10 +13705,12 @@ "id": 1041, "nodeType": "FunctionDefinition", "src": "9626:320:0", + "nodes": [], "body": { "id": 1040, "nodeType": "Block", "src": "9689:257:0", + "nodes": [], "statements": [ { "condition": { @@ -13264,6 +13807,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9729:48:0", @@ -13353,6 +13897,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9796:47:0", @@ -13442,6 +13987,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9862:47:0", @@ -13477,6 +14023,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9923:6:0", @@ -13603,10 +14150,12 @@ "id": 1069, "nodeType": "FunctionDefinition", "src": "9951:214:0", + "nodes": [], "body": { "id": 1068, "nodeType": "Block", "src": "10033:132:0", + "nodes": [], "statements": [ { "condition": { @@ -13719,6 +14268,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10073:30:0", @@ -13809,6 +14359,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10117:31:0", @@ -13962,10 +14513,12 @@ "id": 1103, "nodeType": "FunctionDefinition", "src": "10170:325:0", + "nodes": [], "body": { "id": 1102, "nodeType": "Block", "src": "10235:260:0", + "nodes": [], "statements": [ { "condition": { @@ -14062,6 +14615,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10275:49:0", @@ -14151,6 +14705,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10343:48:0", @@ -14240,6 +14795,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10410:48:0", @@ -14275,6 +14831,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10472:6:0", @@ -14401,10 +14958,12 @@ "id": 1131, "nodeType": "FunctionDefinition", "src": "10500:216:0", + "nodes": [], "body": { "id": 1130, "nodeType": "Block", "src": "10584:132:0", + "nodes": [], "statements": [ { "condition": { @@ -14517,6 +15076,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10624:30:0", @@ -14607,6 +15167,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10668:31:0", @@ -14760,10 +15321,12 @@ "id": 1161, "nodeType": "FunctionDefinition", "src": "10722:259:0", + "nodes": [], "body": { "id": 1160, "nodeType": "Block", "src": "10765:216:0", + "nodes": [], "statements": [ { "condition": { @@ -14860,6 +15423,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10806:40:0", @@ -14933,6 +15497,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10865:30:0", @@ -15006,6 +15571,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10914:30:0", @@ -15041,6 +15607,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10958:6:0", @@ -15140,10 +15707,12 @@ "id": 1186, "nodeType": "FunctionDefinition", "src": "10986:178:0", + "nodes": [], "body": { "id": 1185, "nodeType": "Block", "src": "11048:116:0", + "nodes": [], "statements": [ { "condition": { @@ -15256,6 +15825,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11089:30:0", @@ -15330,6 +15900,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11133:14:0", @@ -15456,10 +16027,12 @@ "id": 1216, "nodeType": "FunctionDefinition", "src": "11169:254:0", + "nodes": [], "body": { "id": 1215, "nodeType": "Block", "src": "11210:213:0", + "nodes": [], "statements": [ { "condition": { @@ -15556,6 +16129,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11251:39:0", @@ -15629,6 +16203,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11309:29:0", @@ -15702,6 +16277,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11357:29:0", @@ -15737,6 +16313,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11400:6:0", @@ -15836,10 +16413,12 @@ "id": 1241, "nodeType": "FunctionDefinition", "src": "11428:176:0", + "nodes": [], "body": { "id": 1240, "nodeType": "Block", "src": "11488:116:0", + "nodes": [], "statements": [ { "condition": { @@ -15952,6 +16531,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11529:30:0", @@ -16026,6 +16606,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11573:14:0", @@ -16152,10 +16733,12 @@ "id": 1275, "nodeType": "FunctionDefinition", "src": "11609:320:0", + "nodes": [], "body": { "id": 1274, "nodeType": "Block", "src": "11672:257:0", + "nodes": [], "statements": [ { "condition": { @@ -16252,6 +16835,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11713:47:0", @@ -16341,6 +16925,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11779:47:0", @@ -16430,6 +17015,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11845:47:0", @@ -16465,6 +17051,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11906:6:0", @@ -16591,10 +17178,12 @@ "id": 1303, "nodeType": "FunctionDefinition", "src": "11934:215:0", + "nodes": [], "body": { "id": 1302, "nodeType": "Block", "src": "12016:133:0", + "nodes": [], "statements": [ { "condition": { @@ -16707,6 +17296,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12057:30:0", @@ -16797,6 +17387,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12101:31:0", @@ -16950,10 +17541,12 @@ "id": 1337, "nodeType": "FunctionDefinition", "src": "12154:325:0", + "nodes": [], "body": { "id": 1336, "nodeType": "Block", "src": "12219:260:0", + "nodes": [], "statements": [ { "condition": { @@ -17050,6 +17643,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12260:48:0", @@ -17139,6 +17733,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12327:48:0", @@ -17228,6 +17823,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12394:48:0", @@ -17263,6 +17859,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12456:6:0", @@ -17389,10 +17986,12 @@ "id": 1365, "nodeType": "FunctionDefinition", "src": "12484:217:0", + "nodes": [], "body": { "id": 1364, "nodeType": "Block", "src": "12568:133:0", + "nodes": [], "statements": [ { "condition": { @@ -17505,6 +18104,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12609:30:0", @@ -17595,6 +18195,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12653:31:0", @@ -17748,10 +18349,12 @@ "id": 1395, "nodeType": "FunctionDefinition", "src": "12707:259:0", + "nodes": [], "body": { "id": 1394, "nodeType": "Block", "src": "12750:216:0", + "nodes": [], "statements": [ { "condition": { @@ -17848,6 +18451,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12790:41:0", @@ -17921,6 +18525,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12850:30:0", @@ -17994,6 +18599,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12899:30:0", @@ -18029,6 +18635,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12943:6:0", @@ -18128,10 +18735,12 @@ "id": 1420, "nodeType": "FunctionDefinition", "src": "12971:177:0", + "nodes": [], "body": { "id": 1419, "nodeType": "Block", "src": "13033:115:0", + "nodes": [], "statements": [ { "condition": { @@ -18244,6 +18853,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13073:30:0", @@ -18318,6 +18928,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13117:14:0", @@ -18444,10 +19055,12 @@ "id": 1450, "nodeType": "FunctionDefinition", "src": "13153:254:0", + "nodes": [], "body": { "id": 1449, "nodeType": "Block", "src": "13194:213:0", + "nodes": [], "statements": [ { "condition": { @@ -18544,6 +19157,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13234:40:0", @@ -18617,6 +19231,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13293:29:0", @@ -18690,6 +19305,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13341:29:0", @@ -18725,6 +19341,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13384:6:0", @@ -18824,10 +19441,12 @@ "id": 1475, "nodeType": "FunctionDefinition", "src": "13412:175:0", + "nodes": [], "body": { "id": 1474, "nodeType": "Block", "src": "13472:115:0", + "nodes": [], "statements": [ { "condition": { @@ -18940,6 +19559,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13512:30:0", @@ -19014,6 +19634,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13556:14:0", @@ -19140,10 +19761,12 @@ "id": 1509, "nodeType": "FunctionDefinition", "src": "13592:320:0", + "nodes": [], "body": { "id": 1508, "nodeType": "Block", "src": "13655:257:0", + "nodes": [], "statements": [ { "condition": { @@ -19240,6 +19863,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13695:48:0", @@ -19329,6 +19953,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13762:47:0", @@ -19418,6 +20043,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13828:47:0", @@ -19453,6 +20079,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13889:6:0", @@ -19579,10 +20206,12 @@ "id": 1537, "nodeType": "FunctionDefinition", "src": "13917:214:0", + "nodes": [], "body": { "id": 1536, "nodeType": "Block", "src": "13999:132:0", + "nodes": [], "statements": [ { "condition": { @@ -19695,6 +20324,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14039:30:0", @@ -19785,6 +20415,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14083:31:0", @@ -19938,10 +20569,12 @@ "id": 1571, "nodeType": "FunctionDefinition", "src": "14136:325:0", + "nodes": [], "body": { "id": 1570, "nodeType": "Block", "src": "14201:260:0", + "nodes": [], "statements": [ { "condition": { @@ -20038,6 +20671,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14241:49:0", @@ -20127,6 +20761,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14309:48:0", @@ -20216,6 +20851,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14376:48:0", @@ -20251,6 +20887,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14438:6:0", @@ -20377,10 +21014,12 @@ "id": 1599, "nodeType": "FunctionDefinition", "src": "14466:216:0", + "nodes": [], "body": { "id": 1598, "nodeType": "Block", "src": "14550:132:0", + "nodes": [], "statements": [ { "condition": { @@ -20493,6 +21132,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14590:30:0", @@ -20583,6 +21223,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14634:31:0", @@ -20736,10 +21377,12 @@ "id": 1639, "nodeType": "FunctionDefinition", "src": "14688:344:0", + "nodes": [], "body": { "id": 1638, "nodeType": "Block", "src": "14749:283:0", + "nodes": [], "statements": [ { "condition": { @@ -20793,6 +21436,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14777:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14773:16:0", @@ -20807,6 +21451,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14773:19:0", @@ -20841,6 +21486,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14763:30:0", @@ -20893,6 +21539,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "14811:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14807:16:0", @@ -20907,6 +21554,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14807:19:0", @@ -20941,6 +21589,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14797:30:0", @@ -21008,6 +21657,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14848:43:0", @@ -21081,6 +21731,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14910:33:0", @@ -21154,6 +21805,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14962:33:0", @@ -21189,6 +21841,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15009:6:0", @@ -21288,10 +21941,12 @@ "id": 1674, "nodeType": "FunctionDefinition", "src": "15037:254:0", + "nodes": [], "body": { "id": 1673, "nodeType": "Block", "src": "15117:174:0", + "nodes": [], "statements": [ { "condition": { @@ -21345,6 +22000,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15145:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15141:16:0", @@ -21359,6 +22015,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15141:19:0", @@ -21393,6 +22050,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15131:30:0", @@ -21445,6 +22103,7 @@ "isLValue": false, "isPure": true, "lValueRequested": false, + "memberLocation": "15179:12:0", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15175:16:0", @@ -21459,6 +22118,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15175:19:0", @@ -21493,6 +22153,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15165:30:0", @@ -21576,6 +22237,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15216:30:0", @@ -21656,6 +22318,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15260:14:0", @@ -21782,10 +22445,12 @@ "id": 1726, "nodeType": "FunctionDefinition", "src": "15297:345:0", + "nodes": [], "body": { "id": 1725, "nodeType": "Block", "src": "15379:263:0", + "nodes": [], "statements": [ { "expression": { @@ -21863,6 +22528,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15414:6:0", "memberName": "length", "nodeType": "MemberAccess", "src": "15412:8:0", @@ -21891,6 +22557,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15426:6:0", "memberName": "length", "nodeType": "MemberAccess", "src": "15424:8:0", @@ -22168,6 +22835,7 @@ "isLValue": false, "isPure": false, "lValueRequested": false, + "memberLocation": "15471:6:0", "memberName": "length", "nodeType": "MemberAccess", "src": "15469:8:0", @@ -22385,10 +23053,12 @@ "id": 1758, "nodeType": "FunctionDefinition", "src": "15647:291:0", + "nodes": [], "body": { "id": 1757, "nodeType": "Block", "src": "15707:231:0", + "nodes": [], "statements": [ { "condition": { @@ -22456,6 +23126,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15722:14:0", @@ -22522,6 +23193,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15757:42:0", @@ -22595,6 +23267,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15818:32:0", @@ -22668,6 +23341,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15869:32:0", @@ -22703,6 +23377,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15915:6:0", @@ -22802,10 +23477,12 @@ "id": 1785, "nodeType": "FunctionDefinition", "src": "15943:205:0", + "nodes": [], "body": { "id": 1784, "nodeType": "Block", "src": "16022:126:0", + "nodes": [], "statements": [ { "condition": { @@ -22873,6 +23550,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16037:14:0", @@ -22955,6 +23633,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16072:30:0", @@ -23027,6 +23706,7 @@ "isPure": false, "kind": "functionCall", "lValueRequested": false, + "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16116:15:0", diff --git a/out/test.sol/Test.json b/out/test.sol/Test.json index da05264..71c4046 100644 --- a/out/test.sol/Test.json +++ b/out/test.sol/Test.json @@ -405,6 +405,549 @@ "IS_TEST()": "fa7626d4", "failed()": "ba414fa6" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Test.sol\":\"Test\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd\",\"dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec\",\"dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0\",\"dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea\",\"dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3\",\"dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc\",\"dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51\",\"dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7\",\"dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88\",\"dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW\"]}},\"version\":1}", + "metadata": { + "compiler": { + "version": "0.8.17+commit.8df45f5f" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address", + "name": "val", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "log_named_address", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256[]", + "name": "val", + "type": "int256[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "address[]", + "name": "val", + "type": "address[]", + "indexed": false + } + ], + "type": "event", + "name": "log_named_array", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes", + "name": "val", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "val", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "log_named_bytes32", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "decimals", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_decimal_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "int256", + "name": "val", + "type": "int256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_int", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "string", + "name": "val", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_named_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "key", + "type": "string", + "indexed": false + }, + { + "internalType": "uint256", + "name": "val", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_named_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string", + "indexed": false + } + ], + "type": "event", + "name": "log_string", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "log_uint", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "logs", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + }, + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "function", + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ] + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "remappings": [ + ":ds-test/=lib/forge-std/lib/ds-test/src/", + ":forge-std/=lib/forge-std/src/" + ], + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "bytecodeHash": "ipfs" + }, + "compilationTarget": { + "lib/forge-std/src/Test.sol": "Test" + }, + "libraries": {} + }, + "sources": { + "lib/forge-std/lib/ds-test/src/test.sol": { + "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", + "urls": [ + "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", + "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" + ], + "license": "GPL-3.0-or-later" + }, + "lib/forge-std/src/Base.sol": { + "keccak256": "0x7f6016716c0c6f49e8163af625290c7ef270a045d9b82be04e269035726d3213", + "urls": [ + "bzz-raw://bd050537b58640f8545b319928ee66bef9649d1ebd68a3afa1d28a1ce8cea3dd", + "dweb:/ipfs/QmbBVxERnZ2ciQuRuZ45czd2DRgouCLEhibLWtC2CrH2j4" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdAssertions.sol": { + "keccak256": "0x9d53fb0317c888ed0ef4a8476883d4304f5e7e6fa0161d84d18fa27a63875524", + "urls": [ + "bzz-raw://9638e9a042f5b7695953ea394072f90b814ac98312e447f45c4f2f6cdb22c3ec", + "dweb:/ipfs/QmPvKu8hyzB2og54Lecmb2DvEiAgM9o5UC2gGgRQJ42PQw" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdChains.sol": { + "keccak256": "0xd9f9791f56c2afcd841237417d5a55fa8b69de2c1b528ddbfc7d7823fe136606", + "urls": [ + "bzz-raw://f66271850d38488984ec1e38aeb57df1cda53538b2ddd19e2164c767792905f0", + "dweb:/ipfs/QmetNJMTfgJ7SCNMwfLrZEwnL3xdNaBY5vMiqrRrUWjjes" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdCheats.sol": { + "keccak256": "0xcf17bed19a42d40b15e584cfc57b1cef2b2b0e55d812f6740afe2c5c4bf801d3", + "urls": [ + "bzz-raw://78e8f19f8b8b6107a39d892d073cfeb8872cce4d5c8e7957d29941e092e16fea", + "dweb:/ipfs/QmYQfx7UYDjSx77d8WmbveFkXK6AyrUfYUdxvufGLbVPSm" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdError.sol": { + "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77", + "urls": [ + "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6", + "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdJson.sol": { + "keccak256": "0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612", + "urls": [ + "bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f", + "dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdMath.sol": { + "keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2", + "urls": [ + "bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92", + "dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdStorage.sol": { + "keccak256": "0xb31c4ee03d05c6202f6e354245ac3ab883d954f9f36074902089e1b3e645273d", + "urls": [ + "bzz-raw://33bd98bde50b840b8d7d5cebf818176b9f219345078ed5d3bd0071f035efb2e3", + "dweb:/ipfs/QmPYC7FZvCWCPF2qWg6TXXTTPGEdnT4y5nebPn1AoZ1H4p" + ], + "license": "MIT" + }, + "lib/forge-std/src/StdUtils.sol": { + "keccak256": "0xc3222299fd637498c81ab5c8e15c9327289d3708fb8a7063dd10a55a8813c9cf", + "urls": [ + "bzz-raw://b6f5f818e75e8ae5a67b58cff9b351dd790a72d0a5332fb6f425a3561801b6cc", + "dweb:/ipfs/QmXJEPtMM1AzwCh6u1o1wL2xdi1qRyxsTLt1eVgeC8Y1QH" + ], + "license": "MIT" + }, + "lib/forge-std/src/Test.sol": { + "keccak256": "0xb7004fe1ceab4a20ae13baec8732a5414b28d5ddb06f9f4184b49c1fc1d61521", + "urls": [ + "bzz-raw://5a60b5d84bd7d7e455f4a1ca1d260f6b50c419e4c4e7196ef32fd77d0f480d51", + "dweb:/ipfs/QmYwRMAYYsQuvvM4mnagYs8Zhqm5VXicXmxoqEvkiUzQSd" + ], + "license": "MIT" + }, + "lib/forge-std/src/Vm.sol": { + "keccak256": "0xe4913fabc9dbebe2ebb4ba4eaf629380a71b88b255fabc05492990bfa3b185bc", + "urls": [ + "bzz-raw://c1989ae3326aafbbf80f75036869d5ea3c752614dfce7df17ce0912a7a16dbb7", + "dweb:/ipfs/QmSQju3J4cHLZeVsnWk53it94W2N243mvbyx42hhV5BxED" + ], + "license": "MIT" + }, + "lib/forge-std/src/console.sol": { + "keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba", + "urls": [ + "bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70", + "dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec" + ], + "license": "MIT" + }, + "lib/forge-std/src/console2.sol": { + "keccak256": "0xcd5706f5a7025825d9fd389c89b49bf571f9abaea8a062dc4048320b5b43bf46", + "urls": [ + "bzz-raw://c066485a7d4bd18d44efb4c89274b0959e8066b9a480383a2ce07d7f31555f88", + "dweb:/ipfs/QmckeYfA5FtAjcxaytq69Dpj6uY57tbQ61kNPPxXi9kgbW" + ], + "license": "MIT" + } + }, + "version": 1 + }, "ast": { "absolutePath": "lib/forge-std/src/Test.sol", "id": 8196, @@ -462,6 +1005,7 @@ "id": 8155, "nodeType": "PragmaDirective", "src": "32:31:11", + "nodes": [], "literals": [ "solidity", ">=", @@ -476,6 +1020,7 @@ "id": 8157, "nodeType": "ImportDirective", "src": "131:38:11", + "nodes": [], "absolutePath": "lib/forge-std/src/console.sol", "file": "./console.sol", "nameLocation": "-1:-1:-1", @@ -501,6 +1046,7 @@ "id": 8159, "nodeType": "ImportDirective", "src": "170:40:11", + "nodes": [], "absolutePath": "lib/forge-std/src/console2.sol", "file": "./console2.sol", "nameLocation": "-1:-1:-1", @@ -526,6 +1072,7 @@ "id": 8161, "nodeType": "ImportDirective", "src": "211:50:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdAssertions.sol", "file": "./StdAssertions.sol", "nameLocation": "-1:-1:-1", @@ -551,6 +1098,7 @@ "id": 8163, "nodeType": "ImportDirective", "src": "262:42:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdChains.sol", "file": "./StdChains.sol", "nameLocation": "-1:-1:-1", @@ -576,6 +1124,7 @@ "id": 8165, "nodeType": "ImportDirective", "src": "305:42:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdCheats.sol", "file": "./StdCheats.sol", "nameLocation": "-1:-1:-1", @@ -601,6 +1150,7 @@ "id": 8167, "nodeType": "ImportDirective", "src": "348:40:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdError.sol", "file": "./StdError.sol", "nameLocation": "-1:-1:-1", @@ -626,6 +1176,7 @@ "id": 8169, "nodeType": "ImportDirective", "src": "389:38:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdJson.sol", "file": "./StdJson.sol", "nameLocation": "-1:-1:-1", @@ -651,6 +1202,7 @@ "id": 8171, "nodeType": "ImportDirective", "src": "428:38:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdMath.sol", "file": "./StdMath.sol", "nameLocation": "-1:-1:-1", @@ -676,6 +1228,7 @@ "id": 8174, "nodeType": "ImportDirective", "src": "467:56:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdStorage.sol", "file": "./StdStorage.sol", "nameLocation": "-1:-1:-1", @@ -713,6 +1266,7 @@ "id": 8176, "nodeType": "ImportDirective", "src": "524:40:11", + "nodes": [], "absolutePath": "lib/forge-std/src/StdUtils.sol", "file": "./StdUtils.sol", "nameLocation": "-1:-1:-1", @@ -738,6 +1292,7 @@ "id": 8178, "nodeType": "ImportDirective", "src": "565:28:11", + "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", @@ -763,6 +1318,7 @@ "id": 8180, "nodeType": "ImportDirective", "src": "615:36:11", + "nodes": [], "absolutePath": "lib/forge-std/src/Base.sol", "file": "./Base.sol", "nameLocation": "-1:-1:-1", @@ -788,6 +1344,7 @@ "id": 8182, "nodeType": "ImportDirective", "src": "652:40:11", + "nodes": [], "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", "file": "ds-test/test.sol", "nameLocation": "-1:-1:-1", @@ -813,12 +1370,16 @@ "id": 8195, "nodeType": "ContractDefinition", "src": "709:268:11", + "nodes": [], "abstract": true, "baseContracts": [ { "baseName": { "id": 8183, "name": "DSTest", + "nameLocations": [ + "735:6:11" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1786, "src": "735:6:11" @@ -831,6 +1392,9 @@ "baseName": { "id": 8185, "name": "StdAssertions", + "nameLocations": [ + "743:13:11" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 2708, "src": "743:13:11" @@ -843,6 +1407,9 @@ "baseName": { "id": 8187, "name": "StdChains", + "nameLocations": [ + "758:9:11" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 3244, "src": "758:9:11" @@ -855,6 +1422,9 @@ "baseName": { "id": 8189, "name": "StdCheats", + "nameLocations": [ + "769:9:11" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 5181, "src": "769:9:11" @@ -867,6 +1437,9 @@ "baseName": { "id": 8191, "name": "StdUtils", + "nameLocations": [ + "780:8:11" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 8153, "src": "780:8:11" @@ -879,6 +1452,9 @@ "baseName": { "id": 8193, "name": "TestBase", + "nameLocations": [ + "790:8:11" + ], "nodeType": "IdentifierPath", "referencedDeclaration": 1843, "src": "790:8:11" diff --git a/test/MainDeployment.t.sol b/test/MainDeployment.t.sol index 0e9a838..3c15f98 100644 --- a/test/MainDeployment.t.sol +++ b/test/MainDeployment.t.sol @@ -59,6 +59,47 @@ contract MainDeploymentTest is Utility, Test { assertEq(vesting.owner(), address(dev)); } + // ~ claim() tests ~ + + /// @dev Verifies claim() restrictions + function test_mainDeploymentTest_claim_restrictions() public { + uint _amount = 5_000_000 ether; + + // Transfer PROVE tokens to vesting contract + proveToken.transfer(address(vesting), _amount); + + // Jon is trying to claim + vm.startPrank(address(jon)); + + // Should not work if caller isn't investor + vm.expectRevert("Vesting.sol::onlyInvestor() msg.sender must be an investor"); + vesting.claim(); + + // Add jon as investor + assert(dev.try_addInvestor(address(vesting), address(jon), 1_000_000 ether)); + + // Should not work if vesting isn't enabled + vm.expectRevert("Vesting.sol::claim() vesting is not enabled"); + vesting.claim(); + + // Enable vesting + assert(dev.try_enableVesting(address(vesting))); + + // Jon can claim his tokens + vesting.claim(); + + skip(52 weeks); + + // Jon can claim more tokens + vesting.claim(); + + vm.expectRevert("Vesting.sol::claim() investor has no tokens to claim"); + vesting.claim(); + + vm.stopPrank(); + + } + /// @dev Verifies claim() state changes function test_mainDeploymentTest_claim() public { uint _amount = 1_000_000 ether; @@ -123,4 +164,173 @@ contract MainDeploymentTest is Utility, Test { vm.stopPrank(); } + /// @dev Verifies claim() edge cases + function test_mainDeploymentTest_claim_edge_cases() public { + uint _amount = 5_000_000 ether; + + proveToken.transfer(address(vesting), _amount); + + //Enable vesting + assert(dev.try_enableVesting(address(vesting))); + + // Adding three investors for three edge cases + // Add jon as investor + assert(dev.try_addInvestor(address(vesting), address(jon), 1_000_000 ether)); + + // Add joe as investor + assert(dev.try_addInvestor(address(vesting), address(joe), 1_000_000 ether)); + + // Add dev as investor + assert(dev.try_addInvestor(address(vesting), address(dev), 1_000_000 ether)); + + // Jon is trying to claim after less than one month. + skip(2 weeks); + assert(jon.try_claim(address(vesting))); + + // Jon should have only gotten 12% of his tokensToVest + assertEq(proveToken.balanceOf(address(jon)), (1_000_000 ether * 12 / 100) ); + + // Skip another 22 weeks to 6 months total + skip(22 weeks); + // Joe is trying to claim some in the middle + assert(joe.try_claim(address(vesting))); + + // Joe should have only gotten 60% of his tokensToVest + assertEq(proveToken.balanceOf(address(joe)), (1_000_000 ether * 60 / 100)); + + // Skip another 20 weeks to 11 months total + skip(20 weeks); + // Joe is going to claim again and it should be the rest of his tokens + assert(joe.try_claim(address(vesting))); + + // Joe should have 100% of his tokensToVest + assertEq(proveToken.balanceOf(address(joe)), (1_000_000 ether)); + + // Skip a year forward + skip(52 weeks); + // Dev is going to claim far after the end of the vesting schedule + assert(dev.try_claim(address(vesting))); + + // Dev should have 100% of their tokens but no more + assertEq(proveToken.balanceOf(address(dev)), (1_000_000 ether)); + + } + + /// @dev Verifies claim() state changes using fuzzing + function test_mainDeploymentTest_claim_fuzzing1(uint256 _amount) public { + _amount = bound(_amount, 100_000 ether, 100_000_000 ether); + + // First fill up the contract with PROVE tokens + proveToken.transfer(address(vesting), _amount); + + //Jon is trying to claim + vm.startPrank(address(jon)); + + //Add jon as investor + assert(dev.try_addInvestor(address(vesting), address(jon), _amount)); + + //Enable vesting + assert(dev.try_enableVesting(address(vesting))); + + // Pre-State check + assertEq(proveToken.balanceOf(address(jon)), 0); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + withinDiff(proveToken.balanceOf(address(jon)), _amount * 12 / 100, 1 ether); + + // Skip 4 weeks + skip(4 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + withinDiff(proveToken.balanceOf(address(jon)), _amount * 20 / 100, 1 ether); + + // Skip 4 weeks + skip(4 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + withinDiff(proveToken.balanceOf(address(jon)), _amount * 28 / 100, 1 ether); + + // Skip 12 weeks + skip(12 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + withinDiff(proveToken.balanceOf(address(jon)), _amount * 52 / 100, 1 ether); + + // Skip 24 weeks + skip(24 weeks); + + // Jon is going to call claim + assert(jon.try_claim(address(vesting))); + + // Post-State check + assertEq(proveToken.balanceOf(address(jon)), _amount); + + vm.stopPrank(); + } + + /// @dev Verifies claim() edge cases using fuzzing + function test_mainDeploymentTest_claim_fuzzing2(uint256 _amount) public { + _amount = bound(_amount, 100_000 ether, 100_000_000 ether); + + // First fill up the contract with PROVE tokens + proveToken.transfer(address(vesting), _amount*3); + + //Enable vesting + assert(dev.try_enableVesting(address(vesting))); + + // Adding three investors for three edge cases + // Add jon as investor + assert(dev.try_addInvestor(address(vesting), address(jon), _amount)); + + // Add joe as investor + assert(dev.try_addInvestor(address(vesting), address(joe), _amount)); + + // Add dev as investor + assert(dev.try_addInvestor(address(vesting), address(dev), _amount)); + + // Jon is trying to claim after less than one month. + skip(2 weeks); + assert(jon.try_claim(address(vesting))); + + // Jon should have only gotten 12% of his tokensToVest + withinDiff(proveToken.balanceOf(address(jon)), (_amount * 12 / 100), 1 ether); + + // Skip another 22 weeks to 6 months total + skip(22 weeks); + // Joe is trying to claim some in the middle + assert(joe.try_claim(address(vesting))); + + // Joe should have only gotten 60% of his tokensToVest + withinDiff(proveToken.balanceOf(address(joe)), (_amount * 60 / 100), 1 ether); + + // Skip another 20 weeks to 11 months total + skip(20 weeks); + // Joe is going to claim again and it should be the rest of his tokens + assert(joe.try_claim(address(vesting))); + + // Joe should have 100% of his tokensToVest + assertEq(proveToken.balanceOf(address(joe)), _amount); + + // Skip a year forward + skip(52 weeks); + // Dev is going to claim far after the end of the vesting schedule + assert(dev.try_claim(address(vesting))); + + // Dev should have 100% of their tokens but no more + assertEq(proveToken.balanceOf(address(dev)), _amount); + + } + }